diff --git a/pom.xml b/pom.xml index d6c1303233bf2bba0d85df1e51e82e55185f6a22..394019085d6dac160bff4836ab398fef7215882d 100644 --- a/pom.xml +++ b/pom.xml @@ -62,18 +62,18 @@ <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <targetJdk>1.8</targetJdk> - <org.springframework.version>5.2.3.RELEASE</org.springframework.version> - <org.hibernate.version>5.4.11.Final</org.hibernate.version> + <org.springframework.version>5.2.4.RELEASE</org.springframework.version> + <org.hibernate.version>5.4.12.Final</org.hibernate.version> <apache.cxf>3.3.5</apache.cxf> - <apache.pdfbox>2.0.18</apache.pdfbox> - <apache.poi>4.1.1</apache.poi> - <apache.log4j>2.13.0</apache.log4j> + <apache.pdfbox>2.0.19</apache.pdfbox> + <apache.poi>4.1.2</apache.poi> + <apache.log4j>2.13.1</apache.log4j> <io.jsonwebtoken>0.10.7</io.jsonwebtoken> <io.undertow>2.0.29.Final</io.undertow> <jackson.version>2.10.2</jackson.version> <org.mysql.version>5.1.46</org.mysql.version> <org.postgresql.version>42.2.10</org.postgresql.version> - <org.infinispan.version>10.1.2.Final</org.infinispan.version> + <org.infinispan.version>10.1.3.Final</org.infinispan.version> <lucene.version>7.7.0</lucene.version> <version.selenium>3.141.59</version.selenium> <version.drone>2.5.1</version.drone> diff --git a/src/main/java/de/bps/course/nodes/cl/_i18n/LocalStrings_fr.properties b/src/main/java/de/bps/course/nodes/cl/_i18n/LocalStrings_fr.properties index eed55acdd6fcf126c30f57f6b48b7e2f2603cf8b..84cc14c0a90dff5a1781ef5da16310505144a793 100644 --- a/src/main/java/de/bps/course/nodes/cl/_i18n/LocalStrings_fr.properties +++ b/src/main/java/de/bps/course/nodes/cl/_i18n/LocalStrings_fr.properties @@ -1,8 +1,10 @@ -#Tue Feb 09 00:53:34 CET 2010 +#Sun Mar 01 08:43:17 CET 2020 +condition.accessibility.title=Acc\u00E8s config.allhidden.long=Tous les checkpoints de cette liste sont mis sur invisible. Peut-\u00EAtre il serait mieux de cacher tout l'\u00E9l\u00E9ment de liste. config.allhidden.short=Tous les checkpoints invisibles config.header=Checklist config.nocheckpoints.long=La checklist doit au moins contenir un checkpoint. config.nocheckpoints.short=Aucun checkpoint disponible manage=Administrer checklist +pane.tab.accessibility=Acc\u00E8s pane.tab.clconfig=Configuration diff --git a/src/main/java/de/bps/course/nodes/ll/_i18n/LocalStrings_fr.properties b/src/main/java/de/bps/course/nodes/ll/_i18n/LocalStrings_fr.properties index 248ab0b3650157d50c4eeed647337948941879ed..c0f60f78b233a1f1f41196073320b19fbf5551d6 100644 --- a/src/main/java/de/bps/course/nodes/ll/_i18n/LocalStrings_fr.properties +++ b/src/main/java/de/bps/course/nodes/ll/_i18n/LocalStrings_fr.properties @@ -1,4 +1,5 @@ -#Fri Jul 18 14:16:41 CEST 2014 +#Wed Mar 04 07:25:19 CET 2020 +condition.accessibility.title=Acc\u00E8s config.header=Liste de liens config.nolinks.long=Vous n'avez pas encore \u00E9tabli des liens dans cette liste. config.nolinks.short=Liens incomplets. diff --git a/src/main/java/org/olat/admin/sysinfo/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/admin/sysinfo/_i18n/LocalStrings_fr.properties index 6dc0d7f2e7fa73caf6dd28dd668e268b66acb373..534cb9e57075f6ea2c57c98706ba07981ba95214 100644 --- a/src/main/java/org/olat/admin/sysinfo/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/admin/sysinfo/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Tue Jan 07 22:21:48 CET 2020 +#Sun Mar 01 07:43:16 CET 2020 allow.dmz.requests.done=Toutes les requests sur DMZ sont permises \u00E0 partir de ce moment allow.login.done=Le blocage des enregistrement a \u00E9t\u00E9 enlev\u00E9. block.login.done=Les nouveau enregistrements sont bloqu\u00E9s maintenant. @@ -8,6 +8,8 @@ block.login.sure=Etes-vous s\u00FBr de vouloir bloquer l'enregistrement de tous block.login.title=Bloquez les logins buildinfo=Build Information clear.hibernate.statistics=Supprimer statistique hibern\u00E9e +confirm.cleanup.metadata=Voulez-vous mettre de l'ordre dans les m\u00E9ta-donn\u00E9es? Le processus peut prendre plusieurs minutes. +confirm.cleanup.metadata.title=Nettoyer les m\u00E9ta-donn\u00E9es core.functions=Aper\u00E7u des fonctions core.jsMath=JS Math core.restapi=REST API @@ -86,6 +88,7 @@ java.threads.title=Threads simultan\u00E9s largefiles.age=Age largefiles.author=Auteur largefiles.comment=Commentaire +largefiles.context=Contexte largefiles.createdat=Cr\u00E9er le largefiles.creator=Cr\u00E9\u00E9 par largefiles.downloads=T\u00E9l\u00E9chargements @@ -127,6 +130,7 @@ largefiles.lockedat=Verrouill\u00E9 le largefiles.lockedby=Verrouill\u00E9 par largefiles.mail.end=<br>Salutations distingu\u00E9es<br>Votre \u00E9quipe largefiles.mail.start=<p>*** Ce message a \u00E9t\u00E9 g\u00E9n\u00E9r\u00E9 automatiquement. Inutile de r\u00E9pondre \u00E0 ce message ***</p><p> cher, ch\u00E8re {0},</p><p>Voici la liste des fichiers volumineux de votre dossier personnel. Vous \u00EAtes pri\u00E9s de les effacer dans les 30 jours.</p> +largefiles.mail.subject=Fichiers trop volumineux li\u00E9s \u00E0 votre compte largefiles.name=Nom largefiles.path=Chemin largefiles.publishedAt=Publi\u00E9 le @@ -156,6 +160,7 @@ maintenancemsgClearCluster=Supprimer le message de maintenance maintenancemsgEdit=Editer le message de maintenance maintenancemsgEditCluster=Editer le message d'entretien max.sessions.label=Nombre max de sessions +metadata.cleanup=Nettoyer les m\u00E9ta-donn\u00E9es multiuser.title=Informations sur les \u00E9v\u00E9nements multi-utilisateurs nbr.session.label=Nombre de session qui seront invalid\u00E9es (en ordre de leur dernier acc\u00E8s) oldest.session.button=Invalider les sessions @@ -248,3 +253,6 @@ table.header.trigger=Expression title.connection.statistics=Statistiques des connections \u00E0 la base de donn\u00E9es title.hibernate.statistics=Base de donn\u00E9e hibern\u00E9e acc\u00E8s statistiques usersession.title=Informations sur la session utilisateur +vfs.context.name=Nom +vfs.context.type=Type +vfs.context.url=URL diff --git a/src/main/java/org/olat/admin/user/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/admin/user/_i18n/LocalStrings_fr.properties index 5510db1dc583336a46421c5606a678231179d4ee..4e0a73f7f0e4de857b7fa17713dcdf2d0f7e91e3 100644 --- a/src/main/java/org/olat/admin/user/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/admin/user/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Mon Jun 24 21:43:39 CEST 2019 +#Wed Mar 04 07:27:04 CET 2020 action.bulkedit=Changer les attributs de cet utilisateur action.choose=S\u00E9lectionner action.choose.finish=S\u00E9lectionner et terminer diff --git a/src/main/java/org/olat/admin/user/bulkChange/UserBulkChangeStep01.java b/src/main/java/org/olat/admin/user/bulkChange/UserBulkChangeStep01.java index 9a297e84112d4ab026ddda911428cc86c3fc52c9..1b94ad2d9abb00b16a0380934a645d98ca9453ca 100644 --- a/src/main/java/org/olat/admin/user/bulkChange/UserBulkChangeStep01.java +++ b/src/main/java/org/olat/admin/user/bulkChange/UserBulkChangeStep01.java @@ -20,6 +20,7 @@ package org.olat.admin.user.bulkChange; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Map; @@ -52,8 +53,6 @@ import org.olat.core.util.Util; import org.olat.user.UserManager; import org.springframework.beans.factory.annotation.Autowired; -import edu.emory.mathcs.backport.java.util.Collections; - /** * Description:<br> * first step: select attributes, which should be changed diff --git a/src/main/java/org/olat/admin/user/course/CourseOverviewController.java b/src/main/java/org/olat/admin/user/course/CourseOverviewController.java index 83e448a55311d86475dae3f6462f0ee4a03cc405..334ede2dccfba60ea72250d936b17282caa7c5e4 100644 --- a/src/main/java/org/olat/admin/user/course/CourseOverviewController.java +++ b/src/main/java/org/olat/admin/user/course/CourseOverviewController.java @@ -26,6 +26,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.stream.Collectors; import org.olat.NewControllerFactory; import org.olat.admin.user.course.CourseOverviewMembershipDataModel.MSCols; @@ -430,7 +431,27 @@ public class CourseOverviewController extends FormBasicController { * @param ureq * @param views */ - private void doLeave(UserRequest ureq, Collection<CourseMemberView> views) { + private void doLeave(UserRequest ureq, Collection<CourseMemberView> selectedViews) { + List<CourseMemberView> views = selectedViews.stream() + .filter(view -> !view.isFullyManaged()) + .collect(Collectors.toList()); + + if(views.isEmpty()) { + boolean groupWarning = false; + for(CourseMemberView selectedView:selectedViews) { + if(selectedView.getMembership().isBusinessGroupMember()) { + groupWarning = true; + } + } + + if(groupWarning) { + showWarning("warning.cannot.leave.group"); + } else { + showWarning("warning.cannot.leave.entry"); + } + return; + } + List<Long> groupKeys = new ArrayList<>(); List<RepositoryEntry> repoEntryToLeave = new ArrayList<>(); for(CourseMemberView view:views) { @@ -465,6 +486,7 @@ public class CourseOverviewController extends FormBasicController { groupsToDelete.add(group); } } + removeFromCourseDlg = new CourseLeaveDialogBoxController(ureq, getWindowControl(), editedIdentity, repoEntryToLeave, groupsToLeave, groupsToDelete); listenTo(removeFromCourseDlg); diff --git a/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_de.properties index 6b1bafb488f3051c716e1710eec8787f410dafeb..17797d5f4c3923731e19f6bb83e718b17ef1ad27 100644 --- a/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_de.properties @@ -14,3 +14,5 @@ error.atleastone=Es muss mindestens einen Besitzer im Kurs "{0}" geben. dialog.modal.bg.mail.text=$org.olat.group.ui.main\:dialog.modal.bg.mail.text group.delete.confirmation=$org.olat.admin.user.groups\:group.delete.confirmation dialog.modal.bg.mail.text=Wollen Sie den Benutzer per Mail benachrichtigen? +warning.cannot.leave.entry=Die Lernressource wird extern verwaltet ('managed'), die Zuordnung der Mitglieder erfolgt automatisch. +warning.cannot.leave.group=Der Benutzer ist \u00FCber eine Gruppe zugeordnet und das Verlassen der Gruppe ist nicht erlaubt. diff --git a/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_en.properties index d51a320fd173ab1caa520c55f36e5c41d85d2441..fa87f6b3d5397e1c6e6a6c8071b70579aaee2870 100644 --- a/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_en.properties @@ -12,4 +12,6 @@ unsubscribe.text=Do you really want to unsubscribe the user "{0}" from the cours unsubscribe.withgroups.text=Do you really want to unsubscribe the user "{0}" from the course "{1}" and from the groups "{2}"? error.atleastone=The course "{0}" must have at least one owner. dialog.modal.bg.mail.text=Do you want to inform this user by email? -group.delete.confirmation=$org.olat.admin.user.groups\:group.delete.confirmation \ No newline at end of file +group.delete.confirmation=$org.olat.admin.user.groups\:group.delete.confirmation +warning.cannot.leave.entry=The learning resource is externally managed, member assignment is carried out automatically. +warning.cannot.leave.group=The user is assigned via a group and leaving the group is not allowed. diff --git a/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_fr.properties index 437e732ad41f1ecacd152cb54c6d4b8db2529f86..421458fd6ad027887fd97fead16d5d111bd3650b 100644 --- a/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/admin/user/course/_i18n/LocalStrings_fr.properties @@ -13,3 +13,5 @@ unsubscribe.successful=Utilisateur retir\u00E9 avec succ\u00E8s unsubscribe.text=Voulez-vous vraiment retirer l'utilisateur "{0}" du cours "{1}"? unsubscribe.title=Retirer l'utilisateur du cours unsubscribe.withgroups.text=Voulez-vous vraiment retirer l'utilisateur "{0}" du cours "{1}" et des groupes "{2}"? +warning.cannot.leave.entry=L'objet didactique est g\u00E9r\u00E9 de l'ext\u00E9rieur et l'affectation du participant se passe automatiquement. +warning.cannot.leave.group=Le participant est assign\u00E9 \u00E0 un groupe et le quitter n'est pas autoris\u00E9. diff --git a/src/main/java/org/olat/collaboration/CollaborationTools.java b/src/main/java/org/olat/collaboration/CollaborationTools.java index 7bebf36f6c8a94cf1a3665910c348cad89288774..d44dc60d21fad04260a1a8fe80194ab6f6349157 100644 --- a/src/main/java/org/olat/collaboration/CollaborationTools.java +++ b/src/main/java/org/olat/collaboration/CollaborationTools.java @@ -110,6 +110,7 @@ import org.olat.modules.portfolio.PortfolioService; import org.olat.modules.portfolio.PortfolioV2Module; import org.olat.modules.portfolio.manager.BinderUserInformationsDAO; import org.olat.modules.portfolio.ui.BinderController; +import org.olat.modules.wiki.DryRunAssessmentProvider; import org.olat.modules.wiki.WikiManager; import org.olat.modules.wiki.WikiSecurityCallback; import org.olat.modules.wiki.WikiSecurityCallbackImpl; @@ -521,7 +522,7 @@ public class CollaborationTools implements Serializable { initialPage = initialPage.substring(0, initialPage.length() - 2); } } - return WikiManager.getInstance().createWikiMainController(ureq, wControl, ores, callback, initialPage); + return WikiManager.getInstance().createWikiMainController(ureq, wControl, ores, callback, DryRunAssessmentProvider.create(), initialPage); } /** diff --git a/src/main/java/org/olat/collaboration/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/collaboration/_i18n/LocalStrings_fr.properties index d33a220566d0c1a8d1eb7f41ed8a32b595627171..7975e9b72c1daf59ecc2b767d1be012ee9b7a61f 100644 --- a/src/main/java/org/olat/collaboration/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/collaboration/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu May 31 16:23:21 CEST 2018 +#Sun Mar 01 07:40:30 CET 2020 calendar.access=Droit d'\u00E9criture calendrier calendar.access.all=Tous les membres calendar.access.owners=Propri\u00E9taire resp. tuteur @@ -22,3 +22,5 @@ folder.access.title=Configurer les permissions d'\u00E9criture du dossier news.access=Droit d'\u00E9criture des informations news.content=Information aux membres selection=S\u00E9lection +vfs.context.cts.folders=Dossier de groupe +vfs.context.cts.wikis=Wiki de groupe diff --git a/src/main/java/org/olat/commons/calendar/CalendarUtils.java b/src/main/java/org/olat/commons/calendar/CalendarUtils.java index 995f1b2eb2d0c87b27ef84134de938c9afc771c1..a7620f7fb033819791ec000e9a3bbfc688bc885a 100644 --- a/src/main/java/org/olat/commons/calendar/CalendarUtils.java +++ b/src/main/java/org/olat/commons/calendar/CalendarUtils.java @@ -400,6 +400,14 @@ public class CalendarUtils { return cal.getTime(); } + public static boolean isWorkingDay(Date date) { + if(date == null) return false; + + Calendar cal = Calendar.getInstance(); + cal.setTime(date); + int dayOfWeek = cal.get(Calendar.DAY_OF_WEEK); + return dayOfWeek != Calendar.SATURDAY && dayOfWeek != Calendar.SUNDAY; + } public static Long convertSecondsToMinutes(Long timeInSeconds) { if(timeInSeconds != null && timeInSeconds.longValue() > 0) { diff --git a/src/main/java/org/olat/commons/info/notification/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/commons/info/notification/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..d8f95d5bf55d0ab3b5222eb1feac5aeff953ba7b --- /dev/null +++ b/src/main/java/org/olat/commons/info/notification/_i18n/LocalStrings_ru.properties @@ -0,0 +1,4 @@ +#Mon Mar 02 07:26:21 CET 2020 +notification.title=\u0423\u0432\u0435\u0434\u043E\u043C\u043B\u0435\u043D\u0438\u044F \u0432 \u043A\u0443\u0440\u0441\u0435 "{0}" +notification.title.group=\u0423\u0432\u0435\u0434\u043E\u043C\u043B\u0435\u043D\u0438\u044F \u0432 \u0433\u0440\u0443\u043F\u043F\u0435 "{0}" +notifications.entry=\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435 "{0}" \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u043E {1} diff --git a/src/main/java/org/olat/commons/info/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/commons/info/ui/_i18n/LocalStrings_ru.properties index 448a762ccd6ab962c73a241af26c19c4644fa4b3..3c617851692b813b73e24b560fe17f9a382124bf 100644 --- a/src/main/java/org/olat/commons/info/ui/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/commons/info/ui/_i18n/LocalStrings_ru.properties @@ -1,8 +1,11 @@ -#Thu Jun 06 08:01:57 CEST 2013 +#Mon Mar 02 07:26:42 CET 2020 already.deleted=\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435 \u0431\u044B\u043B\u043E \u0443\u0434\u0430\u043B\u0435\u043D\u043E \u0434\u0440\u0443\u0433\u0438\u043C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u043C already.edited=\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435 \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044F \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u043C {0}. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u0435 \u043F\u043E\u043F\u044B\u0442\u043A\u0443 \u043F\u043E\u0437\u0436\u0435. +attachment=\u0424\u0430\u0439\u043B +attachment.max.size=\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0444\u0430\u0439\u043B\u0430 \u043E\u0433\u0440\u0430\u043D\u0438\u0447\u0435\u043D\u0430 {0} \u041A\u0411. \u042D\u0442\u043E\u0442 \u043B\u0438\u043C\u0438\u0442 \u0431\u044B\u043B \u043F\u0440\u0435\u0432\u044B\u0448\u0435\u043D. create_message=\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435 display.info=\u041E\u043F\u0443\u0431\u043B\u0438\u043A\u043E\u0432\u0430\u043D\u043E {0} {1} +display.info.noauthor=\u041E\u043F\u0443\u0431\u043B\u0438\u043A\u043E\u0432\u0430\u043D\u043E {0} display.modifier=\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u043E {0} {1} display.new_messages=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043D\u043E\u0432\u044B\u0435 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F display.no_messages=\u041D\u043E\u0432\u044B\u0445 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0439 \u043D\u0435\u0442 diff --git a/src/main/java/org/olat/commons/memberlist/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/commons/memberlist/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..184ee98339f669508cd9c82298d8d7779f5ba4c4 --- /dev/null +++ b/src/main/java/org/olat/commons/memberlist/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,14 @@ +#Mon Mar 02 07:30:14 CET 2020 +contact.list.coaches=\u0422\u0440\u0435\u043D\u0435\u0440\u044B +contact.list.external=\u0412\u043D\u0435\u0448\u043D\u0438\u0435 \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u0435\u043B\u0438 +contact.list.others=\u0420\u0430\u0437\u043D\u043E\u0435 +contact.list.owners=\u0412\u043B\u0430\u0434\u0435\u043B\u044C\u0446\u044B +contact.list.participants=\u0423\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u0438 +contact.list.waiting=\u041B\u0438\u0441\u0442 \u043E\u0436\u0438\u0434\u0430\u043D\u0438\u044F +nomembers=\u041D\u0435\u0442 \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u0432 +table.header.curriculum=\u0423\u0447\u0435\u0431\u043D\u044B\u0439 \u043F\u043B\u0430\u043D +table.header.curriculum.root.displayname=\u0418\u043C\u044F +table.header.curriculum.root.identifier=\u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 +table.header.firstTime=\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F +table.header.lastTime=\u041F\u043E\u0441\u043B\u0435\u0434\u043D\u0435\u0435 \u043F\u043E\u0441\u0435\u0449\u0435\u043D\u0438\u0435 +table.header.online=$org.olat.group.ui.main\:table.header.online diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_ru.properties index 6d0fa0d3c829ba0304b2704e14a1f5dbf0dfa9f2..9ffe5495776667c1e806eaf5782a76dcd87c7c8b 100644 --- a/src/main/java/org/olat/core/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/_i18n/LocalStrings_ru.properties @@ -1,4 +1,4 @@ -#Wed Sep 26 11:47:44 CEST 2018 +#Wed Feb 26 10:27:19 CET 2020 alert=\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0432\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043A\u0430\u043A \u043C\u0438\u043D\u0438\u043C\u0443\u043C \u043E\u0434\u0438\u043D \u043E\u0431\u044A\u0435\u043A\u0442 \u0434\u043B\u044F \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0438. back=\u041D\u0430\u0437\u0430\u0434 calendar.choose=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0430\u0442\u0443 \u0438\u0437 \u043C\u0438\u043D\u0438-\u043A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044F @@ -10,38 +10,65 @@ confirmation.no.toolHelp=\u041D\u0435\u0442 confirmation.yes.toolHelp=\u0414\u0430 contact=\u041A\u043E\u043D\u0442\u0430\u043A\u0442 delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C +disabled=\u041E\u0442\u043A\u043B\u044E\u0447\u0435\u043D edit=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C +enabled=\u0412\u043A\u043B\u044E\u0447\u0435\u043D\u043E error.header=\u041E\u0448\u0438\u0431\u043A\u0430 error.jpbwrapper.renderfailed=\u042D\u0442\u043E\u0442 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442 \u0431\u043E\u043B\u044C\u0448\u0435 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u043F\u043E\u043A\u0430\u0437\u0430\u043D. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u0435 \u0435\u0433\u043E \u0437\u0430\u043D\u043E\u0432\u043E. error.noformpostdata=\u0412\u043D\u0438\u043C\u0430\u043D\u0438\u0435\! \u041F\u043E \u043F\u0440\u0438\u0447\u0438\u043D\u0435 \u043F\u0440\u043E\u0431\u043B\u0435\u043C \u0432 \u0412\u0430\u0448\u0435\u043C \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u0431\u044B\u043B\u0438 \u043F\u0435\u0440\u0435\u0434\u0430\u043D\u044B \u043D\u0435 \u0432\u0441\u0435 \u0434\u0430\u043D\u043D\u044B\u0435. \u041D\u0430\u0436\u043C\u0438\u0442\u0435, \u043F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043A\u043D\u043E\u043F\u043A\u0443 "\u041D\u0430\u0437\u0430\u0434" \u0438 \u043F\u043E\u043F\u044B\u0442\u0430\u0439\u0442\u0435\u0441\u044C \u0435\u0449\u0451 \u0440\u0430\u0437. +error.post.method.mandatory=\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\! expand=\u0423\u0432\u0435\u043B\u0438\u0447\u0438\u0442\u044C +export=\u042D\u043A\u0441\u043F\u043E\u0440\u0442 +extsearch=\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0439 \u043F\u043E\u0438\u0441\u043A finish=\u0417\u0430\u043A\u043E\u043D\u0447\u0438\u0442\u044C form.checkall=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435 +form.closeall=\u0417\u0430\u043A\u0440\u044B\u0442\u044C \u0432\u0441\u0435 form.date.datevalid=\u0414\u0430\u0442\u0430 \u0434\u043E\u043B\u0436\u043D\u0430 \u0431\u044B\u0442\u044C \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0439 form.dirty=\u0412\u043D\u0438\u043C\u0430\u043D\u0438\u0435\! \u041D\u0435\u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0444\u043E\u0440\u043C\u0443\u043B\u044F\u0440\u0430 \u0435\u0449\u0451 \u043D\u0435 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u044B. \u0415\u0441\u043B\u0438 \u0432\u044B \u043D\u0430\u0436\u043C\u0451\u0442\u0435 \u043D\u0430 OK, \u0442\u043E \u044D\u0442\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0431\u0443\u0434\u0443\u0442 \u043F\u043E\u0442\u0435\u0440\u044F\u043D\u044B. +form.dirty.back=\u041D\u0430\u0436\u0430\u0432 <strong> $\: form.dirty.button.back </ strong>, \u0432\u044B \u0432\u0435\u0440\u043D\u0435\u0442\u0435\u0441\u044C \u0432 \u0444\u043E\u0440\u043C\u0443, \u0433\u0434\u0435 \u0441\u043C\u043E\u0436\u0435\u0442\u0435 \u0435\u0435 \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C. +form.dirty.button.back=\u0412\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F \u043A \u0444\u043E\u0440\u043C\u0435 +form.dirty.button.ignore=\u041D\u0435 \u0441\u043E\u0445\u0440\u0430\u043D\u044F\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435 +form.dirty.ignore=\u041D\u0430\u0436\u0430\u0432 <strong> $\: form.dirty.button.ignore </ strong> \u0432\u044B \u0432\u044B\u0439\u0434\u0435\u0442\u0435 \u0438\u0437 \u0444\u043E\u0440\u043C\u044B \u0431\u0435\u0437 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u044F. <strong> \u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F, \u0441\u0434\u0435\u043B\u0430\u043D\u043D\u044B\u0435 \u043D\u0430 \u044D\u0442\u043E\u0439 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435, \u0431\u0443\u0434\u0443\u0442 \u043F\u043E\u0442\u0435\u0440\u044F\u043D\u044B </ strong> +form.dirty.intro=\u0412\u043D\u0438\u043C\u0430\u043D\u0438\u0435\! \u0412\u044B \u0435\u0449\u0435 \u043D\u0435 \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u043B\u0438 \u044D\u0442\u0443 \u0444\u043E\u0440\u043C\u0443. +form.dirty.title=\u041D\u0435\u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0444\u043E\u0440\u043C\u044B +form.error.nointeger=\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043D\u043E\u043C\u0435\u0440. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0446\u0435\u043B\u043E\u0435 \u0447\u0438\u0441\u043B\u043E. +form.error.toolong=\u0412\u0430\u0448 \u0432\u0432\u043E\u0434 \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0434\u043B\u0438\u043D\u043D\u044B\u0439. \u0414\u043E\u043F\u0443\u0441\u043A\u0430\u0435\u0442\u0441\u044F \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {0} \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432. +form.error.tooshort=\u0412\u0430\u0448 \u0432\u0432\u043E\u0434 \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u043A\u043E\u0440\u043E\u0442\u043A\u0438\u0439. \u041C\u0438\u043D\u0438\u043C\u0443\u043C {0} \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u043E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u043C. form.general.error=\u0412\u043E\u0437\u043D\u0438\u043A\u043B\u0438 \u043E\u0448\u0438\u0431\u043A\u0438 \u0432 \u0432\u0432\u0435\u0434\u0451\u043D\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043D\u0438\u043C\u0430\u043D\u0438\u0435 \u043D\u0430 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E \u043D\u0430\u043F\u0440\u043E\u0442\u0438\u0432 \u043F\u043E\u043B\u0435\u0439 \u0432\u0432\u043E\u0434\u0430 \u0434\u0430\u043D\u043D\u044B\u0445. form.legende.mandatory=<i>\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0437\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u0435 \u044D\u0442\u043E \u043F\u043E\u043B\u0435 </i> form.legende.wikiMarkup=<i>\u042D\u0442\u043E \u043F\u043E\u043B\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u0442 \u0432\u0432\u043E\u0434 \u0434\u0430\u043D\u043D\u044B\u0445, \u043E\u0442\u0444\u043E\u0440\u043C\u0430\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0445 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u044F\u0437\u044B\u043A\u0430 \u0440\u0430\u0437\u043C\u0435\u0442\u043A\u0438 Wiki Markup </i> </br >*<b>\u0436\u0438\u0440\u043D\u044B\u0439</b>*<br>_<i>\u043A\u0443\u0440\u0441\u0438\u0432</i>_<br>* \u0421\u043F\u0438\u0441\u043A\u0438 \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432 form.mandatory.hover=\u042D\u0442\u043E \u043F\u043E\u043B\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u0437\u0430\u043F\u043E\u043B\u043D\u0435\u043D\u043E +form.openall=\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0432\u0441\u0435 form.uncheckall=\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C \u0432\u044B\u0431\u043E\u0440 form.wiki.hover=\u041C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0444\u043E\u0440\u043C\u0430\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043E \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u0441\u0438\u043D\u0442\u0430\u043A\u0441\u0438\u0441\u0430 \u0412\u0438\u043A\u0438. help=\u041F\u043E\u043C\u043E\u0449\u044C +help.button=\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0441\u043F\u0440\u0430\u0432\u043A\u0443 \u043F\u043E \u044D\u0442\u043E\u0439 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0432 \u0440\u0443\u043A\u043E\u0432\u043E\u0434\u0441\u0442\u0432\u0435 +help.manual=\u0420\u0443\u043A\u043E\u0432\u043E\u0434\u0441\u0442\u0432\u043E +help.tooltip.link=\u0414\u043B\u044F \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F \u0434\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0439 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u0438 \u043D\u0430\u0436\u043C\u0438\u0442\u0435 {0} info.header=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F info.saved=\u0412\u0430\u0448\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0431\u044B\u043B\u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u044B. input.toolong=\u0412\u0432\u0435\u0434\u0451\u043D\u043D\u044B\u0435 \u0412\u0430\u043C\u0438 \u0434\u0430\u043D\u043D\u044B\u0435 \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0434\u043B\u0438\u043D\u043D\u044B\u0435. legend=\u041F\u043E\u044F\u0441\u043D\u0435\u043D\u0438\u0435 logout=\u0412\u044B\u0439\u0442\u0438 module.change.warning=\u041D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u043F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C OpenOlat \u0447\u0442\u043E\u0431\u044B \u0412\u0430\u0448\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0432\u0441\u0442\u0443\u043F\u0438\u043B\u0438 \u0432 \u0441\u0438\u043B\u0443 +move.down=\u0414\u0432\u0438\u0433\u0430\u0442\u044C\u0441\u044F \u0432\u043D\u0438\u0437 +move.left=\u0414\u0432\u0438\u0433\u0430\u0442\u044C\u0441\u044F \u0432\u043B\u0435\u0432\u043E +move.right=\u0414\u0432\u0438\u0433\u0430\u0442\u044C\u0441\u044F \u0432\u043F\u0440\u0430\u0432\u043E +move.up=\u0414\u0432\u0438\u0433\u0430\u0442\u044C\u0441\u044F \u0432\u0432\u0435\u0440\u0445 +new=\u043D\u043E\u0432\u044B\u0439 new.form.mandatory=\u042D\u0442\u043E \u043F\u043E\u043B\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u0437\u0430\u043F\u043E\u043B\u043D\u0435\u043D\u043E. next=\u0414\u0430\u043B\u0435\u0435 no=\u041D\u0435\u0442 +off=\u043E\u0442 ok=OK +on=\u043D\u0430 opfailed=\u041E\u043F\u0435\u0440\u0430\u0446\u0438\u044E \u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u0431\u044B\u043B\u043E \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044C. opsuccess=\u041E\u043F\u0435\u0440\u0430\u0446\u0438\u044F \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0430. page.appname=OpenOlat page.title=\u043D\u0435\u043F\u0440\u0435\u0440\u044B\u0432\u043D\u043E\u0435 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435 placeholder={0} print=\u0420\u0430\u0441\u043F\u0435\u0447\u0430\u0442\u0430\u0442\u044C +quick.search=\u041F\u0440\u043E\u0441\u0442\u043E\u0439 \u043F\u043E\u0438\u0441\u043A rating.1.1=\u0414\u0430 rating.2.1=\u041F\u043B\u043E\u0445\u043E rating.2.2=\u0425\u043E\u0440\u043E\u0448\u043E @@ -58,7 +85,10 @@ rating.5.3=$\:rating.2.2 rating.5.4=$\:rating.4.4 rating.5.5=\u041E\u0442\u043B\u0438\u0447\u043D\u043E rating.explanation=\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0437\u0434\u0435\u0441\u044C, \u0447\u0442\u043E\u0431\u044B \u043E\u0446\u0435\u043D\u0438\u0442\u044C +reset=\u0421\u0431\u0440\u043E\u0441 save=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C +save.admin.settings=\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0430 +save.close=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438 \u0437\u0430\u043A\u0440\u044B\u0442\u044C savesas=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043A\u0430\u043A search=\u041F\u043E\u0438\u0441\u043A select=\u0412\u044B\u0431\u0440\u0430\u0442\u044C @@ -74,6 +104,9 @@ table.entries=\u0417\u0430\u043F\u0438\u0441\u0438 table.entries.dative=\u0417\u0430\u043F\u0438\u0441\u0438 table.entry=\u0417\u0430\u043F\u0438\u0441\u044C table.forward=\u0412\u043F\u0435\u0440\u0451\u0434 +table.header.choice=\u0412\u044B\u0431\u0440\u0430\u0442\u044C +table.sEmptyTable=\u0414\u0430\u043D\u043D\u044B\u0435 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0442 \u0432 \u0442\u0430\u0431\u043B\u0438\u0446\u0435 +table.sInfo=\u041E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 _START_ \u0434\u043B\u044F _END_ \u0438\u0437 _TOTAL_ \u0437\u0430\u043F\u0438\u0441\u0435\u0439 table.showall=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0432\u0441\u0435 table.showpages=\u0421\u0442\u0440\u0430\u043D\u0438\u0446\u044B this.language.in.english=Russian @@ -82,8 +115,10 @@ this.language.translator.names=Valentina Shcherba tomcat.options.restart=\u041F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u043D\u0435\u043C\u0435\u0434\u043B\u0435\u043D\u043D\u043E tomcat.options.restartonidle=\u041F\u0435\u0440\u0435\u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u043A\u0430\u043A \u0442\u043E\u043B\u044C\u043A\u043E \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0439 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C \u0432\u044B\u0439\u0434\u0435\u0442 \u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043C\u044B toolbox.actions=\u041E\u043F\u0435\u0440\u0430\u0446\u0438\u0438 +toolbox.tools=\u0410\u0434\u043C\u0438\u043D\u0438\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 top=\u043D\u0430\u0432\u0435\u0440\u0445 top.alt=\u041A \u043D\u0430\u0447\u0430\u043B\u0443 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u044B +user.fullname.separator=/ user.guest=\u0413\u043E\u0441\u0442\u044C warn.beta.feature=\u0412\u043D\u0438\u043C\u0430\u043D\u0438\u0435\! \u042D\u0442\u0430 \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u043D\u0430\u0445\u043E\u0434\u0438\u0442\u0441\u044F \u043D\u0430 \u0441\u0442\u0430\u0434\u0438\u0438 \u0438\u0441\u043F\u044B\u0442\u0430\u043D\u0438\u0439. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u0440\u0438\u043C\u0438\u0442\u0435 \u0432\u043E \u0432\u043D\u0438\u043C\u0430\u043D\u0438\u0435, \u0447\u0442\u043E \u043F\u0440\u0438 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0438 \u0434\u0430\u043D\u043D\u043E\u0439 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u043C\u043E\u0433\u0443\u0442 \u0432\u043E\u0437\u043D\u0438\u043A\u043D\u0443\u0442\u044C \u043E\u0448\u0438\u0431\u043A\u0438. warn.header=\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435 diff --git a/src/main/java/org/olat/core/commons/chiefcontrollers/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/chiefcontrollers/_i18n/LocalStrings_ru.properties index 59e65b279820121a440127daecc74fd8f8adef7f..3607a33f141992872b440c21d85781f8cebacaf3 100644 --- a/src/main/java/org/olat/core/commons/chiefcontrollers/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/commons/chiefcontrollers/_i18n/LocalStrings_ru.properties @@ -1,22 +1,30 @@ -#Mon Jan 18 16:15:52 CET 2010 +#Mon Mar 02 08:10:11 CET 2020 AssessmentManager=\u0418\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439 \u043E\u0446\u0435\u043D\u043A\u0438 \u0443\u0441\u043F\u0435\u0432\u0430\u0435\u043C\u043E\u0441\u0442\u0438 +Binder=\u041F\u043E\u0440\u0442\u0444\u043E\u043B\u0438\u043E 2.0 +BinderTemplate=\u0428\u0430\u0431\u043B\u043E\u043D \u041F\u043E\u0440\u0442\u0444\u043E\u043B\u0438\u043E 2.0 BusinessGroup=\u0413\u0440\u0443\u043F\u043F\u0430 CalendarManager=\u041A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044C CalendarManager.course=\u041A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044C \u043A\u0443\u0440\u0441\u0430 CalendarManager.group=\u041A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044C \u0433\u0440\u0443\u043F\u043F\u044B CatalogEntry=\u0417\u0430\u043F\u0438\u0441\u044C \u0432 \u043A\u0430\u0442\u0430\u043B\u043E\u0433\u0435 +CertificatesManager=\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u044B CourseBb=\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u043D\u044B\u0439 \u044D\u043B\u0435\u043C\u0435\u043D\u0442 \u043A\u0443\u0440\u0441\u0430 CourseModule=\u041A\u0443\u0440\u0441 DENCourseNode=\u0421\u043E\u0433\u043B\u0430\u0441\u043E\u0432\u0430\u0442\u044C \u0434\u0430\u0442\u0443 DialogElement=\u041E\u0431\u0441\u0443\u0436\u0434\u0435\u043D\u0438\u0435 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430 +DocumentPool=\u041F\u0443\u043B \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432 DropboxController=\u041F\u0430\u043F\u043A\u0430 \u0434\u043B\u044F \u043A\u0443\u0440\u0441\u0430 +EPStructuredMap=ePortfolio +EPStructuredMapTemplate=\u0428\u0430\u0431\u043B\u043E\u043D \u043F\u043E\u0440\u0442\u0444\u043E\u043B\u0438\u043E FileResource.ANIM=\u0410\u043D\u0438\u043C\u0430\u0446\u0438\u044F FileResource.BLOG=\u0411\u043B\u043E\u0433 FileResource.DOC=Word FileResource.FILE=\u0424\u0430\u0439\u043B +FileResource.FORM=\u041E\u043F\u0440\u043E\u0441 FileResource.GLOSSARY=\u0413\u043B\u043E\u0441\u0441\u0430\u0440\u0438\u0439 FileResource.IMAGE=\u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 FileResource.IMSCP=\u0423\u0447\u0435\u0431\u043D\u043E\u0435 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435 CP +FileResource.IMSQTI21=\u0422\u0435\u0441\u0442 (QTI 2.1) FileResource.MOVIE=\u0424\u0438\u043B\u044C\u043C FileResource.PDF=PDF FileResource.PODCAST=\u041F\u043E\u0434\u043A\u0430\u0441\u0442 @@ -26,11 +34,21 @@ FileResource.SHAREDFOLDER=\u041F\u0430\u043F\u043A\u0430 \u043C\u0430\u0442\u043 FileResource.SOUND=\u041C\u0443\u0437\u044B\u043A\u0430 FileResource.SURVEY=\u0410\u043D\u043A\u0435\u0442\u0430 FileResource.TEST=\u0422\u0435\u0441\u0442 +FileResource.VIDEO=\u0412\u0438\u0434\u0435\u043E FileResource.WIKI=\u0412\u0438\u043A\u0438 FileResource.XLS=Excel FolderModule=\u041F\u0430\u043F\u043A\u0430 Forum=\u0424\u043E\u0440\u0443\u043C +GroupTask=\u0417\u0430\u0434\u0430\u0447\u0430 +Inbox=\u0412\u0445\u043E\u0434\u044F\u0449\u0438\u0435 +InfoMessage=\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F +LibrarySite=\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430 +MarkedGroupTask=\u0417\u0430\u0434\u0430\u0447\u0430 (\u0438\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u0435) +PFCourseNode=Drop Box ReturnboxController=\u041F\u0430\u043F\u043A\u0430 \u0432\u043E\u0437\u0432\u0440\u0430\u0442\u0430 +SolutionController=\u041F\u0440\u0438\u043C\u0435\u0440\u044B \u0440\u0435\u0448\u0435\u043D\u0438\u0439 +TaxonomyLibrary=\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0442\u0438\u043A\u0438 +Templates=\u0428\u0430\u0431\u043B\u043E\u043D\u044B User=\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C WikiPage=\u0412\u0438\u043A\u0438 ajax.show.on=[Ajax-Beta-Mode] @@ -48,9 +66,15 @@ topnav.admin=\u0410\u0434\u043C\u0438\u043D\u0438\u0441\u0442\u0440\u0438\u0440\ topnav.admin.alt=\u0410\u0434\u043C\u0438\u043D\u0438\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 \u0434\u0430\u043D\u043D\u043E\u0439 \u0438\u043D\u0441\u0442\u0430\u043B\u043B\u044F\u0446\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043C\u044B OLAT topnav.buddygroups=\u0413\u0440\u0443\u043F\u043F\u044B topnav.buddygroups.alt=\u0420\u0430\u0431\u043E\u0442\u0430\u0439\u0442\u0435 \u0441 \u0433\u0440\u0443\u043F\u043F\u0430\u043C\u0438 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F \u0438 \u0440\u0430\u0431\u043E\u0447\u0438\u043C\u0438 \u0433\u0440\u0443\u043F\u043F\u0430\u043C\u0438 +topnav.catalog=\u041A\u0430\u0442\u0430\u043B\u043E\u0433 +topnav.catalog.admin=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043A\u0430\u0442\u0430\u043B\u043E\u0433\u0430\u043C\u0438 +topnav.catalog.admin.alt=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0443\u0447\u0435\u0431\u043D\u044B\u043C\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043C\u0438 \u0432 \u043A\u0430\u0442\u0430\u043B\u043E\u0433\u0435 +topnav.catalog.alt=\u041A\u0430\u0442\u0430\u043B\u043E\u0433 topnav.close=\u0417\u0430\u043A\u0440\u044B\u0442\u044C \u043E\u043A\u043D\u043E topnav.close.alt=\u0417\u0430\u043A\u0440\u044B\u0442\u044C \u044D\u0442\u043E \u043E\u043A\u043D\u043E topnav.closeRecent=\u0417\u0430\u043A\u0440\u044B\u0442\u044C +topnav.curriculum.admin=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0443\u0447\u0435\u0431\u043D\u044B\u043C \u043F\u043B\u0430\u043D\u043E\u043C +topnav.curriculum.admin.alt=\u0423\u043F\u0440\u0430\u0432\u043B\u044F\u0442\u044C \u0443\u0447\u0435\u0431\u043D\u043E\u0439 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u043E\u0439 topnav.dr=\u0423\u0447\u0435\u0431\u043D\u044B\u0435 \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B topnav.dr.alt=\u0418\u0441\u043A\u0430\u0442\u044C \u0443\u0447\u0435\u0431\u043D\u044B\u0435 \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B topnav.gm=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0433\u0440\u0443\u043F\u043F\u0430\u043C\u0438 @@ -59,6 +83,9 @@ topnav.guesthome=\u0414\u043E\u043C\u0430\u0448\u043D\u044F\u044F \u0441\u0442\u topnav.guesthome.alt=\u0414\u043E\u043C\u0430\u0448\u043D\u044F\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F "\u0433\u043E\u0441\u0442\u044C" topnav.home=\u0414\u043E\u043C\u0430\u0448\u043D\u044F\u044F topnav.home.alt=\u0412\u0430\u0448\u0430 \u0438\u0441\u0445\u043E\u0434\u043D\u0430\u044F \u0442\u043E\u0447\u043A\u0430 \u0432 \u0441\u0438\u0441\u0442\u0435\u043C\u0435 OLAT +topnav.mycourses=\u041A\u0443\u0440\u0441\u044B +topnav.portal=\u041F\u043E\u0440\u0442\u0430\u043B +topnav.portal.alt=\u0412\u0441\u0435 \u043F\u043E\u0440\u0442\u043B\u0435\u0442\u044B topnav.printview=\u0420\u0430\u0441\u043F\u0435\u0447\u0430\u0442\u0430\u0442\u044C topnav.printview.alt=\u0420\u0430\u0441\u043F\u0435\u0447\u0430\u0442\u0430\u0442\u044C \u0434\u0430\u043D\u043D\u0443\u044E \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 topnav.testing=\u0442\u0435\u0441\u0442 diff --git a/src/main/java/org/olat/core/commons/controllers/filechooser/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/controllers/filechooser/_i18n/LocalStrings_ru.properties index 4d010444659a18eb6430778ab1a5f7b989150e2e..3774e42a0d0f9542549cb85baf0c8c7e6e18f136 100644 --- a/src/main/java/org/olat/core/commons/controllers/filechooser/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/commons/controllers/filechooser/_i18n/LocalStrings_ru.properties @@ -1,7 +1,29 @@ -#Thu Jan 17 06:27:06 CET 2013 +#Wed Feb 26 10:34:23 CET 2020 +button.create=\u0421\u043E\u0437\u0434\u0430\u0442\u044C +calloutTrigerLink.select.site=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 +calloutTriggerLink=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435, \u0441\u043E\u0437\u0434\u0430\u0439\u0442\u0435 \u0438\u043B\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435 \u0444\u0430\u0439\u043B +calloutTriggerLink.replace=\u0417\u0430\u043C\u0435\u043D\u0438\u0442\u044C \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 +chooseLink=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0430\u0439\u043B +command.create=\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 \u0438 \u043E\u0442\u043A\u0440\u044B\u0442\u044C \u0435\u0435 \u0432 \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0435 +command.edit=\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 \u0432 \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0435 +command.preview.label=\u0412\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0439 \u0444\u0430\u0439\u043B HTML +command.remove=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 +createLink=\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u0444\u0430\u0439\u043B +error.deleted=\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043D\u043D\u044B\u0439 \u0444\u0430\u0439\u043B \u043D\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442. \u0421\u043E\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043B \u0441\u043D\u043E\u0432\u0430 \u0438\u043B\u0438 \u0432\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0440\u0443\u0433\u043E\u0439 \u0444\u0430\u0439\u043B. +error.name.empty=\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0438\u043C\u044F \u0434\u043B\u044F \u0444\u0430\u0439\u043B\u0430, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u043E\u0437\u0434\u0430\u043D filechooser.select.internallink.title=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u043D\u0443\u0442\u0440\u0435\u043D\u043D\u044E\u044E \u0441\u0441\u044B\u043B\u043A\u0443 filechooser.select.title=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044E\u0449\u0438\u0439 \u0444\u0430\u0439\u043B filechooser.tree.error.only.leafs=\u0423\u043A\u0430\u0437\u0430\u0442\u0435\u043B\u044C {0} \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0432\u044B\u0431\u0440\u0430\u043D, \u0442\u0430\u043A \u043A\u0430\u043A \u044D\u0442\u043E \u043D\u0435 \u0444\u0430\u0439\u043B. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0432\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0430\u0439\u043B. filechooser.tree.select.intro=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u044D\u043B\u0435\u043C\u0435\u043D\u0442 \u0438 \u043D\u0430\u0436\u043C\u0438\u0442\u0435 \u043A\u043D\u043E\u043F\u043A\u0443 "\u0412\u044B\u0431\u0440\u0430\u0442\u044C". filechooser.tree.select.title=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0444\u0430\u0439\u043B filechooser.upload.title=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0444\u0430\u0439\u043B +filecreator.filename=\u0418\u043C\u044F \u0444\u0430\u0439\u043B\u0430 +filecreator.filename.placeholder=\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u0434\u0435\u0441\u044C \u0438\u043C\u044F \u0444\u0430\u0439\u043B\u0430, \u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, my_file.html +filecreator.text.newfile=\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u043D\u043E\u0432\u0443\u044E HTML \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 +flexi.form.file=\u0424\u0430\u0439\u043B +flexi.form.filetobig=\u0424\u0430\u0439\u043B \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0439 +flexi.form.mustbefilled=\u043E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 +no.file.chosen=\u0424\u0430\u0439\u043B \u043D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D +uploadLink=\u0412\u044B\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0444\u0430\u0439\u043B +warning.already.exists=\u0412\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u0441\u043E\u0437\u0434\u0430\u0442\u044C \u043D\u043E\u0432\u0443\u044E \u043F\u0430\u043F\u043A\u0443 "{0}"? +warning.already.exists.title=\u041F\u0430\u043F\u043A\u0430 "{0}" \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 diff --git a/src/main/java/org/olat/core/commons/controllers/impressum/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/controllers/impressum/_i18n/LocalStrings_ru.properties index a76de6ed4b907f02ff6eb9d887774ded4c3291fe..f334cf89604c0d3772cbad10f7107b84e1c4dd40 100644 --- a/src/main/java/org/olat/core/commons/controllers/impressum/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/commons/controllers/impressum/_i18n/LocalStrings_ru.properties @@ -1,10 +1,22 @@ -#Thu Jun 06 07:46:51 CEST 2013 +#Thu Feb 27 08:22:43 CET 2020 ContactController.menu.title=\u041A\u043E\u043D\u0442\u0430\u043A\u0442 ContactController.menu.title.alt=\u041A\u043E\u043D\u0442\u0430\u043A\u0442 -ImpressumController.menu.title=\u041E\u0442\u043F\u0435\u0447\u0430\u0442\u043E\u043A +ImpressumController.menu.title=$\:menu.impressum +ImpressumController.menu.title.alt=$\:menu.impressum TermsOfUseController.menu.title=\u0423\u0441\u043B\u043E\u0432\u0438\u044F \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F TermsOfUseController.menu.title.alt=\u0423\u0441\u043B\u043E\u0432\u0438\u044F \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F +config.hint=\u0417\u0434\u0435\u0441\u044C \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0432\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0438 \u0432\u044B\u043A\u043B\u044E\u0447\u0438\u0442\u044C "\u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E \u043E \u0441\u0430\u0439\u0442\u0435", \u0440\u0430\u0441\u043F\u043E\u043B\u043E\u0436\u0438\u0442\u044C \u0435\u0433\u043E \u0438 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0442\u0435\u043A\u0441\u0442. contact.to=\u0421\u0435\u043A\u0440\u0435\u0442\u0430\u0440\u044C contactform.intro=\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u043D\u0430\u044F \u0444\u043E\u0440\u043C\u0430 \u0434\u043B\u044F \u043E\u0431\u0449\u0438\u0445 \u0432\u043E\u043F\u0440\u043E\u0441\u043E\u0432 contactform.title=\u041A\u043E\u043D\u0442\u0430\u043A\u0442 -main.menu.title=\u041E\u0442\u043F\u0435\u0447\u0430\u0442\u043E\u043A +enable=\u043D\u0430 +enable.impressum=\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C "\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0441\u0430\u0439\u0442\u0435" +impressum.file=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0441\u0430\u0439\u0442\u0435 \u0432 +main.menu.title=$\:menu.impressum +main.menu.title.alt=$\:menu.impressum +menu.impressum=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0441\u0430\u0439\u0442\u0435 +menu.impressum.alt=$\:menu.impressum +position=\u041F\u043E\u0437\u0438\u0446\u0438\u044F +position.footer=\u041D\u0438\u0436\u043D\u0438\u0439 \u043A\u043E\u043B\u043E\u043D\u0442\u0438\u0442\u0443\u043B +position.top=\u0412\u0432\u0435\u0440\u0445\u0443 +termofuse.file=\u0423\u0441\u043B\u043E\u0432\u0438\u044F \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F diff --git a/src/main/java/org/olat/core/commons/controllers/resume/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/controllers/resume/_i18n/LocalStrings_ru.properties index 3a607fd14387d19a028ccd5578cd4dd55c7d917d..529a49dc3ccd441ca2cbc54406d1ae79889bddd2 100644 --- a/src/main/java/org/olat/core/commons/controllers/resume/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/commons/controllers/resume/_i18n/LocalStrings_ru.properties @@ -1,5 +1,6 @@ -#Thu Jun 06 07:47:43 CEST 2013 +#Wed Feb 26 11:48:42 CET 2020 askagain.label=\u041D\u0435 \u043F\u043E\u0432\u0442\u043E\u0440\u044F\u0442\u044C \u0432\u043E\u043F\u0440\u043E\u0441 resume=\u0412\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u0432\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u0412\u0430\u0448 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0439 \u0441\u0435\u0430\u043D\u0441? resume.button=\u0414\u0430 resume.button.cancel=\u041D\u0435\u0442 +resume.button.landing=\u0421\u0442\u0430\u0440\u0442\u043E\u0432\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 diff --git a/src/main/java/org/olat/core/commons/editor/fileeditor/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/editor/fileeditor/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..877597b0eb0dcdcaa0c845a78323678b6ef93835 --- /dev/null +++ b/src/main/java/org/olat/core/commons/editor/fileeditor/_i18n/LocalStrings_ru.properties @@ -0,0 +1,2 @@ +#Wed Feb 26 11:48:49 CET 2020 +editor.display.name=OpenOlat diff --git a/src/main/java/org/olat/core/commons/editor/plaintexteditor/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/editor/plaintexteditor/_i18n/LocalStrings_ru.properties index ec4ca641fcf26950c736e13424d94b70a08c85b8..b66a49384fa85f7abbdcbaa7c34ff9628db82e3a 100644 --- a/src/main/java/org/olat/core/commons/editor/plaintexteditor/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/commons/editor/plaintexteditor/_i18n/LocalStrings_ru.properties @@ -1,3 +1,6 @@ -#Mon Mar 02 21:04:31 CET 2009 +#Wed Feb 26 11:49:09 CET 2020 +close=\u0417\u0430\u043A\u0440\u044B\u0442\u044C +file.name={0} plaintext.error.tolarge=\u0414\u0430\u043D\u043D\u044B\u0439 \u0444\u0430\u0439\u043B \u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u0431\u044B\u043B\u043E \u043E\u0442\u043A\u0440\u044B\u0442\u044C, \u0442\u0430\u043A \u043A\u0430\u043A \u043E\u043D \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0439 ({0} \u041A\u0431\u0430\u0439\u0442). \u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u044B \u0444\u0430\u0439\u043B\u044B \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {1} \u041A\u0431\u0430\u0439\u0442. +save.close=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438 \u0437\u0430\u043A\u0440\u044B\u0442\u044C textarea=\u0421\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430 diff --git a/src/main/java/org/olat/core/commons/fullWebApp/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/fullWebApp/_i18n/LocalStrings_ru.properties index 8548f35f1c12c8cbc59da882ca0e2fd39536007f..fe20a628231e34fb87b67a0ae2aad9e586c01063 100644 --- a/src/main/java/org/olat/core/commons/fullWebApp/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/commons/fullWebApp/_i18n/LocalStrings_ru.properties @@ -1,5 +1,7 @@ -#Mon Mar 02 22:47:38 CET 2009 +#Mon Mar 02 08:11:55 CET 2020 +access.skip.to.content=\u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043A \u043E\u0441\u043D\u043E\u0432\u043D\u043E\u043C\u0443 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u044E accesskey.back=\u0412\u0435\u0440\u043D\u0443\u0442\u044C\u0441\u044F \u043D\u0430 \u043E\u0434\u0438\u043D \u0448\u0430\u0433 \u043D\u0430\u0437\u0430\u0434 (\u0435\u0441\u043B\u0438 \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E) +accesskey.changes=\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u044B \u043E\u0431\u043B\u0430\u0441\u0442\u0438 \u044D\u043A\u0440\u0430\u043D\u0430 (\u0440\u0435\u0436\u0438\u043C Web2.a \u0442\u043E\u043B\u044C\u043A\u043E \u0432 IE)\: u, u, u ... accesskey.content=\u041E\u0431\u043B\u0430\u0441\u0442\u044C \u0434\u043B\u044F \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u044F accesskey.menu=\u041C\u0435\u043D\u044E accesskey.modal=\u041C\u043E\u0434\u0430\u043B\u044C\u043D\u043E\u0435 \u0434\u0438\u0430\u043B\u043E\u0433\u043E\u0432\u043E\u0435 \u043E\u043A\u043D\u043E (\u0435\u0441\u043B\u0438 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u043E) @@ -11,20 +13,26 @@ accesskey.title=\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044F \u043F\u0 accesskey.tools=\u041F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B \u0438 \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0438 accesskey.top=\u041D\u0430\u0447\u0430\u043B\u043E \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u044B accesskey.topnav=\u0412\u0435\u0440\u0445 \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438 +content.width.full=\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 \u043F\u043E\u043B\u043D\u0443\u044E \u0448\u0438\u0440\u0438\u043D\u0443 \u043E\u043A\u043D\u0430 \u0434\u043B\u044F \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430, \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0433\u043E \u0434\u043B\u044F \u043D\u0435\u0433\u0430\u0431\u0430\u0440\u0438\u0442\u043D\u043E\u0433\u043E \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430 +content.width.standard=\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 \u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u0443\u044E \u0448\u0438\u0440\u0438\u043D\u0443 \u0434\u043B\u044F \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430, \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u0443\u044E \u0434\u043B\u044F \u0447\u0442\u0435\u043D\u0438\u044F \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430 +error.head=\u041E\u0448\u0438\u0431\u043A\u0430 footer.ajax.hover=AJAX \u043C\u043E\u0434\u0443\u0441 \u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u043D -- \u044D\u0442\u043E \u043E\u0437\u043D\u0430\u0447\u0430\u0435\u0442 \u0431\u044B\u0441\u0442\u0440\u043E\u0435 \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435 \u0432 \u044D\u0442\u043E\u0439 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0435. footer.logged.in.as=\u0410\u0432\u0442\u043E\u0440\u0438\u0437\u043E\u0432\u0430\u043D \u043A\u0430\u043A <i>{0}</i> footer.not.logged.in=\u041D\u0435 \u0430\u0432\u0442\u043E\u0440\u0438\u0437\u043E\u0432\u0430\u043D footer.users.online=\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439 \u0432 \u0440\u0435\u0436\u0438\u043C\u0435 \u043E\u043D\u043B\u0430\u0439\u043D +goto.login=\u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043D\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 \u0432\u0445\u043E\u0434\u0430 header.topnav.close=\u0417\u0430\u043A\u0440\u044B\u0442\u044C \u043E\u043A\u043D\u043E header.topnav.close.alt=\u0417\u0430\u043A\u0440\u043E\u0439\u0442\u0435 \u044D\u0442\u043E \u043E\u043A\u043D\u043E header.topnav.login=\u041B\u043E\u0433\u0438\u043D header.topnav.login.alt=\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043B\u043E\u0433\u0438\u043D header.topnav.logout=\u0412\u044B\u0445\u043E\u0434 header.topnav.logout.alt=\u0412\u044B\u0445\u043E\u0434 \u0438\u0437 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B +header.topnav.more=\u0411\u043E\u043B\u044C\u0448\u0435 header.topnav.printview=\u041F\u0435\u0447\u0430\u0442\u044C header.topnav.printview.alt=\u0420\u0430\u0441\u043F\u0435\u0447\u0430\u0442\u0430\u0442\u044C \u044D\u0442\u0443 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 preview.close=\u0417\u0430\u043A\u0440\u044B\u0442\u044C \u043F\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 resize.clear.tooltip=\u0412\u0435\u0440\u043D\u0443\u0442\u044C \u0448\u0438\u0440\u0438\u043D\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0430 \u0432 \u0438\u0441\u0445\u043E\u0434\u043D\u043E\u0435 \u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435 resize.compress.tooltip=\u0423\u043C\u0435\u043D\u044C\u0448\u0438\u0442\u044C \u0448\u0438\u0440\u0438\u043D\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0430 resize.expand.tooltip=\u0423\u0432\u0435\u043B\u0438\u0447\u0438\u0442\u044C \u0448\u0438\u0440\u0438\u043D\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0430 +support.email=\u0415\u0441\u043B\u0438 \u043F\u0440\u043E\u0431\u043B\u0435\u043C\u044B \u043D\u0435 \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u0440\u0435\u0448\u0435\u043D\u044B, \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044C \u0432 \u0441\u043B\u0443\u0436\u0431\u0443 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0438 \u043F\u043E \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u043C\u0443 \u0430\u0434\u0440\u0435\u0441\u0443\: warn.tabsfull=\u041E\u0442\u043A\u0440\u044B\u0442\u043E \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u043D\u043E\u0433\u043E \u0432\u043A\u043B\u0430\u0434\u043E\u043A. \u0417\u0430\u043A\u0440\u043E\u0439\u0442\u0435 \u0441\u043D\u0430\u0447\u0430\u043B\u0430 \u043E\u0434\u043D\u0443 \u0432\u043A\u043B\u0430\u0434\u043A\u0443 \u043F\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043C \u043E\u0442\u043A\u0440\u044B\u0442\u044C \u0434\u0440\u0443\u0433\u0443\u044E. diff --git a/src/main/java/org/olat/core/commons/services/analytics/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/analytics/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..02932c461ded9db73df1cbb1146b7535c7acb9c9 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/analytics/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,16 @@ +#Wed Feb 26 11:53:13 CET 2020 +admin.menu.title=\u0410\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430 +admin.menu.title.alt=\u0410\u043D\u0430\u043B\u0438\u0437 \u043F\u043E\u0432\u0435\u0434\u0435\u043D\u0438\u044F \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439 +analytics.desc=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0438 \u0434\u043B\u044F \u0430\u043D\u0430\u043B\u0438\u0437\u0430 \u043F\u043E\u0432\u0435\u0434\u0435\u043D\u0438\u044F \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0438. +analytics.disabled=\u041E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u043C\u043E\u0434\u0443\u043B\u044C \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0438 +analytics.google.desc=\u0415\u0441\u043B\u0438 \u0443 \u0412\u0430\u0441 \u0435\u0441\u0442\u044C \u0443\u0447\u0435\u0442\u043D\u0430\u044F \u0437\u0430\u043F\u0438\u0441\u044C Google Analytics, \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0438\u0442\u044C \u0441\u0432\u043E\u0439 \u0438\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 \u043E\u0442\u0441\u043B\u0435\u0436\u0438\u0432\u0430\u043D\u0438\u044F Google \u0434\u043B\u044F \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u044F \u043F\u043E\u0434\u0440\u043E\u0431\u043D\u044B\u0445 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u0434\u0430\u043D\u043D\u044B\u0445 \u0438 \u0434\u0430\u043D\u043D\u044B\u0445 \u0432 \u0440\u0435\u0430\u043B\u044C\u043D\u043E\u043C \u0432\u0440\u0435\u043C\u0435\u043D\u0438 \u043E\u0431 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0438 \u0432\u0430\u0448\u0435\u0439 \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0438 OpenOlat. +analytics.google.title=\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F Google Analytics +analytics.google.tracking.id=\u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 \u043E\u0442\u0441\u043B\u0435\u0436\u0438\u0432\u0430\u043D\u0438\u044F (Tracking ID) +analytics.privacy=\u041E\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043D\u0438\u043C\u0430\u043D\u0438\u0435, \u0447\u0442\u043E \u0432\u044B, \u043A\u0430\u043A \u043E\u043F\u0435\u0440\u0430\u0442\u043E\u0440 \u043F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u044B, \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u0438 \u043E\u0431\u044F\u0437\u0430\u043D\u044B \u0438\u043D\u0444\u043E\u0440\u043C\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441\u0432\u043E\u0438\u0445 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439 \u043E\u0431 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0438 Google Analytics. +analytics.service=\u0410\u043D\u0430\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u0430\u044F \u0441\u043B\u0443\u0436\u0431\u0430 +analytics.title=\u0410\u043D\u0430\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0439 \u043C\u043E\u0434\u0443\u043B\u044C +matomo.desc=\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 Matomo +matomo.site.id=Site ID +matomo.title=Matomo (Piwik) +matomo.tracker.code=JavaScript-Tracking-Code +matomo.tracker.url=Matomo URL diff --git a/src/main/java/org/olat/core/commons/services/csp/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/csp/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..30ec41b912826bedc772afe8ef73e7a03920091e --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/csp/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,23 @@ +#Wed Feb 26 11:58:13 CET 2020 +blocked.uri=\u0417\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439 URI +column.number=\u041D\u043E\u043C\u0435\u0440 \u043A\u043E\u043B\u043E\u043D\u043A\u0438 +date=\u0414\u0430\u0442\u0430 +document.uri=URI \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430 +effective.directive=\u0414\u0438\u0440\u0435\u043A\u0442\u0438\u0432\u0430 +line.number=\u041D\u043E\u043C\u0435\u0440 \u0441\u0442\u0440\u043E\u043A\u0438 +original.policy=\u041E\u0440\u0438\u0433\u0438\u043D\u0430\u043B\u044C\u043D\u0430\u044F \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0430 +referrer=C\u0441\u044B\u043B\u0430\u044E\u0449\u0435\u0439\u0441\u044F +script.sample=\u041F\u0440\u0438\u043C\u0435\u0440 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u044F +source.file=\u0424\u0430\u0439\u043B +table.header.blocked.uri=\u0417\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439 URI +table.header.column.number=\u041A\u043E\u043B\u043E\u043D\u043A\u0430 +table.header.date=\u0414\u0430\u0442\u0430 +table.header.document.uri=\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442 +table.header.effective.directive=\u0414\u0438\u0440\u0435\u043A\u0442\u0438\u0432\u0430 +table.header.key=ID +table.header.line.number=\u041B\u0438\u043D\u0438\u044F +table.header.original.policy=\u041F\u043E\u043B\u0438\u0442\u0438\u043A\u0430 +table.header.referrer=\u0421\u0441\u044B\u043B\u0430\u044E\u0449\u0435\u0439\u0441\u044F +table.header.source.file=\u0424\u0430\u0439\u043B +user=\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C +violated.directive=\u041D\u0430\u0440\u0443\u0448\u0438\u043B \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0443 diff --git a/src/main/java/org/olat/core/commons/services/doceditor/collabora/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/doceditor/collabora/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..35eaa84ef4c9774ba54d40cb0332f6062f01e8bd --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/doceditor/collabora/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,12 @@ +#Thu Feb 27 07:46:27 CET 2020 +admin.desc=Collabora Online - \u044D\u0442\u043E \u043C\u043E\u0449\u043D\u044B\u0439 \u043E\u043D\u043B\u0430\u0439\u043D-\u043E\u0444\u0438\u0441 \u043D\u0430 \u0431\u0430\u0437\u0435 LibreOffice, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0432\u0441\u0435 \u043E\u0441\u043D\u043E\u0432\u043D\u044B\u0435 \u0444\u043E\u0440\u043C\u0430\u0442\u044B \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432, \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u044B\u0445 \u0442\u0430\u0431\u043B\u0438\u0446 \u0438 \u0444\u0430\u0439\u043B\u043E\u0432 \u043F\u0440\u0435\u0437\u0435\u043D\u0442\u0430\u0446\u0438\u0439. \u041A\u043B\u044E\u0447\u0435\u0432\u044B\u0435 \u043E\u0441\u043E\u0431\u0435\u043D\u043D\u043E\u0441\u0442\u0438 - \u0441\u043E\u0432\u043C\u0435\u0441\u0442\u043D\u043E\u0435 \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 \u0438 \u043E\u0442\u043B\u0438\u0447\u043D\u0430\u044F \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u0444\u043E\u0440\u043C\u0430\u0442\u043E\u0432 \u043E\u0444\u0438\u0441\u043D\u044B\u0445 \u0444\u0430\u0439\u043B\u043E\u0432. \u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u0443\u044E \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E \u043C\u043E\u0436\u043D\u043E \u043D\u0430\u0439\u0442\u0438 \u043D\u0430 <a href\="https\://www.collaboraoffice.com/collabora-online/" target\=_blank> \u0432\u0435\u0431-\u0441\u0430\u0439\u0442\u0435 </a> Collabora. +admin.enabled=\u041C\u043E\u0434\u0443\u043B\u044C "Collabora Online" +admin.refresh.discovery=\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C +admin.refresh.discovery.help=WOPI Discovery \u0445\u0440\u0430\u043D\u0438\u0442 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E \u043E \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043C\u044B\u0445 \u0442\u0438\u043F\u0430\u0445 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432. \u041F\u043E\u043B\u0443\u0447\u0430\u0435\u0442\u0441\u044F \u043E\u0434\u0438\u043D \u0440\u0430\u0437 \u043E\u0442 Collabora Online. \u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u044D\u0442\u0443 \u043A\u043D\u043E\u043F\u043A\u0443, \u0447\u0442\u043E\u0431\u044B \u043E\u0431\u043D\u043E\u0432\u0438\u0442\u044C WOPI Discovery, \u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, \u043F\u043E\u0441\u043B\u0435 \u043E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u044F Collabora Online. +admin.refresh.discovery.label=\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C WOPI discovery +admin.test=\u0422\u0435\u0441\u0442 +admin.title=Collabora Online +admin.url=URL +editor.display.name=Collabora Online +editor.warning.locked=\u042D\u0442\u043E\u0442 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442 \u0443\u0436\u0435 \u043E\u0442\u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D \u0432 \u0434\u0440\u0443\u0433\u043E\u043C \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0435 \u0438 \u043F\u043E\u044D\u0442\u043E\u043C\u0443 \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044F \u0432 \u0440\u0435\u0436\u0438\u043C\u0435 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F \u0447\u0442\u0435\u043D\u0438\u044F. +editor.warning.no.metadata=\u041D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u043E\u0442\u043E\u0431\u0440\u0430\u0437\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442. diff --git a/src/main/java/org/olat/core/commons/services/doceditor/office365/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/doceditor/office365/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..c6aebd7fa7210b1d33f50f3dd85b803173e9d351 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/doceditor/office365/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,12 @@ +#Thu Feb 27 07:48:00 CET 2020 +admin.certification=\u041F\u0440\u043E\u0446\u0435\u0441\u0441 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u0438 \u0434\u043B\u044F \u043E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u0432\u044B\u043F\u0443\u0441\u043A\u0430 \u0438\u043D\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 Microsoft Office \u0432 \u0418\u043D\u0442\u0435\u0440\u043D\u0435\u0442\u0435 \u0432 \u043D\u0430\u0441\u0442\u043E\u044F\u0449\u0435\u0435 \u0432\u0440\u0435\u043C\u044F \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0430\u0435\u0442\u0441\u044F. \u041A \u0441\u043E\u0436\u0430\u043B\u0435\u043D\u0438\u044E, \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435 \u044D\u0442\u043E\u0433\u043E \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0430 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432 \u0435\u0449\u0435 \u043D\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u043E \u0434\u043E \u043E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F. \u0421\u043F\u0430\u0441\u0438\u0431\u043E \u0437\u0430 \u043F\u043E\u043D\u0438\u043C\u0430\u043D\u0438\u0435. +admin.desc=Office Online \u043F\u043E\u0437\u0432\u043E\u043B\u044F\u0435\u0442 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F\u043C \u043F\u0440\u043E\u0441\u043C\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044C \u0438 \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0444\u0430\u0439\u043B\u044B Excel, PowerPoint \u0438 Word \u043D\u0435\u043F\u043E\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043D\u043D\u043E \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435. \u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u0430\u044F \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430 \u043D\u0430 <a href\="https\://www.office.com/" target\=_blank> \u0432\u0435\u0431-\u0441\u0430\u0439\u0442\u0435 </a> Microsoft. +admin.enabled=\u041C\u043E\u0434\u0443\u043B\u044C "Office Online" +admin.refresh.discovery=\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C +admin.refresh.discovery.help=WOPI Discovery \u0445\u0440\u0430\u043D\u0438\u0442 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E \u043E \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043C\u044B\u0445 \u0442\u0438\u043F\u0430\u0445 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432. \u041E\u043D \u043E\u0431\u043D\u043E\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438 \u043D\u0430 \u0440\u0435\u0433\u0443\u043B\u044F\u0440\u043D\u043E\u0439 \u043E\u0441\u043D\u043E\u0432\u0435. \u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u044D\u0442\u0443 \u043A\u043D\u043E\u043F\u043A\u0443, \u0447\u0442\u043E\u0431\u044B \u043E\u0431\u043D\u043E\u0432\u0438\u0442\u044C WOPI Discovery \u0441\u0435\u0439\u0447\u0430\u0441. +admin.refresh.discovery.label=\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C WOPI discovery +admin.title=Office Online +admin.url=URL +editor.display.name=Office Online +editor.warning.locked=\u042D\u0442\u043E\u0442 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442 \u0443\u0436\u0435 \u043E\u0442\u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D \u0432 \u0434\u0440\u0443\u0433\u043E\u043C \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0435 \u0438 \u043F\u043E\u044D\u0442\u043E\u043C\u0443 \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044F \u0432 \u0440\u0435\u0436\u0438\u043C\u0435 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F \u0447\u0442\u0435\u043D\u0438\u044F. +editor.warning.no.metadata=\u041D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u043E\u0442\u043E\u0431\u0440\u0430\u0437\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442. diff --git a/src/main/java/org/olat/core/commons/services/doceditor/onlyoffice/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/doceditor/onlyoffice/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..45989f0eb304fb15d718b29f09e2eb80a4b89298 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/doceditor/onlyoffice/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,11 @@ +#Thu Feb 27 08:30:53 CET 2020 +admin.base.url=URL +admin.desc=ONLYOFFICE - \u044D\u0442\u043E \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u043D\u043E\u0435 \u043E\u0431\u0435\u0441\u043F\u0435\u0447\u0435\u043D\u0438\u0435 \u0434\u043B\u044F \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432 \u043E\u043D\u043B\u0430\u0439\u043D. \u041E\u043D \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0432\u0441\u0435 \u043E\u0441\u043D\u043E\u0432\u043D\u044B\u0435 \u0444\u043E\u0440\u043C\u0430\u0442\u044B \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432, \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u044B\u0445 \u0442\u0430\u0431\u043B\u0438\u0446 \u0438 \u0444\u0430\u0439\u043B\u043E\u0432 \u043F\u0440\u0435\u0437\u0435\u043D\u0442\u0430\u0446\u0438\u0439. \u041A\u043B\u044E\u0447\u0435\u0432\u044B\u0435 \u043E\u0441\u043E\u0431\u0435\u043D\u043D\u043E\u0441\u0442\u0438 - \u0441\u043E\u0432\u043C\u0435\u0441\u0442\u043D\u043E\u0435 \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 \u0438 \u043E\u0442\u043B\u0438\u0447\u043D\u0430\u044F \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u0444\u043E\u0440\u043C\u0430\u0442\u043E\u0432 \u043E\u0444\u0438\u0441\u043D\u044B\u0445 \u0444\u0430\u0439\u043B\u043E\u0432. \u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u0430\u044F \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430 \u043D\u0430 <a href\="https\://www.onlyoffice.com/" target\=_blank> \u0432\u0435\u0431-\u0441\u0430\u0439\u0442\u0435 </a> ONLYOFFICE. +admin.enabled=\u041C\u043E\u0434\u0443\u043B\u044C "ONLYOFFICE" +admin.jwt.secret=\u0421\u0435\u043A\u0440\u0435\u0442 +admin.jwt.secret.invalid=\u0421\u0435\u043A\u0440\u0435\u0442 \u043D\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u0435\u043D. \u0412\u0435\u0440\u043E\u044F\u0442\u043D\u043E, \u044D\u0442\u043E \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u043A\u043E\u0440\u043E\u0442\u043A\u043E. \u0421\u043C. \u0421\u043F\u0435\u0446\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u044E JWA (RFC 7518, \u0440\u0430\u0437\u0434\u0435\u043B 3.2). +admin.title=ONLYOFFICE +editor.display.name=ONLYOFFICE +editor.warning.locked=\u042D\u0442\u043E\u0442 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442 \u0443\u0436\u0435 \u043E\u0442\u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D \u0432 \u0434\u0440\u0443\u0433\u043E\u043C \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0435 \u0438 \u043F\u043E\u044D\u0442\u043E\u043C\u0443 \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044F \u0432 \u0440\u0435\u0436\u0438\u043C\u0435 \u0442\u043E\u043B\u044C\u043A\u043E \u0434\u043B\u044F \u0447\u0442\u0435\u043D\u0438\u044F. +editor.warning.no.api.config=\u041D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u043E\u0442\u043E\u0431\u0440\u0430\u0437\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442. +editor.warning.no.metadata=\u041D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u043E\u0442\u043E\u0431\u0440\u0430\u0437\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442. diff --git a/src/main/java/org/olat/core/commons/services/doceditor/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/core/commons/services/doceditor/ui/_i18n/LocalStrings_fr.properties index c714c6dc0bbb332568a78925feb3e5bddb98ed5b..f3efa888f19a7069928f558834537b6d8aecdddd 100644 --- a/src/main/java/org/olat/core/commons/services/doceditor/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/core/commons/services/doceditor/ui/_i18n/LocalStrings_fr.properties @@ -1,14 +1,14 @@ -#Mon Jun 24 22:36:24 CEST 2019 +#Sun Mar 01 07:29:14 CET 2020 admin.collabora=$org.olat.core.commons.services.doceditor.collabora.ui\:editor.display.name admin.data.transfer.confirmation.enabled=Confirmer le transfert de donn\u00E9es admin.menu.title=Editeurs de documents admin.menu.title.alt=Editeurs de documents admin.office365=$org.olat.core.commons.services.doceditor.office365.ui\:editor.display.name admin.onlyoffice=$org.olat.core.commons.services.doceditor.onlyoffice.ui\:editor.display.name -admin.usage.roles.help=Si vous activez cette option, personne en dehors des r\u00F4les explicitement choisis ne pourront utiliser cet \u00E9diteur. Seuls les administrateurs peuvent utiliser cet \u00E9diteur \u00E0 tout moment. admin.usage.roles=Restrictions d'usage \u00E0 admin.usage.roles.author=Auteurs admin.usage.roles.coach=Coach +admin.usage.roles.help=Si vous activez cette option, personne en dehors des r\u00F4les explicitement choisis ne pourront utiliser cet \u00E9diteur. Seuls les administrateurs peuvent utiliser cet \u00E9diteur \u00E0 tout moment. admin.usage.roles.managers=Manager create.doc.already.exists=$org.olat.core.commons.modules.bc\:cfile.already.exists create.doc.button=Cr\u00E9er un document @@ -24,4 +24,5 @@ doc.type.html=Document HTML doc.type.pptx=PowerPoint doc.type.txt=Texte doc.type.xlsx=Excel +doc.type.xml=Extensible Markup Language error.no.editor=Le fichier ne peut pas \u00EAtre ouvert. diff --git a/src/main/java/org/olat/core/commons/services/doceditor/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/doceditor/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..44948bf5d0182925e1ed7ddaffcbd8594488dd81 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/doceditor/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,28 @@ +#Fri Feb 28 09:46:20 CET 2020 +admin.collabora=$org.olat.core.commons.services.doceditor.collabora.ui\:editor.display.name +admin.data.transfer.confirmation.enabled=\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435 \u043F\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043D\u043D\u044B\u0445 +admin.menu.title=\u0420\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u044B \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432 +admin.menu.title.alt=\u0420\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u044B \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432 +admin.office365=$org.olat.core.commons.services.doceditor.office365.ui\:editor.display.name +admin.onlyoffice=$org.olat.core.commons.services.doceditor.onlyoffice.ui\:editor.display.name +admin.usage.roles=\u041E\u0433\u0440\u0430\u043D\u0438\u0447\u0438\u0442\u044C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435 \u0434\u043E +admin.usage.roles.author=\u0410\u0432\u0442\u043E\u0440\u044B +admin.usage.roles.coach=\u0422\u0440\u0435\u043D\u0435\u0440\u044B +admin.usage.roles.help=\u0415\u0441\u043B\u0438 \u0432\u044B \u0432\u043A\u043B\u044E\u0447\u0438\u0442\u0435 \u044D\u0442\u0443 \u043E\u043F\u0446\u0438\u044E, \u043D\u0438\u043A\u0442\u043E, \u043A\u0440\u043E\u043C\u0435 \u044F\u0432\u043D\u043E \u0443\u043A\u0430\u0437\u0430\u043D\u043D\u044B\u0445 \u0440\u043E\u043B\u0435\u0439 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F, \u043D\u0435 \u0441\u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440. \u0422\u043E\u043B\u044C\u043A\u043E \u0430\u0434\u043C\u0438\u043D\u0438\u0441\u0442\u0440\u0430\u0442\u043E\u0440\u044B \u0432\u0441\u0435\u0433\u0434\u0430 \u043C\u043E\u0433\u0443\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440. +admin.usage.roles.managers=\u041C\u0435\u043D\u0435\u0434\u0436\u0435\u0440 +create.doc.already.exists=$org.olat.core.commons.modules.bc\:cfile.already.exists +create.doc.button=\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442 +create.doc.name=\u0418\u043C\u044F \u0444\u0430\u0439\u043B\u0430 +create.doc.name.notvalid=$org.olat.core.commons.modules.bc\:cfile.name.notvalid +create.doc.type=\u0422\u0438\u043F +data.transfer.accept=\u042F \u043F\u0440\u0438\u043D\u0438\u043C\u0430\u044E \u043F\u0435\u0440\u0435\u0434\u0430\u0447\u0443 \u0434\u0430\u043D\u043D\u044B\u0445 +data.transfer.intro=\u041F\u0440\u0438 \u043E\u0442\u043A\u0440\u044B\u0442\u0438\u0438 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430 \u0432 \u00AB{0}\u00BB \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442 \u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u0441\u043E\u0445\u0440\u0430\u043D\u044F\u0435\u0442\u0441\u044F \u043D\u0430 \u0432\u043D\u0435\u0448\u043D\u0435\u043C \u0441\u0435\u0440\u0432\u0435\u0440\u0435. \u041A\u0440\u043E\u043C\u0435 \u0442\u043E\u0433\u043E, \u0432\u0430\u0448\u0435 \u0438\u043C\u044F ({1}) \u043F\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044F \u0434\u043B\u044F \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F \u0432 \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0435. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435 \u044D\u0442\u0443 \u043F\u0435\u0440\u0435\u0434\u0430\u0447\u0443 \u0434\u0430\u043D\u043D\u044B\u0445. +data.transfer.title=\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435 \u043F\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043D\u043D\u044B\u0445 +doc.type.css=\u041A\u0430\u0441\u043A\u0430\u0434\u043D\u0430\u044F \u0442\u0430\u0431\u043B\u0438\u0446\u0430 \u0441\u0442\u0438\u043B\u0435\u0439 +doc.type.docx=Word +doc.type.html=HTML Document +doc.type.pptx=PowerPoint +doc.type.txt=\u0422\u0435\u043A\u0441\u0442 +doc.type.xlsx=Excel +doc.type.xml=\u0420\u0430\u0441\u0448\u0438\u0440\u044F\u0435\u043C\u044B\u0439 \u044F\u0437\u044B\u043A \u0440\u0430\u0437\u043C\u0435\u0442\u043A\u0438 +error.no.editor=\u0421\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u043E. diff --git a/src/main/java/org/olat/core/commons/services/license/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/license/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..e2237f6b35b70861194d1421f857c112b9f0a284 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/license/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,43 @@ +#Thu Feb 27 08:41:34 CET 2020 +add.license.type=\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044E +admin.default.license.type=\u0418\u0441\u0445\u043E\u0434\u043D\u0430\u044F \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044F +admin.enabled=\u0410\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 \u0432 +admin.licensor.constant=\u041F\u043E\u0441\u0442\u043E\u044F\u043D\u043D\u044B\u0439 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0430\u0440 +admin.licensor.constant.edit=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C +admin.licensor.constant.title=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0430\u0440 +admin.licensor.creator=\u0418\u0441\u0445\u043E\u0434\u043D\u044B\u0439 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0430\u0440 +admin.lizensor=\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0430\u0440 +admin.menu.title=\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 +admin.menu.title.alt=\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 +admin.start.indexer=\u041F\u043E\u0441\u043B\u0435 \u0430\u043A\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u0438\u043B\u0438 \u0434\u0435\u0430\u043A\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0439 \u0432 \u043C\u043E\u0434\u0443\u043B\u0435 \u0432\u044B \u0434\u043E\u043B\u0436\u043D\u044B \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u043F\u043E\u043B\u043D\u044B\u0439 \u0438\u043D\u0434\u0435\u043A\u0441\u0430\u0442\u043E\u0440 \u043F\u043E\u0438\u0441\u043A\u0430, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u044B\u0435 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 \u0432 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u0430\u0445 \u043F\u043E\u0438\u0441\u043A\u0430. +admin.title=\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 +admin.translate=\u041F\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044E +edit.license.type=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044E +error.is.default.license.type=\u0412\u044B \u043D\u0435 \u043C\u043E\u0436\u0435\u0442\u0435 \u0434\u0435\u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u044D\u0442\u0443 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044E, \u043F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u044D\u0442\u043E \u0438\u0441\u0445\u043E\u0434\u043D\u0430\u044F \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044F. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043B\u044C\u043D\u043E \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u043F\u0435\u0440\u0432\u043E\u043D\u0430\u0447\u0430\u043B\u044C\u043D\u0443\u044E \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044E. +error.license.type.name.exists=\u042D\u0442\u043E \u0438\u043C\u044F \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442. \u0418\u043C\u044F \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u0443\u043D\u0438\u043A\u0430\u043B\u044C\u043D\u044B\u043C. +license.popup.licensor=\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0430\u0440 +license.popup.text=\u0422\u0435\u043A\u0441\u0442 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 +license.popup.type=\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u044F +license.type.css.class=\u041A\u043B\u0430\u0441\u0441 CSS +license.type.down=\u0412\u043D\u0438\u0437 +license.type.inactive={0} (inactive) +license.type.missing=\u041E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0430\u044F \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044F +license.type.name=\u0418\u043C\u044F +license.type.name.translation=\u041F\u0435\u0440\u0435\u0432\u043E\u0434 +license.type.text=\u0422\u0435\u043A\u0441\u0442 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 +license.type.trans.all\ rights\ reserved=\u0412\u0441\u0435 \u043F\u0440\u0430\u0432\u0430 \u0437\u0430\u0449\u0438\u0449\u0435\u043D\u044B +license.type.trans.cc\ by=CC BY +license.type.trans.cc\ by-nc=CC BY-NC +license.type.trans.cc\ by-nc-nd=CC BY-NC-ND +license.type.trans.cc\ by-nc-sa=CC BY-NC-SA +license.type.trans.cc\ by-nd=CC BY-ND +license.type.trans.cc\ by-sa=CC BY-SA +license.type.trans.cc0=CC0 +license.type.trans.freetext=\u041E\u0442\u043A\u0440\u044B\u0442\u044B\u0439 \u0442\u0435\u043A\u0441\u0442 +license.type.trans.no.license=\u041D\u0435\u0442 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 +license.type.trans.public\ domain=\u041F\u0443\u0431\u043B\u0438\u0447\u043D\u044B\u0439 \u0434\u043E\u043C\u0435\u043D +license.type.up=\u0412\u0432\u0435\u0440\u0445 +licensor.creator.constant=\u041F\u043E\u0441\u0442\u043E\u044F\u043D\u043D\u044B\u0439 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0430\u0440 +licensor.creator.none=\u041D\u0435\u0442 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0430\u0440\u0430 +licensor.creator.user.name=\u0422\u0435\u043A\u0443\u0449\u0438\u0439 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C +table.header.edit=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C diff --git a/src/main/java/org/olat/core/commons/services/pdf/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/pdf/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..decca6416c47d8a9583d48b8ecf6fca9f4b90406 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/pdf/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,11 @@ +#Thu Feb 27 08:47:16 CET 2020 +admin.menu.title=\u0413\u0435\u043D\u0435\u0440\u0430\u0442\u043E\u0440 PDF +admin.menu.title.alt=\u0413\u0435\u043D\u0435\u0440\u0430\u0442\u043E\u0440 PDF +athena.pdf.description=<a href\="https\://www.athenapdf.com"> AthenaPDF </a> - \u044D\u0442\u043E \u0433\u0435\u043D\u0435\u0440\u0430\u0442\u043E\u0440 PDF \u043D\u0430 \u043E\u0441\u043D\u043E\u0432\u0435 Electron \u0438 Docker. \u042D\u0442\u0430 \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442 \u0432\u0430\u0440\u0438\u0430\u043D\u0442 Micro Service. \u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u0443\u044E \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E \u043C\u043E\u0436\u043D\u043E \u043D\u0430\u0439\u0442\u0438 \u043F\u043E \u0430\u0434\u0440\u0435\u0441\u0443 <a href\="https\://www.athenapdf.com"> AthenaPDF </a> \u0438 <a href \= "https\://github.com/arachnys/athenapdf/tree/master/weaver". > GitHub \u043A\u043E\u0434. +athena.pdf.key=\u041A\u043B\u044E\u0447 +athena.pdf.url=URL \u0441\u0435\u0440\u0432\u0438\u0441\u0430 +on=\u043D\u0430 +pdf.enable=PDF \u0421\u0435\u0440\u0432\u0438\u0441 +pdf.providers=\u0413\u0435\u043D\u0435\u0440\u0430\u0442\u043E\u0440 +pdf.service.description=\u0413\u0435\u043D\u0435\u0440\u0430\u0442\u043E\u0440 PDF +pdf.service.title=\u0413\u0435\u043D\u0435\u0440\u0430\u0442\u043E\u0440 PDF diff --git a/src/main/java/org/olat/core/commons/services/sms/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/sms/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..ff5ba23217d5e3df92dd9c1019b3e4db6936ab51 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/sms/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,35 @@ +#Thu Feb 27 12:29:40 CET 2020 +admin.configuration.description=<p> \u0423\u0432\u0435\u0434\u043E\u043C\u043B\u0435\u043D\u0438\u0435 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E SMS \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u043D\u0435\u043E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u043C \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u043E\u043C. </ p> <p> \u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435. \u0421\u0442\u043E\u0438\u043C\u043E\u0441\u0442\u044C SMS \u0437\u0430 \u043A\u0430\u0436\u0434\u043E\u0435 SMS-\u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435\! </ p> +admin.configuration.title=\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F \u0421\u041C\u0421 +admin.enable=\u0421\u041C\u0421 \u0440\u0430\u0441\u0441\u044B\u043B\u043A\u0430 +admin.menu.title=\u0421\u041C\u0421 +admin.menu.title.alt=\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F \u0421\u041C\u0421 \u0438 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043A\u0430 +admin.settings=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 \u0443\u0441\u043B\u0443\u0433\u0438 \u0421\u041C\u0421 +admin.statistics=\u0421\u041C\u0421 \u0440\u0430\u0441\u0441\u044B\u043B\u043A\u0430 +ask.by.first.login=\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0430 \u043D\u043E\u043C\u0435\u0440\u0430 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 +bulksms.token.id=\u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 Token ID +bulksms.token.secret=\u0421\u0435\u043A\u0440\u0435\u0442\u043D\u044B\u0439 Token +confirm.sms.phone=<h3> \u0410\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u044F \u0447\u0435\u0440\u0435\u0437 \u0421\u041C\u0421 </ h3> <p> \u0421\u0438\u0441\u0442\u0435\u043C\u0430 \u043F\u043E\u0437\u0432\u043E\u043B\u044F\u0435\u0442 \u0430\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u0447\u0435\u0440\u0435\u0437 \u0421\u041C\u0421 \u0434\u043B\u044F \u0441\u0431\u0440\u043E\u0441\u0430 \u0443\u0442\u0435\u0440\u044F\u043D\u043D\u043E\u0433\u043E \u043F\u0430\u0440\u043E\u043B\u044F. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u043D\u043E\u043C\u0435\u0440 \u0432\u0430\u0448\u0435\u0433\u043E \u043C\u043E\u0431\u0438\u043B\u044C\u043D\u043E\u0433\u043E \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430, \u0447\u0442\u043E\u0431\u044B \u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u044D\u0442\u0443 \u0443\u0441\u043B\u0443\u0433\u0443. </ P> +dont.activate=\u041D\u0435 \u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u0442\u044C +error.invalid.token=\u041A\u043E\u0434 \u043D\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u0435\u043D. +error.phone.invalid=\u041D\u043E\u043C\u0435\u0440 \u043D\u0435 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u043C \u043D\u043E\u043C\u0435\u0440\u043E\u043C \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 (\u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, +7 846 333 22 22) +no.service.provider=\u041F\u043E\u0441\u0442\u0430\u0432\u0449\u0438\u043A \u043D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D +on=\u043D\u0430 +on.first.login=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u0442\u0435 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0438\u0439 \u043D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 \u0421\u041C\u0421 \u043F\u0440\u0438 \u043F\u0435\u0440\u0432\u043E\u043C \u0432\u0445\u043E\u0434\u0435 +on.sms=\u0441 \u043A\u043E\u0434\u043E\u043C \u0421\u041C\u0421 +reset.password=\u0421\u0431\u0440\u043E\u0441 \u043F\u0430\u0440\u043E\u043B\u044F +service=\u0421\u0435\u0440\u0432\u0438\u0441 +sms.phone.number=\u041C\u043E\u0431\u0438\u043B\u044C\u043D\u044B\u0439 \u0442\u0435\u043B\u0435\u0444\u043E\u043D +sms.phone.number.example=\u0412\u0430\u043C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0432\u0432\u0435\u0441\u0442\u0438 \u0441\u0432\u043E\u0439 \u043D\u043E\u043C\u0435\u0440 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 \u0432 \u043C\u0435\u0436\u0434\u0443\u043D\u0430\u0440\u043E\u0434\u043D\u043E\u043C \u0444\u043E\u0440\u043C\u0430\u0442\u0435 (\u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, +7 846 333 33 22). +sms.phone.number.hint=+7 846 333 33 22 +sms.send=\u041D\u0430\u0447\u0430\u0442\u044C \u0430\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u044E \u043F\u043E \u0421\u041C\u0421 +sms.token=\u0412\u0430\u0448 Token {0} +sms.token.number=\u041A\u043E\u0434 +sms.token.number.explain=\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 6-\u0437\u043D\u0430\u0447\u043D\u044B\u0439 \u043D\u043E\u043C\u0435\u0440, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u0432\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u043B\u0438 \u043F\u043E \u0421\u041C\u0421. \u0415\u0441\u043B\u0438 \u0432\u044B \u043D\u0435 \u043F\u043E\u043B\u0443\u0447\u0438\u043B\u0438 \u0421\u041C\u0421 \u0447\u0435\u0440\u0435\u0437 1 \u043C\u0438\u043D\u0443\u0442\u0443, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E \u0432\u044B \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043B\u0438 \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u043C\u0435\u0436\u0434\u0443\u043D\u0430\u0440\u043E\u0434\u043D\u043E\u0433\u043E \u043D\u043E\u043C\u0435\u0440\u0430. +start.sms.authentication=\u041D\u0430\u0447\u0430\u0442\u044C \u0421\u041C\u0421-\u0430\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u044E +table.header.month=\u041C\u0435\u0441\u044F\u0446 +table.header.numOfMessages=\u0421\u041C\u0421 +table.header.year=\u0413\u043E\u0434 +warning.spi.not.configured=\u0421\u043B\u0443\u0436\u0431\u0430 \u043D\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043D\u0430. +websms.password=\u041F\u0430\u0440\u043E\u043B\u044C +websms.username=\u0418\u043C\u044F \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F diff --git a/src/main/java/org/olat/core/commons/services/taskexecutor/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/taskexecutor/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..edf9625782a6c00897b8d3e7e394ddde086ea98d --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/taskexecutor/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,6 @@ +#Thu Feb 27 12:30:35 CET 2020 +done=\u0412\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u043E +edition=\u041E\u0442\u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439 +failed=\u041E\u0448\u0438\u0431\u043A\u0430 +inWork=\u0412 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435 +newTask=\u041E\u0436\u0438\u0434\u0430\u0439\u0442\u0435 diff --git a/src/main/java/org/olat/core/commons/services/vfs/ui/management/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/vfs/ui/management/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..79b43fbe13cff0467d6f80524221e9b6b366a0f0 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/vfs/ui/management/_i18n/LocalStrings_ru.properties @@ -0,0 +1,17 @@ +#Thu Feb 27 13:03:56 CET 2020 +vfs.overview.action=\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435 +vfs.overview.amount=\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E +vfs.overview.files=\u0424\u0430\u0439\u043B\u044B +vfs.overview.fileslink=Show large files +vfs.overview.name=\u0418\u043C\u044F +vfs.overview.size=\u0420\u0430\u0437\u043C\u0435\u0440 +vfs.overview.thumbnaillink=\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u044D\u0441\u043A\u0438\u0437\u044B +vfs.overview.thumbnails=\u042D\u0441\u043A\u0438\u0437\u044B +vfs.overview.thumbnails.reset.confirm=\u0425\u043E\u0442\u0438\u0442\u0435 \u0441\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u0432\u0441\u0435 \u0442\u0435\u043A\u0443\u0449\u0438\u0435 \u044D\u0441\u043A\u0438\u0437\u044B? +vfs.overview.thumbnails.reset.title=\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043C\u0438\u043D\u0438\u0430\u0442\u044E\u0440\u044B +vfs.overview.title=\u041E\u0431\u0437\u043E\u0440 +vfs.overview.total=\u041E\u0431\u0449\u0435\u0435 \u043A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E +vfs.overview.trash=\u0412 \u043A\u043E\u0440\u0437\u0438\u043D\u0443 +vfs.overview.trashlink=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043A\u043E\u0440\u0437\u0438\u043D\u0443 +vfs.overview.versions=\u0412\u0435\u0440\u0441\u0438\u0438 +vfs.overview.versionslink=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u0432\u0435\u0440\u0441\u0438\u0438 diff --git a/src/main/java/org/olat/core/commons/services/vfs/ui/version/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/vfs/ui/version/_i18n/LocalStrings_ru.properties index fe363202bd9dce74083d66e45d80478e48f5f2ce..dc9b6482c05ac1f3e4a1035ddd46fe1ffa0cda95 100644 --- a/src/main/java/org/olat/core/commons/services/vfs/ui/version/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/commons/services/vfs/ui/version/_i18n/LocalStrings_ru.properties @@ -1,10 +1,25 @@ -#Tue Jan 19 16:43:59 CET 2010 +#Thu Feb 27 13:12:12 CET 2020 +confirm.delete.orphans=\u0412\u044B \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0435 \u0443\u0434\u0430\u043B\u0435\u043D\u043D\u044B\u0435 \u0432\u0435\u0440\u0441\u0438\u0438? +confirm.prune.history=\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u0438\u0437\u0431\u044B\u0442\u043E\u0447\u043D\u044B\u0435 \u0432\u0435\u0440\u0441\u0438\u0438? +download=\u0421\u043A\u0430\u0447\u0430\u0442\u044C +form.version=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u044F \u0432\u0435\u0440\u0441\u0438\u044F\u043C\u0438 meta.comment.title=\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0430 meta.locked=\u0424\u0430\u0439\u043B \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D meta.retainlock=\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C \u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0443 \u0444\u0430\u0439\u043B\u0430 \u0434\u043B\u044F \u0434\u0440\u0443\u0433\u0438\u0445 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439 meta.unlock=\u0420\u0430\u0437\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0444\u0430\u0439\u043B \u0434\u043B\u044F \u0434\u0440\u0443\u0433\u0438\u0445 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439 -table.header.css=<i class='o_icon o_filetype_file'> </i> +table.empty=\u041D\u0435 \u043E\u0441\u0442\u0430\u043B\u043E\u0441\u044C \u0431\u0435\u0441\u0445\u043E\u0437\u043D\u044B\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 +table.header.author=\u0410\u0432\u0442\u043E\u0440 +table.header.comment=\u041A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439 +table.header.css=<i class\='o_icon o_filetype_file'> </i> +table.header.date=\u0414\u0430\u0442\u0430 +table.header.file=\u0424\u0430\u0439\u043B +table.header.id=Id +table.header.nr=\u0420\u0435\u0432\u0438\u0437\u0438\u044F +table.header.path=\u041F\u0443\u0442\u044C +table.header.size=\u0420\u0430\u0437\u043C\u0435\u0440 +table.header.versions=\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0432\u0435\u0440\u0441\u0438\u0439 version.author=\u0410\u0432\u0442\u043E\u0440 +version.clean.up=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 version.comment=\u041A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439 version.comment.alltitle=\u041A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439/\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0430 version.comment.description=\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u043E\u0442\u0441\u043B\u0435\u0436\u0438\u0432\u0430\u044E\u0442\u0441\u044F \u0432 \u044D\u0442\u043E\u043C \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0435. \u041F\u0440\u043E\u0441\u044C\u0431\u0430 \u043F\u0440\u043E\u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u044D\u0442\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F. @@ -17,10 +32,24 @@ version.deletedBy=\u0423\u0434\u0430\u043B\u0435\u043D\u043E \u043F\u043E\u043B\ version.deletedFiles=\u0423\u0434\u0430\u043B\u0435\u043D\u043D\u044B\u0435 \u0444\u0430\u0439\u043B\u044B version.download=\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 version.initialRevision=\u041F\u0435\u0440\u0432\u043E\u043D\u0430\u0447\u0430\u043B\u044C\u043D\u0430\u044F \u0440\u0435\u0434\u0430\u043A\u0446\u0438\u044F +version.intro=\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0435 \u043C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u043A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0432\u0435\u0440\u0441\u0438\u0439 \u0434\u043B\u044F \u0444\u0430\u0439\u043B\u0430 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0430 \u043F\u0430\u043F\u043A\u0438 (\u043F\u0430\u043F\u043A\u0430 \u0433\u0440\u0443\u043F\u043F\u044B, \u043F\u0430\u043F\u043A\u0430 \u043A\u0443\u0440\u0441\u0430 \u0438 \u0442.\u0434.). +version.maintenance.intro=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u044F\u043C\u0438 \u0444\u0430\u0439\u043B\u043E\u0432 +version.maintenance.title=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 version.name=\u0424\u0430\u0439\u043B version.noDeletedFiles=\u041D\u0435\u0442 \u0443\u0434\u0430\u043B\u0435\u043D\u043D\u044B\u0445 \u0444\u0430\u0439\u043B\u043E\u0432 \u0441 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0435\u043C \u0436\u0443\u0440\u043D\u0430\u043B\u0430. version.noRevisions=\u0414\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u0444\u0430\u0439\u043B\u0430 \u0435\u0449\u0435 \u043D\u0435\u0442 \u0440\u0435\u0434\u0430\u043A\u0446\u0438\u0439. +version.notANumber=\u041D\u043E\u043C\u0435\u0440 \u043D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D version.nr=\u0420\u0435\u0434\u0430\u043A\u0446\u0438\u044F +version.numOfVersions=\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0432\u0435\u0440\u0441\u0438\u0439 +version.off=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u044F\u043C\u0438 \u0434\u0435\u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u043D\u043E +version.orphan.size=\u0420\u0430\u0437\u043C\u0435\u0440 \u0431\u0435\u0441\u0445\u043E\u0437\u043D\u044B\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 +version.orphan.size.calc=\u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044C \u0440\u0430\u0437\u043C\u0435\u0440 +version.orphan.size.calculating=\u0420\u0430\u0441\u0447\u0435\u0442 ... +version.prune.history=\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0432\u0435\u0440\u0441\u0438\u0438 version.restore=\u0412\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C version.restore.comment=\u0412\u0435\u0440\u0441\u0438\u044F {0} \u0432\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u0430 version.restore.failed=\u0424\u0430\u0439\u043B \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0432\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D. +version.show.orphans=\u0421\u043F\u0438\u0441\u043E\u043A \u0431\u0435\u0441\u0445\u043E\u0437\u043D\u044B\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 +version.size=\u0420\u0430\u0437\u043C\u0435\u0440 \u0432\u0435\u0440\u0441\u0438\u0438 +version.title=\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u044F \u0432\u0435\u0440\u0441\u0438\u044F\u043C\u0438 +version.unlimited=\u041D\u0435\u043E\u0433\u0440\u0430\u043D\u0438\u0447\u0435\u043D\u043D\u044B\u0439 diff --git a/src/main/java/org/olat/core/commons/services/webdav/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/core/commons/services/webdav/ui/_i18n/LocalStrings_fr.properties index 4dc1d9968f830276c86ccdf95f10d88947461d8f..3a7a07c0d381b7ded7557220571b70906f5d10b7 100644 --- a/src/main/java/org/olat/core/commons/services/webdav/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/core/commons/services/webdav/ui/_i18n/LocalStrings_fr.properties @@ -1,8 +1,9 @@ -#Sat Sep 08 08:36:31 CEST 2018 +#Sun Mar 01 07:32:23 CET 2020 admin.menu.title=WebDAV admin.menu.title.alt=Acc\u00E8s WebDAV admin.webdav.description=Gr\u00E2ce \u00E0 WebDAV, les dossiers OpenOlat peuvent appara\u00EEtre sur votre bureau local et \u00EAtre utilis\u00E9s. Vous devez configurer cette fonction pour la rendre disponible \u00E0 tous les utilisateurs du syst\u00E8me. S'il vous pla\u00EEt lisez l'aide contextuelle pour plus d'informations. core.webdav=WebDAV +webdav.client.exclusion=Exclure des applications WebDAV webdav.curriculumelementsfolders=Grouper les cours par \u00E9l\u00E9ments de cursus webdav.digest=Utilise l'authentification Digest pour l'acc\u00E8s HTTP webdav.for.learners.bookmarks=Acc\u00E8s aux favoris pour les utilisateurs @@ -13,3 +14,4 @@ webdav.module=Acc\u00E8s WebDAV webdav.on=on webdav.prepend.reference=Ajouter la r\u00E9f\u00E9rence externe au nom du cours webdav.termsfolders=Grouper les cours par semestre +webdav.user.agent.exclusion=Liste des agents utilisateurs (User-Agent s\u00E9par\u00E9 par une virgule) diff --git a/src/main/java/org/olat/core/commons/services/webdav/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/commons/services/webdav/ui/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..2f3016d620ab7c7af02891cec73d2b20606a0af1 --- /dev/null +++ b/src/main/java/org/olat/core/commons/services/webdav/ui/_i18n/LocalStrings_ru.properties @@ -0,0 +1,17 @@ +#Fri Feb 28 09:52:13 CET 2020 +admin.menu.title=WebDAV +admin.menu.title.alt=WebDAV \u0434\u043E\u0441\u0442\u0443\u043F +admin.webdav.description=\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u044F WebDAV, \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043C\u043E\u043D\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0438 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u043F\u0430\u043F\u043A\u0438 OpenOlat \u043D\u0430 \u043B\u043E\u043A\u0430\u043B\u044C\u043D\u043E\u043C \u0440\u0430\u0431\u043E\u0447\u0435\u043C \u0441\u0442\u043E\u043B\u0435, \u043A\u0430\u043A \u0435\u0441\u043B\u0438 \u0431\u044B \u043E\u043D\u0438 \u0431\u044B\u043B\u0438 \u043B\u043E\u043A\u0430\u043B\u044C\u043D\u044B\u043C\u0438 \u043F\u0430\u043F\u043A\u0430\u043C\u0438. \u0412\u043A\u043B\u044E\u0447\u0438\u0442\u0435 \u044D\u0442\u0443 \u0444\u0443\u043D\u043A\u0446\u0438\u044E, \u0447\u0442\u043E\u0431\u044B \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0435\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u043E\u0439 \u0434\u043B\u044F \u0432\u0441\u0435\u0445 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439 \u0432\u0430\u0448\u0435\u0439 \u043F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u044B. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u0440\u043E\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442\u043D\u0443\u044E \u043F\u043E\u043C\u043E\u0449\u044C. +core.webdav=WebDAV +webdav.client.exclusion=\u0417\u0430\u043F\u0440\u0435\u0442 \u043A\u043B\u0438\u0435\u043D\u0442\u0430 WebDAV +webdav.curriculumelementsfolders=\u0413\u0440\u0443\u043F\u043F\u043E\u0432\u044B\u0435 \u043A\u0443\u0440\u0441\u044B \u043F\u043E \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u043C \u0443\u0447\u0435\u0431\u043D\u043E\u0439 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B +webdav.digest=\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0434\u0430\u0439\u0434\u0436\u0435\u0441\u0442-\u0430\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u044E \u0441 HTTP-\u0434\u043E\u0441\u0442\u0443\u043F\u043E\u043C +webdav.for.learners.bookmarks=\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044C \u0434\u043E\u0441\u0442\u0443\u043F \u043A \u043A\u0443\u0440\u0441\u0430\u043C, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0438 \u043E\u0442\u043C\u0435\u0442\u0438\u043B\u0438 \u043A\u0430\u043A \u0438\u0437\u0431\u0440\u0430\u043D\u043D\u044B\u0435. +webdav.for.learners.participants=\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0434\u043E\u0441\u0442\u0443\u043F \u0434\u043B\u044F \u043A\u0443\u0440\u0441\u043E\u0432, \u0433\u0434\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u043C \u0438\u043B\u0438 \u0442\u0440\u0435\u043D\u0435\u0440\u043E\u043C +webdav.link=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0441\u0441\u044B\u043B\u043A\u0438 WebDAV +webdav.managedfolders=\u0413\u0440\u0443\u043F\u043F\u043E\u0432\u044B\u0435 "\u0423\u043F\u0440\u0430\u0432\u043B\u044F\u0435\u043C\u044B\u0435" \u043A\u0443\u0440\u0441\u044B +webdav.module=WebDAV \u0434\u043E\u0441\u0442\u0443\u043F +webdav.on=\u0432\u043A\u043B\u044E\u0447\u0435\u043D +webdav.prepend.reference=\u041F\u043E\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u0441\u0441\u044B\u043B\u043A\u0443 \u043D\u0430 \u0432\u043D\u0435\u0448\u043D\u0438\u0439 \u043A\u0443\u0440\u0441 \u043A \u043D\u0430\u0437\u0432\u0430\u043D\u0438\u044E +webdav.termsfolders=\u0413\u0440\u0443\u043F\u043F\u043E\u0432\u044B\u0435 \u043A\u0443\u0440\u0441\u044B \u043F\u043E \u0441\u0435\u043C\u0435\u0441\u0442\u0440\u0430\u043C +webdav.user.agent.exclusion=\u0421\u043F\u0438\u0441\u043E\u043A \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0445 \u0430\u0433\u0435\u043D\u0442\u043E\u0432 (\u0437\u0430\u043F\u044F\u0442\u0430\u044F \u0432 \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0440\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044F) diff --git a/src/main/java/org/olat/core/configuration/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/configuration/_i18n/LocalStrings_ru.properties index 111f3bc723caa502d8267fa17e6e31cb34e04596..1138ba71d84c21e966aef14c0e586ec3add6524b 100644 --- a/src/main/java/org/olat/core/configuration/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/configuration/_i18n/LocalStrings_ru.properties @@ -1,3 +1,4 @@ -#Thu Jun 06 07:50:50 CEST 2013 +#Thu Feb 27 13:12:43 CET 2020 main.menu.title=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 +main.menu.title.alt=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432 \u0437\u0430\u043F\u0443\u0441\u043A\u0430 OLAT overwrite.properties.not.found=\u0424\u0430\u0439\u043B olat.local.properties \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u043F\u043E \u0443\u043A\u0430\u0437\u0430\u043D\u043D\u043E\u043C\u0443 \u043F\u0443\u0442\u0438\! diff --git a/src/main/java/org/olat/core/gui/components/dropdown/Dropdown.java b/src/main/java/org/olat/core/gui/components/dropdown/Dropdown.java index 6bf2493d3cbde6ac978efe311dd80fff1e97bf5a..157851cc6044ac8bc5adc8a66a6c0d149fbecd05 100644 --- a/src/main/java/org/olat/core/gui/components/dropdown/Dropdown.java +++ b/src/main/java/org/olat/core/gui/components/dropdown/Dropdown.java @@ -183,6 +183,18 @@ public class Dropdown extends AbstractComponent implements ComponentCollection { } return null; } + + public Integer getComponentIndex(Component component) { + if (component == null) return null; + + for (int i = 0; i < components.size(); i++) { + Component componentInList = components.get(i); + if (component.getComponentName().equals(componentInList.getComponentName())) { + return Integer.valueOf(i); + } + } + return null; + } @Override public Iterable<Component> getComponents() { diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/_i18n/LocalStrings_ru.properties index 777ed7239ea01d2a55a877d3aa3f59612b4de42f..f028008974fc75e9ab41fbff0f543bef231eae18 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/_i18n/LocalStrings_ru.properties @@ -1,4 +1,6 @@ -#Mon Jan 18 16:17:51 CET 2010 +#Mon Mar 02 08:12:33 CET 2020 +confirm.delete.file=\u0412\u044B \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u0444\u0430\u0439\u043B? +confirm.delete.file.title=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0444\u0430\u0439\u043B day.short.di=\u0432\u0442\u0440 day.short.do=\u0447\u0435\u0442 day.short.fr=\u043F\u044F\u0442 @@ -6,6 +8,13 @@ day.short.mi=\u0441\u0440\u0434 day.short.mo=\u043F\u043E\u043D day.short.sa=\u0441\u0443\u0431 day.short.so=\u0432\u0441\u043A +file.element.delete=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0439 \u0444\u0430\u0439\u043B \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 +file.element.error.general=\u041F\u0440\u0438 \u043F\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0434\u0430\u043D\u043D\u044B\u0445 \u0432\u043E\u0437\u043D\u0438\u043A\u043B\u0430 \u043D\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043D\u0430\u044F \u043E\u0448\u0438\u0431\u043A\u0430. \u041F\u043E\u0436\u0430\u0439\u043B\u0443\u0441\u0442\u0430, \u043F\u043E\u043F\u044B\u0442\u0430\u0439\u0442\u0435\u0441\u044C \u043F\u0435\u0440\u0435\u0441\u043B\u0430\u0442\u044C \u0444\u0430\u0439\u043B \u0435\u0449\u0451 \u0440\u0430\u0437 \u0438 \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E \u0435\u0433\u043E \u0438\u043C\u044F \u043D\u0435 \u0441\u043E\u0434\u0435\u0440\u0436\u0438\u0442 \u043D\u0438\u043A\u0430\u043A\u0438\u0445 \u0441\u043F\u0435\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0445 \u0437\u043D\u0430\u043A\u043E\u0432 (+"*\u00E7&/()\=?^`^'\!$\u00A3\u00A8\:,;\u00A7\u00B0). +file.element.select=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0444\u0430\u0439\u043B +file.element.select.maxsize=\u041C\u0430\u043A\u0441 {0} \u041C\u0431\u0430\u0439\u0442 +inline.edit.help=\u041D\u0430\u0436\u043C\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C +inline.empty.click.for.edit=<\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F> +integer.element.int.error=\u041E\u0436\u0438\u0434\u0430\u0435\u043C\u044B\u0439 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440 - \u0446\u0435\u043B\u043E\u0435 \u0447\u0438\u0441\u043B\u043E month.long.apr=\u0430\u043F\u0440\u0435\u043B\u044C month.long.aug=\u0430\u0432\u0433\u0443\u0441\u0442 month.long.dec=\u0434\u0435\u043A\u0430\u0431\u0440\u044C @@ -18,11 +27,7 @@ month.long.mar=\u043C\u0430\u0440\u0442 month.long.nov=\u043D\u043E\u044F\u0431\u0440\u044C month.long.oct=\u043E\u043A\u0442\u044F\u0431\u0440\u044C month.long.sep=\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044C -file.element.error.general=\u041F\u0440\u0438 \u043F\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0434\u0430\u043D\u043D\u044B\u0445 \u0432\u043E\u0437\u043D\u0438\u043A\u043B\u0430 \u043D\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043D\u0430\u044F \u043E\u0448\u0438\u0431\u043A\u0430. \u041F\u043E\u0436\u0430\u0439\u043B\u0443\u0441\u0442\u0430, \u043F\u043E\u043F\u044B\u0442\u0430\u0439\u0442\u0435\u0441\u044C \u043F\u0435\u0440\u0435\u0441\u043B\u0430\u0442\u044C \u0444\u0430\u0439\u043B \u0435\u0449\u0451 \u0440\u0430\u0437 \u0438 \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E \u0435\u0433\u043E \u0438\u043C\u044F \u043D\u0435 \u0441\u043E\u0434\u0435\u0440\u0436\u0438\u0442 \u043D\u0438\u043A\u0430\u043A\u0438\u0445 \u0441\u043F\u0435\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0445 \u0437\u043D\u0430\u043A\u043E\u0432 (+"*\u00E7&/()\=?^`^'\!$\u00A3\u00A8\:,;\u00A7\u00B0). -file.element.select=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0444\u0430\u0439\u043B -file.element.select.maxsize=\u041C\u0430\u043A\u0441 {0} \u041C\u0431\u0430\u0439\u0442 -inline.empty.click.for.edit=<\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0434\u043B\u044F \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F> -integer.element.int.error=\u041E\u0436\u0438\u0434\u0430\u0435\u043C\u044B\u0439 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440 - \u0446\u0435\u043B\u043E\u0435 \u0447\u0438\u0441\u043B\u043E +selection.no.value=- text.element.error.maxvalue=\u041D\u0430\u0438\u0431\u043E\u043B\u044C\u0448\u0435\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 {0}. text.element.error.minvalue=\u041D\u0430\u0438\u043C\u0435\u043D\u044C\u0448\u0435\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 {0}. text.element.error.notlongerthan=\u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043E \u043C\u0430\u043A\u0441\u0438\u043C\u0443\u043C {0} \u0437\u043D\u0430\u043A\u043E\u0432. diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_ru.properties index 28dedb582f23792b2d8021f37716b6e029c481c4..bb50b0fe28f3ecd68d28f6a7bf3bf422be465f05 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/_i18n/LocalStrings_ru.properties @@ -1,2 +1,8 @@ -#Tue Sep 22 00:16:31 CEST 2009 +#Mon Mar 02 08:18:48 CET 2020 +formatted=\u041E\u0442\u0444\u043E\u0440\u043C\u0430\u0442\u0438\u0440\u043E\u0432\u0430\u043D +left.clear=\u0412\u044B\u0440\u043E\u0432\u043D\u044F\u0442\u044C \u0432\u043B\u0435\u0432\u043E \u0438 \u043E\u0447\u0438\u0441\u0442\u0438\u0442\u044C +left.clear.nomargin=\u041F\u043E \u043B\u0435\u0432\u043E\u043C\u0443 \u043A\u0440\u0430\u044E \u0441 \u043F\u043E\u0434\u043F\u0438\u0441\u044C\u044E +multiLine=\u041D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0441\u0442\u0440\u043E\u043A +oneLine=\u041E\u0434\u043D\u0430 \u043B\u0438\u043D\u0438\u044F richText.element.target.window.alwayssame=\u041E\u0442\u043A\u0440\u044B\u0432\u0430\u0442\u044C \u043B\u0438\u043D\u043A \u0432\u0441\u0435\u0433\u0434\u0430 \u0432 \u0442\u043E\u043C \u0436\u0435 \u043D\u043E\u0432\u043E\u043C \u043E\u043A\u043D\u0435 +right.clear=\u0412\u044B\u0440\u043E\u0432\u043D\u044F\u0442\u044C \u043F\u0440\u0430\u0432\u043E \u0438 \u043E\u0447\u0438\u0441\u0442\u0438\u0442\u044C diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/plugins/olatcharcount/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/plugins/olatcharcount/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..79ed9c46b752f374dcf48232fb7e6f7f4bfb69fb --- /dev/null +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/plugins/olatcharcount/_i18n/LocalStrings_ru.properties @@ -0,0 +1,3 @@ +#Mon Mar 02 08:19:52 CET 2020 +olatcharcount.size=\u0421\u0438\u043C\u0432\u043E\u043B\u044B\: {0} +olatcharcount.tooltip=\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044F \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u0440\u0430\u0437\u043C\u0435\u0442\u043A\u0438 HTML. diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/plugins/olatmovieviewer/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/plugins/olatmovieviewer/_i18n/LocalStrings_ru.properties index fcd7a5b2a5c94bdf0e21d3280fe607db6da449f1..2be957e0c22c847f6f0e53fa87e479eb8299ccbe 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/plugins/olatmovieviewer/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/plugins/olatmovieviewer/_i18n/LocalStrings_ru.properties @@ -1,17 +1,31 @@ -#Wed Jul 28 13:33:33 CEST 2010 +#Mon Mar 02 08:21:54 CET 2020 olatmovieviewer.address=Streaming-\u0410\u0434\u0440\u0435\u0441 olatmovieviewer.advanced=\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0439 +olatmovieviewer.autostart=\u041D\u0430\u0447\u0430\u0442\u044C \u043D\u0435\u043C\u0435\u0434\u043B\u0435\u043D\u043D\u043E olatmovieviewer.button_desc=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C / \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043A\u043D\u043E\u043F\u043A\u0443 \u0434\u043B\u044F \u0437\u0430\u043F\u0443\u0441\u043A\u0430 Streaming-\u0432\u0438\u0434\u0435\u043E olatmovieviewer.button_title=\u041A\u043D\u043E\u043F\u043A\u0430 \u0434\u043B\u044F \u0437\u0430\u043F\u0443\u0441\u043A\u0430 Streaming-\u0432\u0438\u0434\u0435\u043E +olatmovieviewer.config.title=\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 \u043C\u0435\u0434\u0438\u0430-\u043F\u043B\u0435\u0435\u0440\u0430 OLAT +olatmovieviewer.controlbar=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043F\u0430\u043D\u0435\u043B\u044C \u0437\u0430\u0434\u0430\u0447 olatmovieviewer.desc=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C / \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C Streaming-\u0432\u0438\u0434\u0435\u043E. \u041F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 Flash, Shockwave, QuickTime, RealMedia \u0438 Windows Media. olatmovieviewer.duration=\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C olatmovieviewer.general=\u041E\u0431\u0449\u0438\u0439 +olatmovieviewer.http=http (\u043F\u0441\u0435\u0432\u0434\u043E) \u043F\u043E\u0442\u043E\u043A\u043E\u0432\u044B\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 (\u0442\u043E\u043B\u044C\u043A\u043E .FLV) olatmovieviewer.insert=\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C olatmovieviewer.invalid_date=\u041D\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u0432\u0440\u0435\u043C\u0435\u043D\u0438. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435, \u043F\u043E\u0436\u0430\u0439\u043B\u0443\u0441\u0442\u0430, \u0444\u043E\u0440\u043C\u0430\u0442 \u0447\u0447\:\u043C\u043C\:\u0441\u0441.000 olatmovieviewer.name=\u041D\u0430\u0437\u0432\u0430\u043D\u0438\u0435 +olatmovieviewer.nanoo=Nanoo.tv olatmovieviewer.play=\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0444\u0438\u043B\u044C\u043C\u0430 +olatmovieviewer.poster=\u041F\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 olatmovieviewer.preview=\u041F\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 +olatmovieviewer.provider=\u0422\u0438\u043F +olatmovieviewer.repeat=\u041F\u043E\u0432\u0442\u043E\u0440\u0435\u043D\u0438\u0435 +olatmovieviewer.rtmp=\u041F\u043E\u0442\u043E\u043A\u043E\u0432\u044B\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 RTMP olatmovieviewer.size=\u0420\u0430\u0437\u043C\u0435\u0440 +olatmovieviewer.sound=\u0417\u0432\u0443\u043A (.MP3, .AAC) olatmovieviewer.starttime=\u0421\u0442\u0430\u0440\u0442 +olatmovieviewer.streamer=\u041F\u043E\u0442\u043E\u043A\u043E\u0432\u044B\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 olatmovieviewer.text=\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0442\u0435\u043A\u0441\u0442\u0430 olatmovieviewer.title=\u041F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0430 \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u0430 Streaming-\u0432\u0438\u0434\u0435\u043E +olatmovieviewer.video=\u0412\u0438\u0434\u0435\u043E (.FLV, .F4V, .MP4, .M4V (h264 coded), .AAC, and .M4A) +olatmovieviewer.vimeo=Vimeo +olatmovieviewer.youtube=YouTube diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/_i18n/LocalStrings_fr.properties index f6771ff811217194c2f1d9a28424b1b8eb782b54..a2e744c171c0e6f9a05ad0eb714120ef8d674cb4 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/_i18n/LocalStrings_fr.properties @@ -1,7 +1,16 @@ -#Wed Jan 11 13:40:51 CET 2017 +#Sun Mar 01 07:36:17 CET 2020 +aria.customize=Personnaliser les colonnes +aria.filters=Filtres +aria.reset.search=R\u00E9initialiser la recherche +aria.search.input=Recherche +aria.select.row=S\u00E9lectionner une ligne +aria.select.row.with.val=S\u00E9lectionner {0} +aria.sort=Trier la table +aria.view.custom=Vue en liste +aria.view.table=Vue en table +form.checkall.numbered=S\u00E9lectionner toutes les {0} lignes +form.checkpage=S\u00E9lectionner la page page.size.a=Montre {0} \u00E0 {1} de {2} lignes. page.size.b=Entr\u00E9es par page remove.filters=Enlever les filtres show.all=Toutes -form.checkall.numbered=S\u00E9lectionner toutes les {0} lignes -form.checkpage=S\u00E9lectionner la page diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..a5766de3f5920b3b549e4243ef8677f78e103728 --- /dev/null +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/_i18n/LocalStrings_ru.properties @@ -0,0 +1,16 @@ +#Mon Mar 02 08:23:57 CET 2020 +aria.customize=\u041D\u0430\u0441\u0442\u0440\u043E\u0438\u0442\u044C \u0441\u0442\u043E\u043B\u0431\u0446\u044B +aria.filters=\u0424\u0438\u043B\u044C\u0442\u0440\u044B +aria.reset.search=\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043F\u043E\u0438\u0441\u043A +aria.search.input=\u041F\u043E\u0438\u0441\u043A +aria.select.row=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u0442\u0440\u043E\u043A\u0443 +aria.select.row.with.val=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 {0} +aria.sort=\u0422\u0430\u0431\u043B\u0438\u0446\u0430 \u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0438 +aria.view.custom=\u041F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u0441\u043F\u0438\u0441\u043E\u043A +aria.view.table=\u0422\u0430\u0431\u043B\u0438\u0447\u043D\u043E\u0435 \u043F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435 +form.checkall.numbered=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435 {0} \u0441\u0442\u0440\u043E\u043A +form.checkpage=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u0442\u0440\u043E\u043A\u0438 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u044B +page.size.a=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043E\u0442 {0} \u0434\u043E {1} \u0438\u0437 {2} \u0441\u0442\u0440\u043E\u043A. +page.size.b=\u0417\u0430\u043F\u0438\u0441\u0438 \u043D\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435 +remove.filters=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0444\u0438\u043B\u044C\u0442\u0440\u044B +show.all=\u0412\u0441\u0435 diff --git a/src/main/java/org/olat/core/gui/components/image/ImageComponent.java b/src/main/java/org/olat/core/gui/components/image/ImageComponent.java index d0b669657fa4fc50e9a976cfa70a4a80f92764c5..3b7c33220e3d606bbdcef7d6402dcd9b704f0fd1 100644 --- a/src/main/java/org/olat/core/gui/components/image/ImageComponent.java +++ b/src/main/java/org/olat/core/gui/components/image/ImageComponent.java @@ -303,6 +303,8 @@ public class ImageComponent extends AbstractComponent implements Disposable { } protected String getSuffix(String contentType) { + if(!StringHelper.containsNonWhitespace(contentType)) return null; + contentType = contentType.toLowerCase(); if(contentType.indexOf("jpg") >= 0 || contentType.indexOf("jpeg") >= 0) { return "jpg"; diff --git a/src/main/java/org/olat/core/gui/components/stack/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/gui/components/stack/_i18n/LocalStrings_ru.properties new file mode 100644 index 0000000000000000000000000000000000000000..7ccbf141d1eea1000cf01b4cca336bb21ca007c8 --- /dev/null +++ b/src/main/java/org/olat/core/gui/components/stack/_i18n/LocalStrings_ru.properties @@ -0,0 +1,2 @@ +#Mon Mar 02 08:24:10 CET 2020 +doclose=\u0417\u0430\u043A\u0440\u044B\u0442\u044C {0} diff --git a/src/main/java/org/olat/core/gui/components/table/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/gui/components/table/_i18n/LocalStrings_ru.properties index d1ff31d33fa7816922f3eb64e85bf6ae6ee50230..36d70e9a13d5ba0677f90380843ba5de318daf27 100644 --- a/src/main/java/org/olat/core/gui/components/table/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/gui/components/table/_i18n/LocalStrings_ru.properties @@ -1,4 +1,4 @@ -#Tue Jan 19 16:09:19 CET 2010 +#Mon Mar 02 08:24:19 CET 2020 checkall=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435 command.changecols=\u0421\u0442\u043E\u043B\u0431\u0446\u044B... default.tableEmptyMessage=\u0414\u0430\u043D\u043D\u044B\u0445, \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0438\u0445 \u0412\u0430\u0448\u0435\u043C\u0443 \u0437\u0430\u043F\u0440\u043E\u0441\u0443, \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E \u0438\u043B\u0438 \u043E\u043D\u0438 \u043D\u0435 \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u043F\u043E\u043A\u0430\u0437\u0430\u043D\u044B \u0412\u0430\u043C. @@ -9,6 +9,7 @@ row.move.left=\u041F\u0435\u0440\u0435\u0434\u0432\u0438\u043D\u0443\u0442\u044C row.move.right=\u041F\u0435\u0440\u0435\u0434\u0432\u0438\u043D\u0443\u0442\u044C \u0441\u0442\u043E\u043B\u0431\u0435\u0446 \u043D\u0430\u043F\u0440\u0430\u0432\u043E row.sort=\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E\u0441\u043B\u0435 \u044D\u0442\u043E\u0433\u043E \u0441\u0442\u043E\u043B\u0431\u0446\u0430 row.sort.invert=\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u043E\u0440\u044F\u0434\u043E\u043A \u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0438 +table.export.title=\u042D\u043A\u0441\u043F\u043E\u0440\u0442 \u0442\u0430\u0431\u043B\u0438\u0446\u044B table.filter.label=\u0424\u0438\u043B\u044C\u0442\u0440\: table.filtered.include.plur=\u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C table.filtered.include.sing=\u0441\u043E\u0434\u0435\u0440\u0436\u0438\u0442 diff --git a/src/main/java/org/olat/core/logging/activity/ActionObject.java b/src/main/java/org/olat/core/logging/activity/ActionObject.java index 7ea26cecba6ca55950b951516db3f5dcd8c7e3f7..9cd993132a5ab83de66e8530f6525c6bf1dc78c7 100644 --- a/src/main/java/org/olat/core/logging/activity/ActionObject.java +++ b/src/main/java/org/olat/core/logging/activity/ActionObject.java @@ -99,6 +99,7 @@ public enum ActionObject { tools, toolsempty, waitingperson, + wiki, bulkassessment, lectures, lecturesRollcall, diff --git a/src/main/java/org/olat/core/logging/activity/LearningResourceLoggingAction.java b/src/main/java/org/olat/core/logging/activity/LearningResourceLoggingAction.java index 2fc0190b3b88470f924b2c72fd5d4c7a1486dcc3..b12f1b6682ee89bf387e3750ca067ba74108dd16 100644 --- a/src/main/java/org/olat/core/logging/activity/LearningResourceLoggingAction.java +++ b/src/main/java/org/olat/core/logging/activity/LearningResourceLoggingAction.java @@ -111,6 +111,10 @@ public class LearningResourceLoggingAction extends BaseLoggingAction { new LearningResourceLoggingAction(ActionType.admin, CrudAction.update, ActionVerb.add, ActionObject.blog).setTypeList(LEARNING_RESOURCE_OPEN_CLOSE_LIST); public static final ILoggingAction REPOSITORY_ENTRY_PROPERTIES_BLOG_DISABLED = new LearningResourceLoggingAction(ActionType.admin, CrudAction.update, ActionVerb.remove, ActionObject.blog).setTypeList(LEARNING_RESOURCE_OPEN_CLOSE_LIST); + public static final ILoggingAction REPOSITORY_ENTRY_PROPERTIES_WIKI_ENABLED = + new LearningResourceLoggingAction(ActionType.admin, CrudAction.update, ActionVerb.add, ActionObject.wiki).setTypeList(LEARNING_RESOURCE_OPEN_CLOSE_LIST); + public static final ILoggingAction REPOSITORY_ENTRY_PROPERTIES_WIKI_DISABLED = + new LearningResourceLoggingAction(ActionType.admin, CrudAction.update, ActionVerb.remove, ActionObject.wiki).setTypeList(LEARNING_RESOURCE_OPEN_CLOSE_LIST); public static final ILoggingAction REPOSITORY_ENTRY_PROPERTIES_FORUM_ENABLED = new LearningResourceLoggingAction(ActionType.admin, CrudAction.update, ActionVerb.add, ActionObject.forum).setTypeList(LEARNING_RESOURCE_OPEN_CLOSE_LIST); public static final ILoggingAction REPOSITORY_ENTRY_PROPERTIES_FORUM_DISABLED = diff --git a/src/main/java/org/olat/core/util/i18n/devtools/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/util/i18n/devtools/_i18n/LocalStrings_ru.properties index 50e1244c6d5a7861d06c4322dc494414ff8650ca..d7685065023e1a4ad57fd3a07bc4e2883b874fd3 100644 --- a/src/main/java/org/olat/core/util/i18n/devtools/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/core/util/i18n/devtools/_i18n/LocalStrings_ru.properties @@ -1,16 +1,65 @@ -#Wed Mar 04 21:07:56 CET 2009 +#Thu Feb 27 13:27:56 CET 2020 caching.enabled=\u041A\u044D\u0448\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 \u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u043D\u043E. \u0414\u043B\u044F \u0442\u043E\u0433\u043E, \u0447\u0442\u043E\u0431\u044B \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B \u0434\u043B\u044F \u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u043E\u0432, \u043A\u044D\u0448\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043E\u0442\u043A\u043B\u044E\u0447\u0435\u043D\u043E. coreasjar=Brasato \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043D \u043A\u0430\u043A Jar-\u0444\u0430\u0439\u043B, \u043F\u043E\u044D\u0442\u043E\u043C\u0443 \u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u0432\u043D\u0435\u0441\u0442\u0438 \u043D\u0438\u043A\u0430\u043A\u0438\u0435 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F. devtools.title=\u041F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B \u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u043E\u0432 \u0434\u043B\u044F \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u0447\u0435\u0441\u043A\u0438\u0445 \u0446\u0435\u043B\u0435\u0439 +menu.i18nDev=\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435 \u0438\u043D\u0442\u0435\u0440\u043D\u0430\u0446\u0438\u043E\u043D\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438 +menu.i18nDev.alt=\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435 \u0438\u043D\u0442\u0435\u0440\u043D\u0430\u0446\u0438\u043E\u043D\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438 +submitAddKey=\u0414\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043A\u043B\u044E\u0447\! +submitGetDupKeys=\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0434\u0443\u0431\u043B\u0438\u043A\u0430\u0442\u044B \u043A\u043B\u044E\u0447\u0435\u0439 +submitGetDupVals=\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u043F\u043E\u0432\u0442\u043E\u0440\u044F\u044E\u0449\u0438\u0435\u0441\u044F \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F +submitMerge=\u041E\u0431\u044A\u0435\u0434\u0438\u043D\u0438\u0442\u044C \u044D\u0442\u043E +submitMove=\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u044D\u0442\u043E +submitMoveKey=\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u043A\u043B\u044E\u0447 +submitMoveKeyToBundle=\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u043A\u043B\u044E\u0447\! +submitRemoveDeleted=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0443\u0434\u0430\u043B\u0435\u043D\u043D\u044B\u0435 \u043A\u043B\u044E\u0447\u0438\! +submitRemoveEmpty=\u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043F\u0443\u0441\u0442\u044B\u0435 \u043A\u043B\u044E\u0447\u0438\! +submitRemoveKey=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043B\u044E\u0447\! +submitRemovePackage=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043F\u0430\u043A\u0435\u0442\! +submitRemoveTodo=\u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043B\u044E\u0447\u0438 "Todo"\! +submitRenameKey=\u043F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u043A\u043B\u044E\u0447\! +submitRenameLanguage=\u043F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u044F\u0437\u044B\u043A\! +submitSort=\u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u044D\u0442\u043E\! +task.add.key=\u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043D\u043E\u0432\u044B\u0439 \u043A\u043B\u044E\u0447 +task.add.key.bundle=\u0421\u0432\u044F\u0437\u043A\u0430 +task.add.key.key=\u041A\u043B\u044E\u0447 +task.add.key.locale=\u041B\u043E\u043A\u0430\u043B\u044C +task.add.key.value=\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 task.delete.key=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043B\u044E\u0447 task.delete.package=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043F\u0430\u043A\u0435\u0442 task.find.douplicates=\u041D\u0430\u0439\u0442\u0438 \u0434\u0443\u0431\u043B\u0438\u043A\u0430\u0442\u044B task.find.unreferenced.keys=\u041D\u0430\u0439\u0442\u0438 \u043A\u043B\u044E\u0447\u0438 \u0431\u0435\u0437 \u0441\u0441\u044B\u043B\u043A\u0438 task.merge.package=\u0421\u043E\u0435\u0434\u0438\u043D\u0438\u0442\u044C \u043F\u0430\u043A\u0435\u0442\u044B task.move.key=\u041F\u0435\u0440\u0435\u0434\u0432\u0438\u043D\u0443\u0442\u044C \u043A\u043B\u044E\u0447\u0438 +task.move.key.key=\u041A\u043B\u044E\u0447 +task.move.key.to.bundle=\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u043A\u043B\u044E\u0447 task.move.language=\u041F\u0435\u0440\u0435\u0434\u0432\u0438\u043D\u0443\u0442\u044C \u044F\u0437\u044B\u043A task.move.package=\u041F\u0435\u0440\u0435\u0434\u0432\u0438\u043D\u0443\u0442\u044C \u043F\u0430\u043A\u0435\u0442 +task.move.package.source=\u0438\u0441\u0442\u043E\u0447\u043D\u0438\u043A +task.move.package.target=\u0446\u0435\u043B\u044C +task.remove.deletedKeys=\u0443\u0434\u0430\u043B\u0438\u0442\u044C \u0443\u0434\u0430\u043B\u0435\u043D\u043D\u044B\u0435 \u043A\u043B\u044E\u0447\u0438 +task.remove.deletedKeysCheck=\u041F\u0440\u043E\u0433\u043E\u043D, \u0440\u0435\u043F\u0435\u0442\u0438\u0446\u0438\u044F +task.remove.emptyKeys=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043F\u0443\u0441\u0442\u044B\u0435 \u043A\u043B\u044E\u0447\u0438 +task.remove.emptyKeysCheck=\u041F\u0440\u043E\u0433\u043E\u043D, \u0440\u0435\u043F\u0435\u0442\u0438\u0446\u0438\u044F +task.remove.key=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043B\u044E\u0447 +task.remove.key.bundle=\u0441\u0432\u044F\u0437\u043A\u0430 +task.remove.key.key=\u041A\u043B\u044E\u0447 +task.remove.key.locale=\u041B\u043E\u043A\u0430\u043B\u044C +task.remove.package=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043F\u0430\u043A\u0435\u0442 +task.remove.package.bundle=\u041F\u0430\u043A\u0435\u0442 +task.remove.todoKeys=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043A\u043B\u044E\u0447\u0438 "Todo" +task.remove.todoKeysCheck=\u041F\u0440\u043E\u0433\u043E\u043D, \u0440\u0435\u043F\u0435\u0442\u0438\u0446\u0438\u044F +task.remove.xKeys=\u0443\u0434\u0430\u043B\u0438\u0442\u044C \u0445 \u043A\u043B\u044E\u0447\u0435\u0439 +task.remove.xKeysCheck=\u041F\u0440\u043E\u0433\u043E\u043D, \u0440\u0435\u043F\u0435\u0442\u0438\u0446\u0438\u044F task.remove.xkeys=\u0423\u0434\u0430\u043B\u0438\u0442\u044C x-\u043A\u043B\u044E\u0447\u0438 task.rename.key=\u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u043A\u043B\u044E\u0447 +task.rename.key.bundle=\u0421\u0432\u044F\u0437\u043A\u0430 +task.rename.key.orig=\u041E\u0440\u0438\u0433\u0438\u043D\u0430\u043B\u044C\u043D\u043E\u0435 \u0438\u043C\u044F \u043A\u043B\u044E\u0447\u0430 +task.rename.key.origBundle=\u041E\u0440\u0438\u0433\u0438\u043D\u0430\u043B\u044C\u043D\u0430\u044F \u0441\u0432\u044F\u0437\u043A\u0430 +task.rename.key.target=\u041D\u0430\u0437\u0432\u0430\u043D\u0438\u0435 \u0446\u0435\u043B\u0435\u0432\u043E\u0433\u043E \u043A\u043B\u044E\u0447\u0430 +task.rename.key.targetBundle=\u0426\u0435\u043B\u0435\u0432\u0430\u044F \u0441\u0432\u044F\u0437\u043A\u0430 task.rename.language=\u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u044F\u0437\u044B\u043A +task.rename.language.source=\u0418\u0441\u0445\u043E\u0434\u043D\u044B\u0439 \u044F\u0437\u044B\u043A +task.rename.language.target=\u0446\u0435\u043B\u0435\u0432\u043E\u0439 \u044F\u0437\u044B\u043A +task.sort.check=\u041F\u0440\u043E\u0433\u043E\u043D, \u0440\u0435\u043F\u0435\u0442\u0438\u0446\u0438\u044F +task.sort.keys=\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0432\u0441\u0435 \u043A\u043B\u044E\u0447\u0438 task.unknown.keys=\u043F\u043E\u043A\u0430\u0437\u0430\u0442\u044C/\u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u044B\u0435 \u043A\u043B\u044E\u0447\u0438 diff --git a/src/main/java/org/olat/core/util/i18n/ui/TranslationToolI18nItemEditCrumbController.java b/src/main/java/org/olat/core/util/i18n/ui/TranslationToolI18nItemEditCrumbController.java index 4c543364e1cceddbd69087f7b58fc21664f89eeb..68eeffefc8b0905a7b8b093e4b74428836df720a 100644 --- a/src/main/java/org/olat/core/util/i18n/ui/TranslationToolI18nItemEditCrumbController.java +++ b/src/main/java/org/olat/core/util/i18n/ui/TranslationToolI18nItemEditCrumbController.java @@ -33,6 +33,7 @@ import org.olat.core.gui.components.form.flexible.FormItemContainer; import org.olat.core.gui.components.form.flexible.elements.FormLink; import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; import org.olat.core.gui.components.form.flexible.elements.SingleSelection; +import org.olat.core.gui.components.form.flexible.elements.TextAreaElement; import org.olat.core.gui.components.form.flexible.elements.TextElement; import org.olat.core.gui.components.form.flexible.impl.FormEvent; import org.olat.core.gui.components.form.flexible.impl.elements.FormLinkImpl; @@ -72,10 +73,10 @@ public class TranslationToolI18nItemEditCrumbController extends CrumbFormBasicCo private SingleSelection bundlesSelection; private SingleSelection keysSelection; - private TextElement referenceArea; + private TextAreaElement referenceArea; private TextElement annotationArea; private TextElement targetArea; - private TextElement compareArea; + private TextAreaElement compareArea; private MultipleSelectionElement compareSwitch; private SingleSelection compareLangSelection; private FormLink previousLink, saveLink, saveNextLink, nextLink, annotationAddLink; @@ -187,7 +188,7 @@ public class TranslationToolI18nItemEditCrumbController extends CrumbFormBasicCo keysSelection.addActionListener(FormEvent.ONCHANGE); keysSelection.select(currentItem.getKey(), true); // Add reference box - referenceArea = uifactory.addTextAreaElement("referenceArea", "edit.referenceArea", -1, 1, -1, true, false, null, this.flc); + referenceArea = uifactory.addTextAreaElement("referenceArea", "edit.referenceArea", -1, 1, -1, true, false, null, flc); referenceArea.setEnabled(false); // read only // Add compare box Boolean compareEnabledPrefs = (Boolean) guiPrefs.get(I18nModule.class, I18nModule.GUI_PREFS_COMPARE_LANG_ENABLED, Boolean.FALSE); diff --git a/src/main/java/org/olat/core/util/mail/MailTemplate.java b/src/main/java/org/olat/core/util/mail/MailTemplate.java index e818259e0bda4df190d4dcf9c45aa3c001d1db07..7c150f0468526dae4392905e1d89858b8f8023a3 100644 --- a/src/main/java/org/olat/core/util/mail/MailTemplate.java +++ b/src/main/java/org/olat/core/util/mail/MailTemplate.java @@ -26,9 +26,14 @@ package org.olat.core.util.mail; import java.io.File; +import java.util.Locale; import org.apache.velocity.VelocityContext; import org.olat.core.id.Identity; +import org.olat.core.id.User; +import org.olat.core.id.UserConstants; +import org.olat.core.util.i18n.I18nManager; +import org.olat.user.UserManager; /** * Description:<br> @@ -157,4 +162,24 @@ public abstract class MailTemplate { public VelocityContext getContext() { return context; } + + protected static void fillContextWithStandardIdentityValues(VelocityContext vContext, Identity identity, Locale locale) { + if(identity == null) return; + + User user = identity.getUser(); + if(locale == null) { + locale = I18nManager.getInstance().getLocaleOrDefault(user.getPreferences().getLanguage()); + } + + vContext.put("login", identity.getName()); + vContext.put("username", identity.getName()); + vContext.put("userName", identity.getName()); + vContext.put("first", user.getProperty(UserConstants.FIRSTNAME, locale)); + vContext.put("firstname", user.getProperty(UserConstants.FIRSTNAME, locale)); + vContext.put("firstName", user.getProperty(UserConstants.FIRSTNAME, locale)); + vContext.put("last", user.getProperty(UserConstants.LASTNAME, locale)); + vContext.put("lastname", user.getProperty(UserConstants.LASTNAME, locale)); + vContext.put("lastName", user.getProperty(UserConstants.LASTNAME, locale)); + vContext.put("email", UserManager.getInstance().getUserDisplayEmail(identity, locale)); + } } diff --git a/src/main/java/org/olat/course/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/_i18n/LocalStrings_fr.properties index 7797c387ceca3b827377d01f5ba7aafbd078921e..f4734f510670c04025fc0a17d6addf21cc809d0a 100644 --- a/src/main/java/org/olat/course/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Mon Mar 02 09:54:07 CET 2009 +#Sun Mar 01 07:39:48 CET 2020 course.admin.infoloadedcourses=Cours actifs course.admin.infoloadedcourses.link=Cours actifs course.author=Auteur @@ -12,3 +12,9 @@ course.times.loaded=Appels course.title=Titre current.active.user=Actif error.helpcourse.not.configured=Ce syst\u00E8me ne dispose pas d'aide. +vfs.context.courseconfiguration=Configuration du cours +vfs.context.coursefolder=Dossier de stockage de cours +vfs.context.export=Archive de cours import\u00E9s +vfs.context.foldernodes=El\u00E9ment de cours dossier +vfs.context.gtasks=El\u00E9ment de cours devoir +vfs.context.participantfolder=El\u00E9ment de cours dossier participant diff --git a/src/main/java/org/olat/course/assessment/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/assessment/_i18n/LocalStrings_fr.properties index d0b6e340679128094ab4786519848bfd6a8f5491..e56a3ed4ec9f9ca64028c85a776271d81a5a606b 100644 --- a/src/main/java/org/olat/course/assessment/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/assessment/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Fri Aug 18 09:02:59 CEST 2017 +#Sun Mar 01 08:10:16 CET 2020 action.choose=S\u00E9lectionner admin.assessable.coursenode=Param\u00E8tres pour les \u00E9l\u00E9ments de cours destin\u00E9s \u00E0 l'\u00E9valuation admin.info.box=Montrer les informations au d\u00E9part @@ -8,6 +8,7 @@ admin.user.changelog=L'utilisateur peut voir le journal des changements artefact.title=Attestation de performance pour le cours {0} assessment.testresults.finished=<font color\="green">\u00E9valuation achev\\u00E9e</font> assessment.testresults.open=<font color\="orange">\u00E9valuation en suspens</font> +certificates.and.statements.title=Certificats et attestations de performance cmd.all.users=Voir tous les utilisateurs cmd.filterCourseNodes=Montrer les \u00E9l\u00E9ments \u00E9valuables par moi cmd.filterGroups=Les groupes g\u00E9r\u00E9s par moi avec acc\u00E8s sur l'\u00E9l\u00E9ment de cours choisi. @@ -160,6 +161,7 @@ table.header.lastCoachModificationDate=Derni\u00E8re modification du coach table.header.lastScoreDate=Derni\u00E8re mise \u00E0 jour table.header.lastUserModificationDate=Derni\u00E8re modification de l'utilisateur table.header.launchcourse=D\u00E9marrer cours +table.header.learning.progress=$org.olat.modules.assessment.ui\:learning.progress table.header.max=Max. table.header.min=Min. table.header.name=Nom diff --git a/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_fr.properties index 489f9f226859e234353d8c5363e68f3f618e0d6c..5e0686f671dd11a6dcc47bc229cb2e9eaf9b547d 100644 --- a/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Mon Jun 24 21:35:24 CEST 2019 +#Sun Mar 01 08:10:42 CET 2020 Points=\u00E0 obtenir assessment.mode.now=Le mode d'\u00E9valuation est actif de {0} \u00E0 {1}. assessment.mode.several.now=Plusieurs \u00E9valuations sont actives de {0} \u00E0 {1}. @@ -65,6 +65,7 @@ table.header.completion=$org.olat.modules.assessment.ui\:table.header.completion table.header.cut=Points pour r\u00E9ussi table.header.description=Description table.header.elements.toReview=El\u00E9ment +table.header.external.grader=Correcteur table.header.group.name=Noms table.header.id=ID table.header.name=Nom d'utilisateur @@ -99,4 +100,5 @@ waiting.review=$org.olat.modules.assessment.ui\:waiting.review warning.assessment.docs.delete.text=Voulez-vous r\u00E9ellement effacer ce document "{0}"? warning.assessment.docs.delete.title=Effacer le document warning.bulk.done=Vous devez choisir au moins une entr\u00E9e qui n'a pas \u00E9t\u00E9 d\u00E9j\u00E0 compl\u00E9t\u00E9e. +warning.bulk.empty=Vous devez choisir au moins un \u00E9l\u00E9ment. warning.course.node.deleted=L'\u00E9l\u00E9ment de cours a \u00E9t\u00E9 effac\u00E9. diff --git a/src/main/java/org/olat/course/certificate/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/certificate/ui/_i18n/LocalStrings_en.properties index 72debe47eddce17a3cc68495d8719bd2ac397990..22a0dfdb6c5c5af9867d7a8168e780a9f7b5b266 100644 --- a/src/main/java/org/olat/course/certificate/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/certificate/ui/_i18n/LocalStrings_en.properties @@ -36,7 +36,7 @@ confirm.delete.text=Do you really wish to delete this certificate? confirm.delete.title=Delete certificates default.template=Default template details.certificate=Certificate -details.course.infos=Bewertungen +details.course.infos=Assessments download.button=Download certificate format=Format generate.certificate=Create certificate diff --git a/src/main/java/org/olat/course/certificate/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/certificate/ui/_i18n/LocalStrings_fr.properties index 9c0d6af8767af825f11c4126b5f59fd5eb7c551d..601e0498f981b5be29b1005ef2d15c553a7f8d51 100644 --- a/src/main/java/org/olat/course/certificate/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/certificate/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Mon Jun 24 22:53:29 CEST 2019 +#Sun Mar 01 08:13:38 CET 2020 admin.certificates.bcc=BCC courriel admin.certificates.bcc.enable=Activer BCC des certificats admin.certificates.bcc.enable.help=Les certificats peuvent \u00EAtre envoy\u00E9 \u00E0 une adresse courriel, par exemple au d\u00E9partement des ressources humaines. Ci-dessous, vous pouvez activer cette option et donner l'adresse courriel souhait\u00E9e. @@ -24,6 +24,7 @@ certification.email.copy.subject={1} a re\u00E7u un certificat OpenOlat. certification.email.subject=Vous avez re\u00E7u un certificat OpenOlat choose.title=Choisir le mod\u00E8le coaching.tool=Coaching +completion=$org.olat.modules.assessment.ui\:learning.progress confirm.certificate.deleted=Le certificat de {0} a \u00E9t\u00E9 effac\u00E9. confirm.certificate.template.deleted=Le mod\u00E8le {0} a \u00E9t\u00E9 effac\u00E9. confirm.certificate.text=Un certificat a d\u00E9j\u00E0 \u00E9t\u00E9 g\u00E9n\u00E9r\u00E9 et la p\u00E9riode de recertification n'est pas encore \u00E9coul\u00E9e. Voulez-vous tout de m\u00EAme cr\u00E9er un nouveau certificat? @@ -34,6 +35,7 @@ confirm.delete.text=Voulez-vous vraiment effacer ce certificat? confirm.delete.title=Effacer des certificats default.template=Mod\u00E8le par d\u00E9faut details.certificate=Certificat +details.course.infos=\u00C9valuations download.button=T\u00E9l\u00E9charger le certificat error.mail.invalid=Indiquez une adresse courriel valide, svp. format=Format diff --git a/src/main/java/org/olat/course/condition/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/condition/_i18n/LocalStrings_fr.properties index 64bf4cc7be34b251b8a7b871c14a20d7dc8d6297..2b3768db69bda17ae6c31adde7ee3b1fd10688c9 100644 --- a/src/main/java/org/olat/course/condition/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/condition/_i18n/LocalStrings_fr.properties @@ -1,104 +1,119 @@ -#Mon Aug 19 18:11:47 CEST 2019 -xx={0} -form.easy.assessmentSwitch.no=Non -solution.example.institutionalname.infunction=Conseil\: Entourez le nom de l'institution avec "". -error.notfound.coursenodeid.publish=Cet \u00E9l\u00E9ment de cours renvoie sur l'\u00E9l\u00E9ment de cours {1}. Ils doivent \u00EAtre publi\u00E9s ensemble. -form.easy.assessmentSwitch.score=Evaluer au moyen des points -form.easy.bdate=D\u00E9but -form.easy.assessmentMode.visible=Visible si les r\u00E9sultats sont publics +#Sun Mar 01 08:17:45 CET 2020 +access.provider.name=Cours conventionnel +apply=Reprendre +choose=S\u00E9lectionner +command.activate.easyMode=Afficher mod\u00E8le simple +command.activate.expertMode=Afficher mode avanc\u00E9 +create=Cr\u00E9er +create.group=Cr\u00E9er groupe +easy.operator=Op\u00E9rateur +easy.value=Valeur +engroupedit.table.description=Description +engroupedit.table.down=Vers la bas +engroupedit.table.enrolled=Inscrit +engroupedit.table.groupName=Nom du groupe +engroupedit.table.key=ID +engroupedit.table.maxPart=Nombre max. de participants +engroupedit.table.minPart=Nombre min. participants +engroupedit.table.remove=Enlever +engroupedit.table.up=Haut +engroupedit.table.waitinglist=Liste d'attente +engroupedit.table.waitinglistParticipants=Participants sur liste d'attente +error.argtype.areanameexpected=La fonction "{0}" doit \u00EAtre appel\u00E9e avec un nom de domaine d'\u00E9tude. error.argtype.attributename=La fonction "{0}" doit \u00EAtre appel\u00E9e avec un nom d'attribut. -form.easy.example.bdate=(Exemple\: 26.06.2007 10\:28) -form.easy.example.group=(Exemple\: Rouge, Vert, Bleu) -form.easy.group=Uniquement pour les groupes d'\u00E9tude -form.expert.condition=R\u00E8gle avanc\u00E9e -solution.copypastenodeid=Conseil\: Copiez l'identification de l'\u00E9l\u00E9ment de cours dans l'onglet "description" de l'\u00E9l\u00E9ment. -solution.provideone.institutionalname=Conseil\: Indiquez exactement un nom d'institution. -form.easy.assessmentSwitch=D\u00E9pendant de l'\u00E9valuation -form.easy.extCondConn=Connecteurs bool\u00E9\u00E9ns -form.easy.nodePassed=El\u00E9ment de cours -institution.attributes.hint=V\u00E9rifier ici, quels attributs sont disponibles pour votre universit\u00E9. +error.argtype.attribvalue=La fonction "{0}" doit \u00EAtre appel\u00E9e avec une valeur d'attribut. +error.argtype.coursnodeidexpeted=La fonction "{0}" doit accuser par la suite une identification d'\u00E9l\u00E9ment de cours. +error.argtype.date=L'indication de temps pour la fonction "{0}" doit \u00EAtre d\u00E9finie de la mani\u00E8re suivante\: "jj.mm.AAAA HH\:mm". Votre indication {1} ne correspond pas au format de temps. +error.argtype.institutionalname=La fonction"{0}"doit \u00EAtre appel\u00E9 avec un nom d'institut. +error.argtype.outcome.undefined=La variable demand\u00E9e n'existe pas dans le test s\u00E9lectionn\u00E9\! +error.argtype.username=La fonction "{0}" doit \u00EAtre appel\u00E9 avec un nom d'utilisateur. +error.divide.by.zero=La r\u00E8gle peut conduire \u00E0 une erreur de type "division par 0". +error.fewerargs=La fonction "{0}" a moins d'arguments. +error.fix=Cr\u00E9er +error.illegal.operation.at=L'op\u00E9ration n'est pas autoris\u00E9e pour le signe {0}, consultez l'aide pour des op\u00E9rations possibles. error.inexpression.at=L'expression de condition a une erreur \u00E0 la position {0}. +error.moreargs=La fonction "{0}" n\u00E9cessite plus d'arguments. +error.nameTooLong=Le/les nom/s indiqu\u00E9/s est/sont trop long/s\: un maximum de 100 signes est accept\u00E9. +error.notassessable.coursenodid=L'identification de l'\u00E9l\u00E9ment de cours ({1}) ne provient pas d'un \u00E9l\u00E9ment \u00E9valuable. +error.notassessable.coursenodid.publish=Cet \u00E9l\u00E9ment de cours renvoie sur un \u00E9l\u00E9ment non \u00E9valuable ({1}). Si vous publiez cet \u00E9l\u00E9ment de cours, des comportements inattendus dans le cours peuvent \u00EAtre g\u00E9n\u00E9r\u00E9s\! error.notenrollment.coursenodeid=L'identification d'\u00E9l\u00E9ment de cours indiqu\u00E9e ({1}) ne provient pas d'un \u00E9l\u00E9ment d'inscription. -solution.takeassessablenode=Conseil\: Consultez le menu d'aide pour une liste d'\u00E9l\u00E9ments de cours \u00E9valuable. +error.notfound.coursenodeid=L'identification d'\u00E9l\u00E9ment de cours ({1}) ci-indiqu\u00E9e n'a pas \u00E9t\u00E9 trouv\u00E9e dans le cours. +error.notfound.coursenodeid.publish=Cet \u00E9l\u00E9ment de cours renvoie sur l'\u00E9l\u00E9ment de cours {1}. Ils doivent \u00EAtre publi\u00E9s ensemble. +error.notfound.name=Le nom indiqu\u00E9 ({1}) n'a pas \u00E9t\u00E9 trouv\u00E9 dans la gestion de groupes de ce cours. +error.notfound.name.publish=Cet \u00E9l\u00E9ment de cours contient un renvoi sur un groupe d'\u00E9tude ou un domaine d'\u00E9tude non existants. Votre r\u00E8gle d'acc\u00E8s ne sera donc pas ex\u00E9cut\u00E9e correctement\! error.notfound.names=Les noms indiqu\u00E9s ({1}) n'ont pas \u00E9t\u00E9 trouv\u00E9s dans la gestion des groupes de ce cours. -solution.example.node.infunction=Conseil\: Entourez l'identification de l'\u00E9l\u00E9ment de cours de "" , p.ex. {0}("12345"). -form.easy.error.date=Il faut indiquer au moins une date de d\u00E9but ou de fin pour d\u00E9finir une d\u00E9pendance de date. -error.argtype.attribvalue=La fonction "{0}" doit \u00EAtre appel\u00E9e avec une valeur d'attribut. -form.easy.error.bdateafteredate=La date "D\u00E9but" doit se situer avant la date "Fin". Utilisez le mode avanc\u00E9, si ceci est vraiment volontaire. -solution.provideone.nodereference=Indication\: Exactement une identification d'\u00E9l\u00E9ment de cours est n\u00E9cessaire pour la fonction "{0}". -form.easy.extCondConn.and=ET -solution.providetwo.attrvalue=Conseil\: La fonction "{0}" n\u00E9cessite un nom d'attribut et une valeur d'attribut, tous les deux entour\u00E9 de "" . -error.argtype.institutionalname=La fonction"{0}"doit \u00EAtre appel\u00E9 avec un nom d'institut. +error.undefined.function.at=Cette fonction est inconnue pour le signe {0}, consultez l'aide pour les fonctions autoris\u00E9es. +error.undefined.unit.at=L'unit\u00E9 est inconnue pour le signe {0}, consultez l'aide pour les unit\u00E9s autoris\u00E9es. error.undefined.variable.at=La variable est inconnue pour le signe {0}, consultez l'aide pour les variables autoris\u00E9es. -form.easy.error.attribute=Le champ "valeur" ne peut pas \u00EAtre vide. +form.easy.applyRulesForCoach=Appliquer les r\u00E8gles \u00E9galement pour les propri\u00E9taires et tuteurs +form.easy.area=Uniquement pour les domaines d'\u00E9tude +form.easy.assessmentMode=Seulement en mode \u00E9valuation +form.easy.assessmentMode.visible=Visible si les r\u00E9sultats sont publics +form.easy.assessmentSwitch=D\u00E9pendant de l'\u00E9valuation +form.easy.assessmentSwitch.no=Non +form.easy.assessmentSwitch.passed=Evaluer au moyen de "R\u00E9ussi" +form.easy.assessmentSwitch.score=Evaluer au moyen des points +form.easy.assessmentSwitch.type=V\u00E9rifier la valeur +form.easy.attributeSwitch=D\u00E9pendant des attributs +form.easy.attributebconnector=R\u00E8gles li\u00E9s avec\: +form.easy.attributebconnector.and=ET +form.easy.attributebconnector.or=OU +form.easy.bdate=D\u00E9but form.easy.coachExclusive=Acc\u00E8s bloqu\u00E9 pour \u00E9tudiants -solution.example.whiteSpace=Indication\: l'argument ne doit pas contenir d'espace. +form.easy.cutValue=Points \u00E0 obtenir +form.easy.dateSwitch=D\u00E9pendant de la date +form.easy.edate=Fin +form.easy.error.attribute=Le champ "valeur" ne peut pas \u00EAtre vide. +form.easy.error.bdate=Format de date erron\u00E9 +form.easy.error.bdateafteredate=La date "D\u00E9but" doit se situer avant la date "Fin". Utilisez le mode avanc\u00E9, si ceci est vraiment volontaire. +form.easy.error.cutValue=Le score \u00E0 obtenir doit \u00EAtre un nombre entier. +form.easy.error.date=Il faut indiquer au moins une date de d\u00E9but ou de fin pour d\u00E9finir une d\u00E9pendance de date. +form.easy.error.edate=Format de date erron\u00E9 +form.easy.error.group=Il faut indiquer au moins un groupe d'\u00E9tude ou un domaine d'\u00E9tude. +form.easy.error.nodeDeleted=Cet \u00E9l\u00E9ment de cours supprim\u00E9 ne peut plus \u00EAtre s\u00E9lectionn\u00E9. S\u00E9lectionnez un autre \u00E9l\u00E9ment de cours SVP. form.easy.error.nodePassed=Un \u00E9l\u00E9ment de cours \u00E9valuable doit \u00EAtre s\u00E9lectionn\u00E9 pour \u00E9valuer au moyen de 'r\u00E9ussi' ou des points. -error.notassessable.coursenodid.publish=Cet \u00E9l\u00E9ment de cours renvoie sur un \u00E9l\u00E9ment non \u00E9valuable ({1}). Si vous publiez cet \u00E9l\u00E9ment de cours, des comportements inattendus dans le cours peuvent \u00EAtre g\u00E9n\u00E9r\u00E9s\! -error.argtype.areanameexpected=La fonction "{0}" doit \u00EAtre appel\u00E9e avec un nom de domaine d'\u00E9tude. -form.easy.assessmentSwitch.passed=Evaluer au moyen de "R\u00E9ussi" -error.divide.by.zero=La r\u00E8gle peut conduire \u00E0 une erreur de type "division par 0". -error.illegal.operation.at=L'op\u00E9ration n'est pas autoris\u00E9e pour le signe {0}, consultez l'aide pour des op\u00E9rations possibles. -form.easy.nodePassed.select=S\u00E9lectionner SVP form.easy.error.setattribute.failed=Une r\u00E8gle d'attribut ne peut pas \u00EAtre initialis\u00E9. V\u00E9rifier les r\u00E8gles des attributs manuellement. -form.easy.assessmentMode=Seulement en mode \u00E9valuation -error.argtype.coursnodeidexpeted=La fonction "{0}" doit accuser par la suite une identification d'\u00E9l\u00E9ment de cours. +form.easy.example.area=(Exemple\: Gr_1,Gr_2) +form.easy.example.bdate=(Exemple\: 26.06.2007 10\:28) +form.easy.example.edate=(Exemple\: 26.06.2007 16\:55) +form.easy.example.group=(Exemple\: Rouge, Vert, Bleu) +form.easy.extCondConn=Connecteurs bool\u00E9\u00E9ns +form.easy.extCondConn.and=ET +form.easy.extCondConn.or=OU +form.easy.group=Uniquement pour les groupes d'\u00E9tude +form.easy.groupSwitch=D\u00E9pendant du groupe +form.easy.nodePassed=El\u00E9ment de cours +form.easy.nodePassed.deletedNode=El\u00E9ment de cours supprim\u00E9, changez SVP +form.easy.nodePassed.noNodes=Pas possible - aucun \u00E9l\u00E9ment de cours \u00E9valu\u00E9 +form.easy.nodePassed.select=S\u00E9lectionner SVP +form.expert.condition=R\u00E8gle avanc\u00E9e +form.expert.error.condition=Erreur de pars - condition pr\u00E9alable invalide +groupselection.groupname=Nom du groupe +groupselection.key=ID +groupselection.noentries=Aucun groupe n'a \u00E9t\u00E9 trouv\u00E9. Cr\u00E9er ou relier s'il vous pla\u00EEt les groupes de ce cours. +institution.attribute=Attribut +institution.attributes.hint=V\u00E9rifier ici, quels attributs sont disponibles pour votre universit\u00E9. +mode=Mode +mode.easy=Facile +mode.expert=Avanc\u00E9e +popupchooseareas=Choisir des domaines d'\u00E9tude dans la gestion de groupes +popupchoosegroups=Choisir des groupes de la gestion de groupes +solution.checkgroupmanagement=Conseil\: Cr\u00E9ez ces groupes dans la gestion des groupes. +solution.chooseenrollment=Conseil\: Copiez l'identification de l'\u00E9l\u00E9ment de cours d'un \u00E9l\u00E9ment d'inscription. Si aucun \u00E9l\u00E9ment de cette sorte n'est disponible, ajoutez-y un. +solution.copypastenodeid=Conseil\: Copiez l'identification de l'\u00E9l\u00E9ment de cours dans l'onglet "description" de l'\u00E9l\u00E9ment. solution.error.inexpression=Indication\: V\u00E9rifiez les suites correctes de () et de "" ouvrants et fermants. -form.easy.error.nodeDeleted=Cet \u00E9l\u00E9ment de cours supprim\u00E9 ne peut plus \u00EAtre s\u00E9lectionn\u00E9. S\u00E9lectionnez un autre \u00E9l\u00E9ment de cours SVP. solution.error.undefvariable=Indication\: V\u00E9rifiez que l'argument possible sur la position {0} est entour\u00E9 de " " . -command.activate.expertMode=Afficher mode avanc\u00E9 -form.easy.attributeSwitch=D\u00E9pendant des attributs -form.easy.area=Uniquement pour les domaines d'\u00E9tude -error.notfound.name.publish=Cet \u00E9l\u00E9ment de cours contient un renvoi sur un groupe d'\u00E9tude ou un domaine d'\u00E9tude non existants. Votre r\u00E8gle d'acc\u00E8s ne sera donc pas ex\u00E9cut\u00E9e correctement\! -mode.expert=Avanc\u00E9e solution.example.date.infunction=Exemple\: {0}("13.10.2005 18\:25") +solution.example.institutionalname.infunction=Conseil\: Entourez le nom de l'institution avec "". solution.example.name.infunction=Conseil\: Entourez le nom de "". -easy.value=Valeur -error.fewerargs=La fonction "{0}" a moins d'arguments. -mode=Mode -error.notassessable.coursenodid=L'identification de l'\u00E9l\u00E9ment de cours ({1}) ne provient pas d'un \u00E9l\u00E9ment \u00E9valuable. -solution.checkgroupmanagement=Conseil\: Cr\u00E9ez ces groupes dans la gestion des groupes. -form.easy.attributebconnector.and=ET -form.easy.attributebconnector=R\u00E8gles li\u00E9s avec\: -solution.chooseenrollment=Conseil\: Copiez l'identification de l'\u00E9l\u00E9ment de cours d'un \u00E9l\u00E9ment d'inscription. Si aucun \u00E9l\u00E9ment de cette sorte n'est disponible, ajoutez-y un. -error.notfound.name=Le nom indiqu\u00E9 ({1}) n'a pas \u00E9t\u00E9 trouv\u00E9 dans la gestion de groupes de ce cours. -error.nameTooLong=Le/les nom/s indiqu\u00E9/s est/sont trop long/s\: un maximum de 100 signes est accept\u00E9. -create=Cr\u00E9er -solution.provideone.username=Conseil\: Indiquez exactement un nom d'utilisateur. Sachez qu'il ne sera pas contr\u00F4l\u00E9, si l'utilisateur existe d\u00E9j\u00E0 dans OLAT. -institution.attribute=Attribut -create.group=Cr\u00E9er groupe -form.easy.attributebconnector.or=OU -form.easy.nodePassed.deletedNode=El\u00E9ment de cours supprim\u00E9, changez SVP -form.easy.groupSwitch=D\u00E9pendant du groupe +solution.example.node.infunction=Conseil\: Entourez l'identification de l'\u00E9l\u00E9ment de cours de "" , p.ex. {0}("12345"). +solution.example.whiteSpace=Indication\: l'argument ne doit pas contenir d'espace. +solution.provideone.areaname=Conseil\: Indiquez exactement un domaine d'\u00E9tude. De plus, le domaine d'\u00E9tude doit d\u00E9j\u00E0 exister dans la gestion des groupes. solution.provideone.date=Conseil\: Exactement une indication de temps est n\u00E9cessaire pour la fonction "{0}". Le format est "jj.mm.AAAA HH\:mm". -mode.easy=Facile -error.undefined.unit.at=L'unit\u00E9 est inconnue pour le signe {0}, consultez l'aide pour les unit\u00E9s autoris\u00E9es. -form.easy.nodePassed.noNodes=Pas possible - aucun \u00E9l\u00E9ment de cours \u00E9valu\u00E9 -form.easy.error.group=Il faut indiquer au moins un groupe d'\u00E9tude ou un domaine d'\u00E9tude. -form.easy.error.edate=Format de date erron\u00E9 -form.easy.extCondConn.or=OU -error.fix=Cr\u00E9er -error.moreargs=La fonction "{0}" n\u00E9cessite plus d'arguments. -error.argtype.username=La fonction "{0}" doit \u00EAtre appel\u00E9 avec un nom d'utilisateur. -form.easy.example.edate=(Exemple\: 26.06.2007 16\:55) -form.easy.applyRulesForCoach=Appliquer les r\u00E8gles \u00E9galement pour les propri\u00E9taires et tuteurs -form.easy.error.bdate=Format de date erron\u00E9 -choose=S\u00E9lectionner -form.easy.example.area=(Exemple\: Gr_1,Gr_2) -popupchoosegroups=Choisir des groupes de la gestion de groupes solution.provideone.groupname=Conseil\: Indiquez exactement un nom de groupe. En plus, le nom de groupe doit d\u00E9j\u00E0 exister dans la gestion des groupes. -form.easy.edate=Fin -popupchooseareas=Choisir des domaines d'\u00E9tude dans la gestion de groupes -error.argtype.outcome.undefined=La variable demand\u00E9e n'existe pas dans le test s\u00E9lectionn\u00E9\! -form.easy.error.cutValue=Le score \u00E0 obtenir doit \u00EAtre un nombre entier. -apply=Reprendre -error.notfound.coursenodeid=L'identification d'\u00E9l\u00E9ment de cours ({1}) ci-indiqu\u00E9e n'a pas \u00E9t\u00E9 trouv\u00E9e dans le cours. -solution.provideone.areaname=Conseil\: Indiquez exactement un domaine d'\u00E9tude. De plus, le domaine d'\u00E9tude doit d\u00E9j\u00E0 exister dans la gestion des groupes. -command.activate.easyMode=Afficher mod\u00E8le simple -error.undefined.function.at=Cette fonction est inconnue pour le signe {0}, consultez l'aide pour les fonctions autoris\u00E9es. -form.easy.dateSwitch=D\u00E9pendant de la date -form.easy.cutValue=Points \u00E0 obtenir -error.argtype.date=L'indication de temps pour la fonction "{0}" doit \u00EAtre d\u00E9finie de la mani\u00E8re suivante\: "jj.mm.AAAA HH\:mm". Votre indication {1} ne correspond pas au format de temps. -easy.operator=Op\u00E9rateur -form.easy.assessmentSwitch.type=V\u00E9rifier la valeur -form.expert.error.condition=Erreur de pars - condition pr\u00E9alable invalide +solution.provideone.institutionalname=Conseil\: Indiquez exactement un nom d'institution. +solution.provideone.nodereference=Indication\: Exactement une identification d'\u00E9l\u00E9ment de cours est n\u00E9cessaire pour la fonction "{0}". +solution.provideone.username=Conseil\: Indiquez exactement un nom d'utilisateur. Sachez qu'il ne sera pas contr\u00F4l\u00E9, si l'utilisateur existe d\u00E9j\u00E0 dans OLAT. +solution.providetwo.attrvalue=Conseil\: La fonction "{0}" n\u00E9cessite un nom d'attribut et une valeur d'attribut, tous les deux entour\u00E9 de "" . +solution.takeassessablenode=Conseil\: Consultez le menu d'aide pour une liste d'\u00E9l\u00E9ments de cours \u00E9valuable. +xx={0} diff --git a/src/main/java/org/olat/course/config/CourseConfigEvent.java b/src/main/java/org/olat/course/config/CourseConfigEvent.java index e3e15a89412b5afdce55aa248baca8f4765e656e..48367986c6643f336be0ed0ec1c449f843e4235e 100644 --- a/src/main/java/org/olat/course/config/CourseConfigEvent.java +++ b/src/main/java/org/olat/course/config/CourseConfigEvent.java @@ -64,6 +64,7 @@ public class CourseConfigEvent extends MultiUserEvent { participantInfo, email, blog, + wiki, forum, documents, chat, diff --git a/src/main/java/org/olat/course/config/ui/CourseToolbarController.java b/src/main/java/org/olat/course/config/ui/CourseToolbarController.java index 53fb5afe658cfa436d36491c74dd01d7f9e16e6e..eb4ff7b0ea13c9619994f8e19c840051533ed801 100644 --- a/src/main/java/org/olat/course/config/ui/CourseToolbarController.java +++ b/src/main/java/org/olat/course/config/ui/CourseToolbarController.java @@ -54,6 +54,7 @@ import org.olat.course.config.CourseConfig; import org.olat.course.config.CourseConfigEvent; import org.olat.course.config.CourseConfigEvent.CourseConfigType; import org.olat.fileresource.types.BlogFileResource; +import org.olat.fileresource.types.WikiResource; import org.olat.repository.RepositoryEntry; import org.olat.repository.RepositoryEntryManagedFlag; import org.olat.repository.RepositoryManager; @@ -87,6 +88,10 @@ public class CourseToolbarController extends FormBasicController { private FormLayoutContainer blogCont; private FormLink blogOpenLink; private FormLink blogSelectLink; + private SelectionElement wikiEl; + private FormLayoutContainer wikiCont; + private FormLink wikiOpenLink; + private FormLink wikiSelectLink; private SelectionElement forumEl; private SelectionElement documentsEl; private SelectionElement chatEl; @@ -94,12 +99,14 @@ public class CourseToolbarController extends FormBasicController { private CloseableModalController cmc; private ReferencableEntriesSearchController blogSearchCtrl; + private ReferencableEntriesSearchController wikiSearchCtrl; private LockResult lockEntry; private final boolean editable; private RepositoryEntry entry; private CourseConfig courseConfig; private RepositoryEntry blogEntry; + private RepositoryEntry wikiEntry; @Autowired private UserManager userManager; @@ -119,6 +126,9 @@ public class CourseToolbarController extends FormBasicController { if (StringHelper.containsNonWhitespace(courseConfig.getBlogSoftKey())) { blogEntry = repositoryManager.lookupRepositoryEntryBySoftkey(courseConfig.getBlogSoftKey(), false); } + if (StringHelper.containsNonWhitespace(courseConfig.getWikiSoftKey())) { + wikiEntry = repositoryManager.lookupRepositoryEntryBySoftkey(courseConfig.getWikiSoftKey(), false); + } lockEntry = CoordinatorManager.getInstance().getCoordinator().getLocker() .acquireLock(entry.getOlatResource(), getIdentity(), CourseFactory.COURSE_EDITOR_LOCK); @@ -206,7 +216,6 @@ public class CourseToolbarController extends FormBasicController { if(managedEmail && emailEnabled) { canHideToolbar &= false; } - boolean blogEnabled = courseConfig.isBlogEnabled(); boolean managedBlog = RepositoryEntryManagedFlag.isManaged(entry, RepositoryEntryManagedFlag.blog); blogEl = uifactory.addCheckboxesHorizontal("blogIsOn", "chkbx.blog.onoff", formLayout, onKeys, onValues); @@ -223,6 +232,22 @@ public class CourseToolbarController extends FormBasicController { blogOpenLink = uifactory.addFormLink("blog.not.selected", blogCont, Link.LINK); blogSelectLink = uifactory.addFormLink("blog.select", blogCont, Link.BUTTON_XSMALL); + boolean wikiEnabled = courseConfig.isWikiEnabled(); + boolean managedwWiki = RepositoryEntryManagedFlag.isManaged(entry, RepositoryEntryManagedFlag.wiki); + wikiEl = uifactory.addCheckboxesHorizontal("wikiIsOn", "chkbx.wiki.onoff", formLayout, onKeys, onValues); + wikiEl.addActionListener(FormEvent.ONCHANGE); + wikiEl.select(onKeys[0], wikiEnabled); + wikiEl.setEnabled(editable && !managedwWiki); + if(managedwWiki && wikiEnabled) { + canHideToolbar &= false; + } + + wikiCont = FormLayoutContainer.createButtonLayout("wikiButtons", getTranslator()); + wikiCont.setRootForm(mainForm); + formLayout.add(wikiCont); + wikiOpenLink = uifactory.addFormLink("wiki.not.selected", wikiCont, Link.LINK); + wikiSelectLink = uifactory.addFormLink("wiki.select", wikiCont, Link.BUTTON_XSMALL); + boolean forumEnabled = courseConfig.isForumEnabled(); boolean managedForum = RepositoryEntryManagedFlag.isManaged(entry, RepositoryEntryManagedFlag.forum); forumEl = uifactory.addCheckboxesHorizontal("forumIsOn", "chkbx.forum.onoff", formLayout, onKeys, onValues); @@ -291,6 +316,24 @@ public class CourseToolbarController extends FormBasicController { blogSelectLink.setVisible(blogEntryEditable); blogSelectLink.setI18nKey("blog.select.button", new String[] { translate(blogSelected? "blog.replace": "blog.select")}); } + + boolean wikiEnabled = wikiEl.isSelected(0); + wikiOpenLink.setVisible(wikiEnabled); + wikiCont.setVisible(wikiEnabled); + wikiSelectLink.setVisible(wikiEnabled); + if (wikiEnabled) { + boolean wikiSelected = wikiEntry != null; + wikiOpenLink.setEnabled(wikiSelected); + String wikiTitle = wikiSelected + ? StringHelper.escapeHtml(wikiEntry.getDisplayname()) + : translate("wiki.not.selected"); + wikiOpenLink.setI18nKey("wiki.open", new String[] { wikiTitle }); + wikiOpenLink.setIconLeftCSS(wikiSelected? "o_icon o_icon-fw o_icon_preview": null); + + boolean wikiEntryEditable = wikiEl.isEnabled() && wikiEnabled; + wikiSelectLink.setVisible(wikiEntryEditable); + wikiSelectLink.setI18nKey("wiki.select.button", new String[] { translate(wikiSelected? "wiki.replace": "wiki.select")}); + } } @Override @@ -299,6 +342,10 @@ public class CourseToolbarController extends FormBasicController { updateUI(); } else if (source == blogSelectLink) { doSelectBlog(ureq); + } else if (source == wikiEl) { + updateUI(); + } else if (source == wikiSelectLink) { + doSelectWiki(ureq); } else if(toolbarEl == source) { if(!toolbarEl.isSelected(0) && isAnyToolSelected()) { showWarning("chkbx.toolbar.off.warning"); @@ -315,6 +362,7 @@ public class CourseToolbarController extends FormBasicController { || participantInfoEl.isSelected(0) || emailEl.isSelected(0) || blogEl.isSelected(0) + || wikiEl.isSelected(0) || forumEl.isSelected(0) || documentsEl.isSelected(0) || chatEl.isSelected(0) @@ -332,6 +380,7 @@ public class CourseToolbarController extends FormBasicController { participantInfoEl.setVisible(enabled); emailEl.setVisible(enabled); blogEl.setVisible(enabled); + wikiEl.setVisible(enabled); forumEl.setVisible(enabled); documentsEl.setVisible(enabled); chatEl.setVisible(enabled); @@ -350,14 +399,26 @@ public class CourseToolbarController extends FormBasicController { } cmc.deactivate(); cleanUp(); + } else if (source == wikiSearchCtrl) { + if (event == ReferencableEntriesSearchController.EVENT_REPOSITORY_ENTRY_SELECTED) { + RepositoryEntry wikiEntry = wikiSearchCtrl.getSelectedEntry(); + if (wikiEntry != null) { + this.wikiEntry = wikiEntry; + updateUI(); + } + } + cmc.deactivate(); + cleanUp(); } super.event(ureq, source, event); } private void cleanUp() { removeAsListenerAndDispose(blogSearchCtrl); + removeAsListenerAndDispose(wikiSearchCtrl); removeAsListenerAndDispose(cmc); blogSearchCtrl = null; + wikiSearchCtrl = null; cmc = null; } @@ -373,6 +434,15 @@ public class CourseToolbarController extends FormBasicController { allOk = false; } } + + wikiCont.clearError(); + boolean wikiEnabled = wikiEl.isSelected(0); + if (wikiEnabled) { + if (wikiEntry == null) { + wikiCont.setErrorKey("error.no.wiki.selected", null); + allOk = false; + } + } return allOk & super.validateFormLogic(ureq); } @@ -414,6 +484,14 @@ public class CourseToolbarController extends FormBasicController { courseConfig.setBlogSoftKey(blogSoftKey); doUpdateBlogReference(course, blogSelected); + boolean enableWiki = wikiEl.isSelected(0); + boolean updateWiki = courseConfig.isWikiEnabled() != enableWiki; + courseConfig.setWikiEnabled(enableWiki && toolbarEnabled); + boolean wikiSelected = enableWiki && wikiEntry != null; + String wikiSoftKey = wikiSelected? wikiEntry.getSoftkey(): null; + courseConfig.setWikiSoftKey(wikiSoftKey); + doUpdateWikiReference(course, wikiSelected); + boolean enableForum = forumEl.isSelected(0); boolean updateForum = courseConfig.isForumEnabled() != enableForum; courseConfig.setForumEnabled(enableForum && toolbarEnabled); @@ -495,6 +573,16 @@ public class CourseToolbarController extends FormBasicController { .fireEventToListenersOf(new CourseConfigEvent(CourseConfigType.blog, course.getResourceableId()), course); } + if(updateWiki) { + ILoggingAction loggingAction = enableWiki ? + LearningResourceLoggingAction.REPOSITORY_ENTRY_PROPERTIES_WIKI_ENABLED: + LearningResourceLoggingAction.REPOSITORY_ENTRY_PROPERTIES_WIKI_DISABLED; + ThreadLocalUserActivityLogger.log(loggingAction, getClass()); + + CoordinatorManager.getInstance().getCoordinator().getEventBus() + .fireEventToListenersOf(new CourseConfigEvent(CourseConfigType.wiki, course.getResourceableId()), course); + } + if(updateForum) { ILoggingAction loggingAction = enableForum ? LearningResourceLoggingAction.REPOSITORY_ENTRY_PROPERTIES_FORUM_ENABLED: @@ -571,4 +659,32 @@ public class CourseToolbarController extends FormBasicController { } } + private void doSelectWiki(UserRequest ureq) { + wikiSearchCtrl = new ReferencableEntriesSearchController(getWindowControl(), ureq, WikiResource.TYPE_NAME, + translate("wiki.select.titile")); + listenTo(wikiSearchCtrl); + cmc = new CloseableModalController(getWindowControl(), translate("close"), + wikiSearchCtrl.getInitialComponent(), true, translate("wiki.select.title")); + cmc.activate(); + } + + private void doUpdateWikiReference(ICourse course, boolean wikiSelected) { + Optional<Reference> reference = referenceManager.getReferences(course).stream() + .filter(ref -> ref.getUserdata().equals("wiki")) + .findAny(); + if (wikiSelected) { + if (reference.isPresent()) { + if (!reference.get().getTarget().equals(wikiEntry.getOlatResource())) { + // User selected other wiki (replaced) + referenceManager.delete(reference.get()); + referenceManager.addReference(course, wikiEntry.getOlatResource(), "wiki"); + } + } else { + referenceManager.addReference(course, wikiEntry.getOlatResource(), "wiki"); + } + } else if(!wikiSelected && reference.isPresent()) { + referenceManager.delete(reference.get()); + } + } + } diff --git a/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_de.properties index 3b8f47c812242fe64d4bab13404bd3d6cdffc2ba..64489cec714f80864c1c98c3b2e125f2bc747f6a 100644 --- a/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_de.properties @@ -22,6 +22,7 @@ chkbx.participantlist.onoff=Teilnehmerliste chkbx.toolbar.explain=Werkzeuge in Toolbar aktivieren: chkbx.toolbar.onoff=Toolbar sichtbar f\u00FCr Teilnehmer chkbx.toolbar.off.warning=Wenn sie die Toolbar abschalten, stehen die einzelnen Werkzeuge ebenfalls nicht mehr zur Verf\u00FCgung. +chkbx.wiki.onoff=Wiki chkbx.breadcrumb.onoff=Kr\u00FCmelnavigation command.choose=W\u00E4hlen command.glossary.add=Glossar w\u00E4hlen @@ -30,6 +31,7 @@ course.log.changed.message=<br>Detaillierte Kurs-Log-Dateien k\u00F6nnen im Arch coursefolder=Ablageordner details.options.title=Glossar und Ressourcenordner error.no.blog.selected=Es ist kein Blog ausgew\u00E4hlt. +error.no.wiki.selected=Es ist kein Wiki ausgew\u00E4hlt. form.layout.changecustomcss=CSS auswechseln form.layout.choosecustomcss=Eigenes CSS w\u00E4hlen form.layout.choosesystemcss=Standard CSS w\u00E4hlen @@ -59,3 +61,9 @@ warning.change.toenable=Mit dieser Auswahl werden die Leistungsnachweise f\u00FC warning.folderRef.title=Achtung! warning.folderRef=Es gibt einen Ordner Kursbaustein der auf diesen Ressourcenordner referenziert. Soll die Auswahl trotzdem gel\u00F6scht werden? warning.folderRefAdd=Der aktuelle Ressourcenordner ist durch einen Ordner Kursbaustein referenziert. Soll die Auswahl trotzdem ge\u00E4ndert werden? +wiki.not.selected=Kein Wiki ausgew\u00E4hlt +wiki.open={0} +wiki.replace=Ersetzen +wiki.select=Ausw\u00E4hlen +wiki.select.button={0} +wiki.select.title=Wiki ausw\u00E4hlen diff --git a/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_en.properties index 4930a2b5ed57688d22f81f6f0653063a9abee37f..1e0c691db08c20b4de1921f3c0abfdacfa37049a 100644 --- a/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_en.properties @@ -22,6 +22,7 @@ chkbx.participantlist.onoff=Participant list chkbx.toolbar.explain=Activate tools in toolbar: chkbx.toolbar.onoff=Toolbar visible for participants chkbx.toolbar.off.warning=If you disable the toolbar, the individual tools are also no longer available. +chkbx.wiki.onoff=Wiki chkbx.breadcrumb.onoff=Bread-crumb navigation command.choose=Choose command.glossary.add=Select glossary @@ -30,6 +31,7 @@ course.log.changed.message=<br>Detailed course log files can be downloaded with coursefolder=Storage folder details.options.title=Glossary and resource folder error.no.blog.selected=No blog selected. +error.no.wiki.selected=No wiki selected. form.layout.changecustomcss=Change CSS form.layout.choosecustomcss=Choose your own CSS form.layout.choosesystemcss=Select default CSS @@ -58,4 +60,10 @@ warning.change.todisabled=All evidences of achievement already existing will no warning.change.toenable=By selecting this option evidences of achievement will be created for the entire course. This will take a while. Do you want to proceed? warning.folderRef.title=Attention! warning.folderRef=This resource folder is referenced by at least one folder course node. Removing this resource folder will lead to an inconsistent folder configuration. Do you wish to proceed nevertheless? -warning.folderRefAdd=This resource folder is referenced by at least one folder course node. Changing this resource folder will lead to an inconsistent folder configuration. Do you wish to proceed nevertheless? \ No newline at end of file +warning.folderRefAdd=This resource folder is referenced by at least one folder course node. Changing this resource folder will lead to an inconsistent folder configuration. Do you wish to proceed nevertheless? +wiki.not.selected=No wiki selected +wiki.open={0} +wiki.replace=Replace +wiki.select=Select +wiki.select.button={0} +wiki.select.wiki=Select wiki \ No newline at end of file diff --git a/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_fr.properties index 4c6383ea221281b5dd3c6f9f2a91a3a8ac78808e..89169b1734885e7725fabd6ffe8fdfcacd01da4c 100644 --- a/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/config/ui/_i18n/LocalStrings_fr.properties @@ -1,14 +1,27 @@ -#Mon Nov 19 18:32:32 CET 2018 +#Sun Mar 01 08:20:44 CET 2020 +blog.not.selected=Pas de blog s\u00E9lectionn\u00E9 +blog.open={0} +blog.replace=Remplacer +blog.select=S\u00E9lectionner +blog.select.button={0} +blog.select.title=S\u00E9lectionner un blog +chkbx.blog.onoff=Blog chkbx.breadcrumb.onoff=Navigation fil d'Ariane chkbx.calendar.onoff=Calendrier du cours chkbx.chat.onoff=Chat du cours +chkbx.documents.onoff=Documents chkbx.efficency.onoff=Utiliser l'attestation de performance +chkbx.email.onoff=Courriel +chkbx.forum.onoff=Forum chkbx.glossary.explain=Le glossaire doit \u00EAtre configurer sous "Options". chkbx.glossary.inverse.explain=Le menu du glossaire dans la barre d'outils est \uFFFD configurer sous "Barre d'outils". chkbx.glossary.onoff=Glossaire chkbx.menu.onoff=Menu visible pour les participants et les coaches +chkbx.participantinfo.onoff=Informations participants +chkbx.participantlist.onoff=Liste des participants chkbx.search.onoff=Recherche au sein du cours chkbx.toolbar.explain=Activer les outils de la barre d'outils\: +chkbx.toolbar.off.warning=Si vous d\u00E9sactivez la barre d'outils, les outils individuels ne seront plus disponibles. chkbx.toolbar.onoff=Barre d'outils visible pour les participants command.choose=S\u00E9lectionner command.glossary.add=Choisir glossaire @@ -16,6 +29,7 @@ command.glossary.remove=Effacer s\u00E9lection course.log.changed.message=<br>Les fichiers log de cours d\u00E9taill\u00E9s peuvent \u00EAtre t\u00E9l\u00E9charg\u00E9s dans l'outil d'archivage.<br><br>Les fichiers log de cours anciens (OLAT 6.2 e versions ant\u00E9rieures) sont \u00E0 disposition dans le dossier de stockage du cours. coursefolder=Dossier de stockage details.options.title=Glossaire et dossier de ressources +error.no.blog.selected=Pas de blog s\u00E9lectionn\u00E9. form.layout.changecustomcss=Changer de CSS form.layout.choosecustomcss=Choisir son propre CSS form.layout.choosesystemcss=Choisir CSS Standard diff --git a/src/main/java/org/olat/course/editor/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/editor/_i18n/LocalStrings_fr.properties index 65ab515d0b45ddadae9f62fa7b93e52720565121..a9ef7f035ae5d5b814ad64175c28eb6351805ab5 100644 --- a/src/main/java/org/olat/course/editor/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/editor/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Tue Sep 03 06:25:58 CEST 2019 +#Tue Mar 03 07:00:44 CET 2020 access.form.label=Avoir acc\u00E8s au cours entier. access.legend=Modifier l'acc\u00E8s au cours entier alternative=Chercher un \u00E9l\u00E9ment de cours alternatif @@ -7,6 +7,8 @@ alternative.choose=Choisir l'\u00E9l\u00E9ment de cours alternatif et convertir alternative.choose.description=Choisissez dans la liste les \u00E9l\u00E9ments de cours alternatifs avec des fonctionnalit\u00E9s similaires pour convertir cet \u00E9l\u00E9ment d\u00E9sactiv\u00E9. Le titre. la description ainsi que les r\u00E8gles d'acc\u00E8s et tous les \u00E9l\u00E9ments enfants seront repris. apply=OK assessment=Tester les connaissances +bulk.general=$\:pane.tab.general +bulk.learning.path=$org.olat.course.learningpath.ui\:pane.tab.learning.path checkall=S\u00E9lectionner tous checklist.wizard=Listes de contr\u00F4le cif.access=$org.olat.repository\:cif.access @@ -18,6 +20,7 @@ cif.access.users=$org.olat.repository\:cif.access.users cif.access.users_guests=$org.olat.repository\:cif.access.users_guests collaboration=Communication et collaboration command.admin.header=Fonctions +command.bulk=Changer la configuration command.closeeditor=Fermer \u00E9diteur command.copynode=Copier command.coursepreview=Aper\u00E7u du cours @@ -26,7 +29,9 @@ command.deletenode.header=Modifier \u00E9l\u00E9ments de cours command.movenode=D\u00E9placer command.multi.checklist=Plusieurs listes de contr\u00F4le command.multi.sps=Plusieurs pages individuelles +command.overview=Aper\u00E7u de la configuration command.publish=Publier +condition.accessibility.title=Acc\u00E8s condition.noAccessExplanation.title=Informations si visible et pas d'acc\u00E8s condition.visibility.title=Visibilit\u00E9 content=Partager les connaissances @@ -47,6 +52,7 @@ deletenode.no=Annuler deletenode.success=L'\u00E9l\u00E9ment de cours a \u00E9t\u00E9 marqu\u00E9 comme supprim\u00E9. Il sera supprim\u00E9 d\u00E9finitivement d\u00E8s que vous aurez publi\u00E9 ce changement. deletenode.yes=Supprimer l'\u00E9l\u00E9ment de cours y compris tous les sous-\u00E9l\u00E9ments. disabled=Versions +error.select.one.course.node=Vous devez choisir au moins un \u00E9l\u00E9ment de cours. fix.it=Aller \u00E0 form.legende.mandatory=Indications obligatoires form.noAccessExplanation=Texte @@ -97,6 +103,7 @@ nodeEdit.intLink=Lien interne au cours (n'ouvre pas de nouvelle fen\u00EAtre) nodeEdit.links=Ins\u00E9rer un lien vers cet \u00E9l\u00E9ment de cours nodeEdit.linksIntro=Pour faire une r\u00E9f\u00E9rence vers cet \u00E9l\u00E9ment de cours depuis l'ext\u00E9rieur, utilisez le lien externe. Pour ins\u00E9rer un lien \u00E0 l'int\u00E9rieur du cours, utilisez le lien interne. other=Autres +overview.title=Configuration du cours pane.tab.accessibility=Acc\u00E8s pane.tab.general=Titre et description pane.tab.visibility=Visibilit\u00E9 @@ -142,6 +149,23 @@ publish.wizard.title=Publier published.latest=Le cours a \u00E9t\u00E9 publi\u00E9 la derni\u00E8re fois le {0}. published.never.yet=Le cours n'a jamais \u00E9t\u00E9 publi\u00E9 status=Statut +table.empty=Ce cours ne contient aucun \u00E9l\u00E9ment. +table.header.comment=$org.olat.course.nodes.ms\:form.comment +table.header.deleted=Effac\u00E9 +table.header.dirty=Changements non publi\u00E9s +table.header.display=$\:nodeConfigForm.display_options +table.header.hints=Suggestion +table.header.individual.documents=$org.olat.course.nodes.ms\:form.individual.assessment.docs +table.header.learning.objectives=$\:nodeConfigForm.learningobjectives +table.header.long.title=$\:nodeConfigForm.displaytitle +table.header.new=Nouveau +table.header.node=\u00C9l\u00E9ment de cours +table.header.passed=$org.olat.course.nodes.ms\:form.passed +table.header.passed.cut=$org.olat.course.nodes.ms\:form.cut +table.header.score=$org.olat.course.nodes.ms\:form.score +table.header.score.max=$org.olat.course.nodes.ms\:form.max +table.header.score.min=$org.olat.course.nodes.ms\:form.min +table.header.short.title=$\:nodeConfigForm.menutitle target.node.child=Subordonn\u00E9 target.node.first.node=d\u00E9but target.node.last.node=Fin diff --git a/src/main/java/org/olat/course/learningpath/ui/CurriculumLearningPathRepositoryListController.java b/src/main/java/org/olat/course/learningpath/ui/CurriculumLearningPathRepositoryListController.java index 7cf3d9b345684c934820673676c8fadf431d3f82..d1662a209307a510a04ff156db4dc2742952fcb6 100644 --- a/src/main/java/org/olat/course/learningpath/ui/CurriculumLearningPathRepositoryListController.java +++ b/src/main/java/org/olat/course/learningpath/ui/CurriculumLearningPathRepositoryListController.java @@ -78,7 +78,7 @@ public class CurriculumLearningPathRepositoryListController extends FormBasicCon private FlexiTableElement tableEl; private CurriculumLearningPathRepositoryDataModel dataModel; - private LearningPathIdentityCtrl currentIdentityCtrl; + private LearningPathIdentityController currentIdentityCtrl; private final TooledStackedPanel stackPanel; private final CurriculumElement curriculumElement; @@ -195,7 +195,7 @@ public class CurriculumLearningPathRepositoryListController extends FormBasicCon IdentityEnvironment identityEnv = new IdentityEnvironment(); identityEnv.setIdentity(participant); UserCourseEnvironment coachedCourseEnv = new UserCourseEnvironmentImpl(identityEnv, courseEnvironment); - currentIdentityCtrl = new LearningPathIdentityCtrl(ureq, bwControl, stackPanel, coachedCourseEnv); + currentIdentityCtrl = new LearningPathIdentityController(ureq, bwControl, stackPanel, coachedCourseEnv); listenTo(currentIdentityCtrl); String title = row.getRepositoryEntry().getDisplayname().length() > 30 ? row.getRepositoryEntry().getDisplayname().substring(0, 30) + "..." diff --git a/src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityCtrl.java b/src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityController.java similarity index 94% rename from src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityCtrl.java rename to src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityController.java index 36d5ef32def44cce91a11c79916fb4239cd81838..407a2960d0cdc525bc8d53eceec85638ca1477ce 100644 --- a/src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityCtrl.java +++ b/src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityController.java @@ -36,12 +36,12 @@ import org.olat.course.run.userview.UserCourseEnvironmentImpl; * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com * */ -public class LearningPathIdentityCtrl extends BasicController { +public class LearningPathIdentityController extends BasicController { private CoachedIdentityLargeInfosController coachedIdentityLargeInfosCtrl; private LearningPathListController learningPathListCtrl; - public LearningPathIdentityCtrl(UserRequest ureq, WindowControl wControl, TooledStackedPanel stackPanel, + public LearningPathIdentityController(UserRequest ureq, WindowControl wControl, TooledStackedPanel stackPanel, UserCourseEnvironment coachedCourseEnv) { super(ureq, wControl); diff --git a/src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityListController.java b/src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityListController.java index f7a1c41f625e93f5ae9d572a0d970040e21907fc..b49311bf1742d592af1c0114b4717c8bc9851e43 100644 --- a/src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityListController.java +++ b/src/main/java/org/olat/course/learningpath/ui/LearningPathIdentityListController.java @@ -80,7 +80,7 @@ public class LearningPathIdentityListController extends FormBasicController impl private FlexiTableElement tableEl; private LearningPathIdentityDataModel dataModel; - private LearningPathIdentityCtrl currentIdentityCtrl; + private LearningPathIdentityController currentIdentityCtrl; private final TooledStackedPanel stackPanel; private final UserCourseEnvironment coachCourseEnv; @@ -219,7 +219,7 @@ public class LearningPathIdentityListController extends FormBasicController impl IdentityEnvironment identityEnv = new IdentityEnvironment(); identityEnv.setIdentity(coachedIdentity); UserCourseEnvironment coachedCourseEnv = new UserCourseEnvironmentImpl(identityEnv, coachCourseEnv.getCourseEnvironment()); - currentIdentityCtrl = new LearningPathIdentityCtrl(ureq, bwControl, stackPanel, coachedCourseEnv); + currentIdentityCtrl = new LearningPathIdentityController(ureq, bwControl, stackPanel, coachedCourseEnv); listenTo(currentIdentityCtrl); stackPanel.pushController(fullName, currentIdentityCtrl); } diff --git a/src/main/java/org/olat/course/learningpath/ui/LearningPathListController.java b/src/main/java/org/olat/course/learningpath/ui/LearningPathListController.java index c03f081ea9e1e0941030a93bffe3134226d7308a..f13c606890ff9dc8e2862ddb32432b8fbecc3a54 100644 --- a/src/main/java/org/olat/course/learningpath/ui/LearningPathListController.java +++ b/src/main/java/org/olat/course/learningpath/ui/LearningPathListController.java @@ -56,6 +56,8 @@ import org.olat.course.assessment.CourseAssessmentService; import org.olat.course.assessment.IndentedNodeRenderer; import org.olat.course.assessment.handler.AssessmentConfig; import org.olat.course.assessment.ui.tool.AssessmentStatusCellRenderer; +import org.olat.course.learningpath.LearningPathConfigs; +import org.olat.course.learningpath.LearningPathService; import org.olat.course.learningpath.manager.LearningPathCourseTreeModelBuilder; import org.olat.course.learningpath.ui.LearningPathDataModel.LearningPathCols; import org.olat.course.nodes.CourseNode; @@ -97,6 +99,8 @@ public class LearningPathListController extends FormBasicController implements T private AssessmentService assessmentService; @Autowired private CourseAssessmentService courseAssessmentService; + @Autowired + private LearningPathService learningPathService; public LearningPathListController(UserRequest ureq, WindowControl wControl, TooledStackedPanel stackPanel, UserCourseEnvironment userCourseEnv, boolean canEdit) { @@ -216,11 +220,18 @@ public class LearningPathListController extends FormBasicController implements T private LearningPathRow forgeRow(LearningPathTreeNode treeNode, LearningPathRow parent) { LearningPathRow row = new LearningPathRow(treeNode); row.setParent(parent); + forgeStartDate(row); forgeEndDate(row); forgeObligation(row); return row; } + private void forgeStartDate(LearningPathRow row) { + LearningPathConfigs learningPathConfigs = learningPathService.getConfigs(row.getCourseNode()); + Date startDate = learningPathConfigs.getStartDate(); + row.setStartDate(startDate); + } + private void forgeEndDate(LearningPathRow row) { Overridable<Date> endDate = row.getEndDate(); if (!canEdit && !endDate.isOverridden()) { diff --git a/src/main/java/org/olat/course/learningpath/ui/LearningPathNodeConfigController.java b/src/main/java/org/olat/course/learningpath/ui/LearningPathNodeConfigController.java index 2d492632f2ead52b4b7d78c6330d0cd5f70fc7e0..25afddffee257e831a0c0b962e16d90941241e82 100644 --- a/src/main/java/org/olat/course/learningpath/ui/LearningPathNodeConfigController.java +++ b/src/main/java/org/olat/course/learningpath/ui/LearningPathNodeConfigController.java @@ -91,7 +91,7 @@ public class LearningPathNodeConfigController extends FormBasicController { @Override protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { setFormTitle("config.title"); - + setFormContextHelp("Learning path element"); KeyValues obligationKV = new KeyValues(); obligationKV.add(entry(AssessmentObligation.mandatory.name(), translate("config.obligation.mandatory"))); obligationKV.add(entry(AssessmentObligation.optional.name(), translate("config.obligation.optional"))); diff --git a/src/main/java/org/olat/course/learningpath/ui/LearningPathRow.java b/src/main/java/org/olat/course/learningpath/ui/LearningPathRow.java index bc904a31c44b2df6836222d001fec486a23ce920..1537ef98019f3d2717a21b0e0df70ccb86ffdf89 100644 --- a/src/main/java/org/olat/course/learningpath/ui/LearningPathRow.java +++ b/src/main/java/org/olat/course/learningpath/ui/LearningPathRow.java @@ -38,6 +38,7 @@ import org.olat.modules.assessment.model.AssessmentObligation; public class LearningPathRow implements FlexiTreeTableNode, IndentedCourseNode { private final LearningPathTreeNode learningPathNode; + private Date startDate; private FormLink endDateFormItem; private String translatedObligation; private FormLink obligationFormItem; @@ -89,7 +90,11 @@ public class LearningPathRow implements FlexiTreeTableNode, IndentedCourseNode { } public Date getStartDate() { - return learningPathNode.getStartDate(); + return startDate; + } + + public void setStartDate(Date startDate) { + this.startDate = startDate; } public FormLink getEndDateFormItem() { diff --git a/src/main/java/org/olat/course/learningpath/ui/_content/identity.html b/src/main/java/org/olat/course/learningpath/ui/_content/identity.html index 43833403c7e0d14e40bd943bdb022f46f9f8d914..017395035eaff4ab12e79626c209768fd34e6289 100644 --- a/src/main/java/org/olat/course/learningpath/ui/_content/identity.html +++ b/src/main/java/org/olat/course/learningpath/ui/_content/identity.html @@ -3,6 +3,7 @@ <i class="o_icon o_icon_learning_path"> </i> $r.translate("identity.list.title") <small>$r.translate("identity.list.course",$courseTitle)</small> + $r.contextHelpWithWrapper("Learning path profile") </h2> $r.render("user") $r.render("list") diff --git a/src/main/java/org/olat/course/learningpath/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/learningpath/ui/_i18n/LocalStrings_fr.properties new file mode 100644 index 0000000000000000000000000000000000000000..54744619519249efb17572ada89ecf82252e5e78 --- /dev/null +++ b/src/main/java/org/olat/course/learningpath/ui/_i18n/LocalStrings_fr.properties @@ -0,0 +1,65 @@ +#Wed Mar 04 06:57:29 CET 2020 +access.provider.name=Parcours d'apprentissage +assessment.status.done=Termin\u00E9 +assessment.status.inProgress=$org.olat.modules.assessment.ui\:assessment.status.inProgress +assessment.status.inReview=$org.olat.modules.assessment.ui\:assessment.status.inReview +assessment.status.notReady=$org.olat.modules.assessment.ui\:assessment.status.notReady +assessment.status.notStart=$org.olat.modules.assessment.ui\:assessment.status.notStart +config.duration=Temps de travail (minutes) +config.end.date=Date d'\u00E9ch\u00E9ance +config.obligation=Obligation +config.obligation.mandatory=Obligatoire +config.obligation.optional=Facultatif +config.score.cut=Minimum de points +config.title=$\:pane.tab.learning.path +config.trigger=Crit\u00E8re d'ach\u00E8vement +config.trigger.confirmed=Confirmation du participant +config.trigger.passed=R\u00E9ussi +config.trigger.score=Points +config.trigger.score.value=Nombre de points minimum\: {0} +config.trigger.status.done=Crit\u00E8re d'ex\u00E9cution +config.trigger.status.in.review=En cours de revue +config.trigger.visited=Ouvrir l'\u00E9l\u00E9ment de cours +curriculum.element.list.title=$org.olat.modules.assessment.ui\:learning.progress +error.fully.assessed.passed=Le crit\u00E8re d'ex\u00E9cution de l'\u00E9l\u00E9ment de cours ne peut pas \u00EAtre "r\u00E9ussi" car l'\u00E9l\u00E9ment de cours ne peut pas \u00EAtre "r\u00E9ussi". +error.fully.assessed.score=Le crit\u00E8re d'ex\u00E9cution de l'\u00E9l\u00E9ment de cours ne peut pas \u00EAtre le nombre de points car l'\u00E9l\u00E9ment de cours ne donne pas de points. +error.positiv.int=Entrer un nombre positif +identities.list.course=Dans le cours {0} +identities.list.title=Parcours d'apprentissage +identity.list.course=dans le cours {0} +identity.list.title=Parcours d'apprentissage +my.list.course=dans le cours {0} +my.list.title=Mon parcours d'apprentissage +override.obligation.mandatory.do=Obligatoire +override.obligation.mandatory.info=L'\u00E9l\u00E9ment de cours a \u00E9t\u00E9 rendu obligatoire par {0} le {1}. +override.obligation.optional.do=Facultatif +override.obligation.optional.info=L'\u00E9l\u00E9ment de cours a \u00E9t\u00E9 rendu facultatif par {0} le {1}. +override.reset=Annuler les changements +pane.tab.learning.path=Parcours d'apprentissage +participant.groups.title=Participants de groupes +passed.false=$org.olat.course.assessment\:passed.false +passed.true=$org.olat.course.assessment\:passed.true +reset.all.status=R\u00E9initialiser <strong>tous</strong> les status. +table.empty=Il n'y a pas d'\u00E9l\u00E9ments de cours disponible. +table.empty.curriculum=Il n'y a pas de participants. +table.empty.identities=Il n'y a pas de participants. +table.empty.repository=Il n'y a pas de cours. +table.header.completion=$org.olat.modules.assessment.ui\:learning.progress +table.header.duration=Temps d'apprentissage +table.header.end=$\:config.end.date +table.header.first.visit=Premi\u00E8re visite +table.header.fully.assessed.date=Termin\u00E9 le +table.header.last.visit=Derni\u00E8re visite +table.header.learning.path.icon=<i class\='o_icon o_icon-lg o_icon_learning_path'> </i> +table.header.learning.path.status=<i class\='o_icon o_icon-lg o_lp_done'> </i> +table.header.learning.progress=$org.olat.modules.assessment.ui\:learning.progress +table.header.node=\u00C9l\u00E9ment de cours +table.header.obligation=Obligation +table.header.passed=$org.olat.modules.assessment.ui\:table.header.passed +table.header.progress=<i class\='o_icon o_icon-lg o_lp_done'> </i> +table.header.reponame=Cours +table.header.score=$org.olat.modules.assessment.ui\:table.header.score +table.header.start=$\:config.start.date +table.header.status=Statut +table.header.trigger=$\:config.trigger +table.header.username=Nom d'utilisateur diff --git a/src/main/java/org/olat/course/nodeaccess/ui/NodeAccessSettingsController.java b/src/main/java/org/olat/course/nodeaccess/ui/NodeAccessSettingsController.java index 42ce0e9a6e24f248f119559ce2791bfbbedddb2c..d453b0daef16e12ef342fac638ebf0385188553a 100644 --- a/src/main/java/org/olat/course/nodeaccess/ui/NodeAccessSettingsController.java +++ b/src/main/java/org/olat/course/nodeaccess/ui/NodeAccessSettingsController.java @@ -103,7 +103,7 @@ public class NodeAccessSettingsController extends FormBasicController { @Override protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { setFormTitle("settings.title"); - + setFormContextHelp("Access course elements"); String nodeAccessTypeName = nodeAccessService.getNodeAccessTypeName(courseConfig.getNodeAccessType(), getLocale()); uifactory.addStaticTextElement("settings.type", nodeAccessTypeName, formLayout);; @@ -111,7 +111,7 @@ public class NodeAccessSettingsController extends FormBasicController { if (!LearningPathNodeAccessProvider.TYPE.equals(courseConfig.getNodeAccessType().getType())) { FormLayoutContainer migrationCont = FormLayoutContainer.createButtonLayout("migrationButtons", getTranslator()); formLayout.add(migrationCont); - migrateLink = uifactory.addFormLink("settings.migrate", migrationCont, Link.BUTTON); + migrateLink = uifactory.addFormLink("settings.convert", migrationCont, Link.BUTTON); } if (LearningPathNodeAccessProvider.TYPE.equals(courseConfig.getNodeAccessType().getType())) { @@ -202,19 +202,6 @@ public class NodeAccessSettingsController extends FormBasicController { boolean changedToDurationType = CompletionType.duration.equals(completionType) && !CompletionType.duration.equals(courseConfig.getCompletionType()); - if (changedToDurationType) { - doConfirmCompletionTypeDuration(ureq); - } else { - if(CourseFactory.isCourseEditSessionOpen(courseEntry.getOlatResource().getResourceableId())) { - showWarning("error.course.locked"); - initCompletionTypeFromConfig(); - return; - } - saveCompletionTypeAndCloseEditSession(completionType); - } - } - - private void doConfirmCompletionTypeDuration(UserRequest ureq) { OLATResourceable courseOres = courseEntry.getOlatResource(); if(CourseFactory.isCourseEditSessionOpen(courseOres.getResourceableId())) { showWarning("error.course.locked"); @@ -223,6 +210,14 @@ public class NodeAccessSettingsController extends FormBasicController { } CourseFactory.openCourseEditSession(courseOres.getResourceableId()); + if (changedToDurationType) { + doConfirmCompletionTypeDuration(ureq); + } else { + saveCompletionTypeAndCloseEditSession(completionType); + } + } + + private void doConfirmCompletionTypeDuration(UserRequest ureq) { durationConfirmationCtrl = new DurationConfirmationController(ureq, getWindowControl()); listenTo(durationConfirmationCtrl); @@ -232,7 +227,6 @@ public class NodeAccessSettingsController extends FormBasicController { listenTo(cmc); } - private void doSetCompletionTypeDuration(Integer duration) { ICourse course = CourseFactory.loadCourse(courseEntry); @@ -267,6 +261,7 @@ public class NodeAccessSettingsController extends FormBasicController { courseConfig.setCompletionType(completionType); logActivity(completionType); } + CourseFactory.setCourseConfig(courseEntry.getOlatResource().getResourceableId(), courseConfig); CourseFactory.closeCourseEditSession(courseEntry.getOlatResource().getResourceableId(), false); } diff --git a/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_de.properties index 70b71c5e0cbffa70e0a65c0d9efdaa36f9717494..88429531e3674735286effd377447f7db05b1099 100644 --- a/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_de.properties @@ -1,4 +1,4 @@ -error.course.locked=Dieser Kurs wird bereits von jemand anderem bearbeitet. Diese Einstellun kann nicht g\u00E4ndert werden. +error.course.locked=Dieser Kurs wird bereits von jemand anderem bearbeitet. Diese Einstellung kann nicht g\u00E4ndert werden. error.positiv.int=$org.olat.course.learningpath.ui\:error.positiv.int settings.completion.type.confirmation.duration=$org.olat.course.learningpath.ui\:config.duration settings.completion.type.confirmation.info=Wollen Sie den Lernfortschritt wirklich anhand der gesch\u00E4tzten Zeitdauer der einzelnen Kursbausteine berechnen? In diesem Fall muss in jedem Kursbaustein die Bearbeitungszeit definiert sein. Geben Sie hier einen Initialwert ein, welcher bei Kursbausteinen ohne Bearbeitungszeit eingetragen wird. @@ -6,7 +6,7 @@ settings.completion.type.confirmation.title=Berechnungsmethode des Lernfortschri settings.completion.type.duration=Anhand der Bearbeitungszeit der Kursbausteine settings.completion.type.number.of.nodes=Anhand der Anzahl der Kursbausteine settings.completion.type=Lernfortschritt berechnen -settings.migrate=In Lernpfad-Kurs umwandeln +settings.convert=In Lernpfad-Kurs konvertieren settings.title=Zugriff Kursbausteine settings.type=Typ unsupported.course.nodes.names=Nicht unterst\u00FCtzte Kursbausteine diff --git a/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_en.properties index 2458c92738933574e28891e6798a47b338ea38db..c3f9c49dfa5f89473587c7138874eef41634e30a 100644 --- a/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_en.properties @@ -6,7 +6,7 @@ settings.completion.type.confirmation.title=Calculation of learning progress settings.completion.type.duration=According to the estimated duration of the course elements settings.completion.type.number.of.nodes=According to the number of course elements settings.completion.type=Calculation of learning progress -settings.migrate=Migrate to leaning path course +settings.convert=Convert to leaning path course settings.title=Access course elements settings.type=Type unsupported.course.nodes.names=Unsupported course elements diff --git a/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_fr.properties new file mode 100644 index 0000000000000000000000000000000000000000..32f57e69df996071d73f6b16403d80a06768ab43 --- /dev/null +++ b/src/main/java/org/olat/course/nodeaccess/ui/_i18n/LocalStrings_fr.properties @@ -0,0 +1,13 @@ +#Wed Mar 04 07:04:57 CET 2020 +error.course.locked=Le cours est \u00E9dit\u00E9 par une autre personne \u00E0 l'instant. Ce param\u00E8tre ne peut pas \u00EAtre modifi\u00E9. +error.positiv.int=$org.olat.course.learningpath.ui\:error.positiv.int +settings.completion.type=Calcul de la progression de l'apprentissage en cours +settings.completion.type.confirmation.duration=$org.olat.course.learningpath.ui\:config.duration +settings.completion.type.confirmation.title=M\u00E9thode de calcul de la progression de l'apprentissage +settings.completion.type.duration=En fonction de la dur\u00E9e estim\u00E9e de l'\u00E9l\u00E9ment de cours +settings.completion.type.number.of.nodes=En fonction du nombre d'\u00E9l\u00E9ments de cours +settings.title=Acc\u00E8s \u00E9l\u00E9ment de cours +settings.type=Type +unsupported.course.nodes.names=\u00C9l\u00E9ments de cours non support\u00E9s +unsupported.course.nodes.title=\u00C9l\u00E9ments de cours non support\u00E9 +unsupported.course.nodes.warning=Le cours ne peut pas \u00EAtre converti parcours d'apprentissage car ses \u00E9l\u00E9ments de cours ne sont pas tous support\u00E9. diff --git a/src/main/java/org/olat/course/nodes/CPCourseNode.java b/src/main/java/org/olat/course/nodes/CPCourseNode.java index 55abf30ca7bca2dd1af0f429f88adf8dcc9baa04..075cdeb22db2a8c28e7251161eb0fdc87f19277c 100644 --- a/src/main/java/org/olat/course/nodes/CPCourseNode.java +++ b/src/main/java/org/olat/course/nodes/CPCourseNode.java @@ -75,7 +75,7 @@ public class CPCourseNode extends AbstractAccessableCourseNode { private static final Logger log = Tracing.createLoggerFor(CPCourseNode.class); private static final long serialVersionUID = -4317662219173515498L; - private static final String TYPE = "cp"; + public static final String TYPE = "cp"; public CPCourseNode() { this(null); @@ -101,14 +101,14 @@ public class CPCourseNode extends AbstractAccessableCourseNode { public NodeRunConstructionResult createNodeRunConstructionResult(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv, CourseNodeSecurityCallback nodeSecCallback, String nodecmd) { OLATResourceable ores = OresHelper.createOLATResourceableInstance(ICourse.class, userCourseEnv.getCourseEnvironment().getCourseResourceableId()); - CPRunController cprunC = new CPRunController(getModuleConfiguration(), ureq, wControl, this, nodecmd, ores, false); + CPRunController cprunC = new CPRunController(getModuleConfiguration(), ureq, wControl, this, nodecmd, ores, false, userCourseEnv); return cprunC.createNodeRunConstructionResult(ureq, null); } @Override public Controller createPreviewController(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv, CourseNodeSecurityCallback nodeSecCallback) { OLATResourceable ores = OresHelper.createOLATResourceableInstance(ICourse.class, userCourseEnv.getCourseEnvironment().getCourseResourceableId()); - return new CPRunController(getModuleConfiguration(), ureq, wControl, this, null, ores, true); + return new CPRunController(getModuleConfiguration(), ureq, wControl, this, null, ores, true, userCourseEnv); } @Override diff --git a/src/main/java/org/olat/course/nodes/ENCourseNode.java b/src/main/java/org/olat/course/nodes/ENCourseNode.java index 8ec4dcbde38aa66141dde7021cb8ef50db4505e5..28edeca554e3b26d97fedf74cd8b7da805af2435 100644 --- a/src/main/java/org/olat/course/nodes/ENCourseNode.java +++ b/src/main/java/org/olat/course/nodes/ENCourseNode.java @@ -140,7 +140,6 @@ public class ENCourseNode extends AbstractAccessableCourseNode { @Override public TabbableController createEditController(UserRequest ureq, WindowControl wControl, BreadcrumbPanel stackPanel, ICourse course, UserCourseEnvironment euce) { - //TODO uh migrateConfig(); ENEditController childTabCntrllr = new ENEditController(getModuleConfiguration(), ureq, wControl, euce); CourseNode chosenNode = course.getEditorTreeModel().getCourseNode(euce.getCourseEditorEnv().getCurrentCourseNodeId()); diff --git a/src/main/java/org/olat/course/nodes/MembersCourseNode.java b/src/main/java/org/olat/course/nodes/MembersCourseNode.java index b6e2b5dc9336897894c893912c557fd5d0366010..23256451583025af1684fee19b84bcadf891a350 100644 --- a/src/main/java/org/olat/course/nodes/MembersCourseNode.java +++ b/src/main/java/org/olat/course/nodes/MembersCourseNode.java @@ -32,6 +32,7 @@ import org.olat.core.id.Roles; import org.olat.core.util.Util; import org.olat.core.util.nodes.INode; import org.olat.course.ICourse; +import org.olat.course.editor.ConditionAccessEditConfig; import org.olat.course.editor.CourseEditorEnv; import org.olat.course.editor.NodeEditController; import org.olat.course.editor.StatusDescription; @@ -131,6 +132,11 @@ public class MembersCourseNode extends AbstractAccessableCourseNode { return new NodeEditController(ureq, wControl, course, chosenNode, euce, childTabCntrllr); } + @Override + public ConditionAccessEditConfig getAccessEditConfig() { + return ConditionAccessEditConfig.regular(false); + } + @Override public NodeRunConstructionResult createNodeRunConstructionResult(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv, CourseNodeSecurityCallback nodeSecCallback, String nodecmd) { diff --git a/src/main/java/org/olat/course/nodes/STCourseNode.java b/src/main/java/org/olat/course/nodes/STCourseNode.java index 3ef10356ce2532eef69c4c645f1a83b928822370..71c59e6443a19efadea15bddc8c1bb413894454f 100644 --- a/src/main/java/org/olat/course/nodes/STCourseNode.java +++ b/src/main/java/org/olat/course/nodes/STCourseNode.java @@ -355,10 +355,8 @@ public class STCourseNode extends AbstractAccessableCourseNode { public void updateModuleConfigDefaults(boolean isNewNode, INode parent) { ModuleConfiguration config = getModuleConfiguration(); if (isNewNode) { - // use defaults for new course building blocks config.setBooleanEntry(STCourseNodeEditController.CONFIG_KEY_ALLOW_RELATIVE_LINKS, Boolean.FALSE.booleanValue()); - // set the default display to peekview in two columns - config.setStringValue(STCourseNodeEditController.CONFIG_KEY_DISPLAY_TYPE, STCourseNodeEditController.CONFIG_VALUE_DISPLAY_PEEKVIEW); + config.setStringValue(STCourseNodeEditController.CONFIG_KEY_DISPLAY_TYPE, STCourseNodeEditController.CONFIG_VALUE_DISPLAY_DELEGATE); config.setIntValue(STCourseNodeEditController.CONFIG_KEY_COLUMNS, 2); DeliveryOptions defaultOptions = DeliveryOptions.defaultWithGlossary(); diff --git a/src/main/java/org/olat/course/nodes/WikiCourseNode.java b/src/main/java/org/olat/course/nodes/WikiCourseNode.java index faf51a6fdd5067fb167417e4115b8e8d290adae8..5dabf59951d6e7b5d9d7b563d105f30cc75f5cc4 100644 --- a/src/main/java/org/olat/course/nodes/WikiCourseNode.java +++ b/src/main/java/org/olat/course/nodes/WikiCourseNode.java @@ -56,6 +56,7 @@ import org.olat.course.ICourse; import org.olat.course.condition.Condition; import org.olat.course.condition.interpreter.ConditionExpression; import org.olat.course.condition.interpreter.ConditionInterpreter; +import org.olat.course.editor.ConditionAccessEditConfig; import org.olat.course.editor.CourseEditorEnv; import org.olat.course.editor.NodeEditController; import org.olat.course.editor.StatusDescription; @@ -83,11 +84,19 @@ import org.olat.repository.handlers.RepositoryHandlerFactory; * @author Felix Jost */ public class WikiCourseNode extends AbstractAccessableCourseNode { + private static final long serialVersionUID = -5800975339569440113L; private static final Logger log = Tracing.createLoggerFor(WikiCourseNode.class); public static final String TYPE = "wiki"; + + private static final int CURRENT_VERSION = 2; + public static final String CONFIG_KEY_REPOSITORY_SOFTKEY = "reporef"; + public static final String CONFIG_KEY_EDIT_BY_COACH = "edit.by.coach"; + public static final String CONFIG_KEY_EDIT_BY_PARTICIPANT = "edit.by.participant"; + + public static final String EDIT_CONDITION = "editarticle"; private Condition preConditionEdit; public WikiCourseNode() { @@ -105,6 +114,31 @@ public class WikiCourseNode extends AbstractAccessableCourseNode { config.setBooleanEntry(NodeEditController.CONFIG_STARTPAGE, false); config.setConfigurationVersion(1); } + if (config.getConfigurationVersion() < 2) { + config.setBooleanEntry(CONFIG_KEY_EDIT_BY_COACH, Boolean.TRUE); + config.setBooleanEntry(CONFIG_KEY_EDIT_BY_PARTICIPANT, Boolean.TRUE); + removeDefaultPreconditions(); + } + + config.setConfigurationVersion(CURRENT_VERSION); + } + + private void removeDefaultPreconditions() { + if (hasCustomPreConditions()) { + boolean defaultPreconditions = + !preConditionEdit.isExpertMode() + && !preConditionEdit.isEasyModeCoachesAndAdmins() + && !preConditionEdit.isEasyModeAlwaysAllowCoachesAndAdmins() + && !preConditionEdit.isAssessmentMode() + && !preConditionEdit.isAssessmentModeViewResults(); + if (defaultPreconditions) { + removeCustomPreconditions(); + } + } + } + + public void removeCustomPreconditions() { + preConditionEdit = null; } @Override @@ -121,10 +155,17 @@ public class WikiCourseNode extends AbstractAccessableCourseNode { @Override public TabbableController createEditController(UserRequest ureq, WindowControl wControl, BreadcrumbPanel stackPanel, ICourse course,UserCourseEnvironment euce) { - WikiEditController childTabCntrllr = new WikiEditController(getModuleConfiguration(), ureq, wControl, this, course,euce); + WikiEditController childTabCntrllr = new WikiEditController(ureq, wControl, stackPanel, this, course,euce); CourseNode chosenNode = course.getEditorTreeModel().getCourseNode(euce.getCourseEditorEnv().getCurrentCourseNodeId()); return new NodeEditController(ureq, wControl, course, chosenNode, euce, childTabCntrllr); } + + @Override + public ConditionAccessEditConfig getAccessEditConfig() { + return hasCustomPreConditions() + ? ConditionAccessEditConfig.custom() + : ConditionAccessEditConfig.regular(false); + } @Override public NodeRunConstructionResult createNodeRunConstructionResult(UserRequest ureq, WindowControl wControl, @@ -139,9 +180,6 @@ public class WikiCourseNode extends AbstractAccessableCourseNode { @Override public StatusDescription isConfigValid() { - /* - * first check the one click cache - */ if(oneClickStatusCache!=null) { return oneClickStatusCache[0]; } @@ -242,37 +280,40 @@ public class WikiCourseNode extends AbstractAccessableCourseNode { @Override public List<ConditionExpression> getConditionExpressions() { - List<ConditionExpression> parentConditions = super.getConditionExpressions(); - List<ConditionExpression> conditions = new ArrayList<>(); - if(parentConditions != null && parentConditions.size() > 0) { - conditions.addAll(parentConditions); - } - Condition editCondition = getPreConditionEdit(); - if(editCondition != null && StringHelper.containsNonWhitespace(editCondition.getConditionExpression())) { - ConditionExpression ce = new ConditionExpression(editCondition.getConditionId()); - ce.setExpressionString(editCondition.getConditionExpression()); - conditions.add(ce); + if (hasCustomPreConditions()) { + List<ConditionExpression> parentConditions = super.getConditionExpressions(); + List<ConditionExpression> conditions = new ArrayList<>(); + if(parentConditions != null && parentConditions.size() > 0) { + conditions.addAll(parentConditions); + } + Condition editCondition = getPreConditionEdit(); + if(editCondition != null && StringHelper.containsNonWhitespace(editCondition.getConditionExpression())) { + ConditionExpression ce = new ConditionExpression(editCondition.getConditionId()); + ce.setExpressionString(editCondition.getConditionExpression()); + conditions.add(ce); + } + return conditions; } - return conditions; + return super.getConditionExpressions(); + } + + public boolean hasCustomPreConditions() { + return preConditionEdit != null; } public Condition getPreConditionEdit() { if (preConditionEdit == null) { preConditionEdit = new Condition(); } - preConditionEdit.setConditionId("editarticle"); + preConditionEdit.setConditionId(EDIT_CONDITION); return preConditionEdit; } - /** - * - * @param preConditionEdit - */ public void setPreConditionEdit(Condition preConditionEdit) { if (preConditionEdit == null) { preConditionEdit = getPreConditionEdit(); } - preConditionEdit.setConditionId("editarticle"); + preConditionEdit.setConditionId(EDIT_CONDITION); this.preConditionEdit = preConditionEdit; } @@ -285,10 +326,12 @@ public class WikiCourseNode extends AbstractAccessableCourseNode { */ @Override public void calcAccessAndVisibility(ConditionInterpreter ci, NodeEvaluation nodeEval) { - super.calcAccessAndVisibility(ci, nodeEval); - - boolean editor = (getPreConditionEdit().getConditionExpression() == null ? true : ci.evaluateCondition(getPreConditionEdit())); - nodeEval.putAccessStatus("editarticle", editor); + super.calcAccessAndVisibility(ci, nodeEval); + + if (hasCustomPreConditions()) { + boolean editor = (getPreConditionEdit().getConditionExpression() == null ? true : ci.evaluateCondition(getPreConditionEdit())); + nodeEval.putAccessStatus(EDIT_CONDITION, editor); + } } @Override diff --git a/src/main/java/org/olat/course/nodes/basiclti/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/basiclti/_i18n/LocalStrings_fr.properties index 5bd6cdbdf16a8bb26fc3da04741e239b7c82492e..31c22fced26b1d72df21ae971727ec176c9a6109 100644 --- a/src/main/java/org/olat/course/nodes/basiclti/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/basiclti/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu Jul 06 21:30:10 CEST 2017 +#Sun Mar 01 08:21:14 CET 2020 LTConfigForm.invalidurl=Indiquez une URL valable, svp. LTConfigForm.key=Cl\u00E9 LTConfigForm.key.example=Exemple\: jisc.ac.uk @@ -35,6 +35,8 @@ display.config.window=Affichage display.config.window.fullScreen=Montrer le module seul, masquer le LMS display.config.window.iframe=Int\u00E9gr\u00E9 dans le cours (iFrame) display.config.window.window=Ouvrir dans une nouvelle fen\u00EAtre +error.fully.assessed.passed=$org.olat.course.learningpath.ui\:error.fully.assessed.passed +error.fully.assessed.score=$org.olat.course.learningpath.ui\:error.fully.assessed.score error.hostmissing.long=Pour la page externe "{0}", un host doit \u00EAtre configur\u00E9 dans l'onglet "Contenu page". error.hostmissing.short=Aucun host n'a \u00E9t\u00E9 indiqu\u00E9 pour "{0}". form.error.wrongFloat=$org.olat.course.assessment\:form.error.wrongFloat diff --git a/src/main/java/org/olat/course/nodes/bc/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/nodes/bc/_i18n/LocalStrings_de.properties index fe2a83753aba83c607a2bcff343ade544bda1aff..53552be9a3735eac625796e0de7daaa15bec23c2 100644 --- a/src/main/java/org/olat/course/nodes/bc/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/nodes/bc/_i18n/LocalStrings_de.properties @@ -3,7 +3,7 @@ condition.accessDownloaders.title=Nur Lesen (Download) condition.accessUploaders.title=Schreiben (Upload) folder.view=Ordner verwalten chooseFolder=Ablageordner w\u00E4hlen -createFolder=Ablageordner erstellen +createFolder=Ordner in Ablageordner erstellen edit.upload=Hochladen edit.upload.by.coach=Betreuer edit.upload.by.participant=Teilnehmer @@ -27,7 +27,7 @@ pathChoose=Ablageort pathChoose.auto=Automatisch generierter Ordner pathChoose.custom=Ordner aus Ablageorder des Kurses verwenden subPathLab.label=Ablageordner -subPathLab.dummy=Es ist noch kein Ablageordner konfiguriert +subPathLab.dummy=Es ist noch kein Ordner aus dem Ablageornder konfiguriert error.missingfolder.short=Sie m\u00FCssen einen Ordner konfigurieren error.missingfolder.long=Sie m\u00FCssen ein Ordner konfigurieren noFolder=Der konfigurierte Ordner ist nicht mehr vorhanden. Bitte wenden Sie sich an Ihren Kursverantwortlichen. diff --git a/src/main/java/org/olat/course/nodes/bc/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/bc/_i18n/LocalStrings_fr.properties index e663c9658979635d4a83930ef0095f8006ba1bed..164c2fa78f20b74b561d2bdfd54c029aa00775b1 100644 --- a/src/main/java/org/olat/course/nodes/bc/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/bc/_i18n/LocalStrings_fr.properties @@ -1,15 +1,19 @@ -#Thu May 31 16:15:44 CEST 2018 +#Sun Mar 01 08:22:12 CET 2020 chooseFolder=Choisir le dossier condition.accessDownloaders.title=Lecture seule (download) condition.accessUploaders.title=Ecriture (upload) createButton=Cr\u00E9er le dossier createFolder=Cr\u00E9er le dossier de stockage createPath=Chemin cr\u00E9\u00E9 +edit.upload=T\u00E9l\u00E9charger +edit.upload.by.coach=Coach +edit.upload.by.participant=Participant error.missingfolder.long=Vous devez configurer un dossier. error.missingfolder.short=Vous devez configurer un dossier. folder.view=Ouvrir dossier info.folder=T\u00E9l\u00E9charger fichiers info.quota=Adapter le quota de ce dossier +info.rights=Autorisations utilisateur info.select=Choisir un dossier info.sharedfolder=Pour les dossiers de ressources, les membres du cours n'ont qu'un acc\u00E8s en lecture (download), les t\u00E9l\u00E9versements ne sont pas autoris\u00E9s. noFolder=Le dossier configur\u00E9 n'est plus disponible. Contactez s'il vous pla\u00EEt l'administrateur du cours. diff --git a/src/main/java/org/olat/course/nodes/cal/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/cal/_i18n/LocalStrings_fr.properties index 35f26535e108876ed9a30ea1b965885a3a52aff5..69f52144a913e6ba0fa3c404328d15b9a6296c34 100644 --- a/src/main/java/org/olat/course/nodes/cal/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/cal/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Sun Nov 08 12:41:00 CET 2015 +#Wed Mar 04 07:06:05 CET 2020 calendar.date=Date calendar.noEvents=Pas de rendez-vous dans la p\u00E9riode indiqu\u00E9e calendar.subject=Description @@ -6,6 +6,10 @@ calendar.title=Calendrier calendar.today=Aujourd'hui condition.accessibility.title=Lire condition.editable.title=Cr\u00E9er/modifier un rendez-vous +config.edit=Editer les rendez-vous +config.rights=Autorisations utilisateur +config.role.coach=Coach +config.role.participant=Participant fhelp.start_date=D\u00E9terminez si vous souhaitez afficher la semaine actuelle ou une date pr\u00E9d\u00E9finie (par exemple, la semaine d'un s\u00E9minaire). pane.tab.accessibility=Acc\u00E8s pane.tab.auto_date=Date actuelle diff --git a/src/main/java/org/olat/course/nodes/cl/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/cl/ui/_i18n/LocalStrings_fr.properties index 174b04741ec436b34beca2f1bdeb8da8c8401a0f..a3515f51fc67202c2003366284ea271a02d4a5e5 100644 --- a/src/main/java/org/olat/course/nodes/cl/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/cl/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu Feb 01 22:07:04 CET 2018 +#Wed Mar 04 07:08:50 CET 2020 add.checkbox=Ajouter une case \u00E0 cocher assessment=Evaluation assessment.checkbox.description=Modifier en fonction de la case \u00E0 cocher\: modifier la case \u00E0 cocher s\u00E9lectionner gr\u00E2ce au filtre de tous les participants. @@ -48,16 +48,17 @@ details=D\u00E9tails done.by=Compl\u00E9t\u00E9 par\: down=En bas edit.checkbox=Editer case \u00E0 cocher -error.fully.assessed.passed=$org.olat.course.learningpath.ui:\error.fully.assessed.passed -error.fully.assessed.score=$org.olat.course.learningpath.ui:\error.fully.assessed.score -error.missing.score.config=Configuration d'\u00E9valuation incompl\u00E8te\: "$\:config.points.min" ou "$\:config.points.max" +error.fully.assessed.passed=$org.olat.course.learningpath.ui\:error.fully.assessed.passed +error.fully.assessed.score=$org.olat.course.learningpath.ui\:error.fully.assessed.score error.missing.cutvalue.config=Configuration d'\u00E9valuation incompl\u00E8te\: "$\:config.cutvalue" +error.missing.score.config=Configuration d'\u00E9valuation incompl\u00E8te\: "$\:config.points.min" ou "$\:config.points.max" file=Fichier filter.all=Tout afficher form.error.date=La date est un champ obligatoire. form.error.scoreOutOfRange=$org.olat.course.assessment\:form.error.scoreOutOfRange form.error.wrongFloat=$org.olat.course.nodes.ms\:form.error.wrongFloat form.individual.assessment.docs=$org.olat.course.nodes.ms\:form.individual.assessment.docs +fully.assessed.trigger.status.done=Statut chang\u00E9 en "termin\u00E9" par le coach info.title=$org.olat.course.nodes.ms\:info.title label=Etiquette label.achieved=Atteint diff --git a/src/main/java/org/olat/course/nodes/co/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/co/_i18n/LocalStrings_fr.properties index dfe0a6755b42182d6f3663443b7c1472e8dc4b5a..e5827b5894a0eb9772844adf63ff30eab0ea3378 100644 --- a/src/main/java/org/olat/course/nodes/co/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/co/_i18n/LocalStrings_fr.properties @@ -1,17 +1,7 @@ -#Thu Sep 03 11:24:42 CEST 2015 +#Wed Mar 04 07:10:26 CET 2020 areaCoachesChoose=S\u00E9lectionner un domaine d'\u00E9tude areaCreate=Cr\u00E9er un domaine d'\u00E9tude areaParticipantsChoose=S\u00E9lectionner un domain d'\u00E9tude - - - - - - - - - - email.not.specified=Indiquer destinataires, svp email.not.valid=Adresse e-mail invalide error.no.choice.specified=S\u00E9lection au moins une option @@ -41,7 +31,6 @@ groupCoachesChoose=S\u00E9lectionner/d\u00E9s\u00E9lectionner un groupe groupCreate=Cr\u00E9er un groupe groupParticipantsChoose=S\u00E9lectionner/d\u00E9s\u00E9lectionner un groupe header=Destinataire - message.body=Message (mod\u00E8le) message.emailtoadresses=Adresses e-mail message.subject=Sujet (mod\u00E8le) @@ -55,3 +44,9 @@ pane.tab.coconfig=Destinataire popupchooseareas=Choisir des domaines d'\u00E9tude de la gestion des groupes popupchoosegroups=Choisir des groupes de la gestion de groupes recipients=Destinataire +tool.recipients=Destinataire +tool.recipients.coaches=Coachs +tool.recipients.mandatory=Vous devez choisir au moins une option. +tool.recipients.owners=Propri\u00E9taires +tool.recipients.participants=Participants +tool.title=Courriel diff --git a/src/main/java/org/olat/course/nodes/cp/CPAssessmentHandler.java b/src/main/java/org/olat/course/nodes/cp/CPAssessmentHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..198ca119e54ce43e93d651a8f16226d2a773121a --- /dev/null +++ b/src/main/java/org/olat/course/nodes/cp/CPAssessmentHandler.java @@ -0,0 +1,40 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.course.nodes.cp; + +import org.olat.course.learningpath.LearningPathOnlyAssessmentHandler; +import org.olat.course.nodes.CPCourseNode; +import org.springframework.stereotype.Service; + +/** + * + * Initial date: 27.02.2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +@Service +public class CPAssessmentHandler extends LearningPathOnlyAssessmentHandler { + + @Override + public String acceptCourseNodeType() { + return CPCourseNode.TYPE; + } + +} diff --git a/src/main/java/org/olat/course/nodes/cp/CPLearningPathNodeHandler.java b/src/main/java/org/olat/course/nodes/cp/CPLearningPathNodeHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..13e6aeb891fa40fafc7ea2e3e3445382bfdb482a --- /dev/null +++ b/src/main/java/org/olat/course/nodes/cp/CPLearningPathNodeHandler.java @@ -0,0 +1,80 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.course.nodes.cp; + +import org.olat.core.gui.UserRequest; +import org.olat.core.gui.control.Controller; +import org.olat.core.gui.control.WindowControl; +import org.olat.course.learningpath.LearningPathConfigs; +import org.olat.course.learningpath.LearningPathEditConfigs; +import org.olat.course.learningpath.LearningPathNodeHandler; +import org.olat.course.learningpath.model.ModuleLearningPathConfigs; +import org.olat.course.learningpath.ui.LearningPathNodeConfigController; +import org.olat.course.nodes.CPCourseNode; +import org.olat.course.nodes.CourseNode; +import org.olat.repository.RepositoryEntry; +import org.springframework.stereotype.Service; + +/** + * + * Initial date: 27.02.2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +@Service +public class CPLearningPathNodeHandler implements LearningPathNodeHandler { + + private static final LearningPathEditConfigs EDIT_CONFIGS = LearningPathEditConfigs.builder() + .enableNodeVisited() + .enableConfirmed() + .build(); + + @Override + public String acceptCourseNodeType() { + return CPCourseNode.TYPE; + } + + @Override + public boolean isSupported() { + return true; + } + + @Override + public LearningPathConfigs getConfigs(CourseNode courseNode) { + return new ModuleLearningPathConfigs(courseNode.getModuleConfiguration(), true); + } + + @Override + public Controller createConfigEditController(UserRequest ureq, WindowControl wControl, RepositoryEntry courseEntry, + CourseNode courseNode) { + return new LearningPathNodeConfigController(ureq, wControl, courseEntry, courseNode, EDIT_CONFIGS); + } + + @Override + public LearningPathEditConfigs getEditConfigs() { + return EDIT_CONFIGS; + } + + @Override + public void onMigrated(CourseNode courseNode) { + // + } + +} diff --git a/src/main/java/org/olat/course/nodes/cp/CPRunController.java b/src/main/java/org/olat/course/nodes/cp/CPRunController.java index 9010b2d3a45d8677846dcd4f7079b4fe114e6e52..160ec30744f82ffba46198838b2448a841e76172 100644 --- a/src/main/java/org/olat/course/nodes/cp/CPRunController.java +++ b/src/main/java/org/olat/course/nodes/cp/CPRunController.java @@ -54,13 +54,17 @@ import org.olat.course.editor.NodeEditController; import org.olat.course.nodes.CPCourseNode; import org.olat.course.nodes.TitledWrapperHelper; import org.olat.course.run.navigation.NodeRunConstructionResult; +import org.olat.course.run.userview.UserCourseEnvironment; import org.olat.fileresource.FileResourceManager; import org.olat.ims.cp.CPManager; import org.olat.ims.cp.ui.CPPackageConfig; import org.olat.modules.ModuleConfiguration; +import org.olat.modules.cp.CPAssessmentProvider; import org.olat.modules.cp.CPDisplayController; import org.olat.modules.cp.CPManifestTreeModel; import org.olat.modules.cp.CPUIFactory; +import org.olat.modules.cp.DryRunAssessmentProvider; +import org.olat.modules.cp.PersistingAssessmentProvider; import org.olat.modules.cp.TreeNodeEvent; import org.olat.repository.RepositoryEntry; import org.olat.util.logging.activity.LoggingResourceable; @@ -91,10 +95,12 @@ public class CPRunController extends BasicController implements ControllerEventL private String selNodeId; private boolean preview; private OLATResourceable courseResource; - + private final UserCourseEnvironment userCourseEnv; + private CPAssessmentProvider cpAssessmentProvider; + @Autowired private CPManager cpManager; - + /** * Use this constructor to launch a CP via Repository reference key set in the * ModuleConfiguration. On the into page a title and the learning objectives @@ -105,9 +111,10 @@ public class CPRunController extends BasicController implements ControllerEventL * @param userCourseEnv * @param wControl * @param cpNode + * @param userCourseEnv */ public CPRunController(ModuleConfiguration config, UserRequest ureq, WindowControl wControl, CPCourseNode cpNode, String nodecmd, - OLATResourceable course, boolean preview) { + OLATResourceable course, boolean preview, UserCourseEnvironment userCourseEnv) { super(ureq, wControl); this.nodecmd = nodecmd; this.courseResource = OresHelper.clone(course); @@ -116,6 +123,7 @@ public class CPRunController extends BasicController implements ControllerEventL this.config = config; this.cpNode = cpNode; this.preview = preview; + this.userCourseEnv = userCourseEnv; addLoggingResourceable(LoggingResourceable.wrap(cpNode)); // jump to either the forum or the folder if the business-launch-path says so. @@ -140,10 +148,6 @@ public class CPRunController extends BasicController implements ControllerEventL putInitialPanel(main); } - /** - * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest, - * org.olat.core.gui.components.Component, org.olat.core.gui.control.Event) - */ @Override public void event(UserRequest ureq, Component source, Event event) { if (source == showCPButton) { // those must be links @@ -152,10 +156,6 @@ public class CPRunController extends BasicController implements ControllerEventL } } - /** - * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest, - * org.olat.core.gui.control.Controller, org.olat.core.gui.control.Event) - */ @Override public void event(UserRequest ureq, Controller source, Event event) { if (source == null) { // external source (from the course at this time being) @@ -202,6 +202,10 @@ public class CPRunController extends BasicController implements ControllerEventL deliveryOptions = packageConfig.getDeliveryOptions(); } } + + cpAssessmentProvider = userCourseEnv.getIdentityEnvironment().getRoles().isGuestOnly() + ? DryRunAssessmentProvider.create() + : PersistingAssessmentProvider.create(re, getIdentity()); } // else cpRoot is already set (save some db access if the user opens / // closes / reopens the cp from the same CPRuncontroller instance) @@ -210,8 +214,10 @@ public class CPRunController extends BasicController implements ControllerEventL activateFirstPage = false; } boolean showNavigation = !config.getBooleanSafe(NodeEditController.CONFIG_COMPONENT_MENU); - cpDispC = CPUIFactory.getInstance().createContentOnlyCPDisplayController(ureq, getWindowControl(), new LocalFolderImpl(cpRoot), - activateFirstPage, showNavigation, deliveryOptions, nodecmd, courseResource, cpNode.getIdent(), preview); + + cpDispC = CPUIFactory.getInstance().createContentOnlyCPDisplayController(ureq, getWindowControl(), + new LocalFolderImpl(cpRoot), activateFirstPage, showNavigation, deliveryOptions, nodecmd, + courseResource, cpNode.getIdent(), preview, cpAssessmentProvider); cpDispC.setContentEncoding(deliveryOptions.getContentEncoding()); cpDispC.setJSEncoding(deliveryOptions.getJavascriptEncoding()); cpDispC.addControllerListener(this); @@ -240,9 +246,6 @@ public class CPRunController extends BasicController implements ControllerEventL return (config.getBooleanEntry(NodeEditController.CONFIG_COMPONENT_MENU).booleanValue()); } - /** - * @see org.olat.core.gui.control.DefaultController#doDispose(boolean) - */ @Override protected void doDispose() { if (cpDispC != null) { diff --git a/src/main/java/org/olat/course/nodes/cp/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/cp/_i18n/LocalStrings_fr.properties index 04a6b25b1d285158c0b1d913b07cb0da6f29b05b..c0883e3ce9732c9bb4ef03f84d29cd20f9c03511 100644 --- a/src/main/java/org/olat/course/nodes/cp/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/cp/_i18n/LocalStrings_fr.properties @@ -1,10 +1,11 @@ -#Tue Jan 07 21:40:34 CET 2020 +#Sun Mar 01 08:39:12 CET 2020 chosencp=Contenu didactique CP choisi command.changecp=Changer contenu didactique CP command.choosecp=Choisir contenu didactique CP command.closecp=Fermer aper\u00E7u command.createcp=S\u00E9lectionner, cr\u00E9er ou importer contenu didactique CP command.preview=Afficher aper\u00E7u +display.config.compMenu=Int\u00E9grer la navigation du CP dans le menu de cours display.config.fieldset=Affichage display.config.startPage=Avec page d'accueil? display.config.startPage.false=Non, d\u00E9marrer le contenu tout de suite diff --git a/src/main/java/org/olat/course/nodes/dialog/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/dialog/ui/_i18n/LocalStrings_fr.properties index 28bac5597e7f1cd5a58f6d519ac7ac6ff4349739..068e535b516d452e9994283bcbe79d2bf4fcac04 100644 --- a/src/main/java/org/olat/course/nodes/dialog/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/dialog/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu Jan 04 12:35:06 CET 2018 +#Wed Mar 04 07:27:02 CET 2020 condition.accessModerator.title=Transmission et t\u00E9l\u00E9chargement des fichiers / Animer le forum condition.accessPoster.title=Transmission et t\u00E9l\u00E9chargement des fichiers / Lire et \u00E9crire dans le forum condition.accessReader.title=Uniquement t\u00E9l\u00E9chargement des fichiers / Uniquement lire dans le forum @@ -7,12 +7,20 @@ dialog.copy.file=Copier un document dialog.selected.element=Discuter le fichier dialog.start=Afficher dialog.upload.file=T\u00E9l\u00E9charger fichier +edit.moderator=Mod\u00E9rateur +edit.poster=Cr\u00E9er un sujet de discussion +edit.rights=Autorisations utilisateur +edit.role.coach=Coach +edit.role.participant=Participant +edit.upload=T\u00E9l\u00E9verser un fichier element.already.deleted=L'\u00E9l\u00E9ment s\u00E9lectionn\u00E9 a \u00E9t\u00E9 effac\u00E9 entre temps par un autre utilisateur. Veuillez actualiser l'affichage du tableau. element.delete=Voulez-vous vraiment effacer le fichier (<b>{0}</b>) incl. les contributions de discussion? Les donn\u00E9es seront d\u00E9pos\u00E9es automatiquement dans votre dossier personnel sous 'archive'. folder.open=Ouvrir d\u00E9p\u00F4t notifications.entry=Nouveau fichier avec le nom\: {0} cr\u00E9\u00E9 par {1} notifications.header=Il y a de nouveaux fichier dans le module de cours "fichier discut\u00E9". pane.tab.accessibility=Acc\u00E8s +pane.tab.config=Configuration +pane.tab.files=Fichiers table.header.action=fichier table.header.author=auteur table.header.date=date diff --git a/src/main/java/org/olat/course/nodes/en/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/nodes/en/_i18n/LocalStrings_en.properties index 43aba2b969db8db5361eeae608d45d9ee7282b34..34e18941046d3166a592783ff3f0614f760d8756 100644 --- a/src/main/java/org/olat/course/nodes/en/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/nodes/en/_i18n/LocalStrings_en.properties @@ -48,7 +48,7 @@ form.groupnames=Learning groups form.groupnames.example=(Example\: Green,Red,Blue) form.groupnames.wrong=Enter names of learning groups separated by commas or leave this field empty. form.noGroupsOrAreas=There must be at least one learning group or one learning area defined -fully.assessed.trigger.status.done=Enrolment done +fully.assessed.trigger.status.done=Enrollment done grouplist.no.groups=There are no learning groups you can enrol for. grouplist.table.cancel_enroll=Delist grouplist.table.desc=Description diff --git a/src/main/java/org/olat/course/nodes/en/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/en/_i18n/LocalStrings_fr.properties index e77d31d9daebd7dfb974c6e171be84cd25f9e216..c87f33b11ec86c4dc53d2eb0054ef1ef0b433219 100644 --- a/src/main/java/org/olat/course/nodes/en/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/en/_i18n/LocalStrings_fr.properties @@ -1,22 +1,17 @@ -#Sun Jun 07 16:50:42 CEST 2015 - - - - - - - - - - - - - - - +#Wed Mar 04 07:14:02 CET 2020 cmd.enroll.in.group=S'inscrire cmd.enrolled.cancel=Se d\u00E9sinscrire config.header1=Inscription dans groupes d'\u00E9tude et domaines d'\u00E9tude +engroupedit.table.description=Description +engroupedit.table.down=En bas +engroupedit.table.groupName=Nom du groupe +engroupedit.table.key=ID +engroupedit.table.maxPart=Nombre de participants max. +engroupedit.table.minPart=Nombre de participants min. +engroupedit.table.remove=Enlever +engroupedit.table.up=En haut +engroupedit.table.waitinglist=Liste d'attente +engroupedit.table.waitinglistParticipants=Participants sur la liste d'attente enroll.explain=Veuillez choisir parmi un des groupes d'\u00E9tude ci-dessous pour vous inscrire. enrolled.explain=Vous \u00EAtes inscrit-e dans le groupe d'\u00E9tude ci-dessous. Cliquez sur le bouton "se d\u00E9sinscrire" -s'il existe- pour vous d\u00E9sinscrire du groupe. <b>Attention\:</b>Cette inscription ne concerne que le groupe s\u00E9lectionn\u00E9 dans le cours OLAT en question. enrolled.group.desc=Description @@ -27,6 +22,7 @@ error.group.full=Entre-temps, le groupe a \u00E9t\u00E9 compl\u00E8tement rempli error.multipleEnroll=La valeur doit \u00EAtre \u00E9gale ou sup\u00E9rieure \u00E0 1. error.nogroupdefined.long=Il faut choisir au moins un groupe ou un domaine d'\u00E9tude pour "{0}" dans la gestion des groupes. error.nogroupdefined.short=Pour"{0}" il manque un groupe ou un domaine d'\u00E9tude. +form.allowGroupSort=Tri sp\u00E9cifique form.allowMultiEnroll=Autoriser plusieurs inscriptions form.areanames=Domaines d'\u00E9tude form.areanames.example=(Exemple\: Excursions) @@ -37,6 +33,7 @@ form.groupnames.example=(Exemple\: Rouge, Vert, Bleu) form.groupnames.wrong=Ins\u00E9rez les noms des groupes d'\u00E9tude, s\u00E9par\u00E9s par des virgules, ou laissez ce champ vide. form.multipleEnrollCount=Nombre de groupes form.noGroupsOrAreas=Il faut indiquer au moins un groupe ou domaine d'\u00E9tude. +fully.assessed.trigger.status.done=Inscription termin\u00E9 grouplist.no.groups=Il n'existe pas de groupes d'\u00E9tude dans lesquels vous pouvez vous inscrire. grouplist.table.cancel_enroll=D\u00E9sinscire grouplist.table.desc=Description @@ -54,7 +51,6 @@ grouplist.table.state.notEnrolled=Non inscrit(e)s grouplist.table.state.onPartipiciantList=<b>Inscrit(e)s</b> grouplist.table.state.onWaitingList=<b>Sur liste d'attente({0})</b> grouplist.table.waitingList=Occup\u00E9 sur <br />Liste d'attente - multiple.select.hint=Choisissez ci-dessous les groupes dans lesquels vous d\u00E9sirez vous inscrire. Vous pouvez vous inscrire au maximum dans <b>{0}</b> groupes. multiple.select.hint.outstanding=Vous vous \u00EAtes inscrit dans <b>{0}</b> groupe(s). Vous pouvez vous inscrire dans encore <b>{0}</b> groupe(s). notification.mail.added.self.body=*** Ceci est un message g\u00E9n\u00E9r\u00E9 de mani\u00E8re automatique. Veuillez, SVP., ne pas r\u00E9pondre \u00E0 ce message *** \r\n\r\n Vous vous \u00EAtes inscrit(e) dans un groupe d'\u00E9tude dans OLAT \r\n\r\nNom du groupe\: {0}\r\nDescription\: {1} diff --git a/src/main/java/org/olat/course/nodes/feed/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/feed/_i18n/LocalStrings_fr.properties index 80f23c2c46a1702054e2568cfb9c13e0647724ab..e56a74b3f6aebed5e12d5fcd9ebc4855763277e4 100644 --- a/src/main/java/org/olat/course/nodes/feed/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/feed/_i18n/LocalStrings_fr.properties @@ -1,21 +1,21 @@ -#Sun Dec 14 17:12:35 CET 2014 - - - - - +#Wed Mar 04 07:14:38 CET 2020 command.close=Fermer aper\u00E7u command.preview=Afficher aper\u00E7u condition.accessModerator.title=Mod\u00E9rer condition.accessPoster.title=Lire et \u00E9crire condition.accessReader.title=Seulement lire +edit.moderator=Mod\u00E9rateur +edit.moderator.coach=Coach +edit.poster=Ajouter des contributions +edit.poster.coach=Coach +edit.poster.guest=Invit\u00E9 +edit.poster.participant=Participant error.repoentrymissing=Le flux (blogue ou podcast), que vous voulez voir, a \u00E9t\u00E9 entretemps effac\u00E9 du cours. error.wrongtype=La ressource didactique n'est probablement pas du bon type. V\u00E9rifiez que vous avez bien utilis\u00E9 un blogue ou un podcast avec cet \u00E9l\u00E9ment de cours. heip.hover.choose.feed=Aide pour la s\u00E9lection d'un flux - - - pane.tab.access=Acc\u00E8s peekview.allItemsLink=Toutes les \u00E9ditions peekview.error=$org.olat.modules.webFeed.ui\:feed.error +preview=Aper\u00E7u title_blog=Blogue +user.rights=Autorisations utilisateur diff --git a/src/main/java/org/olat/course/nodes/feed/blog/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/feed/blog/_i18n/LocalStrings_fr.properties index 0cd610b5a5c3229983cd8273f9cc4bdbfe5a2304..f6deaa11744ae66b2d40fcaf0f89e9b241618903 100644 --- a/src/main/java/org/olat/course/nodes/feed/blog/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/feed/blog/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Sun Aug 29 12:55:58 CEST 2010 +#Sun Mar 01 08:41:21 CET 2020 button.change.feed=Remplacer blogue button.choose.feed=Choisir blogue button.create.feed=S\u00E9lectionner, cr\u00E9er ou importer blogue @@ -9,3 +9,5 @@ error.repository.entry.missing=Le contenu didactique blogue que vous d\u00E9sire form.title.choose.feed=S\u00E9lectionner blogue no.feed.chosen=<i>Aucun contenu didactique blogue s\u00E9lectionn\u00E9</i> pane.tab.feed=Contenu didactique blogue +tool.no.blog.text=Il n'y a pas de blog disponible pour ce cours. +tool.no.blog.title=Pas de blog disponible diff --git a/src/main/java/org/olat/course/nodes/fo/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/fo/_i18n/LocalStrings_fr.properties index 0ed8b1162216594b2de5040f244443d37626d160..749b38f6cb8056b0506f0d51ddbb1a45e9e23d37 100644 --- a/src/main/java/org/olat/course/nodes/fo/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/fo/_i18n/LocalStrings_fr.properties @@ -1,5 +1,7 @@ -#Wed Mar 08 11:26:13 CET 2017 +#Wed Mar 04 07:17:24 CET 2020 +allow.guest.post=Autoriser les invit\u00E9s \u00E0 contribuer allow.pseudonym.post=Autoriser les messages anonymes avec pseudonyme +anonymous.title=Pseudonyme command.closefo=Fermer visualisation command.show=Afficher forum command.showpopup=Afficher forum dans nouvelle fen\u00EAtre @@ -10,6 +12,12 @@ display.config.fieldsettitle=Configuration display.config.startPage=Avec page d'accueil? display.config.startPage.false=Non, d\u00E9marer contenu tout de suite svp display.config.startPage.true=Oui, afficher svp +edit.moderator=Mod\u00E9rateur +edit.moderator.coach=Coach +edit.poster=Cr\u00E9er des sujets de discussion +edit.poster.coach=Coach +edit.poster.guest=Invit\u00E9 +edit.poster.participant=Participant pane.tab.accessibility=Acc\u00E8s pane.tab.config=Configuration peekview.allItemsLink=Toutes les contributions @@ -18,4 +26,5 @@ preview.canPost=Ecriture de contributions du forum possible preview.canRead=Lecture de contributions du forum possible preview.header=Droits dans forum pour l'utilisateur simul\u00E9 pseudonym.default=Activer les pseudonymes pour chaque message +user.rights=Autorisations utilisateur warn.forumdelete=Attention\: toutes les contributions seront supprim\u00E9es. diff --git a/src/main/java/org/olat/course/nodes/gta/GTALearningPathConfigs.java b/src/main/java/org/olat/course/nodes/gta/GTALearningPathConfigs.java index 6237a1b980dec7e66b5281a2bde54297158e4a53..867b5636cdf48c34955454fe5833a3c15780c6c6 100644 --- a/src/main/java/org/olat/course/nodes/gta/GTALearningPathConfigs.java +++ b/src/main/java/org/olat/course/nodes/gta/GTALearningPathConfigs.java @@ -20,6 +20,7 @@ package org.olat.course.nodes.gta; import org.olat.course.learningpath.model.ModuleLearningPathConfigs; +import org.olat.course.nodes.GTACourseNode; import org.olat.course.nodes.MSCourseNode; import org.olat.modules.ModuleConfiguration; import org.olat.modules.assessment.model.AssessmentObligation; @@ -45,8 +46,25 @@ public class GTALearningPathConfigs extends ModuleLearningPathConfigs { @Override public void setObligation(AssessmentObligation obligation) { - boolean valuea = obligation != null && AssessmentObligation.optional.equals(obligation); - moduleConfiguration.setBooleanEntry(MSCourseNode.CONFIG_KEY_OPTIONAL, valuea ); + boolean oldOptional = moduleConfiguration.getBooleanSafe(MSCourseNode.CONFIG_KEY_OPTIONAL); + boolean optional = obligation != null && AssessmentObligation.optional.equals(obligation); + + if (optional != oldOptional) { + moduleConfiguration.setBooleanEntry(MSCourseNode.CONFIG_KEY_OPTIONAL, optional); + + boolean sample = moduleConfiguration.getBooleanSafe(GTACourseNode.GTASK_SAMPLE_SOLUTION); + if (sample) { + boolean realtiveDates = moduleConfiguration.getBooleanSafe(GTACourseNode.GTASK_RELATIVE_DATES); + if (realtiveDates) { + if (optional) { + moduleConfiguration.remove(GTACourseNode.GTASK_SAMPLE_SOLUTION_VISIBLE_AFTER); + moduleConfiguration.setBooleanEntry(GTACourseNode.GTASK_SAMPLE_SOLUTION_VISIBLE_ALL, false); + } else { + moduleConfiguration.remove(GTACourseNode.GTASK_SAMPLE_SOLUTION_VISIBLE_ALL); + } + } + } + } } } diff --git a/src/main/java/org/olat/course/nodes/gta/ui/GTAMailTemplate.java b/src/main/java/org/olat/course/nodes/gta/ui/GTAMailTemplate.java index fb3f77a6cc46e0448c7531a1796310ffe0b8f9c2..82118ecc857b8f7024cbc1effbc5b22cd7a8ef03 100644 --- a/src/main/java/org/olat/course/nodes/gta/ui/GTAMailTemplate.java +++ b/src/main/java/org/olat/course/nodes/gta/ui/GTAMailTemplate.java @@ -26,10 +26,8 @@ import java.util.Locale; import org.apache.velocity.VelocityContext; import org.olat.core.gui.translator.Translator; import org.olat.core.id.Identity; -import org.olat.core.id.UserConstants; import org.olat.core.util.Formatter; import org.olat.core.util.mail.MailTemplate; -import org.olat.user.UserManager; /** * @@ -54,12 +52,7 @@ public class GTAMailTemplate extends MailTemplate { public void putVariablesInMailContext(VelocityContext context, Identity recipient) { Locale locale = translator.getLocale(); //compatibility with the old TA - context.put("login", identity.getName()); - context.put("first", identity.getUser().getProperty(UserConstants.FIRSTNAME, locale)); - context.put("firstName", identity.getUser().getProperty(UserConstants.FIRSTNAME, locale)); - context.put("last", identity.getUser().getProperty(UserConstants.LASTNAME, locale)); - context.put("lastName", identity.getUser().getProperty(UserConstants.LASTNAME, locale)); - context.put("email", UserManager.getInstance().getUserDisplayEmail(identity, locale)); + fillContextWithStandardIdentityValues(context, identity, translator.getLocale()); context.put("numberOfFiles", files == null ? "0" : Integer.toString(files.length)); if(files != null && files.length > 0) { diff --git a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_fr.properties index 67db1a277a8b174a79cf0ec043f27cad67daea0c..cf2d9ca0833d6d9d6ed76908b52b35aeb88ea5f0 100644 --- a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Tue Jan 07 21:44:24 CET 2020 +#Sun Mar 01 08:41:34 CET 2020 add.solution=T\u00E9l\u00E9chargez une solution add.task=Ajouter un devoir assessment.group.tool=Evaluer les groupes @@ -97,6 +97,8 @@ error.editor.atLeastOne=Vous devez choisir un type d'\u00E9diteur au moins. error.file.empty=Le fichier est vide. error.file.exists=$org.olat.core.commons.modules.bc\:cfile.already.exists error.file.invalid=$org.olat.core.commons.modules.bc\:cfile.name.notvalid +error.fully.assessed.passed=$org.olat.course.learningpath.ui\:error.fully.assessed.passed +error.fully.assessed.score=$org.olat.course.learningpath.ui\:error.fully.assessed.score error.max.documents=Vous ne pouvez pas d\u00E9poser plus de <strong>{0}</strong> document(s), mais vous pouvez encore \u00E9diter ou \u00E9changer un fichier. error.max.smaller.than.min.documents=Le nombre maximum de documents doit \u00EAtre plus grand que le nombre minimum de documents. error.min.documents=Vous devez d\u00E9poser au moins <strong>{0}</strong> document(s). diff --git a/src/main/java/org/olat/course/nodes/info/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/info/_i18n/LocalStrings_fr.properties index 47f5cb49fca24e507ec54a9fb127d2a3c2016670..997778137b107aff20a768220d96fca2c9383a6a 100644 --- a/src/main/java/org/olat/course/nodes/info/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/info/_i18n/LocalStrings_fr.properties @@ -1,11 +1,16 @@ -#Sun Jan 16 16:29:25 CET 2011 +#Sun Mar 01 08:41:56 CET 2020 auto_subscribe=S'abonner automatiquement condition.accessibility.title=Lire les communications condition.admin.title=G\u00E9rer les communications condition.editable.title=R\u00E9diger une communication -mail.body.title=Communication du cours {0} +config.admin=$\:condition.admin.title +config.edit=$\:condition.editable.title +config.rights=Autorisations utilisateur +config.role.coach=Coach +config.role.participant=Participant mail.body.from=R\u00E9dig\u00E9 par {0} le {1} mail.body.more=Communications ult\u00E9rieures +mail.body.title=Communication du cours {0} pane.tab.accessibility=Acc\u00E8s pane.tab.infos_config=Configuration communication pane.tab.infos_config.all=Tous @@ -20,6 +25,6 @@ peekview.more=plus... peekview.noInfos=Aucune communication peekview.title=Titre title_info=Communications -wizard.step1.send_option.participant=Participants wizard.step1.send_option.coach=Tuteurs wizard.step1.send_option.owner=Propri\u00E9taires de cours +wizard.step1.send_option.participant=Participants diff --git a/src/main/java/org/olat/course/nodes/iq/IQIdentityListCourseNodeController.java b/src/main/java/org/olat/course/nodes/iq/IQIdentityListCourseNodeController.java index 61cae622831ee062ffd82ec5132090557807de58..4708691bea2d940a64bd4a805e360a9765ac1c59 100644 --- a/src/main/java/org/olat/course/nodes/iq/IQIdentityListCourseNodeController.java +++ b/src/main/java/org/olat/course/nodes/iq/IQIdentityListCourseNodeController.java @@ -470,7 +470,8 @@ public class IQIdentityListCourseNodeController extends IdentityListCourseNodeCo AssessmentEntry assessmentEntry = courseAssessmentService.getAssessmentEntry(courseNode, assessedUserCourseEnv); GradingAssignment assignment = gradingService.getGradingAssignment(testEntry, assessmentEntry); if(assignment != null) { - gradingService.assignmentDone(assignment); + Long metadataTime = qtiService.getMetadataCorrectionTimeInSeconds(testEntry, testSession); + gradingService.assignmentDone(assignment, metadataTime); } } } diff --git a/src/main/java/org/olat/course/nodes/iq/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/iq/_i18n/LocalStrings_fr.properties index 1758bd1c83c5386fa4b5793339f502567a3015ba..e13a0c2f0c92b85c43fcc62ea90e8f22b48560ec 100644 --- a/src/main/java/org/olat/course/nodes/iq/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/iq/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Fri Apr 06 18:55:10 CEST 2018 +#Wed Mar 04 07:18:15 CET 2020 Intro.self=Pressez sur D\u00E9marrer pour commencer l'auto-test. Intro.surv=Pressez sur D\u00E9marrer pour commencer avec le questionnaire. Intro.test=Pressez sur D\u00E9marrer pour commencer le test. @@ -31,6 +31,9 @@ confirmation.change.warning.1=Ce test/questionnaire a d\u00E9j\u00E0 \u00E9t\u00 confirmation.change.warning.2=Les r\u00E9sultats archiv\u00E9s peuvent \u00EAtre t\u00E9l\u00E9charg\u00E9s ici\: confirmation.change.warning.3=Une copie de cette vue d'ensemble des r\u00E9sultats se trouve dans votre dossier personnel sous\:<br><i>private/archive/{0}/{1}</i>. correction.auto=Automatique +correction.config=Correction +correction.grading=Manuellement par des correcteurs affect\u00E9s de l'ext\u00E9rieur +correction.manual=Manuellement par les coaches du cours correction.mode=Correction correction.mode.help=Pour la correction automatique, le r\u00E9sultat s'affiche imm\u00E9diatement. Pour la correction manuelle, la visibilit\u00E9 doit \u00EAtre modifi\u00E9e dans l'outil d'\u00E9valuation. Pour les types de questions texte libre, dessin et t\u00E9l\u00E9chargement de fichier, une correction manuelle est obligatoire. correction.test.title=Corriger @@ -49,6 +52,8 @@ error.assessment.pulled=Le test a \u00E9t\u00E9 retir\u00E9 par votre coach. error.assessment.stopped=Le test est termin\u00E9. error.begin.after.end=La date de d\u00E9but doit se trouver avant la date de fin. error.entry.locked=La ressource d'\u00E9tude choisie est actuellement \u00E9dit\u00E9e par un utilisateur. Veuillez choisir une autre ressource d'\u00E9tude SVP. +error.fully.assessed.passed=$org.olat.course.learningpath.ui\:error.fully.assessed.passed +error.fully.assessed.score=$org.olat.course.learningpath.ui\:error.fully.assessed.score error.onyx=Le plugin Onyx n'est plus support\u00E9. error.reopean.failed=Le test n'a pas pu \u00EAtre r\u00E9ouvert. error.resource.corrupted=L'object didactique n'a pas pu \u00EAtre lu. Il semble soit corrompu soit au mauvais format. @@ -65,6 +70,7 @@ extra.time.warning=<strong>Attention\:</strong> la p\u00E9riode du mode d'\u00E9 fieldset.allowRelativeLinksForm=Param\u00E8tres de s\u00E9curit\u00E9 fieldset.chosecreateeditfile=Texte informatif (page html) file.name=Fichier choisi +fully.assessed.trigger.status.in.review=Test termin\u00E9 grade.nobody=Il n'y a pas de r\u00E9sultats \u00E0 corriger. hour.short=h info.assessment=Pour ce test, les administrateurs et les tuteurs pourront consulter vos r\u00E9sultats. @@ -83,6 +89,7 @@ minute.short=m no.disc.chosen=<i>Aucun fichier choisi</i> no.file.chosen=<i>Aucun fichier choisi</i> pane.tab.accessibility=Acc\u00E8s +pane.tab.grading.infos=Correcteurs pane.tab.highscore=HighScore pane.tab.iqconfig.layout=Disposition pane.tab.iqconfig.self=Configuration auto-test diff --git a/src/main/java/org/olat/course/nodes/livestream/ui/LiveStreamAdminController.java b/src/main/java/org/olat/course/nodes/livestream/ui/LiveStreamAdminController.java index 906d7470b2281257f09f3a745edb0820fd3dfdcc..9e61db4752d223c8fe041df343ce3f775b5abf02 100644 --- a/src/main/java/org/olat/course/nodes/livestream/ui/LiveStreamAdminController.java +++ b/src/main/java/org/olat/course/nodes/livestream/ui/LiveStreamAdminController.java @@ -24,6 +24,8 @@ import static org.olat.core.gui.translator.TranslatorHelper.translateAll; import static org.olat.course.nodes.livestream.ui.LiveStreamUIFactory.validateInteger; import static org.olat.course.nodes.livestream.ui.LiveStreamUIFactory.validateMandatory; +import java.util.Arrays; + import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.form.flexible.FormItem; import org.olat.core.gui.components.form.flexible.FormItemContainer; @@ -40,8 +42,6 @@ import org.olat.course.nodes.livestream.LiveStreamModule; import org.olat.course.nodes.livestream.paella.PlayerProfile; import org.springframework.beans.factory.annotation.Autowired; -import edu.emory.mathcs.backport.java.util.Arrays; - /** * * Initial date: 5 Jun 2019<br> diff --git a/src/main/java/org/olat/course/nodes/livestream/ui/LiveStreamConfigController.java b/src/main/java/org/olat/course/nodes/livestream/ui/LiveStreamConfigController.java index 638740ebdd5876d0e7957ff1403443cef9e22366..41627e160fc4ff15cc033ebf1d1f0f23a23ab8e1 100644 --- a/src/main/java/org/olat/course/nodes/livestream/ui/LiveStreamConfigController.java +++ b/src/main/java/org/olat/course/nodes/livestream/ui/LiveStreamConfigController.java @@ -23,6 +23,8 @@ import static org.olat.core.gui.components.util.KeyValues.entry; import static org.olat.core.gui.translator.TranslatorHelper.translateAll; import static org.olat.course.nodes.livestream.ui.LiveStreamUIFactory.validateInteger; +import java.util.Arrays; + import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.form.flexible.FormItemContainer; import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; @@ -39,8 +41,6 @@ import org.olat.course.nodes.livestream.paella.PlayerProfile; import org.olat.modules.ModuleConfiguration; import org.springframework.beans.factory.annotation.Autowired; -import edu.emory.mathcs.backport.java.util.Arrays; - /** * * Initial date: 23.05.2019<br> diff --git a/src/main/java/org/olat/course/nodes/members/MembersCourseNodeEditController.java b/src/main/java/org/olat/course/nodes/members/MembersCourseNodeEditController.java index 72993d2215dd1e39536757f600b691ce2d9af422..e715f73047cf1fcb80ee3201ef8832d3c01dfcdb 100644 --- a/src/main/java/org/olat/course/nodes/members/MembersCourseNodeEditController.java +++ b/src/main/java/org/olat/course/nodes/members/MembersCourseNodeEditController.java @@ -42,6 +42,7 @@ import org.olat.modules.ModuleConfiguration; * @autohr dfurrer, dirk.furrer@frentix.com, http://www.frentix.com */ public class MembersCourseNodeEditController extends ActivateableTabbableDefaultController implements ControllerEventListener { + public static final String PANE_TAB_MEMBERSCONFIG = "pane.tab.membersconfig"; private static final String[] paneKeys = {PANE_TAB_MEMBERSCONFIG}; diff --git a/src/main/java/org/olat/course/nodes/ms/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/ms/_i18n/LocalStrings_fr.properties index 38531bde22ee02972346233a42f6957087762ace..b210f63e8d2dce8efa6fd086d5e9a41e32ebd6a5 100644 --- a/src/main/java/org/olat/course/nodes/ms/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/ms/_i18n/LocalStrings_fr.properties @@ -1,13 +1,15 @@ -#Wed Oct 02 09:58:35 CEST 2019 +#Wed Mar 04 07:18:49 CET 2020 assessment.documents.title=Documents d'\u00E9valuation breadcrumb.users=Utilisateurs comment.nocomment=Il n'y a pas de commentaire comment.title=Commentaire condition.accessibility.title=Acc\u00E8s -error.fully.assessed.passed=$org.olat.course.learningpath.ui:\error.fully.assessed.passed -error.fully.assessed.score=$org.olat.course.learningpath.ui:\error.fully.assessed.score +error.fully.assessed.passed=$org.olat.course.learningpath.ui\:error.fully.assessed.passed +error.fully.assessed.score=$org.olat.course.learningpath.ui\:error.fully.assessed.score error.missingconfig.long=Ouvrez l'onglet "\u00E9valuation" pour finir la configuration de "{0}". error.missingconfig.short=L'\u00E9valuation pour "{0}" n'est pas correctement configur\u00E9. +error.no.role.message=Vous n'avez pas acc\u00E8s \u00E0 cet \u00E9l\u00E9ment de cours. +error.no.role.title=Pas d'acc\u00E8s error.repo.entry.missing=Le questionnaire que vous voulez afficher a \u00E9t\u00E9 effac\u00E9 entre-temps. error.repo.entry.not.replaceable=Le questionnaire ne peut plus \u00EAtre remplac\u00E9. evaluation.execution.reopen=R\u00E9ouvrir @@ -43,6 +45,7 @@ form.score.manual=Distribuer les points manuellement form.score.none=Pas de points form.title={0} form.yes=Oui +fully.assessed.trigger.status.done=Statut d\u00E9fini comme "termin\u00E9" par le coach. in.review=En revue info.title=Information sur l'\u00E9valuation log.title=Historique des modifications diff --git a/src/main/java/org/olat/course/nodes/portfolio/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/portfolio/_i18n/LocalStrings_fr.properties index 7e845cc5d4770bd53cd63a7cc92a412633ae921b..e342c14860b72e9cad40899626b11d3e1d416cbe 100644 --- a/src/main/java/org/olat/course/nodes/portfolio/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/portfolio/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu Jun 08 20:31:12 CEST 2017 +#Wed Mar 04 07:20:12 CET 2020 assessment.documents.title=$org.olat.course.nodes.ms\:assessment.documents.title ced.hover=Aide pour l'\u00E9l\u00E9ment de cours "Devoir portfolio" deadline.day=jour/s @@ -8,6 +8,8 @@ edit.map=\u00C9diter error.noreference.long=Pour "{0}", il est n\u00E9cessaire de s\u00E9lectionner un mod\u00E8le de portfolio dans l'onglet "Contenu didactique" de la configuration. error.noreference.short=Aucun mod\u00E8le de portfolio n'a \u00E9t\u00E9 s\u00E9lectionn\u00E9 pour "{0}". explanation.text=Communication aux utilisateurs +info.coach.text=Les participants du cours doivent travailler sur le devoir du portfolio "{0}". +info.coach.title=Devoir portfolio map.available=Un devoir portfolio est \u00E0 disposition\: {0}. Vous pouvez les pr\u00E9lever et, ensuite, le r\u00E9soudre. map.comment=Commentaire/\u00C9valuation map.copied=Dans votre portfolio se trouve un nouveau devoir "{0}". diff --git a/src/main/java/org/olat/course/nodes/scorm/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/scorm/_i18n/LocalStrings_fr.properties index a21e7bddc085e3ef926e64e63e52657c11acf95c..3476dce8f9c1bd6b1e47d0fe443f751b2e1a89c6 100644 --- a/src/main/java/org/olat/course/nodes/scorm/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/scorm/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Wed Mar 08 12:20:49 CET 2017 +#Sun Mar 01 08:42:59 CET 2020 advance.score.label=Emp\u00EAcher le nombre de points d'\u00EAtre diminu\u00E9 apr\u00E8s une nouvelle tentative assessable.label=Transmettre points de SCORM assessable.type.none=Ne pas reporter @@ -22,6 +22,8 @@ cutvalue.label=Nombre de points n\u00E9cessaire pour 'R\u00E9ussi' cutvalue.validation=Introduisez un nombre entier error.cprepoentrymissing=Le contenu didactique SCORM que vous voulez afficher a \u00E9t\u00E9 effac\u00E9 entre-temps du dossier des contenus didactiques. error.cprepoentrymissing.user=La ressource didactique SCORM auquel vous essayez d'acc\u00E9der n'existe plus. Contactez s'il vous pla\u00EEt le coach de votre cours. +error.fully.assessed.passed=$org.olat.course.learningpath.ui\:error.fully.assessed.passed +error.fully.assessed.score=$org.olat.course.learningpath.ui\:error.fully.assessed.score error.launch=Contenu didactique SCORM n'a pas pu \u00EAtre lanc\u00E9. error.noreference.long=Pour "{0}", il faut s\u00E9lectionner, dans la configuration, un contenu didactique SCORM dans l'onglet "contenu didactique". error.noreference.short=Aucun contenu didactique SCORM n'a \u00E9t\u00E9 s\u00E9lectionn\u00E9 pour "{0}" . diff --git a/src/main/java/org/olat/course/nodes/st/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/st/_i18n/LocalStrings_fr.properties index cbce910c72a5d995c0f8af2d38b334281b91bf50..28cd07b90edbc8241919c7f7b1dd3e606e5c36cd 100644 --- a/src/main/java/org/olat/course/nodes/st/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/st/_i18n/LocalStrings_fr.properties @@ -1,61 +1,62 @@ -#Mon Aug 19 18:12:11 CEST 2019 -score.title=Points -scform.hasScore.yes=A partir des \u00E9l\u00E9ments +#Wed Mar 04 07:21:20 CET 2020 +bulk.no.selection=Vous n'avez pas s\u00E9lectionn\u00E9 d'utilisateur. +bulk.pdf=Exporter PDF +bulk.pdf.prefix=Attestations de performance +calcedpassed=Statut +calcedscore=Points +certification=Attestation de performance +cmd.activate.easyMode=Afficher mode simple +cmd.activate.expertMode=Afficher mode avanc\u00E9 config.fieldset.view=Repr\u00E9sentation -form.expert.error.calc.score=R\u00E8gle invalide +config.sequence.without=Sans ordre d\u00E9fini displayTwoColumns=Affichage en deux colonnes +easyMode.noAssessableChildren=Seulement les \u00E9valuations d'autres \u00E9l\u00E9ments de cours \u00E9valuables (par exemple test, \u00E9valuation et structure) peuvent \u00EAtre comptabilis\u00E9es. De tels \u00E9l\u00E9ments n'existent pas dans votre cours. +failedAsNotPassed=Pas r\u00E9ussi d\u00E9fini comme non r\u00E9ussi +failedAsNotPassedAfterEndDate=Pas r\u00E9ussi comme non r\u00E9ussi mais seulement apr\u00E8s la date de fin du cours fieldset.chosecreateeditfile=S\u00E9lectionner, \u00E9diter ou cr\u00E9er un fichier HTML -score.noinfo=Pas d'indication -scform.passedNodeIndents.error=Au moins un \u00E9l\u00E9ment doit \u00EAtre s\u00E9lectionn\u00E9. -scorecalc.score=Elaborer points -bulk.no.selection=Vous n'avez pas s\u00E9lectionn\u00E9 d'utilisateur. -scform.deletedNode.error=Cet \u00E9l\u00E9ment de cours effac\u00E9 ou non \u00E9valuable ne peut plus \u00EAtre s\u00E9lectionn\u00E9. Veuillez choisir un autre \u00E9l\u00E9ment de cours SVP. +folder.displayname=Dossier de stockage form.delegate=Aucun aper\u00E7u, activer d'abord la visibilit\u00E9 des \u00E9l\u00E9ments du cours -calcedpassed=Statut -cmd.activate.easyMode=Afficher mode simple +form.expert.error.calc.passed=R\u00E8gle invalide +form.expert.error.calc.score=R\u00E8gle invalide form.peekview=Vue g\u00E9n\u00E9rale automatique avec aper\u00E7u -failedAsNotPassed=Pas r\u00E9ussi d\u00E9fini comme non r\u00E9ussi -scform.hasScore=Calculer points? +form.peekview.error.mandatory.child=Il faut au moins s\u00E9lectionner au moins un \u00E9l\u00E9ment de cours pour la vue g\u00E9n\u00E9rale automatique avec aper\u00E7u. +form.peekview.max.reached=Vous avez atteint le maximum de {0} d'\u00E9l\u00E9ments de cours qui doivent \u00EAtre affich\u00E9s avec vue g\u00E9n\u00E9rale automatique avec aper\u00E7u. +form.save=enregistrer form.self=Propre page HTML +form.system=Aper\u00E7u automatique +pane.tab.deliveryOptions=$org.olat.core.gui.control.generic.iframe\:option.delivery +pane.tab.highscore=HighScore +pane.tab.st_config=Aper\u00E7u +pane.tab.st_scorecalculation=Points +passed.no=Pas r\u00E9ussi passed.noinfo=Pas d'indication +passed.yes=R\u00E9ussi rules.error={0} -score.fieldset.title=R\u00E9capitulatif de l'\u00E9valuation -bulk.pdf=Exporter PDF -easyMode.noAssessableChildren=Seulement les \u00E9valuations d'autres \u00E9l\u00E9ments de cours \u00E9valuables (par exemple test, \u00E9valuation et structure) peuvent \u00EAtre comptabilis\u00E9es. De tels \u00E9l\u00E9ments n'existent pas dans votre cours. rules.example=Exemple\: {0} -scform.passedNodeIndents=R\u00E9ussi par scform.deletedNode=El\u00E9ment de cours effac\u00E9 ou non \u00E9valuable, veuillez le d\u00E9s\u00E9lectionner, SVP. -selectfile=Choisir ce fichier -pane.tab.st_scorecalculation=Points -certification=Attestation de performance +scform.deletedNode.error=Cet \u00E9l\u00E9ment de cours effac\u00E9 ou non \u00E9valuable ne peut plus \u00EAtre s\u00E9lectionn\u00E9. Veuillez choisir un autre \u00E9l\u00E9ment de cours SVP. scform.error.configuration=Attention\: les textes suivants ne sont associ\u00E9s \u00E0 aucune ressource de texte scform.failedtype=Calculer "pas r\u00E9ussi" +scform.hasScore=Calculer points? +scform.hasScore.yes=A partir des \u00E9l\u00E9ments +scform.passedCutValue=Minimum de points +scform.passedFactor.error=Ici ne sont autoris\u00E9s que des chiffres. +scform.passedNodeIndents=R\u00E9ussi par +scform.passedNodeIndents.error=Au moins un \u00E9l\u00E9ment doit \u00EAtre s\u00E9lectionn\u00E9. +scform.passedType.error=L'option "Calculer points" doit \u00EAtre activ\u00E9e pour utiliser un minimum de points pour la r\u00E9ussite. +scform.passedtype=Calculer r\u00E9ussite? +scform.passedtype.cutvalue=A partir du minimum de points scform.passedtype.inherit=Reprendre \u00E0 partir des \u00E9l\u00E9ments -form.expert.error.calc.passed=R\u00E8gle invalide scform.scoreNodeIndents=Somme des points de -selectedPeekviewChildren=Afficher dans l'aper\u00E7u (choisir maximalement {0} ) -folder.displayname=Dossier de stockage -failedAsNotPassedAfterEndDate=Pas r\u00E9ussi comme non r\u00E9ussi mais seulement apr\u00E8s la date de fin du cours -form.save=enregistrer -form.peekview.error.mandatory.child=Il faut au moins s\u00E9lectionner au moins un \u00E9l\u00E9ment de cours pour la vue g\u00E9n\u00E9rale automatique avec aper\u00E7u. -form.system=Aper\u00E7u automatique -pane.tab.deliveryOptions=$org.olat.core.gui.control.generic.iframe\:option.delivery -tool.pdf=Exporter PDF -scform.passedtype=Calculer r\u00E9ussite? -passed.no=Pas r\u00E9ussi -selforsystemoverview=comme -scform.passedFactor.error=Ici ne sont autoris\u00E9s que des chiffres. scform.scoreNodeIndents.error=Au moins un \u00E9l\u00E9ment dont les points doivent \u00EAtre repris, doit \u00EAtre s\u00E9lectionn\u00E9. -bulk.pdf.prefix=Attestations de performance -pane.tab.st_config=Aper\u00E7u -pane.tab.highscore=HighScore +scform.scoretype.avg=Moyenne scform.scoretype.sum=Somme -calcedscore=Points +score.fieldset.title=R\u00E9capitulatif de l'\u00E9valuation +score.noinfo=Pas d'indication +score.title=Points scorecalc.passed=R\u00E9ussi quand -form.peekview.max.reached=Vous avez atteint le maximum de {0} d'\u00E9l\u00E9ments de cours qui doivent \u00EAtre affich\u00E9s avec vue g\u00E9n\u00E9rale automatique avec aper\u00E7u. -scform.scoretype.avg=Moyenne -scform.passedCutValue=Minimum de points -scform.passedType.error=L'option "Calculer points" doit \u00EAtre activ\u00E9e pour utiliser un minimum de points pour la r\u00E9ussite. -scform.passedtype.cutvalue=A partir du minimum de points -cmd.activate.expertMode=Afficher mode avanc\u00E9 -passed.yes=R\u00E9ussi +scorecalc.score=Elaborer points +selectedPeekviewChildren=Afficher dans l'aper\u00E7u (choisir maximalement {0} ) +selectfile=Choisir ce fichier +selforsystemoverview=comme +tool.pdf=Exporter PDF diff --git a/src/main/java/org/olat/course/nodes/st/assessment/STLearningPathConfigController.java b/src/main/java/org/olat/course/nodes/st/assessment/STLearningPathConfigController.java index ca4ea02b7cdbdf636b874d2cc75046bce74cbc69..1e73e148882af1ccb910d2003f796d182c7f50c7 100644 --- a/src/main/java/org/olat/course/nodes/st/assessment/STLearningPathConfigController.java +++ b/src/main/java/org/olat/course/nodes/st/assessment/STLearningPathConfigController.java @@ -58,7 +58,7 @@ public class STLearningPathConfigController extends FormBasicController { @Override protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { setFormTitle("config.title"); - + setFormContextHelp("Learning Path"); KeyValues sequenceKV = new KeyValues(); sequenceKV.add(KeyValues.entry(STCourseNode.CONFIG_LP_SEQUENCE_VALUE_SEQUENTIAL, translate("config.sequence.sequential"))); sequenceKV.add(KeyValues.entry(STCourseNode.CONFIG_LP_SEQUENCE_VALUE_WITHOUT, translate("config.sequence.without"))); diff --git a/src/main/java/org/olat/course/nodes/survey/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/survey/ui/_i18n/LocalStrings_fr.properties index b989eff1a6088e926d018043f66d8a716af36149..4485569aff0263df5a4bc54fb7cb9cab4608bc88 100644 --- a/src/main/java/org/olat/course/nodes/survey/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/survey/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Wed Oct 02 10:01:27 CEST 2019 +#Wed Mar 04 07:21:45 CET 2020 condition.accessibility.title=Acc\u00E8s course.node.link.text=Questionnaire edit.choose=Choisir, cr\u00E9er ou importer @@ -24,6 +24,7 @@ error.repo.entry.missing=Le questionnaire que vous voulez afficher \u00E0 \u00E9 error.repo.entry.not.replaceable=Le questionnaire ne peut plus \u00EAtre remplac\u00E9. error.repo.no.key.long=Pour "{0}", vous devez s\u00E9lectionner un questionnaire dans le tab "Questionnaire" dans la section configuration. error.repo.no.key.short=Pas de questionnaire s\u00E9lectionn\u00E9. +fully.assessed.trigger.status.done=Questionnaire soumis pane.tab.accessibility=Acc\u00E8s pane.tab.config=Questionnaire report.noaccess=Vous n'avez pas acc\u00E8s aux statistiques de ce questionnaire. Soit vous n'avez pas les autorisations requises, soit vous n'avez pas termin\u00E9 de remplir le questionnaire. diff --git a/src/main/java/org/olat/course/nodes/wiki/WikiAssessmentHandler.java b/src/main/java/org/olat/course/nodes/wiki/WikiAssessmentHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..3750ed7599760272e67607c88a1767d62a2397a4 --- /dev/null +++ b/src/main/java/org/olat/course/nodes/wiki/WikiAssessmentHandler.java @@ -0,0 +1,40 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.course.nodes.wiki; + +import org.olat.course.learningpath.LearningPathOnlyAssessmentHandler; +import org.olat.course.nodes.WikiCourseNode; +import org.springframework.stereotype.Service; + +/** + * + * Initial date: 28.02.2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +@Service +public class WikiAssessmentHandler extends LearningPathOnlyAssessmentHandler { + + @Override + public String acceptCourseNodeType() { + return WikiCourseNode.TYPE; + } + +} diff --git a/src/main/java/org/olat/course/nodes/wiki/WikiConfigController.java b/src/main/java/org/olat/course/nodes/wiki/WikiConfigController.java new file mode 100644 index 0000000000000000000000000000000000000000..978bcc273492eb91c30388ced3257272899eaf95 --- /dev/null +++ b/src/main/java/org/olat/course/nodes/wiki/WikiConfigController.java @@ -0,0 +1,261 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.course.nodes.wiki; + +import static org.olat.core.gui.translator.TranslatorHelper.translateAll; + +import java.util.Collection; + +import org.olat.basesecurity.GroupRoles; +import org.olat.basesecurity.OrganisationRoles; +import org.olat.core.commons.services.notifications.SubscriptionContext; +import org.olat.core.gui.UserRequest; +import org.olat.core.gui.components.form.flexible.FormItem; +import org.olat.core.gui.components.form.flexible.FormItemContainer; +import org.olat.core.gui.components.form.flexible.elements.FormLink; +import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; +import org.olat.core.gui.components.form.flexible.elements.StaticTextElement; +import org.olat.core.gui.components.form.flexible.impl.FormBasicController; +import org.olat.core.gui.components.form.flexible.impl.FormEvent; +import org.olat.core.gui.components.form.flexible.impl.FormLayoutContainer; +import org.olat.core.gui.components.link.Link; +import org.olat.core.gui.components.stack.BreadcrumbPanel; +import org.olat.core.gui.control.Controller; +import org.olat.core.gui.control.Event; +import org.olat.core.gui.control.WindowControl; +import org.olat.core.gui.control.generic.closablewrapper.CloseableModalController; +import org.olat.core.id.Roles; +import org.olat.core.util.StringHelper; +import org.olat.course.ICourse; +import org.olat.course.editor.NodeEditController; +import org.olat.course.nodes.AbstractFeedCourseNode; +import org.olat.course.nodes.CourseNodeFactory; +import org.olat.course.nodes.WikiCourseNode; +import org.olat.course.run.environment.CourseEnvironment; +import org.olat.fileresource.types.WikiResource; +import org.olat.modules.ModuleConfiguration; +import org.olat.modules.wiki.DryRunAssessmentProvider; +import org.olat.modules.wiki.WikiManager; +import org.olat.modules.wiki.WikiSecurityCallback; +import org.olat.modules.wiki.WikiSecurityCallbackImpl; +import org.olat.repository.RepositoryEntry; +import org.olat.repository.RepositoryService; +import org.olat.repository.controllers.ReferencableEntriesSearchController; +import org.springframework.beans.factory.annotation.Autowired; + +/** + * + * Initial date: 2 Mar 2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +public class WikiConfigController extends FormBasicController { + + private static final String ROLE_COACH = "config.role.coach"; + private static final String ROLE_PARTICIPANT = "config.role.participant"; + private static final String[] EDIT_KEYS = new String[] { + ROLE_COACH, + ROLE_PARTICIPANT + }; + + private StaticTextElement wikiNotChoosenEl; + private FormLink previewLink; + private FormLink chooseLink; + private FormLink replaceLink; + private FormLink editLink; + private MultipleSelectionElement editRolesEl; + + private CloseableModalController cmc; + private ReferencableEntriesSearchController repositorySearchCtrl; + private Controller wikiCtrl; + + private final BreadcrumbPanel stackPanel; + private final WikiCourseNode courseNode; + private final ModuleConfiguration config; + private final ICourse course; + private RepositoryEntry wikiEntry; + + @Autowired + private RepositoryService repositoryService; + + public WikiConfigController(UserRequest ureq, WindowControl wControl, BreadcrumbPanel stackPanel, + WikiCourseNode courseNode, ICourse course) { + super(ureq, wControl, LAYOUT_BAREBONE); + this.stackPanel = stackPanel; + this.courseNode = courseNode; + this.course = course; + this.config = courseNode.getModuleConfiguration(); + this.wikiEntry = courseNode.getReferencedRepositoryEntry(); + initForm(ureq); + } + + @Override + protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { + FormLayoutContainer generalCont = FormLayoutContainer.createDefaultFormLayout("general", getTranslator()); + formLayout.add(generalCont); + generalCont.setRootForm(mainForm); + generalCont.setFormTitle(translate("header")); + generalCont.setFormContextHelp("Communication and Collaboration#_bb_wiki"); + + wikiNotChoosenEl = uifactory.addStaticTextElement("chosenwiki", "chosenwiki", + translate("no.entry.chosen"), generalCont); + previewLink = uifactory.addFormLink("command.preview", "", translate("command.preview"), generalCont, + Link.NONTRANSLATED); + previewLink.setIconLeftCSS("o_icon o_icon-fw o_icon_preview"); + + FormLayoutContainer buttonsCont = FormLayoutContainer.createButtonLayout("buttons", getTranslator()); + buttonsCont.setRootForm(mainForm); + generalCont.add(buttonsCont); + chooseLink = uifactory.addFormLink("command.create", buttonsCont, "btn btn-default o_xsmall"); + chooseLink.setElementCssClass("o_sel_wiki_choose_repofile"); + replaceLink = uifactory.addFormLink("command.change", buttonsCont, "btn btn-default o_xsmall"); + editLink = uifactory.addFormLink("edit", buttonsCont, "btn btn-default o_xsmall"); + + + if (!courseNode.hasCustomPreConditions()) { + FormLayoutContainer rightsCont = FormLayoutContainer.createDefaultFormLayout("rights", getTranslator()); + formLayout.add(rightsCont); + rightsCont.setFormTitle(translate("config.rights")); + + editRolesEl = uifactory.addCheckboxesVertical("config.edit", rightsCont, EDIT_KEYS, + translateAll(getTranslator(), EDIT_KEYS), 1); + editRolesEl.select(ROLE_COACH, + config.getBooleanSafe(WikiCourseNode.CONFIG_KEY_EDIT_BY_COACH)); + editRolesEl.select(ROLE_PARTICIPANT, + config.getBooleanSafe(WikiCourseNode.CONFIG_KEY_EDIT_BY_PARTICIPANT)); + editRolesEl.addActionListener(FormEvent.ONCHANGE); + } + + updateUI(); + } + + private void updateUI() { + boolean feedSelected = wikiEntry != null; + if (feedSelected) { + String displayname = StringHelper.escapeHtml(wikiEntry.getDisplayname()); + previewLink.setI18nKey(displayname); + flc.setDirty(true); + } + wikiNotChoosenEl.setVisible(!feedSelected); + chooseLink.setVisible(!feedSelected); + previewLink.setVisible(feedSelected); + replaceLink.setVisible(feedSelected); + editLink.setVisible(feedSelected); + } + + @Override + protected void formInnerEvent(UserRequest ureq, FormItem source, FormEvent event) { + if (source == chooseLink || source == replaceLink) { + doSelectFeed(ureq); + } else if (source == previewLink) { + doPreviewFeed(ureq); + } else if (source == editLink) { + doEditFeed(ureq); + } else if (source == editRolesEl) { + doUpdatedEditRoles(ureq); + } + super.formInnerEvent(ureq, source, event); + } + + @Override + public void event(UserRequest urequest, Controller source, Event event) { + if (source == repositorySearchCtrl) { + if (event == ReferencableEntriesSearchController.EVENT_REPOSITORY_ENTRY_SELECTED) { + wikiEntry = repositorySearchCtrl.getSelectedEntry(); + if (wikiEntry != null) { + AbstractFeedCourseNode.setReference(courseNode.getModuleConfiguration(), wikiEntry); + WikiEditController.setWikiRepoReference(wikiEntry, config); + fireEvent(urequest, NodeEditController.NODECONFIG_CHANGED_EVENT); + updateUI(); + } + } + cmc.deactivate(); + cleanUp(); + } else if (source == cmc) { + cmc.deactivate(); + cleanUp(); + } + } + + private void cleanUp() { + removeAsListenerAndDispose(repositorySearchCtrl); + removeAsListenerAndDispose(wikiCtrl); + removeAsListenerAndDispose(cmc); + repositorySearchCtrl = null; + wikiCtrl = null; + cmc = null; + } + + private void doSelectFeed(UserRequest ureq) { + repositorySearchCtrl = new ReferencableEntriesSearchController(getWindowControl(), ureq, WikiResource.TYPE_NAME, + translate("command.choose")); + listenTo(repositorySearchCtrl); + cmc = new CloseableModalController(getWindowControl(), translate("close"), + repositorySearchCtrl.getInitialComponent(), true, translate("command.create")); + cmc.activate(); + } + + private void doPreviewFeed(UserRequest ureq) { + if (wikiEntry == null) { + showError("error.repoentrymissing"); + } else { + Roles roles = ureq.getUserSession().getRoles(); + boolean isAdministrator = (roles.isAdministrator() || roles.isLearnResourceManager()) + && repositoryService.hasRoleExpanded(getIdentity(), wikiEntry, + OrganisationRoles.administrator.name(), OrganisationRoles.learnresourcemanager.name()); + boolean isResourceOwner = repositoryService.hasRole(getIdentity(), wikiEntry, GroupRoles.owner.name()); + + CourseEnvironment cenv = course.getCourseEnvironment(); + SubscriptionContext subsContext = WikiManager.createTechnicalSubscriptionContextForCourse(cenv, courseNode); + WikiSecurityCallback callback = new WikiSecurityCallbackImpl(null, isAdministrator, false, false, isResourceOwner, subsContext); + wikiCtrl = WikiManager.getInstance().createWikiMainController(ureq, getWindowControl(), wikiEntry.getOlatResource(), + callback, DryRunAssessmentProvider.create(), null); + listenTo(wikiCtrl); + stackPanel.pushController(translate("preview"), wikiCtrl); + } + } + + private void doEditFeed(UserRequest ureq) { + if (wikiEntry == null) { + showError("error.repoentrymissing"); + } else { + CourseNodeFactory.getInstance().launchReferencedRepoEntryEditor(ureq, getWindowControl(), courseNode); + } + } + + private void doUpdatedEditRoles(UserRequest ureq) { + Collection<String> selectedEditKeys = editRolesEl.getSelectedKeys(); + config.setBooleanEntry(WikiCourseNode.CONFIG_KEY_EDIT_BY_COACH, selectedEditKeys.contains(ROLE_COACH)); + config.setBooleanEntry(WikiCourseNode.CONFIG_KEY_EDIT_BY_PARTICIPANT, selectedEditKeys.contains(ROLE_PARTICIPANT)); + + fireEvent(ureq, NodeEditController.NODECONFIG_CHANGED_EVENT); + } + + @Override + protected void formOK(UserRequest ureq) { + // + } + + @Override + protected void doDispose() { + // + } + +} diff --git a/src/main/java/org/olat/course/nodes/wiki/WikiEditController.java b/src/main/java/org/olat/course/nodes/wiki/WikiEditController.java index 3f2ac3d52a47fff8a4c9dac6f15eb587b664a983..2b33f445fad53e87945bf66d94730364c2027fde 100644 --- a/src/main/java/org/olat/course/nodes/wiki/WikiEditController.java +++ b/src/main/java/org/olat/course/nodes/wiki/WikiEditController.java @@ -25,46 +25,28 @@ package org.olat.course.nodes.wiki; -import org.olat.NewControllerFactory; -import org.olat.basesecurity.GroupRoles; -import org.olat.basesecurity.OrganisationRoles; -import org.olat.core.commons.services.notifications.SubscriptionContext; import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.Component; -import org.olat.core.gui.components.link.Link; -import org.olat.core.gui.components.link.LinkFactory; -import org.olat.core.gui.components.panel.Panel; +import org.olat.core.gui.components.stack.BreadcrumbPanel; import org.olat.core.gui.components.tabbedpane.TabbedPane; import org.olat.core.gui.components.velocity.VelocityContainer; import org.olat.core.gui.control.Controller; import org.olat.core.gui.control.ControllerEventListener; import org.olat.core.gui.control.Event; import org.olat.core.gui.control.WindowControl; -import org.olat.core.gui.control.generic.closablewrapper.CloseableModalController; import org.olat.core.gui.control.generic.tabbable.ActivateableTabbableDefaultController; -import org.olat.core.id.Roles; import org.olat.core.logging.AssertException; -import org.olat.core.util.StringHelper; import org.olat.course.ICourse; import org.olat.course.assessment.AssessmentHelper; import org.olat.course.condition.Condition; import org.olat.course.condition.ConditionEditController; import org.olat.course.editor.NodeEditController; import org.olat.course.nodes.WikiCourseNode; -import org.olat.course.run.environment.CourseEnvironment; import org.olat.course.run.userview.UserCourseEnvironment; import org.olat.course.tree.CourseEditorTreeModel; -import org.olat.fileresource.types.WikiResource; import org.olat.modules.ModuleConfiguration; -import org.olat.modules.wiki.WikiMainController; -import org.olat.modules.wiki.WikiManager; -import org.olat.modules.wiki.WikiSecurityCallback; -import org.olat.modules.wiki.WikiSecurityCallbackImpl; import org.olat.repository.RepositoryEntry; import org.olat.repository.RepositoryManager; -import org.olat.repository.RepositoryService; -import org.olat.repository.controllers.ReferencableEntriesSearchController; -import org.springframework.beans.factory.annotation.Autowired; /** * Description: <BR/>Edit controller for single page course nodes <P/> Initial @@ -75,204 +57,81 @@ import org.springframework.beans.factory.annotation.Autowired; public class WikiEditController extends ActivateableTabbableDefaultController implements ControllerEventListener { public static final String PANE_TAB_ACCESSIBILITY = "pane.tab.accessibility"; public static final String PANE_TAB_WIKICONFIG = "pane.tab.wikiconfig"; - public static final String PANE_TAB_WIKIDISPLAYCONFIG = "pane.tab.wikidisplayconfig"; private static final String[] paneKeys = { PANE_TAB_WIKICONFIG, PANE_TAB_ACCESSIBILITY }; - private static final String CHOSEN_ENTRY = "chosen_entry"; - private static final String CONFIG_KEY_REPOSITORY_SOFTKEY = "reporef"; - - private ModuleConfiguration moduleConfiguration; - private WikiCourseNode wikiCourseNode; - private ConditionEditController accessCondContr; private TabbedPane tabs; - private Panel main; - private VelocityContainer content; - private ReferencableEntriesSearchController searchController; - private WikiMainController wikiCtr; - private CloseableModalController cmcWikiCtr; - private CloseableModalController cmcSearchController; - private Link previewLink; - private Link chooseButton; - private Link changeButton; - private Link editLink; + private WikiConfigController configCtrl; private VelocityContainer editAccessVc; + private ConditionEditController accessCondCtrl; private ConditionEditController editCondContr; - private ICourse course; - - @Autowired - private RepositoryService repositoryService; - /** - * Constructor for wiki page editor controller - * - * @param config The node module configuration - * @param ureq The user request - * @param wikiCourseNode The current wiki page course node - * @param course - */ - public WikiEditController(ModuleConfiguration config, UserRequest ureq, WindowControl wControl, WikiCourseNode wikiCourseNode, - ICourse course, UserCourseEnvironment euce) { + private final WikiCourseNode wikiCourseNode; + + public WikiEditController(UserRequest ureq, WindowControl wControl, BreadcrumbPanel stackPanel, + WikiCourseNode wikiCourseNode, ICourse course, UserCourseEnvironment euce) { super(ureq, wControl); - this.moduleConfiguration = config; this.wikiCourseNode = wikiCourseNode; - //o_clusterOk by guido: save to hold reference to course inside editor - this.course = course; - main = new Panel("wikimain"); + configCtrl = new WikiConfigController(ureq, wControl, stackPanel, wikiCourseNode, course); + listenTo(configCtrl); - content = createVelocityContainer("edit"); - chooseButton = LinkFactory.createButtonSmall("command.create", content, this); - chooseButton.setElementCssClass("o_sel_wiki_choose_repofile"); - changeButton = LinkFactory.createButtonSmall("command.change", content, this); - changeButton.setElementCssClass("o_sel_wiki_choose_repofile"); - - editAccessVc = this.createVelocityContainer("edit_access"); - CourseEditorTreeModel editorModel = course.getEditorTreeModel(); - // Accessibility precondition - Condition accessCondition = wikiCourseNode.getPreConditionAccess(); - accessCondContr = new ConditionEditController(ureq, getWindowControl(), euce, accessCondition, - AssessmentHelper.getAssessableNodes(editorModel, wikiCourseNode)); - listenTo(accessCondContr); - editAccessVc.put("readerCondition", accessCondContr.getInitialComponent()); - - //wiki read / write preconditions - Condition editCondition = wikiCourseNode.getPreConditionEdit(); - editCondContr = new ConditionEditController(ureq, getWindowControl(), euce, editCondition, AssessmentHelper - .getAssessableNodes(editorModel, wikiCourseNode)); - listenTo(editCondContr); - editAccessVc.put("editCondition", editCondContr.getInitialComponent()); - - - if (config.get(CONFIG_KEY_REPOSITORY_SOFTKEY) != null) { - // fetch repository entry to display the repository entry title of the - // chosen wiki - RepositoryEntry re = getWikiRepoReference(config, false); - if (re == null) { // we cannot display the entrie's name, because the - // repository entry had been deleted between the time - // when it was chosen here, and now - this.showError("error.repoentrymissing"); - content.contextPut("showPreviewLink", Boolean.FALSE); - content.contextPut(CHOSEN_ENTRY, translate("no.entry.chosen")); - } else { - // no securitycheck on wiki, editable by everybody - editLink = LinkFactory.createButtonSmall("edit", content, this); - content.contextPut("showPreviewLink", Boolean.TRUE); - String displayname = StringHelper.escapeHtml(re.getDisplayname()); - previewLink = LinkFactory.createCustomLink("command.preview", "command.preview", displayname, Link.NONTRANSLATED, content, this); - previewLink.setIconLeftCSS("o_icon o_icon-fw o_icon_preview"); - previewLink.setCustomEnabledLinkCSS("o_preview"); - previewLink.setTitle(getTranslator().translate("command.preview")); - } - } else { - // no valid config yet - content.contextPut("showPreviewLink", Boolean.FALSE); - content.contextPut(CHOSEN_ENTRY, translate("no.entry.chosen")); + if (wikiCourseNode.hasCustomPreConditions()) { + editAccessVc = this.createVelocityContainer("edit_access"); + CourseEditorTreeModel editorModel = course.getEditorTreeModel(); + // Accessibility precondition + Condition accessCondition = wikiCourseNode.getPreConditionAccess(); + accessCondCtrl = new ConditionEditController(ureq, getWindowControl(), euce, accessCondition, + AssessmentHelper.getAssessableNodes(editorModel, wikiCourseNode)); + listenTo(accessCondCtrl); + editAccessVc.put("readerCondition", accessCondCtrl.getInitialComponent()); + + //wiki read / write preconditions + Condition editCondition = wikiCourseNode.getPreConditionEdit(); + editCondContr = new ConditionEditController(ureq, getWindowControl(), euce, editCondition, AssessmentHelper + .getAssessableNodes(editorModel, wikiCourseNode)); + listenTo(editCondContr); + editAccessVc.put("editCondition", editCondContr.getInitialComponent()); } - - main.setContent(content); } @Override public void event(UserRequest ureq, Component source, Event event) { - if (source == previewLink) { - doPreview(ureq); - } else if (source == chooseButton || source == changeButton) { - searchController = new ReferencableEntriesSearchController(getWindowControl(), ureq, WikiResource.TYPE_NAME, translate("command.choose")); - listenTo(searchController); - cmcSearchController = new CloseableModalController(getWindowControl(), translate("close"), searchController.getInitialComponent(), true, translate("command.create")); - cmcSearchController.activate(); - } else if (source == editLink) { - RepositoryEntry repositoryEntry = wikiCourseNode.getReferencedRepositoryEntry(); - if (repositoryEntry == null) { - // do nothing - return; - } - String bPath = "[RepositoryEntry:" + repositoryEntry.getKey() + "][Editor:0]"; - NewControllerFactory.getInstance().launch(bPath, ureq, getWindowControl()); - } + // } @Override - public void event(UserRequest urequest, Controller source, Event event) { - if (source == searchController) { - cmcSearchController.deactivate(); - // repository search controller done - if (event == ReferencableEntriesSearchController.EVENT_REPOSITORY_ENTRY_SELECTED) { - RepositoryEntry re = searchController.getSelectedEntry(); - if (re != null) { - setWikiRepoReference(re, moduleConfiguration); - content.contextPut("showPreviewLink", Boolean.TRUE); - String displayname = StringHelper.escapeHtml(re.getDisplayname()); - previewLink = LinkFactory.createCustomLink("command.preview", "command.preview", displayname, Link.NONTRANSLATED, content, this); - previewLink.setIconLeftCSS("o_icon o_icon-fw o_icon_preview"); - previewLink.setCustomEnabledLinkCSS("o_preview"); - previewLink.setTitle(getTranslator().translate("command.preview")); - // no securitycheck on wiki, editable by everybody - editLink = LinkFactory.createButtonSmall("edit", content, this); - // fire event so the updated config is saved by the - // editormaincontroller - fireEvent(urequest, NodeEditController.NODECONFIG_CHANGED_EVENT); - } - } // else cancelled repo search - } else if (source == accessCondContr) { + public void event(UserRequest ureq, Controller source, Event event) { + if (source == configCtrl) { + fireEvent(ureq, event); + } else if (source == accessCondCtrl) { if (event == Event.CHANGED_EVENT) { - Condition cond = accessCondContr.getCondition(); + Condition cond = accessCondCtrl.getCondition(); wikiCourseNode.setPreConditionAccess(cond); - fireEvent(urequest, NodeEditController.NODECONFIG_CHANGED_EVENT); + fireEvent(ureq, NodeEditController.NODECONFIG_CHANGED_EVENT); } } else if (source == editCondContr) { if (event == Event.CHANGED_EVENT) { Condition cond = editCondContr.getCondition(); wikiCourseNode.setPreConditionEdit(cond); - fireEvent(urequest, NodeEditController.NODECONFIG_CHANGED_EVENT); + fireEvent(ureq, NodeEditController.NODECONFIG_CHANGED_EVENT); } - } else if (source == cmcWikiCtr) { - if (event == CloseableModalController.CLOSE_MODAL_EVENT) { - cmcWikiCtr.dispose(); - wikiCtr.dispose(); - } - } - } - - private void doPreview(UserRequest ureq) { - // Preview as modal dialogue only if the config is valid - RepositoryEntry re = getWikiRepoReference(moduleConfiguration, false); - if (re == null) { // we cannot preview it, because the repository entry - // had been deleted between the time when it was - // chosen here, and now - showError("error.repoentrymissing"); - } else { - Roles roles = ureq.getUserSession().getRoles(); - boolean isAdministrator = (roles.isAdministrator() || roles.isLearnResourceManager()) - && repositoryService.hasRoleExpanded(getIdentity(), re, - OrganisationRoles.administrator.name(), OrganisationRoles.learnresourcemanager.name()); - boolean isResourceOwner = repositoryService.hasRole(getIdentity(), re, GroupRoles.owner.name()); - - CourseEnvironment cenv = course.getCourseEnvironment(); - SubscriptionContext subsContext = WikiManager.createTechnicalSubscriptionContextForCourse(cenv, wikiCourseNode); - WikiSecurityCallback callback = new WikiSecurityCallbackImpl(null, isAdministrator, false, false, isResourceOwner, subsContext); - wikiCtr = WikiManager.getInstance().createWikiMainController(ureq, getWindowControl(), re.getOlatResource(), callback, null); - cmcWikiCtr = new CloseableModalController(getWindowControl(), translate("command.close"), wikiCtr.getInitialComponent()); - listenTo(cmcWikiCtr); - cmcWikiCtr.activate(); } } @Override public void addTabs(TabbedPane tabbedPane) { tabs = tabbedPane; - tabbedPane.addTab(translate(PANE_TAB_ACCESSIBILITY), editAccessVc); - tabbedPane.addTab(translate(PANE_TAB_WIKICONFIG), main); + if (editAccessVc != null) { + tabbedPane.addTab(translate(PANE_TAB_ACCESSIBILITY), editAccessVc); + + } + tabbedPane.addTab(translate(PANE_TAB_WIKICONFIG), configCtrl.getInitialComponent()); } @Override protected void doDispose() { - //child controllers registered with listenTo() get disposed in BasicController - if (wikiCtr != null) { - wikiCtr.dispose(); - wikiCtr = null; - } + // } @Override @@ -295,7 +154,7 @@ public class WikiEditController extends ActivateableTabbableDefaultController im */ public static RepositoryEntry getWikiRepoReference(ModuleConfiguration config, boolean strict) { if (config == null) throw new AssertException("missing config in wiki course node"); - String repoSoftkey = (String) config.get(WikiEditController.CONFIG_KEY_REPOSITORY_SOFTKEY); + String repoSoftkey = (String) config.get(WikiCourseNode.CONFIG_KEY_REPOSITORY_SOFTKEY); if (repoSoftkey == null) throw new AssertException("invalid config when being asked for references"); RepositoryManager rm = RepositoryManager.getInstance(); return rm.lookupRepositoryEntryBySoftkey(repoSoftkey, strict); @@ -307,7 +166,7 @@ public class WikiEditController extends ActivateableTabbableDefaultController im * @param moduleConfiguration */ public static void setWikiRepoReference(RepositoryEntry re, ModuleConfiguration moduleConfiguration) { - moduleConfiguration.set(CONFIG_KEY_REPOSITORY_SOFTKEY, re.getSoftkey()); + moduleConfiguration.set(WikiCourseNode.CONFIG_KEY_REPOSITORY_SOFTKEY, re.getSoftkey()); } /** @@ -315,7 +174,7 @@ public class WikiEditController extends ActivateableTabbableDefaultController im * @return boolean */ public static boolean isModuleConfigValid(ModuleConfiguration moduleConfiguration) { - return (moduleConfiguration.get(CONFIG_KEY_REPOSITORY_SOFTKEY) != null); + return (moduleConfiguration.get(WikiCourseNode.CONFIG_KEY_REPOSITORY_SOFTKEY) != null); } @@ -332,7 +191,7 @@ public class WikiEditController extends ActivateableTabbableDefaultController im if (strict) throw new AssertException("missing config in Wiki"); else return null; } - String repoSoftkey = (String) config.get(WikiEditController.CONFIG_KEY_REPOSITORY_SOFTKEY); + String repoSoftkey = (String) config.get(WikiCourseNode.CONFIG_KEY_REPOSITORY_SOFTKEY); if (repoSoftkey == null) { if (strict) throw new AssertException("invalid config when being asked for references"); else return null; @@ -346,7 +205,7 @@ public class WikiEditController extends ActivateableTabbableDefaultController im * @param moduleConfig */ public static void removeWikiReference(ModuleConfiguration moduleConfig) { - moduleConfig.remove(WikiEditController.CONFIG_KEY_REPOSITORY_SOFTKEY); + moduleConfig.remove(WikiCourseNode.CONFIG_KEY_REPOSITORY_SOFTKEY); } } diff --git a/src/main/java/org/olat/course/nodes/wiki/WikiLearningPathNodeHandler.java b/src/main/java/org/olat/course/nodes/wiki/WikiLearningPathNodeHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..afc381a9319d6428c6bf70aa4d9a5919de1634c3 --- /dev/null +++ b/src/main/java/org/olat/course/nodes/wiki/WikiLearningPathNodeHandler.java @@ -0,0 +1,82 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.course.nodes.wiki; + +import org.olat.core.gui.UserRequest; +import org.olat.core.gui.control.Controller; +import org.olat.core.gui.control.WindowControl; +import org.olat.course.learningpath.LearningPathConfigs; +import org.olat.course.learningpath.LearningPathEditConfigs; +import org.olat.course.learningpath.LearningPathNodeHandler; +import org.olat.course.learningpath.model.ModuleLearningPathConfigs; +import org.olat.course.learningpath.ui.LearningPathNodeConfigController; +import org.olat.course.nodes.CourseNode; +import org.olat.course.nodes.WikiCourseNode; +import org.olat.repository.RepositoryEntry; +import org.springframework.stereotype.Service; + +/** + * + * Initial date: 28.02.2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +@Service +public class WikiLearningPathNodeHandler implements LearningPathNodeHandler { + + private static final LearningPathEditConfigs EDIT_CONFIGS = LearningPathEditConfigs.builder() + .enableNodeVisited() + .enableConfirmed() + .build(); + + @Override + public String acceptCourseNodeType() { + return WikiCourseNode.TYPE; + } + + @Override + public boolean isSupported() { + return true; + } + + @Override + public LearningPathConfigs getConfigs(CourseNode courseNode) { + return new ModuleLearningPathConfigs(courseNode.getModuleConfiguration(), true); + } + + @Override + public Controller createConfigEditController(UserRequest ureq, WindowControl wControl, RepositoryEntry courseEntry, + CourseNode courseNode) { + return new LearningPathNodeConfigController(ureq, wControl, courseEntry, courseNode, EDIT_CONFIGS); + } + + @Override + public LearningPathEditConfigs getEditConfigs() { + return EDIT_CONFIGS; + } + + @Override + public void onMigrated(CourseNode courseNode) { + if (courseNode instanceof WikiCourseNode) { + ((WikiCourseNode)courseNode).removeCustomPreconditions(); + } + } + +} diff --git a/src/main/java/org/olat/course/nodes/wiki/WikiRunController.java b/src/main/java/org/olat/course/nodes/wiki/WikiRunController.java index 16e5eecb6afda3991554b937094b30ba03e45b9e..c34a609dee8f55a2a7c22aa8231eecc98efe3266 100644 --- a/src/main/java/org/olat/course/nodes/wiki/WikiRunController.java +++ b/src/main/java/org/olat/course/nodes/wiki/WikiRunController.java @@ -56,7 +56,10 @@ import org.olat.course.run.navigation.NodeRunConstructionResult; import org.olat.course.run.userview.NodeEvaluation; import org.olat.course.run.userview.UserCourseEnvironment; import org.olat.modules.ModuleConfiguration; +import org.olat.modules.wiki.DryRunAssessmentProvider; +import org.olat.modules.wiki.PersistingAssessmentProvider; import org.olat.modules.wiki.Wiki; +import org.olat.modules.wiki.WikiAssessmentProvider; import org.olat.modules.wiki.WikiMainController; import org.olat.modules.wiki.WikiManager; import org.olat.modules.wiki.WikiReadOnlySecurityCallback; @@ -91,13 +94,13 @@ public class WikiRunController extends BasicController implements Activateable2 addLoggingResourceable(LoggingResourceable.wrap(wikiCourseNode)); //get repository entry in "strict" mode - RepositoryEntry re = WikiEditController.getWikiRepoReference(config, true); + RepositoryEntry wikiEntry = WikiEditController.getWikiRepoReference(config, true); //check role UserSession usess = ureq.getUserSession(); boolean isAdmininstrator = userCourseEnv.isAdmin(); boolean isGuestOnly = usess.getRoles().isGuestOnly(); - boolean isResourceOwner = isAdmininstrator || repositoryService.hasRole(getIdentity(), re, GroupRoles.owner.name()); + boolean isResourceOwner = isAdmininstrator || repositoryService.hasRole(getIdentity(), wikiEntry, GroupRoles.owner.name()); // Check for jumping to certain wiki page BusinessControl bc = wControl.getBusinessControl(); @@ -105,12 +108,20 @@ public class WikiRunController extends BasicController implements Activateable2 SubscriptionContext subsContext = WikiManager.createTechnicalSubscriptionContextForCourse(courseEnv, wikiCourseNode); WikiSecurityCallback callback; + WikiAssessmentProvider assessmentProvider; if(userCourseEnv.isCourseReadOnly()) { callback = new WikiReadOnlySecurityCallback(isGuestOnly, (isAdmininstrator || isResourceOwner)); + assessmentProvider = DryRunAssessmentProvider.create(); } else { - callback = new WikiSecurityCallbackImpl(ne, isAdmininstrator, isGuestOnly, false, isResourceOwner, subsContext); + Boolean courseEditRight = Boolean.valueOf(hasEditRights(wikiCourseNode, userCourseEnv, ne)); + callback = new WikiSecurityCallbackImpl(courseEditRight, isAdmininstrator, isGuestOnly, false, + isResourceOwner, subsContext); + assessmentProvider = userCourseEnv.isParticipant() + ? PersistingAssessmentProvider.create(wikiEntry, getIdentity()) + : DryRunAssessmentProvider.create(); } + if ( ce != null ) { //jump to a certain context OLATResourceable ores = ce.getOLATResourceable(); String typeName = ores.getResourceableTypeName(); @@ -118,9 +129,9 @@ public class WikiRunController extends BasicController implements Activateable2 if(page.endsWith(":0")) { page = page.substring(0, page.length() - 2); } - wikiCtr = WikiManager.getInstance().createWikiMainController(ureq, wControl, re.getOlatResource(), callback, page); + wikiCtr = WikiManager.getInstance().createWikiMainController(ureq, wControl, wikiEntry.getOlatResource(), callback, assessmentProvider, page); } else { - wikiCtr = WikiManager.getInstance().createWikiMainController(ureq, wControl, re.getOlatResource(), callback, null); + wikiCtr = WikiManager.getInstance().createWikiMainController(ureq, wControl, wikiEntry.getOlatResource(), callback, assessmentProvider, null); } listenTo(wikiCtr); @@ -145,6 +156,20 @@ public class WikiRunController extends BasicController implements Activateable2 putInitialPanel(new Panel("uups.no.clone.controller")); } } + + private boolean hasEditRights(WikiCourseNode courseNode, UserCourseEnvironment userCourseEnv, NodeEvaluation ne) { + if (courseNode.hasCustomPreConditions()) { + return ne.isCapabilityAccessible(WikiCourseNode.EDIT_CONDITION); + } + + ModuleConfiguration moduleConfig = courseNode.getModuleConfiguration(); + if ((moduleConfig.getBooleanSafe(WikiCourseNode.CONFIG_KEY_EDIT_BY_COACH) && userCourseEnv.isCoach()) + || (moduleConfig.getBooleanSafe(WikiCourseNode.CONFIG_KEY_EDIT_BY_PARTICIPANT) && userCourseEnv.isParticipant())) { + return true; + } + + return false; + } @Override public void activate(UserRequest ureq, List<ContextEntry> entries, StateEntry state) { diff --git a/src/main/java/org/olat/course/nodes/wiki/_content/WikiToolController.java b/src/main/java/org/olat/course/nodes/wiki/_content/WikiToolController.java new file mode 100644 index 0000000000000000000000000000000000000000..11e4b6e923146515a98fa12ccdd423aeafdfdacc --- /dev/null +++ b/src/main/java/org/olat/course/nodes/wiki/_content/WikiToolController.java @@ -0,0 +1,146 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.course.nodes.wiki._content; + +import java.util.List; + +import org.olat.basesecurity.GroupRoles; +import org.olat.core.commons.services.notifications.SubscriptionContext; +import org.olat.core.gui.UserRequest; +import org.olat.core.gui.components.Component; +import org.olat.core.gui.control.Event; +import org.olat.core.gui.control.WindowControl; +import org.olat.core.gui.control.controller.BasicController; +import org.olat.core.gui.control.generic.dtabs.Activateable2; +import org.olat.core.gui.control.generic.messages.MessageController; +import org.olat.core.gui.control.generic.messages.MessageUIFactory; +import org.olat.core.id.OLATResourceable; +import org.olat.core.id.context.BusinessControl; +import org.olat.core.id.context.ContextEntry; +import org.olat.core.id.context.StateEntry; +import org.olat.core.util.UserSession; +import org.olat.core.util.resource.OresHelper; +import org.olat.course.CourseModule; +import org.olat.course.run.userview.UserCourseEnvironment; +import org.olat.modules.wiki.DryRunAssessmentProvider; +import org.olat.modules.wiki.PersistingAssessmentProvider; +import org.olat.modules.wiki.WikiAssessmentProvider; +import org.olat.modules.wiki.WikiMainController; +import org.olat.modules.wiki.WikiManager; +import org.olat.modules.wiki.WikiReadOnlySecurityCallback; +import org.olat.modules.wiki.WikiSecurityCallback; +import org.olat.modules.wiki.WikiSecurityCallbackImpl; +import org.olat.repository.RepositoryEntry; +import org.olat.repository.RepositoryManager; +import org.olat.repository.RepositoryService; +import org.springframework.beans.factory.annotation.Autowired; + +/** + * + * Initial date: 4 Mar 2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +public class WikiToolController extends BasicController implements Activateable2 { + + public static final String SUBSCRIPTION_SUBIDENTIFIER = "wiki"; + + private WikiMainController wikiCtrl; + private MessageController noWikiCtrl; + + @Autowired + private RepositoryManager repositoryManager; + @Autowired + private RepositoryService repositoryService; + + public WikiToolController(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv) { + super(ureq, wControl); + + String wikiSoftKey = userCourseEnv.getCourseEnvironment().getCourseConfig().getWikiSoftKey(); + RepositoryEntry wikiEntry = repositoryManager.lookupRepositoryEntryBySoftkey(wikiSoftKey, false); + if (wikiEntry != null) { + //check role + UserSession usess = ureq.getUserSession(); + boolean isAdmininstrator = userCourseEnv.isAdmin(); + boolean isGuestOnly = usess.getRoles().isGuestOnly(); + boolean isResourceOwner = isAdmininstrator || repositoryService.hasRole(getIdentity(), wikiEntry, GroupRoles.owner.name()); + + // Check for jumping to certain wiki page + BusinessControl bc = wControl.getBusinessControl(); + ContextEntry ce = bc.popLauncherContextEntry(); + + String resName = CourseModule.getCourseTypeName(); + Long resId = userCourseEnv.getCourseEnvironment().getCourseResourceableId(); + OLATResourceable courseOres = OresHelper.createOLATResourceableInstance(resName, resId); + SubscriptionContext subsContext = new SubscriptionContext(courseOres, SUBSCRIPTION_SUBIDENTIFIER); + WikiSecurityCallback callback; + WikiAssessmentProvider assessmentProvider; + if(userCourseEnv.isCourseReadOnly()) { + callback = new WikiReadOnlySecurityCallback(isGuestOnly, (isAdmininstrator || isResourceOwner)); + assessmentProvider = DryRunAssessmentProvider.create(); + } else { + callback = new WikiSecurityCallbackImpl(Boolean.TRUE, isAdmininstrator, isGuestOnly, false, + isResourceOwner, subsContext); + assessmentProvider = userCourseEnv.isParticipant() + ? PersistingAssessmentProvider.create(wikiEntry, getIdentity()) + : DryRunAssessmentProvider.create(); + } + + + if ( ce != null ) { //jump to a certain context + OLATResourceable ores = ce.getOLATResourceable(); + String typeName = ores.getResourceableTypeName(); + String page = typeName.substring("page=".length()); + if(page.endsWith(":0")) { + page = page.substring(0, page.length() - 2); + } + wikiCtrl = WikiManager.getInstance().createWikiMainController(ureq, wControl, wikiEntry.getOlatResource(), callback, assessmentProvider, page); + } else { + wikiCtrl = WikiManager.getInstance().createWikiMainController(ureq, wControl, wikiEntry.getOlatResource(), callback, assessmentProvider, null); + } + listenTo(wikiCtrl); + putInitialPanel(wikiCtrl.getInitialComponent()); + } else { + String title = translate("tool.no.wiki.title"); + String text = translate("tool.no.wiki.text"); + noWikiCtrl = MessageUIFactory.createInfoMessage(ureq, wControl, title, text); + listenTo(noWikiCtrl); + putInitialPanel(noWikiCtrl.getInitialComponent()); + } + } + + @Override + public void activate(UserRequest ureq, List<ContextEntry> entries, StateEntry state) { + if (wikiCtrl != null) { + wikiCtrl.activate(ureq, entries, state); + } + } + + @Override + protected void event(UserRequest ureq, Component source, Event event) { + // + } + + @Override + protected void doDispose() { + // + } + +} diff --git a/src/main/java/org/olat/course/nodes/wiki/_content/edit.html b/src/main/java/org/olat/course/nodes/wiki/_content/edit.html deleted file mode 100644 index e89831383cd0b16a45d9ecb7ddda545cde085b3f..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/course/nodes/wiki/_content/edit.html +++ /dev/null @@ -1,27 +0,0 @@ -<fieldset class="o_form form-horizontal clearfix"> - <legend>$r.contextHelpWithWrapper("Communication and Collaboration#_bb_wiki") - $r.translate("header")</legend> - - #if ($showPreviewLink) - <div class="form-group"> - <label class="control-label col-sm-3">$r.translate("chosenwiki")</label> - <div class="col-sm-9"><p class="form-control-static">$r.render("command.preview")</p></div> - </div> - <div class="form-group"> - <div class="col-sm-offset-3 col-sm-9"> - $r.render("command.change") - #if($r.available("edit")) - $r.render("edit") - #end - </div> - </div> - #else - <div class="form-group"> - <label class="control-label col-sm-3">$r.translate("chosenwiki")</label> - <div class="col-sm-9"><p class="form-control-static">$chosen_entry</p></div> - </div> - <div class="form-group"> - <div class="col-sm-offset-3 col-sm-9">$r.render("command.create")</div> - </div> - #end -</fieldset> \ No newline at end of file diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_ar.properties index ae1be6ecc8ea615df419d7eec1925106be4e40cd..9370bf7489ad38594ebb4eb6305654981c4ceb4e 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_ar.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_ar.properties @@ -56,7 +56,6 @@ chosenwiki=\u0627\u0644\u0648\u064A\u0643\u0649 \u0627\u0644\u0645\u062D\u062F\u062F command.change=\u0627\u0633\u062A\u0628\u062F\u0627\u0644 \u0627\u0644\u0648\u064A\u0643\u0649 command.choose=\u0627\u062E\u062A\u064A\u0627\u0631 \u0648\u064A\u0643\u0649 -command.close=\u0625\u063A\u0644\u0627\u0642 \u0627\u0644\u0639\u0631\u0636 command.create=\u0627\u062E\u062A\u064A\u0627\u0631 \u0623\u0648 \u0625\u0646\u0634\u0627\u0621 \u0623\u0648 \u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0648\u064A\u0643\u0649 command.preview=\u0639\u0631\u0636 \u0627\u0644\u0645\u0639\u0627\u064A\u0646\u0629 command.show=\u0639\u0631\u0636 \u0627\u0644\u0648\u064A\u0643\u0649 @@ -77,4 +76,3 @@ header=\u0627\u062E\u062A\u064A\u0627\u0631 \u0648\u064A\u0643\u0649 no.entry.chosen=<i>\u0644\u0645 \u064A\u062A\u0645 \u0627\u062E\u062A\u064A\u0627\u0631 \u0623\u0649 \u0648\u064A\u0643\u0649</i> pane.tab.accessibility=\u0648\u0635\u0648\u0644 pane.tab.wikiconfig=\u0645\u062D\u062A\u0648\u0649 \u0627\u0644\u0648\u064A\u0643\u0649 \u0627\u0644\u062A\u0639\u0644\u064A\u0645\u0649 -pane.tab.wikidisplayconfig=\u0639\u0631\u0636 diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_bg.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_bg.properties index ddb87c48176c791ad4b600842ace43c2c685df0b..41e72cf5f3e666c3b697e4ca12a77f2303ffefcf 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_bg.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_bg.properties @@ -56,7 +56,6 @@ chosenwiki=\u0418\u0437\u0431\u0440\u0430\u043D\u043E \u0423\u0438\u043A\u0438 command.change=\u0421\u043C\u0435\u043D\u0435\u0442\u0435 \u0423\u0438\u043A\u0438 command.choose=\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0423\u0438\u043A\u0438 -command.close=\u0417\u0430\u0442\u0432\u043E\u0440\u0435\u0442\u0435 \u043F\u0440\u043E\u0437\u043E\u0440\u0435\u0446 command.preview=\u041F\u043E\u043A\u0430\u0436\u0435\u0442\u0435 \u043F\u0440\u0435\u0433\u043B\u0435\u0434 command.show=\u041F\u043E\u043A\u0430\u0436\u0435\u0442\u0435 \u0423\u0438\u043A\u0438 command.showpopup=\u041F\u043E\u043A\u0430\u0436\u0435\u0442\u0435 \u0423\u0438\u043A\u0438 \u0432 \u043D\u043E\u0432 \u043F\u0440\u043E\u0437\u043E\u0440\u0435\u0446 @@ -76,4 +75,3 @@ header=\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0423\u0438\u043A\u0438 no.entry.chosen=<i>\u041D\u0435 \u0435 \u0438\u0437\u0431\u0440\u0430\u043D\u043E \u0423\u0438\u043A\u0438</i> pane.tab.accessibility=\u0414\u043E\u0441\u0442\u044A\u043F pane.tab.wikiconfig=\u0423\u0438\u043A\u0438 \u0443\u0447\u0435\u0431\u043D\u043E \u0441\u044A\u0434\u044A\u0440\u0436\u0430\u043D\u0438\u0435 -pane.tab.wikidisplayconfig=\u041F\u043E\u043A\u0430\u0436\u0435\u0442\u0435 diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_cs.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_cs.properties index cbd2d7a3881624591e5fe4bed8320273b5ad43e3..f2e11dacc264cf2c350ebc5c0bea2e44e48babc7 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_cs.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_cs.properties @@ -46,7 +46,6 @@ chosenwiki=Vybran\u00FD Wiki studijn\u00ED materi\u00E1l command.change=P\u0159esunout studijn\u00ED materi\u00E1l Wiki command.choose=Vybrat studijn\u00ED materi\u00E1l Wiki -command.close=Zav\u0159\u00EDt n\u00E1hled command.preview=N\u00E1hled command.show=Zobrazit studijn\u00ED materi\u00E1l Wiki command.showpopup=Zobrazit studijn\u00ED materi\u00E1l Wiki v nov\u00E9m okn\u011B @@ -66,4 +65,3 @@ header=Vyberte studijn\u00ED materi\u00E1l Wiki no.entry.chosen=<i>\u017D\u00E1dn\u00FD Wiki studijn\u00ED materi\u00E1l nebyl vybr\u00E1n</i> pane.tab.accessibility=P\u0159\u00EDstup pane.tab.wikiconfig=Studijn\u00ED materi\u00E1l -pane.tab.wikidisplayconfig=Zobrazit diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_da.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_da.properties index 72adff973d251245ffb619a3d292736bd2a53e2d..af07f5e41053e137f06fb39d7f5711ced5dc0fff 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_da.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_da.properties @@ -46,7 +46,6 @@ chosenwiki=Valgte Wiki command.change=Erstat Wiki command.choose=V\u00E6lg Wiki -command.close=Luk command.preview=Forh\u00E5ndsvisning command.show=Vis wiki command.showpopup=Vis Wiki i et nyt vindue @@ -64,4 +63,3 @@ header=V\u00E6lg Wiki no.entry.chosen=<i>Ingen Wiki er valgt</i> pane.tab.accessibility=Adgange pane.tab.wikiconfig=L\u00E6ringsindhold -pane.tab.wikidisplayconfig=Visning diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_de.properties index 6234681ba7cb5972cc51a062dd6c1380c7546ccf..063eccc447a809c1e5739ee7bea87ee330316384 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_de.properties @@ -58,12 +58,15 @@ chosenwiki=Gew\u00E4hltes Wiki command.change=Wiki auswechseln command.create=Wiki w\u00E4hlen, erstellen oder importieren command.choose=Wiki w\u00E4hlen -command.close=Ansicht schliessen command.preview=Vorschau anzeigen command.show=Wiki anzeigen command.showpopup=Wiki in neuem Fenster anzeigen condition.accessibility.title=Zugang condition.editable.title=Artikel bearbeiten / erstellen +config.edit=Artikel bearbeiten +config.rights=Benutzerberechtigungen +config.role.coach=Betreuer +config.role.participant=Teilnehmer display.config=Wiki-Menu in Kursmenu? display.config.fieldsettitle=Konfiguration error.launch=Wiki konnte nicht gestartet werden. @@ -78,4 +81,6 @@ header=Wiki ausw\u00E4hlen no.entry.chosen=<i>Kein Wiki ausgew\u00E4hlt</i> pane.tab.accessibility=Zugang pane.tab.wikiconfig=Wiki-Lerninhalt -pane.tab.wikidisplayconfig=Anzeige +preview=Vorschau +tool.no.wiki.text=F\u00FCr diesen Kurs ist kein Wiki vorhanden. +tool.no.wiki.title=Kein Wiki vorhanden. diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_el.properties index 3c58e3a5346983d6a2bcbef2156b672402d116f0..29caf6bb8de81347876f9789615a04e9a5af2f36 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_el.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_el.properties @@ -44,7 +44,6 @@ chosenwiki=\u0395\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03BF Wiki command.change=\u0391\u03BD\u03C4\u03B9\u03BA\u03B1\u03C4\u03AC\u03C3\u03C4\u03B1\u03C3\u03B7 Wiki command.choose=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE Wiki -command.close=\u039A\u03BB\u03B5\u03AF\u03C3\u03B9\u03BC\u03BF \u03B5\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7\u03C2 command.create=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE, \u03B4\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03AE \u03B5\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE Wiki command.preview=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03C3\u03BA\u03CC\u03C0\u03B7\u03C3\u03B7\u03C2 command.show=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 Wiki @@ -65,5 +64,4 @@ header=Select Wiki no.entry.chosen=<i>\u0394\u03B5\u03BD \u03B5\u03C0\u03B9\u03BB\u03AD\u03C7\u03C4\u03B7\u03BA\u03B5 Wiki</i> pane.tab.accessibility=\u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7 pane.tab.wikiconfig=\u03A0\u03B5\u03C1\u03B9\u03B5\u03C7\u03CC\u03BC\u03B5\u03BD\u03BF \u03BC\u03AC\u03B8\u03B7\u03C3\u03B7\u03C2 Wiki -pane.tab.wikidisplayconfig=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 title_wiki=Wiki diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_en.properties index 4854ff5f1a3b73d003775bbd1f2fd6b27d7d5598..cce2ec4eace4536c775839849047d5cf7125cff7 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_en.properties @@ -56,13 +56,16 @@ chosenwiki=Selected Wiki command.change=Replace Wiki command.choose=Choose Wiki -command.close=Close view command.create=Choose, create or import Wiki command.preview=Show preview command.show=Show Wiki command.showpopup=Show Wiki in new window condition.accessibility.title=Access condition.editable.title=Create/edit material +config.edit=Edit Material +config.rights=User rights +config.role.coach=Coach +config.role.participant=Participant display.config=Wiki menu in course menu? display.config.fieldsettitle=Configuration error.launch=Unable to start Wiki. @@ -77,5 +80,7 @@ header=Select Wiki no.entry.chosen=<i>No Wiki selected</i> pane.tab.accessibility=Access pane.tab.wikiconfig=Wiki learning content -pane.tab.wikidisplayconfig=Display +preview=Preview title_wiki=Wiki +tool.no.wiki.text=There is no wiki available for this course. +tool.no.wiki.title=No wiki available diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_es.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_es.properties index 94cf7cc6b867624c05704007eaeab3bff2f65699..682449ce885f3a34309aa527f9c558bb279705e5 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_es.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_es.properties @@ -56,7 +56,6 @@ chosenwiki=Contenido did\u00E1ctico Wiki elegido command.change=Substituye contenido did\u00E1ctico Wiki command.choose=Elige contenido did\u00E1ctico Wiki -command.close=Cerrar command.preview=Mostrar vista previa command.show=Muesta contenido did\u00E1ctico Wiki command.showpopup=Muesta contenido did\u00E1ctico Wiki en p\u00E1gina nueva @@ -76,4 +75,3 @@ header=Elegir contenido did\u00E1ctico Wiki no.entry.chosen=<i>Ningun Wiki fue elegido</i> pane.tab.accessibility=Acceso pane.tab.wikiconfig=Contenido did\u00E1ctico Wiki -pane.tab.wikidisplayconfig=Presentaci\u00F3n diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_fr.properties index 41050b51542c9109547946e437b2d6057bedac03..12648a657ad207c93237a4a8bb28ee0376925f75 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_fr.properties @@ -1,68 +1,17 @@ -#Fri Jan 21 15:43:15 CET 2011 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +#Wed Mar 04 07:22:53 CET 2020 chosenwiki=Wiki s\u00E9lectionn\u00E9 command.change=Remplacer wiki command.choose=Choisir wiki -command.close=Fermer aper\u00E7u command.create=S\u00E9lectionner, cr\u00E9er ou importer wiki command.preview=Afficher aper\u00E7u command.show=Afficher wiki command.showpopup=Afficher wiki dans une nouvelle fen\u00EAtre condition.accessibility.title=Acc\u00E8s condition.editable.title=Editer/ Cr\u00E9er article +config.edit=Editer la page +config.rights=Autorisations utilisateur +config.role.coach=Coach +config.role.participant=Participant display.config=Menu wiki dans le menu du cours? display.config.fieldsettitle=Configuration error.launch=Wiki n'a pas pu \u00EAtre d\u00E9marr\u00E9 @@ -70,12 +19,8 @@ error.noreference.long=Il faut s\u00E9lectionner dans la configuration un wiki d error.noreference.short=Il n'y a encore aucun wiki s\u00E9lectionn\u00E9 pour "{0}". error.repoentrymissing=Le wiki que vous souhaitez afficher, a \u00E9t\u00E9 entre-temps effac\u00E9 dans le d\u00E9p\u00F4t des ressources didactiques. header=Choisir wiki - - - - no.entry.chosen=<i>aucun wiki s\u00E9lectionn\u00E9</i> pane.tab.accessibility=Acc\u00E8s pane.tab.wikiconfig=Contenu didactique Wiki -pane.tab.wikidisplayconfig=Affichage +preview=Aper\u00E7u title_wiki=Wiki diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_it.properties index d2d460f8acb4ea02a11a8f263004efde31f07966..1ae98b73b6626bfa952c51dbf9f8210c27ffec72 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_it.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_it.properties @@ -56,7 +56,6 @@ chosenwiki=Wiki selezionato command.change=Sostituire wiki command.choose=Selezionare wiki -command.close=Chiudere command.create=Selezionare, creare o importare un wiki command.preview=Mostrare anteprima command.show=Mostrare wiki @@ -77,5 +76,4 @@ header=Selezione del wiki no.entry.chosen=<i>Nessun wiki selezionato</i> pane.tab.accessibility=Accesso pane.tab.wikiconfig=Contenuto didattico wiki -pane.tab.wikidisplayconfig=Visualizzazione title_wiki=Wiki diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_jp.properties index 621e7525db2cedccf216545da918680dcf341acc..5e2e82940af476dc9dc9b34f8bbc8610a343fb65 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_jp.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_jp.properties @@ -48,7 +48,6 @@ chosenwiki=\u9078\u629E\u6E08\u307FWiki command.change=Wiki\u3092\u7F6E\u63DB\u3059\u308B command.choose=Wiki\u3092\u9078\u629E\u3059\u308B -command.close=\u30D3\u30E5\u30FC\u3092\u9589\u3058\u308B command.create=Wik\u3092\u9078\u629E\u3001\u4F5C\u6210\u307E\u305F\u306F\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B command.preview=\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u8868\u793A\u3059\u308B command.show=Wiki\u3092\u8868\u793A\u3059\u308B @@ -68,4 +67,3 @@ header=Wiki\u3092\u9078\u629E\u3059\u308B no.entry.chosen=<i>Wiki\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002</i> pane.tab.accessibility=\u30A2\u30AF\u30BB\u30B9 pane.tab.wikiconfig=Wiki\u5B66\u7FD2\u30B3\u30F3\u30C6\u30F3\u30C4 -pane.tab.wikidisplayconfig=\u8868\u793A diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_lt.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_lt.properties index 92e06495ff113f38fff6f8fa276d6da96f2c6855..f6ac75e26efca1f91d4decd2dedea4c3d94a9f6c 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_lt.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_lt.properties @@ -18,7 +18,6 @@ chosenwiki=Pasirinktas turinys command.change=Wiki mokymo turin\u012F pakeisti kitu command.choose=Pasirinkti Wiki mokymo turin\u012F -command.close=U\u017Edaryti command.preview=Per\u017Ei\u016Bra command.show=Rodyti Wiki mokymo turin\u012F command.showpopup=Wiki mokymo turin\u012F rodyti naujame lange @@ -35,4 +34,3 @@ header=I\u0161rinkite Wiki mokymo turin\u012F no.entry.chosen=<i>Turinys nepasirinktas</i> pane.tab.accessibility=Prieiga pane.tab.wikiconfig=Mokymo turinys -pane.tab.wikidisplayconfig=Pavaizduoti diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_nl_NL.properties index bfcf630df581065fb562709e9d5abf23e38b33bd..da733aba2da086fb9d3016f8523f196d06ddd1f8 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_nl_NL.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_nl_NL.properties @@ -56,7 +56,6 @@ chosenwiki=Selecteer Wiki command.change=Vervang Wiki command.choose=Kies Wiki -command.close=Sluit weergave command.create=Eem Wiki kiezen, aanmaken of importeren command.preview=Toon voorvertoning command.show=Toon Wiki @@ -77,5 +76,4 @@ header=Selecteer Wiki no.entry.chosen=<i>Geen Wiki geselecteerd</i> pane.tab.accessibility=Toegang pane.tab.wikiconfig=Wiki leerinhoud -pane.tab.wikidisplayconfig=Weergave title_wiki=Wiki diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pl.properties index 2cc891758b831b410d33bacd7a88fdc969e5d787..fd16d7f2eb7eddb3f46b9c5f21948c4ee93fb7b3 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pl.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pl.properties @@ -56,7 +56,6 @@ chosenwiki=Wybrany portal Wiki command.change=Zmie\u0144 portal Wiki command.choose=Wybierz portal Wiki -command.close=Zamknij widok command.create=Wybierz, utw\u00F3rz lub zaimportuj Wiki command.preview=Podgl\u0105d command.show=Poka\u017C portal Wiki @@ -77,5 +76,4 @@ header=Wybierz portal Wiki no.entry.chosen=<i>Portal Wiki nie zosta\u0142 wybrany</i> pane.tab.accessibility=Dost\u0119p pane.tab.wikiconfig=Konfiguracja Wiki -pane.tab.wikidisplayconfig=Wy\u015Bwietl title_wiki=Wiki diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pt_BR.properties index 5705a0c5b0516ee1730f8df45d71ba45e70a849a..7900e647dfe201f2615cbf5c3cc66a8287ffeebf 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pt_BR.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pt_BR.properties @@ -56,7 +56,6 @@ chosenwiki=Conte\u00FAdo did\u00E1tico Wiki selecionado command.change=Substituir conte\u00FAdo did\u00E1tico Wiki command.choose=Escolher conte\u00FAdo did\u00E1tico Wiki -command.close=Fechar visualiza\u00E7\u00E3o command.create=<b>Data de vencimento</b> Data de in\u00EDcio command.preview=Visualiza\u00E7\u00E3o command.show=Exibir conte\u00FAdo did\u00E1tico Wiki @@ -77,5 +76,4 @@ header=Escolher conte\u00FAdo did\u00E1tico Wiki no.entry.chosen=<i>Nenhum conte\u00FAdo did\u00E1tico Wiki selecionado</i> pane.tab.accessibility=Acesso pane.tab.wikiconfig=Conte\u00FAdo did\u00E1tico -pane.tab.wikidisplayconfig=Exibir title_wiki=Wiki diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pt_PT.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pt_PT.properties index 1176f6fb07e70ba2dfad5ad26d086405c41e38d1..e425d8bbf0220889fde16b7d2f640a63916e8520 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pt_PT.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_pt_PT.properties @@ -46,7 +46,6 @@ chosenwiki=Conte\u00FAdo did\u00E1tico Wiki selecionado command.change=Substituir conte\u00FAdo did\u00E1tico Wiki command.choose=Escolher conte\u00FAdo did\u00E1tico Wiki -command.close=Fechar visualiza\u00E7\u00E3o command.preview=Visualiza\u00E7\u00E3o command.show=Exibir conte\u00FAdo did\u00E1tico Wiki command.showpopup=Exibir conte\u00FAdo did\u00E1tico Wiki em nova janela @@ -64,4 +63,3 @@ header=Escolher conte\u00FAdo did\u00E1tico Wiki no.entry.chosen=<i>Nenhum conte\u00FAdo did\u00E1tico Wiki selecionado</i> pane.tab.accessibility=Acesso pane.tab.wikiconfig=Conte\u00FAdo did\u00E1tico -pane.tab.wikidisplayconfig=Exibir diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_ru.properties index b1bcc43af2fa79e6edf0469da4c3058635d13bfc..09de776218f02b2f638c7a757e71d7e10dd3dc0c 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_ru.properties @@ -18,7 +18,6 @@ chosenwiki=\u0412\u044B\u0431\u0440\u0430\u043D\u043D\u0430\u044F \u0432\u0438\u043A\u0438 command.change=\u0417\u0430\u043C\u0435\u043D\u0438\u0442\u044C \u0432\u0438\u043A\u0438 command.choose=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0438\u043A\u0438 -command.close=\u0417\u0430\u043A\u0440\u044B\u0442\u044C \u043F\u043E\u043A\u0430\u0437 command.create=\u0412\u044B\u0431\u0440\u0430\u0442\u044C, \u0441\u043E\u0437\u0434\u0430\u0442\u044C \u0438\u043B\u0438 \u0438\u043C\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0412\u0438\u043A\u0438 command.preview=\u041F\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 command.show=\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0432\u0438\u043A\u0438 @@ -39,4 +38,3 @@ header=\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0438\u043A\u0438 no.entry.chosen=<i>\u041D\u0435 \u0431\u044B\u043B\u043E \u0432\u044B\u0431\u0440\u0430\u043D\u043E \u043D\u0438 \u043E\u0434\u043D\u043E\u0439 \u0432\u0438\u043A\u0438</i> pane.tab.accessibility=\u0414\u043E\u0441\u0442\u0443\u043F pane.tab.wikiconfig=\u0423\u0447\u0435\u0431\u043D\u043E\u0435 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435 \u0432\u0438\u043A\u0438 -pane.tab.wikidisplayconfig=\u041F\u043E\u043A\u0430\u0437 diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_sq.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_sq.properties index c7420030152451821ed377e55a897562eb12f340..b28c1d5fdfc20c0704e55a93bca8a223edf90c3d 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_sq.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_sq.properties @@ -18,7 +18,6 @@ chosenwiki=Wiki t\u00EB p\u00EBrzgjedhur command.change=Z\u00EBvend\u00EBso Wiki command.choose=P\u00EBrzgjedh Wiki -command.close=Mbylle pamjen command.preview=Paraafisho command.show=Shfaq Wiki command.showpopup=Shfaq Wiki n\u00EB nj\u00EB dritare t\u00EB re @@ -36,4 +35,3 @@ header=P\u00EBrzgjedh Wiki no.entry.chosen=<i>Asjnj\u00EB Wiki t\u00EB p\u00EBrzgjedhur</i> pane.tab.accessibility=Qasshm\u00EBria pane.tab.wikiconfig=P\u00EBrmbajtje m\u00EBsimi -pane.tab.wikidisplayconfig=Shfaq diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_zh_CN.properties index 530939bf702459b033cfe37d22408fa9d11e6040..f009bb4acf19fbb369818f1aebbcde870fc5737f 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_zh_CN.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_zh_CN.properties @@ -56,7 +56,6 @@ chosenwiki=\u9009\u4E2D\u7684Wiki\u5B66\u4E60\u5185\u5BB9 command.change=\u66FF\u6362Wiki\u5B66\u4E60\u5185\u5BB9 command.choose=\u9009\u62E9Wiki\u5B66\u4E60\u5185\u5BB9 -command.close=\u5173\u95ED\u89C6\u56FE command.create=\u9009\u62E9\uFF0C\u521B\u5EFA\u6216\u8005\u5BFC\u5165\u7EF4\u57FA command.preview=\u9884\u89C8 command.show=\u663E\u793AWiki\u5B66\u4E60\u5185\u5BB9 @@ -77,4 +76,3 @@ header=\u9009\u62E9Wiki\u5B66\u4E60\u5185\u5BB9 no.entry.chosen=<i>\u6CA1\u6709\u9009\u62E9\u4EFB\u4F55Wiki\u5B66\u4E60\u5185\u5BB9</i> pane.tab.accessibility=\u8BBF\u95EE pane.tab.wikiconfig=\u5B66\u4E60\u5185\u5BB9 -pane.tab.wikidisplayconfig=\u663E\u793A diff --git a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_zh_TW.properties b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_zh_TW.properties index bbbd4891c006ef3eb3961cf1723b401e05ffb4f2..c5c68efd3f3164b4a228c9f83b32674867cca210 100644 --- a/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_zh_TW.properties +++ b/src/main/java/org/olat/course/nodes/wiki/_i18n/LocalStrings_zh_TW.properties @@ -27,7 +27,6 @@ chosenwiki=\u9078\u53D6\u7684 Wiki command.change=\u53D6\u4EE3 Wiki command.choose=\u9078\u53D6 Wiki -command.close=\u95DC\u9589\u8996\u7A97 command.preview=\u986F\u793A\u9810\u89BD command.show=\u986F\u793A Wiki command.showpopup=\u5728\u65B0\u8996\u7A97\u986F\u793A Wiki @@ -47,5 +46,4 @@ header=\u9078\u64C7 Wiki no.entry.chosen=<i>\u6C92\u6709 Wiki \u88AB\u9078\u53D6</i> pane.tab.accessibility=\u5B58\u53D6 pane.tab.wikiconfig=Wiki \u5B78\u7FD2\u5167\u5BB9 -pane.tab.wikidisplayconfig=\u986F\u793A title_wiki=Wiki diff --git a/src/main/java/org/olat/course/run/CoursePaginationController.java b/src/main/java/org/olat/course/run/CoursePaginationController.java index 8c65746193c97182c9d292428661d80438648778..ac8f81f8eb102e451be391bd4e32cc5ec3e184d8 100644 --- a/src/main/java/org/olat/course/run/CoursePaginationController.java +++ b/src/main/java/org/olat/course/run/CoursePaginationController.java @@ -60,11 +60,15 @@ public class CoursePaginationController extends FormBasicController { previousButton = uifactory.addFormLink("previous", "previous", "", null, formLayout, Link.BUTTON_XSMALL | Link.NONTRANSLATED); previousButton.setDomReplacementWrapperRequired(false); - previousButton.setIconLeftCSS("o_icon o_icon_previous_page"); + previousButton.setIconLeftCSS("o_icon o_icon-fw o_icon_course_previous"); + previousButton.setLinkTitle(translate("command.previous")); + previousButton.setAriaLabel(translate("command.previous")); nextButton = uifactory.addFormLink("next", "next", "", null, formLayout, Link.BUTTON_XSMALL | Link.NONTRANSLATED); nextButton.setDomReplacementWrapperRequired(false); - nextButton.setIconLeftCSS("o_icon o_icon_next_page"); + nextButton.setIconLeftCSS("o_icon o_icon-fw o_icon_course_next"); + nextButton.setLinkTitle(translate("command.next")); + nextButton.setAriaLabel(translate("command.next")); } public void updateNextPreviousUI(boolean previousEnabled, boolean nextEnabled) { @@ -75,8 +79,11 @@ public class CoursePaginationController extends FormBasicController { public void updateAssessmentConfirmUI(boolean confirmVisible, boolean doConfirm) { // If doConfirm (click to confirm), show the current state "undone" and vice versa. confirmButton.setI18nKey(doConfirm? "command.assessment.undone": "command.assessment.done"); + confirmButton.setLinkTitle(doConfirm? "command.assessment.undone.alt": "command.assessment.done.alt"); confirmButton.setIconLeftCSS(doConfirm? "o_icon o_icon_status_undone": "o_icon o_icon_status_done"); confirmButton.setUserObject(doConfirm? Boolean.TRUE: Boolean.FALSE); + confirmButton.setElementCssClass(doConfirm ? "o_course_pagination_status_undone" : "o_course_pagination_status_done"); + confirmButton.setPrimary(doConfirm); confirmButton.setVisible(confirmVisible); flc.setDirty(true); } diff --git a/src/main/java/org/olat/course/run/CourseRuntimeController.java b/src/main/java/org/olat/course/run/CourseRuntimeController.java index 98ead8bb1d8e39b2e3716557a13b671615ca01d6..aef6554602033987e25811fb87811c87906b8134 100644 --- a/src/main/java/org/olat/course/run/CourseRuntimeController.java +++ b/src/main/java/org/olat/course/run/CourseRuntimeController.java @@ -100,10 +100,12 @@ import org.olat.course.db.CustomDBMainController; import org.olat.course.editor.EditorMainController; import org.olat.course.groupsandrights.CourseGroupManager; import org.olat.course.groupsandrights.CourseRights; +import org.olat.course.learningpath.LearningPathService; import org.olat.course.learningpath.manager.LearningPathNodeAccessProvider; import org.olat.course.learningpath.ui.LearningPathIdentityListController; import org.olat.course.learningpath.ui.MyLearningPathController; import org.olat.course.member.MembersManagementMainController; +import org.olat.course.nodeaccess.ui.UnsupportedCourseNodesController; import org.olat.course.nodes.CourseNode; import org.olat.course.nodes.ENCourseNode; import org.olat.course.nodes.bc.CourseDocumentsController; @@ -113,6 +115,7 @@ import org.olat.course.nodes.fo.FOToolController; import org.olat.course.nodes.info.InfoCourseSecurityCallback; import org.olat.course.nodes.info.InfoRunController; import org.olat.course.nodes.members.MembersToolRunController; +import org.olat.course.nodes.wiki._content.WikiToolController; import org.olat.course.reminder.ui.CourseRemindersController; import org.olat.course.run.calendar.CourseCalendarController; import org.olat.course.run.glossary.CourseGlossaryFactory; @@ -176,7 +179,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im private Link folderLink, assessmentLink, archiverLink, courseStatisticLink, surveyStatisticLink, testStatisticLink, - areaLink, dbLink, + areaLink, dbLink, convertLearningPathLink, //settings lecturesAdminLink, reminderLink, assessmentModeLink, lifeCycleChangeLink, @@ -184,7 +187,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im efficiencyStatementsLink, noteLink, leaveLink, // course tools learningPathLink, learningPathsLink, calendarLink, chatLink, participantListLink, participantInfoLink, - blogLink, forumLink, documentsLink, emailLink, searchLink, + blogLink, wikiLink, forumLink, documentsLink, emailLink, searchLink, //glossary openGlossaryLink, enableGlossaryLink, lecturesLink; private Link currentUserCountLink; @@ -193,6 +196,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im private CloseableModalController cmc; private COToolController emailCtrl; private BlogToolController blogCtrl; + private WikiToolController wikiCtrl; private FOToolController forumCtrl; private CourseDocumentsController documentsCtrl; private CourseAreasController areasCtrl; @@ -211,6 +215,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im private StatisticCourseNodesController statsToolCtr; private AssessmentModeListController assessmentModeCtrl; private LectureRepositoryAdminController lecturesAdminCtrl; + private UnsupportedCourseNodesController unsupportedCourseNodesCtrl; private CloseableCalloutWindowController courseSearchCalloutCtr; protected RepositoryEntryLifeCycleChangeController lifeCycleChangeCtr; @@ -238,6 +243,8 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im private CourseDBManager courseDBManager; @Autowired private SearchModule searchModule; + @Autowired + private LearningPathService learningPathService; public CourseRuntimeController(UserRequest ureq, WindowControl wControl, RepositoryEntry re, RepositoryEntrySecurity reSecurity, RuntimeControllerCreator runtimeControllerCreator, @@ -642,6 +649,22 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im tools.addComponent(ordersLink); } } + + @Override + protected void initToolsMenuEdition(Dropdown toolsDropdown) { + super.initToolsMenuEdition(toolsDropdown); + if (copyLink != null) { + ICourse course = CourseFactory.loadCourse(getRepositoryEntry()); + if (course != null && !LearningPathNodeAccessProvider.TYPE.equals(course.getCourseConfig().getNodeAccessType().getType())) { + Integer index = toolsDropdown.getComponentIndex(copyLink); + if(index != null) { + convertLearningPathLink = LinkFactory.createToolLink("convert.course.learning.path", + translate("tools.convert.course.learning.path"), this, "o_icon o_icon-fw o_icon_learning_path"); + toolsDropdown.addComponent(index.intValue() + 1, convertLearningPathLink); + } + } + } + } @Override protected void initToolsMenuDelete(Dropdown settingsDropdown) { @@ -856,6 +879,12 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im toolbarPanel.addTool(blogLink); } + if(!assessmentLock) { + wikiLink = LinkFactory.createToolLink("wiki", translate("command.wiki"), this, "o_wiki_icon"); + wikiLink.setVisible(cc.isWikiEnabled()); + toolbarPanel.addTool(wikiLink); + } + if(!assessmentLock) { forumLink = LinkFactory.createToolLink("forum", translate("command.forum"), this, "o_fo_icon"); forumLink.setVisible(cc.isForumEnabled()); @@ -984,6 +1013,8 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im doAssessmentSurveyStatistics(ureq); } else if(assessmentLink == source) { doAssessmentTool(ureq); + } else if (convertLearningPathLink == source) { + doConvertToLearningPath(ureq); } else if(participantListLink == source) { doParticipantList(ureq); } else if(participantInfoLink == source) { @@ -992,6 +1023,8 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im doEmail(ureq); } else if(blogLink == source) { doBlog(ureq); + } else if(wikiLink == source) { + doWiki(ureq); } else if(forumLink == source) { doForum(ureq); } else if(documentsLink == source) { @@ -1076,6 +1109,9 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im if (QuickSearchEvent.QUICKSEARCH.equals(event.getCommand())) { doDeactivateQuickSearch(); } + } else if (source == unsupportedCourseNodesCtrl) { + cmc.deactivate(); + cleanUp(); } if(editorCtrl == source && source instanceof VetoableCloseController) { @@ -1107,6 +1143,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im case participantInfo: doParticipantInfo(ureq); break; case email: doEmail(ureq); break; case blog: doBlog(ureq); break; + case wiki: doWiki(ureq); break; case forum: doForum(ureq); break; case documents: doDocuments(ureq); break; } @@ -1122,6 +1159,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im @Override protected void cleanUp() { + removeAsListenerAndDispose(unsupportedCourseNodesCtrl); removeAsListenerAndDispose(lifeCycleChangeCtr); removeAsListenerAndDispose(assessmentToolCtr); removeAsListenerAndDispose(courseFolderCtrl); @@ -1132,6 +1170,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im removeAsListenerAndDispose(membersCtrl); removeAsListenerAndDispose(areasCtrl); removeAsListenerAndDispose(leaveDialogBox); + unsupportedCourseNodesCtrl = null; lifeCycleChangeCtr = null; assessmentToolCtr = null; courseFolderCtrl = null; @@ -1207,6 +1246,14 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im blog.activate(ureq, subEntries, entries.get(0).getTransientState()); } } + } else if("Wiki".equalsIgnoreCase(type)) { + if (wikiLink != null && wikiLink.isVisible()) { + Activateable2 wiki = doWiki(ureq); + if (wiki != null) { + List<ContextEntry> subEntries = entries.subList(1, entries.size()); + wiki.activate(ureq, subEntries, entries.get(0).getTransientState()); + } + } } else if("Forum".equalsIgnoreCase(type)) { if (forumLink != null && forumLink.isVisible()) { doForum(ureq); @@ -1722,6 +1769,29 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im } } + private void doConvertToLearningPath(UserRequest ureq) { + ICourse course = CourseFactory.loadCourse(getRepositoryEntry()); + List<CourseNode> unsupportedCourseNodes = learningPathService.getUnsupportedCourseNodes(course); + if (!unsupportedCourseNodes.isEmpty()) { + showUnsupportedMessage(ureq, unsupportedCourseNodes); + return; + } + + RepositoryEntry lpEntry = learningPathService.migrate(getRepositoryEntry(), getIdentity()); + String bPath = "[RepositoryEntry:" + lpEntry.getKey() + "]"; + NewControllerFactory.getInstance().launch(bPath, ureq, getWindowControl()); + } + + private void showUnsupportedMessage(UserRequest ureq, List<CourseNode> unsupportedCourseNodes) { + unsupportedCourseNodesCtrl = new UnsupportedCourseNodesController(ureq, getWindowControl(), unsupportedCourseNodes); + listenTo(unsupportedCourseNodesCtrl); + + cmc = new CloseableModalController(getWindowControl(), translate("close"), + unsupportedCourseNodesCtrl.getInitialComponent(), true, translate("unsupported.course.nodes.title")); + cmc.activate(); + listenTo(cmc); + } + @Override protected void launchContent(UserRequest ureq) { super.launchContent(ureq); @@ -1866,6 +1936,23 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im return null; } + private WikiToolController doWiki(UserRequest ureq) { + if(delayedClose == Delayed.wiki || requestForClose(ureq)) { + removeCustomCSS(); + + OLATResourceable ores = OresHelper.createOLATResourceableType("wiki"); + WindowControl swControl = addToHistory(ureq, ores, null); + wikiCtrl = new WikiToolController(ureq, swControl, getUserCourseEnvironment()); + + pushController(ureq, translate("command.wiki"), wikiCtrl); + setActiveTool(wikiLink); + currentToolCtr = wikiCtrl; + return wikiCtrl; + } + delayedClose = Delayed.wiki; + return null; + } + private void doForum(UserRequest ureq) { if(delayedClose == Delayed.forum || requestForClose(ureq)) { removeCustomCSS(); @@ -2060,6 +2147,15 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im } break; } + case wiki: { + if(wikiLink != null) { + ICourse course = CourseFactory.loadCourse(getRepositoryEntry()); + CourseConfig cc = course.getCourseEnvironment().getCourseConfig(); + wikiLink.setVisible(cc.isWikiEnabled()); + toolbarPanel.setDirty(true); + } + break; + } case forum: { if(forumLink != null) { ICourse course = CourseFactory.loadCourse(getRepositoryEntry()); @@ -2218,6 +2314,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im participantInfo, email, blog, + wiki, forum, documents } diff --git a/src/main/java/org/olat/course/run/RunMainController.java b/src/main/java/org/olat/course/run/RunMainController.java index 36cd0d817bb844c869ad41070353ac5f394b4d84..837e7425aeafcfdfd4dbd3a28750c51ba9dfad74 100644 --- a/src/main/java/org/olat/course/run/RunMainController.java +++ b/src/main/java/org/olat/course/run/RunMainController.java @@ -371,11 +371,17 @@ public class RunMainController extends MainLayoutBasicController implements Gene needsRebuildAfterRunDone = true; } - private CourseNode updateAfterChanges(CourseNode courseNode) { + /** + * + * @param courseNode + * @param selectedNodeId my be the nodeId of a node of the subtree + * @return + */ + private CourseNode updateAfterChanges(CourseNode courseNode, String selectedNodeId) { if(currentCourseNode == null) return null; CourseNode newCurrentCourseNode; - NodeClickedRef nclr = navHandler.reloadTreeAfterChanges(courseNode); + NodeClickedRef nclr = navHandler.reloadTreeAfterChanges(courseNode, selectedNodeId); if(nclr == null) { doDisposeAfterEvent(); newCurrentCourseNode = null; @@ -391,7 +397,7 @@ public class RunMainController extends MainLayoutBasicController implements Gene } protected void updateNextPrevious() { - if(nextLink == null || previousLink == null || luTree == null) { + if (luTree == null) { return; } @@ -407,8 +413,13 @@ public class RunMainController extends MainLayoutBasicController implements Gene hasPrevious = index > 0; hasNext = index >= 0 && index+1 < flatTree.size(); } - previousLink.setEnabled(hasPrevious); - nextLink.setEnabled(hasNext); + + if (previousLink != null) { + previousLink.setEnabled(hasPrevious); + } + if (nextLink != null) { + nextLink.setEnabled(hasNext); + } if (paginationCtrl != null) { paginationCtrl.updateNextPreviousUI(hasPrevious, hasNext); } @@ -528,10 +539,12 @@ public class RunMainController extends MainLayoutBasicController implements Gene boolean showDone = false; if (calledCourseNode != null) { TreeNode treeNode = treeModel.getNodeById(calledCourseNode.getIdent()); - boolean confirmationEnabled = nodeAccessService.isAssessmentConfirmationEnabled(calledCourseNode, getUce()); - AssessmentEvaluation assessmentEvaluation = getUce().getScoreAccounting().evalCourseNode(calledCourseNode); - confirmVisible = confirmationEnabled && treeNode.isAccessible(); - showDone = !Boolean.TRUE.equals(assessmentEvaluation.getFullyAssessed()); + if (treeNode != null) { + boolean confirmationEnabled = nodeAccessService.isAssessmentConfirmationEnabled(calledCourseNode, getUce()); + AssessmentEvaluation assessmentEvaluation = getUce().getScoreAccounting().evalCourseNode(calledCourseNode); + confirmVisible = confirmationEnabled && treeNode.isAccessible(); + showDone = !Boolean.TRUE.equals(assessmentEvaluation.getFullyAssessed()); + } } paginationCtrl.updateAssessmentConfirmUI(confirmVisible, showDone); updateProgressUI(); @@ -582,7 +595,7 @@ public class RunMainController extends MainLayoutBasicController implements Gene @Override public void event(UserRequest ureq, Component source, Event event) { if(needsRebuildAfter) { - currentCourseNode = updateAfterChanges(currentCourseNode); + currentCourseNode = updateAfterChanges(currentCourseNode, currentCourseNode.getIdent()); needsRebuildAfter = false; } @@ -643,7 +656,7 @@ public class RunMainController extends MainLayoutBasicController implements Gene @Override public void event(UserRequest ureq, Controller source, Event event) { if(needsRebuildAfter) { - currentCourseNode = updateAfterChanges(currentCourseNode); + currentCourseNode = updateAfterChanges(currentCourseNode, currentCourseNode.getIdent()); needsRebuildAfter = false; } @@ -734,7 +747,7 @@ public class RunMainController extends MainLayoutBasicController implements Gene private void doAssessmentConfirmation(boolean confirmed) { nodeAccessService.onAssessmentConfirmed(getCurrentCourseNode(), getUce(), confirmed); - updateAfterChanges(getCurrentCourseNode()); + updateAfterChanges(getCurrentCourseNode(), luTree.getSelectedNodeId()); updateAssessmentConfirmUI(getCurrentCourseNode()); } diff --git a/src/main/java/org/olat/course/run/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/run/_i18n/LocalStrings_de.properties index 9575dd7198ef8e1638c490fd07087449483c57b4..33c5ff0a1c45244f35cd92bb761d308ad3250a55 100644 --- a/src/main/java/org/olat/course/run/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/run/_i18n/LocalStrings_de.properties @@ -1,8 +1,10 @@ #Mon Mar 02 09:54:04 CET 2009 command.access=Zugangskonfiguration command.assessment.done=Erledigt +command.assessment.done.alt=Klicke um die Lesebest\u00E4tigung zu widerrufen command.assessment.mode=Pr\u00FCfungsmodus -command.assessment.undone=Unerledigt +command.assessment.undone=Lesebest\u00E4tigung +command.assessment.undone.alt=Klicke um das Lesen der Seite zu best\u00E4tigen command.blog=Blog command.bookmark=Bookmark command.calendar=Kalender @@ -51,6 +53,7 @@ command.previous=Zur\u00FCck zur letzten Seite command.reminders=Erinnerung command.run=Kurs Laufzeitumgebung command.settings=Kursinfo \u00E4ndern +command.wiki=Wiki course.closed=Dieser Kurs wurde beendet und kann nicht mehr bearbeitet oder aktualisiert werden. course.disposed.command.restart=Den Kurs beenden und neu starten course.disposed.message=Bitte beenden Sie diesen Kurs und starten Sie ihn neu. @@ -74,6 +77,8 @@ msg.nodenotavailableanymore=Es haben sich Berechtigungen ver\u00E4ndert, so dass participants.in.course={0} Kursteilnehmer anwesend participants.in.course.desc=Anzahl Personen, die momentan diesen Kurs besuchen. warn.cannotactivatesinceintool=Es ist bereits ein anderes Kurswerkzeug desselben Kurses gestartet. Bitte schliessen Sie das aktivierte Kurswerkzeug, bevor Sie ein neues starten. +tools.convert.course.learning.path=$org.olat.course.nodeaccess.ui\:settings.convert +unsupported.course.nodes.title=$org.olat.course.nodeaccess.ui\:unsupported.course.nodes.title course.leave.confirm.hint=Wollen Sie wirklich aus diesem Kurs austreten? Sie verlieren damit die entsprechende Kurs- oder Gruppenmitgliedschaft und werden diesen Kurs in Zukunft nicht mehr betreten k\u00F6nnen. course.leave.entry=Kurs course.leave.acknowledge.msg=Mitgliedschaft beenden diff --git a/src/main/java/org/olat/course/run/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/run/_i18n/LocalStrings_en.properties index c81dbd89f868b50e226155fd01169c2ba61578a3..4808b18b5682b3c12fd75cf8d405b77e936166a4 100644 --- a/src/main/java/org/olat/course/run/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/run/_i18n/LocalStrings_en.properties @@ -1,8 +1,10 @@ #Tue Dec 16 09:04:43 CET 2014 command.access=Access configuration command.assessment.done=Done +command.assessment.done.alt=Click to undo the read confirmation command.assessment.mode=Assessment mode -command.assessment.undone=Undone +command.assessment.undone=Read confirmation +command.assessment.undone.alt=Click to confirm that you have read this page command.blog=Blog command.bookmark=Bookmark command.calendar=Calendar @@ -51,6 +53,7 @@ command.previous=Go to previous page command.reminders=Reminders command.run=Course runtime command.settings=Change course info +command.wiki=Wiki course.closed=This course is finished and can therefore no longer be edited or updated. course.disposed.command.restart=Close course and restart course.disposed.message=Please close this course and restart. @@ -74,6 +77,8 @@ msg.nodenotavailableanymore=Your access rights have been altered in the meantime participants.in.course={0} course participants present participants.in.course.desc=Number of course participants in this course warn.cannotactivatesinceintool=Another course tool of the same course is already active. Please deactivate this tool before starting a new one. +tools.convert.course.learning.path=$org.olat.course.nodeaccess.ui\:settings.convert +unsupported.course.nodes.title=$org.olat.course.nodeaccess.ui\:unsupported.course.nodes.title course.leave.confirm.hint=Do you really want to leave this course? This deletes your respective course or group membership, and you will not be able to access this course in the future. course.leave.entry=Course course.leave.acknowledge.msg=Delete membership diff --git a/src/main/java/org/olat/course/run/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/course/run/_i18n/LocalStrings_fr.properties index f5e20c80fa3c57036039e3daec4d41b415ef4e2f..72de4eae5e16b4b2089ae24894a32449774ceb38 100644 --- a/src/main/java/org/olat/course/run/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/course/run/_i18n/LocalStrings_fr.properties @@ -1,6 +1,9 @@ -#Sun Aug 27 16:08:10 CEST 2017 +#Wed Mar 04 07:24:39 CET 2020 command.access=Configuration d'acc\u00E8s +command.assessment.done=Termin\u00E9 command.assessment.mode=Mode d'\u00E9valuation +command.assessment.undone=Inachev\u00E9 +command.blog=Blog command.bookmark=Ajouter aux favoris command.calendar=Calendrier command.catalog=Entr\u00E9es au catalogue @@ -12,7 +15,10 @@ command.coursechatlog=Fichier log du chat command.courseconfig=Aper\u00E7u d\u00E9taill\u00E9 command.coursefolder=Dossier de stockage command.coursesearch=Recherche +command.documents=Documents command.efficiencystatement=Attestation de performance +command.email=Courriel +command.forum=Forum command.glossary=Glossaire command.glossary.off=d\u00E9sactiv\u00E9 command.glossary.off.alt=Ne pas afficher les termes du glossaire dans le contenu didactique @@ -20,6 +26,7 @@ command.glossary.on=activ\u00E9 command.glossary.on.alt=Afficher les termes du glossaire dans le contenu didactique command.glossary.open=Ouvrir le glossaire dans une fen\u00EAtre s\u00E9par\u00E9e command.layout=Disposition +command.learning.path=Parcours d'apprentissage command.lectures=Cours blocs command.next=Aller \u00E0 la page suivante command.openarchiver=Archivage des donn\u00E9es @@ -36,6 +43,8 @@ command.options=Options command.options.certificates=Attestation de performances command.options.lectures.admin=Cours blocs et absences command.options.reminders=Rappel +command.participant.info=Informations participants +command.participant.list=Liste des participants command.personalnote=Notes command.previous=Aller \u00E0 la page pr\u00E9c\u00E9dente command.reminders=Rappels diff --git a/src/main/java/org/olat/course/run/navigation/NavigationHandler.java b/src/main/java/org/olat/course/run/navigation/NavigationHandler.java index 376a2307c823b8fb25f8b861faaef6076ba456b6..d5368bf3906c801df6a35c52162b92b9bf2b71cb 100644 --- a/src/main/java/org/olat/course/run/navigation/NavigationHandler.java +++ b/src/main/java/org/olat/course/run/navigation/NavigationHandler.java @@ -68,6 +68,7 @@ import org.olat.course.nodes.CourseNode; import org.olat.course.nodes.CourseNodeFactory; import org.olat.course.nodes.STCourseNode; import org.olat.course.nodes.cp.CPRunController; +import org.olat.course.nodes.wiki.WikiRunController; import org.olat.course.run.userview.CourseTreeNode; import org.olat.course.run.userview.UserCourseEnvironment; import org.olat.course.run.userview.VisibilityFilter; @@ -187,8 +188,6 @@ public class NavigationHandler implements Disposable { } } else { // Use the subtreemodelhandler - Object userObject = selTN.getUserObject(); - NodeRunConstructionResult nrcr = null; CourseNode internCourseNode = null; GenericTreeModel subTreeModel; @@ -229,6 +228,9 @@ public class NavigationHandler implements Disposable { if(subtreemodelListener != currentNodeController) { if(subtreemodelListener instanceof CPRunController) { nrcr = ((CPRunController)subtreemodelListener).createNodeRunConstructionResult(ureq, selTN.getIdent()); + } else + if(subtreemodelListener instanceof WikiRunController) { + nrcr = ((WikiRunController)subtreemodelListener).createNodeRunConstructionResult(); } else { nrcr = new NodeRunConstructionResult((Controller)subtreemodelListener); } @@ -239,45 +241,35 @@ public class NavigationHandler implements Disposable { log.debug("delegating to handler: treeNodeId = " + treeNodeId); } - // Update the node and event to match the new tree model - unless we - // are already on the correct node to prevent jumping to other - // chapters in CP's when the href (userObject) is not unique and - // used in multiple nodes. - if (!userObject.equals(selTN.getUserObject())) { - selTN = subTreeModel.findNodeByUserObject(userObject); - } treeEvent = new TreeEvent(treeEvent.getCommand(), treeEvent.getSubCommand(), selTN.getIdent()); boolean dispatch = true; String selectedNodeId = null; - if(userObject instanceof String) { - String sObject = (String)userObject; - if(MenuTree.COMMAND_TREENODE_CLICKED.equals(treeEvent.getCommand()) && treeEvent.getSubCommand() == null) { - openCourseNodeIds.add(sObject); - selectedNodeId = selTN.getIdent(); - } else if(TreeEvent.COMMAND_TREENODE_OPEN.equals(treeEvent.getSubCommand())) { - openCourseNodeIds.add(sObject); - selectedNodeId = selTN.getIdent(); - dispatch = false; - } else if(TreeEvent.COMMAND_TREENODE_CLOSE.equals(treeEvent.getSubCommand())) { - removeChildrenFromOpenNodes(selTN); - openCourseNodeIds.remove(sObject); - openCourseNodeIds.remove(selTN.getIdent()); - dispatch = false; - } + if(MenuTree.COMMAND_TREENODE_CLICKED.equals(treeEvent.getCommand()) && treeEvent.getSubCommand() == null) { + openCourseNodeIds.add(selTN.getIdent()); + selectedNodeId = selTN.getIdent(); + } else if(TreeEvent.COMMAND_TREENODE_OPEN.equals(treeEvent.getSubCommand())) { + openCourseNodeIds.add(selTN.getIdent()); + selectedNodeId = selTN.getIdent(); + dispatch = false; + } else if(TreeEvent.COMMAND_TREENODE_CLOSE.equals(treeEvent.getSubCommand())) { + removeChildrenFromOpenNodes(selTN); + openCourseNodeIds.remove(selTN.getIdent()); + dispatch = false; } if(dispatch) { // null as controller source since we are not a controller subtreemodelListener.dispatchEvent(ureq, null, treeEvent); // no node construction result indicates handled + reattachExternalTreeModels(treeModel); } ncr = new NodeClickedRef(treeModel, true, selectedNodeId, openCourseNodeIds, internCourseNode, nrcr, true); } return ncr; } - public NodeClickedRef reloadTreeAfterChanges(CourseNode courseNode) { + public NodeClickedRef reloadTreeAfterChanges(CourseNode courseNode, String selectedNodeId) { GenericTreeModel treeModel = createTreeModel(); TreeNode treeNode = treeModel.getNodeById(courseNode.getIdent()); NodeClickedRef nclr = null; @@ -290,12 +282,10 @@ public class NavigationHandler implements Disposable { reattachExternalTreeModels(treeModel); } - selectedCourseNodeId = courseTreeNode.getCourseNode().getIdent(); - if(subtreemodelListener == null) { - nclr = new NodeClickedRef(treeModel, true, selectedCourseNodeId, openCourseNodeIds, courseTreeNode.getCourseNode(), null, false); + nclr = new NodeClickedRef(treeModel, true, selectedNodeId, openCourseNodeIds, courseTreeNode.getCourseNode(), null, false); } else { - nclr = new NodeClickedRef(treeModel, true, selectedCourseNodeId, openCourseNodeIds, courseTreeNode.getCourseNode(), null, true); + nclr = new NodeClickedRef(treeModel, true, selectedNodeId, openCourseNodeIds, courseTreeNode.getCourseNode(), null, true); } } return nclr; @@ -416,8 +406,8 @@ public class NavigationHandler implements Disposable { if(!newSelectedNodeId.equals(ncr.getSelectedTreeNodeId())) { if(ncr.getSelectedTreeNodeId() != null) { TreeNode selectedNode = subTreeModel.getNodeById(ncr.getSelectedTreeNodeId()); - if(selectedNode != null && selectedNode.getUserObject() instanceof String) { - openCourseNodeIds.add((String)selectedNode.getUserObject()); + if(selectedNode != null) { + openCourseNodeIds.add(selectedNode.getIdent()); } } } @@ -458,7 +448,7 @@ public class NavigationHandler implements Disposable { } } if (evaluateTree) { - treeModel = createTreeModel();; + treeModel = createTreeModel(); } if((TreeEvent.COMMAND_TREENODE_OPEN.equals(nodeSubCmd) || TreeEvent.COMMAND_TREENODE_CLOSE.equals(nodeSubCmd)) && @@ -490,7 +480,7 @@ public class NavigationHandler implements Disposable { return nodeAccessService.getCourseTreeModelBuilder(userCourseEnv).withFilter(filter).build(); } - private void reattachExternalTreeModels(GenericTreeModel courseTreeModel) { + private void reattachExternalTreeModels(TreeModel courseTreeModel) { if(externalTreeModels == null || externalTreeModels.isEmpty()) return; for(Map.Entry<String, SubTree> entry:externalTreeModels.entrySet()) { @@ -517,7 +507,6 @@ public class NavigationHandler implements Disposable { private void removeChildrenFromOpenNodes(TreeNode treeNode) { openCourseNodeIds.remove(treeNode.getIdent()); - openCourseNodeIds.remove(treeNode.getUserObject()); for(int i=treeNode.getChildCount(); i-->0; ) { removeChildrenFromOpenNodes((TreeNode)treeNode.getChildAt(i)); } @@ -568,12 +557,10 @@ public class NavigationHandler implements Disposable { private void addSubTreeModel(TreeNode parent, TreeModel modelToAppend) { // ignore root and directly add children. // need to clone children so that are not detached from their original - // parent (which is the cp treemodel) - // parent.addChild(modelToAppend.getRootNode()); + parent.removeAllChildren(); TreeNode root = modelToAppend.getRootNode(); int chdCnt = root.getChildCount(); - // full cloning of ETH webclass energie takes about 4/100 of a second for (int i = chdCnt; i > 0; i--) { INode chd = root.getChildAt(i-1); INode chdc = (INode) XStreamHelper.xstreamClone(chd); @@ -583,20 +570,6 @@ public class NavigationHandler implements Disposable { // always insert before already existing course building block children parent.insert(chdc, 0); } - - copyIdent(parent, root); - } - - private void copyIdent(TreeNode guiNode, TreeNode originalNode) { - if(guiNode instanceof GenericTreeNode) { - ((GenericTreeNode)guiNode).setIdent(originalNode.getIdent()); - } - - for (int i=originalNode.getChildCount(); i-->0; ) { - INode originalChild = originalNode.getChildAt(i); - INode guiChild = guiNode.getChildAt(i); - copyIdent((TreeNode)guiChild, (TreeNode)originalChild); - } } private static class SubTree { diff --git a/src/main/java/org/olat/course/run/scoring/AverageCompletionEvaluator.java b/src/main/java/org/olat/course/run/scoring/AverageCompletionEvaluator.java index 3a996d3c9332535f8250cc279c14db879054cd17..bd56c32895314ba5524088e0ea44db30c4a7047d 100644 --- a/src/main/java/org/olat/course/run/scoring/AverageCompletionEvaluator.java +++ b/src/main/java/org/olat/course/run/scoring/AverageCompletionEvaluator.java @@ -76,7 +76,9 @@ public class AverageCompletionEvaluator implements CompletionEvaluator { AssessmentConfig assessmentConfig = courseAssessmentService.getAssessmentConfig(child); int nodeCount = 0; double nodeCompletion = 0.0; - if (isFullyAssessed(assessmentEvaluation)) { + if (Mode.evaluated.equals(assessmentConfig.getCompletionMode())) { + continue; // do not count twice + } else if (isFullyAssessed(assessmentEvaluation)) { nodeCount = 1; nodeCompletion = 1.0; } else if (Mode.setByNode.equals(assessmentConfig.getCompletionMode())) { diff --git a/src/main/java/org/olat/group/BusinessGroupService.java b/src/main/java/org/olat/group/BusinessGroupService.java index 7f17aadf83243fd5a3140be6950823b7101c3bdf..8dbb063456d4f412e4271c6ddbb13b27816b5a42 100644 --- a/src/main/java/org/olat/group/BusinessGroupService.java +++ b/src/main/java/org/olat/group/BusinessGroupService.java @@ -373,9 +373,6 @@ public interface BusinessGroupService { public List<Identity> getMembers(List<BusinessGroup> businessGroups, String... roles); - public List<Identity> getMembersOf(RepositoryEntryRef entry, List<BusinessGroupRef> businesGroups, String role); - - public int countMembers(BusinessGroup businessGroup, String... roles); diff --git a/src/main/java/org/olat/group/manager/BusinessGroupMailing.java b/src/main/java/org/olat/group/manager/BusinessGroupMailing.java index 4168d1e3a48f8560fb5747aeae3bc817bfd1ebbf..f79ce1a9127cc13aa9336af0909700a238918461 100644 --- a/src/main/java/org/olat/group/manager/BusinessGroupMailing.java +++ b/src/main/java/org/olat/group/manager/BusinessGroupMailing.java @@ -193,6 +193,8 @@ public class BusinessGroupMailing { @Override public void putVariablesInMailContext(VelocityContext vContext, Identity recipient) { + fillContextWithStandardIdentityValues(vContext, recipient, null); + delegate.putVariablesInMailContext(vContext, recipient); if(StringHelper.containsNonWhitespace(infos.getCourseList())) { diff --git a/src/main/java/org/olat/group/manager/BusinessGroupServiceImpl.java b/src/main/java/org/olat/group/manager/BusinessGroupServiceImpl.java index e2e61f2afcf5dba2497ce795681171c101c78d68..679dbedc7b9bcdf8e1061aa4d1b881ddc6dadc9d 100644 --- a/src/main/java/org/olat/group/manager/BusinessGroupServiceImpl.java +++ b/src/main/java/org/olat/group/manager/BusinessGroupServiceImpl.java @@ -730,7 +730,7 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { Map<String,DeletableGroupData> deleteListeners = CoreSpringFactory.getBeansOfType(DeletableGroupData.class); for (DeletableGroupData deleteListener : deleteListeners.values()) { if(log.isDebugEnabled()) { - log.debug("deleteBusinessGroup: call deleteListener=" + deleteListener); + log.debug("deleteBusinessGroup: call deleteListener={}", deleteListener); } deleteListener.deleteGroupDataFor(group); } @@ -867,7 +867,8 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { if(reservation != null) { BusinessGroupMailing.sendEmail(ureqIdentity, identityToAdd, group, MailType.addCoach, mailing); // logging - log.info(Tracing.M_AUDIT, "Identity(.key):" + ureqIdentity.getKey() + " added identity '" + identityToAdd.getKey() + "' to group with key " + group.getKey()); + log.info(Tracing.M_AUDIT, "Identity(.key):{} added identity '{}' to group with key {}", + ureqIdentity.getKey(), identityToAdd.getKey(), group.getKey()); } } } else { @@ -890,7 +891,8 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { } // do logging ThreadLocalUserActivityLogger.log(GroupLoggingAction.GROUP_OWNER_ADDED, getClass(), LoggingResourceable.wrap(group), LoggingResourceable.wrap(identityToAdd)); - log.info(Tracing.M_AUDIT, "Identity(.key):" + ureqIdentity.getKey() + " added identity '" + identityToAdd.getKey() + "' to group with key " + group.getKey()); + log.info(Tracing.M_AUDIT, "Identity(.key):{} added identity '{}' to group with key {}", + ureqIdentity.getKey(), identityToAdd.getKey(), group.getKey()); } private boolean addParticipant(Identity ureqIdentity, Roles ureqRoles, Identity identityToAdd, BusinessGroup group, @@ -947,7 +949,8 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { } // do logging ThreadLocalUserActivityLogger.log(GroupLoggingAction.GROUP_PARTICIPANT_ADDED, getClass(), LoggingResourceable.wrap(group), LoggingResourceable.wrap(identityToAdd)); - log.info(Tracing.M_AUDIT, "Identity(.key):" + ureqIdentity.getKey() + " added identity '" + identityToAdd.getKey() + "' to group with key " + group.getKey()); + log.info(Tracing.M_AUDIT, "Identity(.key):{} added identity '{}' to group with key {}", + ureqIdentity.getKey(), identityToAdd.getKey(), group.getKey()); // send notification mail in your controller! } @@ -1020,7 +1023,8 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { } // do logging ThreadLocalUserActivityLogger.log(GroupLoggingAction.GROUP_PARTICIPANT_REMOVED, getClass(), LoggingResourceable.wrap(identity), LoggingResourceable.wrap(group)); - log.info(Tracing.M_AUDIT, "Identity(.key):" + ureqIdentity.getKey() + " removed identity '" + identity.getKey() + "' from group with key " + group.getKey()); + log.info(Tracing.M_AUDIT, "Identity(.key):{} removed identity '{}' from group with key {}", + ureqIdentity.getKey(), identity.getKey(), group.getKey()); // Check if a waiting-list with auto-close-ranks is configurated if ( group.getWaitingListEnabled().booleanValue() && group.getAutoCloseRanksEnabled().booleanValue() ) { // even when doOnlyPostRemovingStuff is set to true we really transfer the first Identity here @@ -1256,7 +1260,8 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { } // do logging ThreadLocalUserActivityLogger.log(GroupLoggingAction.GROUP_TO_WAITING_LIST_ADDED, getClass(), LoggingResourceable.wrap(identity)); - log.info(Tracing.M_AUDIT, "Identity(.key):" + ureqIdentity.getKey() + " added identity '" + identity.getKey() + "' to group with key " + group.getKey()); + log.info(Tracing.M_AUDIT, "Identity(.key):{} added identity '{}' to group with key {}", + ureqIdentity.getKey(), identity.getKey(), group.getKey()); // send mail BusinessGroupMailing.sendEmail(ureqIdentity, identity, group, MailType.addToWaitingList, mailing); } @@ -1300,7 +1305,8 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { } // do logging ThreadLocalUserActivityLogger.log(GroupLoggingAction.GROUP_FROM_WAITING_LIST_REMOVED, getClass(), LoggingResourceable.wrap(identity)); - log.info(Tracing.M_AUDIT, "Identity(.key):" + ureqIdentity.getKey() + " removed identity '" + identity.getKey() + "' from group with key " + group.getKey()); + log.info(Tracing.M_AUDIT, "Identity(.key):{} removed identity '{}' from group with key {}", + ureqIdentity.getKey(), identity.getKey(), group.getKey()); // send mail BusinessGroupMailing.sendEmail(ureqIdentity, identity, group, MailType.removeToWaitingList, mailing); } @@ -1365,7 +1371,7 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { MailPackage mailing) { final BusinessGroup reloadedGroup = businessGroupDAO.loadForUpdate(group); - log.info("doEnroll start: group=" + OresHelper.createStringRepresenting(group), identity.getKey().toString()); + log.info("doEnroll start: group={} for {}", OresHelper.createStringRepresenting(group), identity.getKey()); EnrollState enrollStatus = new EnrollState(); List<BusinessGroupModifiedEvent.Deferred> events = new ArrayList<>(); @@ -1375,15 +1381,14 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { if(reservation != null) { addParticipant(ureqIdentity, ureqRoles, identity, reloadedGroup, mailing, events); enrollStatus.setEnrolled(GroupRoles.participant); - log.info("doEnroll (reservation) - setIsEnrolled ", identity.getKey().toString()); - if(reservation != null) { - reservationDao.deleteReservation(reservation); - } + log.info("doEnroll (reservation) - setIsEnrolled {}", identity.getKey()); + reservationDao.deleteReservation(reservation); } else if (reloadedGroup.getMaxParticipants() != null) { int participantsCounter = businessGroupRelationDAO.countEnrollment(reloadedGroup); int reservations = reservationDao.countReservations(reloadedGroup.getResource()); - log.info("doEnroll - participantsCounter: " + participantsCounter + ", reservations: " + reservations + " maxParticipants: " + reloadedGroup.getMaxParticipants().intValue(), identity.getKey().toString()); + log.info("doEnroll - participantsCounter: {}, reservations: {} maxParticipants: {} for {}", + participantsCounter, reservations, reloadedGroup.getMaxParticipants(), identity.getKey()); if ((participantsCounter + reservations) >= reloadedGroup.getMaxParticipants().intValue()) { // already full, show error and updated choose page again if (reloadedGroup.getWaitingListEnabled().booleanValue()) { @@ -1398,7 +1403,7 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { //enough place addParticipant(ureqIdentity, ureqRoles, identity, reloadedGroup, mailing, events); enrollStatus.setEnrolled(GroupRoles.participant); - log.info("doEnroll - setIsEnrolled ", identity.getKey().toString()); + log.info("doEnroll - setIsEnrolled {}", identity.getKey()); } } else { log.debug("doEnroll as participant beginTransaction"); @@ -1409,7 +1414,7 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { dbInstance.commit(); BusinessGroupModifiedEvent.fireDeferredEvents(events); - log.info("doEnroll end", identity.getKey().toString()); + log.info("doEnroll end {}", identity.getKey()); return enrollStatus; } @@ -1491,7 +1496,8 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { } // do logging - log.info(Tracing.M_AUDIT, "Identity(.key):" + ureqIdentity.getKey() + " removed identiy '" + identityToRemove.getKey() + "' from group with key " + group.getKey()); + log.info(Tracing.M_AUDIT, "Identity(.key):{} removed identiy '{}' from group with key {}", + ureqIdentity.getKey(), identityToRemove.getKey(), group.getKey()); ThreadLocalUserActivityLogger.log(GroupLoggingAction.GROUP_OWNER_REMOVED, getClass(), LoggingResourceable.wrap(group), LoggingResourceable.wrap(identityToRemove)); } @@ -1711,13 +1717,6 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { } return ids; } - - @Override - public List<Identity> getMembersOf(RepositoryEntryRef entry, List<BusinessGroupRef> businesGroups, String role) { - // TODO Auto-generated method stub - return null; - } - @Override public int countMembers(BusinessGroup businessGroup, String... roles) { @@ -1731,7 +1730,7 @@ public class BusinessGroupServiceImpl implements BusinessGroupService { if(roles == null || roles.isEmpty() || (roles.size() == 1 && GroupRoles.waiting.name().equals(roles.get(0)))) { return false; } - return roles.size() > 0; + return !roles.isEmpty(); } @Override diff --git a/src/main/java/org/olat/group/ui/BGMailHelper.java b/src/main/java/org/olat/group/ui/BGMailHelper.java index 6886017bd39f06fd13df13010b66eb80839d07ae..c85e4d39b1a54d40025ad4c57fa6ddfe24179f32 100644 --- a/src/main/java/org/olat/group/ui/BGMailHelper.java +++ b/src/main/java/org/olat/group/ui/BGMailHelper.java @@ -231,13 +231,13 @@ public class BGMailHelper { } // create a mail template which all these data - MailTemplate mailTempl = new MailTemplate(subject, body, null) { + return new MailTemplate(subject, body, null) { @Override public void putVariablesInMailContext(VelocityContext context, Identity identity) { + fillContextWithStandardIdentityValues(context, identity, locale); + // Put user variables into velocity context User user = identity.getUser(); - context.put("firstname", user.getProperty(UserConstants.FIRSTNAME, null)); - context.put("lastname", user.getProperty(UserConstants.LASTNAME, null)); //the email of the user, needs to stay named 'login' context.put("login", user.getProperty(UserConstants.EMAIL, null)); // Put variables from greater context @@ -251,7 +251,6 @@ public class BGMailHelper { context.put("courselistempty", trans.translate("notification.mail.no.ressource", null)); } }; - return mailTempl; } public static BGMailTemplateInfos getTemplateInfos(BusinessGroupShort group, List<RepositoryEntryShort> repoEntries) { diff --git a/src/main/java/org/olat/group/ui/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/group/ui/_i18n/LocalStrings_ru.properties index afbffd2d8f73b5e00c341d44da7f9d065c98a06e..858dd4fccd81683cdfc082c78afac1b0eb1b7ebc 100644 --- a/src/main/java/org/olat/group/ui/_i18n/LocalStrings_ru.properties +++ b/src/main/java/org/olat/group/ui/_i18n/LocalStrings_ru.properties @@ -1,4 +1,4 @@ -#Thu Sep 03 11:24:41 CEST 2015 +#Mon Mar 02 07:32:12 CET 2020 LearningGroup=\u0413\u0440\u0443\u043F\u043F\u0430 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F action.choose=\u0412\u044B\u0431\u0440\u0430\u0442\u044C admin.menu.title=\u0413\u0440\u0443\u043F\u043F\u0430 @@ -33,7 +33,10 @@ create.form.error.illegalName=\u0417\u0430\u043F\u044F\u0442\u044B\u0435 \u0438 create.form.error.illegalNames=$\:create.form.error.illegalName . \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u0438\u043C\u0435\u043D\u0430 \u0433\u0440\u0443\u043F\u043F \u043E\u0448\u0438\u0431\u043E\u0447\u043D\u044B\: {0} create.form.error.nameTooLong=\u0418\u043C\u0435\u043D\u0430 \u0433\u0440\u0443\u043F\u043F \u043D\u0435 \u0434\u043E\u043B\u0436\u043D\u044B \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0442\u044C \u0434\u043B\u0438\u043D\u0443 {0} \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432 create.form.error.numberOrNull=\u0412\u0432\u043E\u0434\u0438\u0442\u044C \u0432 \u043F\u043E\u043B\u0435 \u0442\u043E\u043B\u044C\u043A\u043E \u0447\u0438\u0441\u043B\u0430, \u0435\u0441\u043B\u0438 \u0412\u044B \u0445\u043E\u0442\u0438\u0442\u0435 \u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C '\u0411\u0435\u0437 \u043E\u0433\u0440\u0430\u043D\u0438\u0447\u0435\u043D\u0438\u044F', \u0442\u043E \u043D\u0435 \u0437\u0430\u043F\u043E\u043B\u043D\u044F\u0439\u0442\u0435 \u043F\u043E\u043B\u0435 +create.form.externalid=\u0412\u043D\u0435\u0448\u043D\u0438\u0439 \u0438\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 create.form.groupcard=\u0412\u0438\u0437\u0438\u0442\u043D\u0430\u044F \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0430 +create.form.managedflags=\u0412\u043D\u0435\u0448\u043D\u0435 \u0443\u043F\u0440\u0430\u0432\u043B\u044F\u0435\u043C\u044B\u0435 \u043C\u043E\u0434\u0443\u043B\u0438 +create.form.managedflags.intro=\u042D\u0442\u0430 \u0433\u0440\u0443\u043F\u043F\u0430 \u0431\u044B\u043B\u0430 \u0441\u043E\u0437\u0434\u0430\u043D\u0430 \u0432\u043D\u0435\u0448\u043D\u0438\u043C \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u043C. \u041F\u043E\u044D\u0442\u043E\u043C\u0443 \u043D\u0435\u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0438 \u043C\u043E\u0434\u0443\u043B\u0438 \u043D\u0435 \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u044B \u0438 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u044B \u0432 OpenOlat. \u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B \u0437\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u043D\u044B \u0432 OpenOlat\: create.form.message.example.group=(\u041F\u0440\u0438\u043C\u0435\u0440\: \u041A\u0440\u0430\u0441\u043D\u044B\u0439, \u0417\u0435\u043B\u0435\u043D\u044B\u0439, \u0413\u043E\u043B\u0443\u0431\u043E\u0439) create.form.title=\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u043D\u043E\u0432\u0443\u044E \u0433\u0440\u0443\u043F\u043F\u0443 \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u044F create.form.title.bgname=\u0418\u043C\u044F \u0433\u0440\u0443\u043F\u043F\u044B @@ -42,6 +45,9 @@ create.form.title.description=\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 create.form.title.max=\u041F\u0440\u0435\u0434\u0443\u0441\u043C\u043E\u0442\u0440\u0435\u043D\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E <br> \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u0432 create.form.title.min=\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E <br> \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u0432 create.form.title.minmax.example=\u0415\u0441\u043B\u0438 \u0431\u0435\u0437 \u043E\u0433\u0440\u0430\u043D\u0438\u0447\u0435\u043D\u0438\u044F\: \u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043F\u0443\u0441\u0442\u044B\u043C +dedup.done=\u041E\u0447\u0438\u0441\u0442\u043A\u0430 \u043A\u0443\u0440\u0441\u0430 \u0438 \u0447\u043B\u0435\u043D\u043E\u0432 \u0433\u0440\u0443\u043F\u043F\u044B \u0431\u044B\u043B\u0430 \u0443\u0441\u043F\u0435\u0448\u043D\u043E \u043F\u0440\u0435\u043A\u0440\u0430\u0449\u0435\u043D\u0430 +dedup.members=\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u0432 \u043A\u0443\u0440\u0441\u0430 +dedup.members.desc=\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u043A\u043D\u043E\u043F\u043A\u0443 \u00AB$\: dedup.members\u00BB, \u0447\u0442\u043E\u0431\u044B \u043E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0441\u043F\u0438\u0441\u043E\u043A \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u0432 \u043A\u0443\u0440\u0441\u0430 \u0432\u043E \u0432\u0441\u0435\u0445 \u043A\u0443\u0440\u0441\u0430\u0445 \u044D\u0442\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u044B. \u042D\u0442\u043E \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u044F \u0434\u043B\u044F \u043E\u0447\u0438\u0441\u0442\u043A\u0438 \u043F\u043E\u0432\u0442\u043E\u0440\u044F\u044E\u0449\u0438\u0445\u0441\u044F \u043A\u0443\u0440\u0441\u043E\u0432 \u0438 \u0433\u0440\u0443\u043F\u043F\u043E\u0432\u043E\u0433\u043E \u0443\u0447\u0430\u0441\u0442\u0438\u044F \u0432 \u043A\u0443\u0440\u0441\u0430\u0445. default.context=\u0410\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438 \u0441\u043E\u0437\u0434\u0430\u043D\u043E \u0432 \u043A\u0443\u0440\u0441\u0435 error.group.name.exists=\u0422\u0430\u043A\u043E\u0435 \u0438\u043C\u044F \u0433\u0440\u0443\u043F\u043F\u044B \u0443\u0436\u0435 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442\u0441\u044F \u0432 \u044D\u0442\u043E\u043C \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442\u0435. \u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0440\u0443\u0433\u043E\u0435 \u0438\u043C\u044F, \u043F\u043E\u0436\u0430\u0439\u043B\u0443\u0441\u0442\u0430. fieldset.legend.groupowners=\u0420\u0443\u043A\u043E\u0432\u043E\u0434\u0438\u0442\u0435\u043B\u044C diff --git a/src/main/java/org/olat/group/ui/main/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/group/ui/main/_i18n/LocalStrings_fr.properties index 977a90c8beb23744199575433ce7e707baa05b06..3c8b670216ffe9719903d5fd153d74f0b3962e27 100644 --- a/src/main/java/org/olat/group/ui/main/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/group/ui/main/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Wed Oct 02 09:58:14 CEST 2019 +#Sun Mar 01 07:52:06 CET 2020 accept=Confirmer action=Action add.member=Ajouter un membre @@ -107,7 +107,7 @@ reservation.coach=comme coach role.curriculum.coach=Coach curses role.curriculum.owner=Propri\u00E9taire de cours (cursus) role.curriculum.participant=Participant cursus -role.group.participant=Participant au groupe +role.group.participant=Participant du groupe role.group.tutor=Coach du groupe role.group.waiting=Liste d'attente role.pending=En attente de confirmation @@ -142,6 +142,7 @@ table.config=Configurer table.delete=Effacer table.duplicate=Dupliquer table.email=Envoyer un courriel +table.empty=Aucun groupe n'a \u00E9t\u00E9 trouv\u00E9. table.header.ac=Souscrire table.header.ac.method=M\u00E9thode table.header.bgname=Nom diff --git a/src/main/java/org/olat/gui/control/OlatFooterController.java b/src/main/java/org/olat/gui/control/OlatFooterController.java index 057ccf6681a23863f0bbc2c2e9abfead60562e8d..29df761002fbeca04c4e6716ff4ed3e7e825c012 100644 --- a/src/main/java/org/olat/gui/control/OlatFooterController.java +++ b/src/main/java/org/olat/gui/control/OlatFooterController.java @@ -116,13 +116,11 @@ public class OlatFooterController extends BasicController implements LockableCon // Push information about user if (!isGuest && usess.isAuthenticated()) { olatFootervc.contextPut("loggedIn", Boolean.TRUE); - if(isInvitee) { - String fullName = CoreSpringFactory.getImpl(UserManager.class).getUserDisplayName(ureq.getIdentity()); - olatFootervc.contextPut("username", StringHelper.escapeHtml(fullName) + " " + translate("logged.in.invitee")); - } else { - String fullName = CoreSpringFactory.getImpl(UserManager.class).getUserDisplayName(ureq.getIdentity()); - olatFootervc.contextPut("username", StringHelper.escapeHtml(fullName)); + String fullName = StringHelper.escapeHtml(CoreSpringFactory.getImpl(UserManager.class).getUserDisplayName(ureq.getIdentity())); + if (isInvitee) { + fullName = fullName + " " + translate("logged.in.invitee"); } + olatFootervc.contextPut("username", fullName); } else { olatFootervc.contextPut("loggedIn", Boolean.FALSE); } diff --git a/src/main/java/org/olat/gui/demo/guidemo/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/gui/demo/guidemo/_i18n/LocalStrings_fr.properties index 738f9529b64db9e29e64cdda4364fa742adb1861..910e480445a4bdbf972ef97a393d1fb270c57654 100644 --- a/src/main/java/org/olat/gui/demo/guidemo/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/gui/demo/guidemo/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Mon Apr 16 21:37:50 CEST 2018 +#Sun Mar 01 08:27:54 CET 2020 ErrorDemoController.menu.title=Erreurs ErrorDemoController.menu.title.alt=D\u00E9montre le traitement des erreurs GuiDemoBreadCrumbController.button.add=Add another crumb @@ -25,6 +25,8 @@ GuiDemoLinksController.menu.title=Links & Buttons GuiDemoLinksController.menu.title.alt=all available links GuiDemoPanesController.menu.title=Panes GuiDemoPanesController.menu.title.alt=Panes management +GuiDemoProgressBarController.menu.title=Barre de progression +GuiDemoProgressBarController.menu.title.alt=Exemples d'options de rendu des barres de progression GuiDemoRESTController.menu.title=Int\u00E9gration REST et Javascript GuiDemoRESTController.menu.title.alt=Exemple d'int\u00E9gration de l'interface REST GuiDemoSoaController.menu.title=GUI SOA diff --git a/src/main/java/org/olat/home/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/home/_i18n/LocalStrings_fr.properties index b16a8c71086d1e37cf939732d16cc0024375a593..d6834efab3645ece11847f770c6648fa374bd33e 100644 --- a/src/main/java/org/olat/home/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/home/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Thu Sep 03 11:24:42 CEST 2015 +#Sun Mar 01 07:39:54 CET 2020 command.portal.back=Terminer configuration command.portal.edit=Configurer la page course.closed=Termin\u00E9 @@ -55,6 +55,7 @@ menu.portfolio.othermaps=Classeurs partag\u00E9s menu.portfolio.othermaps.alt=Classeurs partag\u00E9s par d'autres utilisateurs table.header.ac=$org.olat.repository\:table.header.ac table.header.mark=Favori +vfs.context.homes=$\:menu.bc warn.session.was.killed=Vous aviez ouvert OpenOlat d\u00E9j\u00E0 dans un autre navigateur. On ne peut pas entrer dans OpenOlat plusieurs fois en m\u00EAme temps. Votre session actuelle a \u00E9t\u00E9 termin\u00E9e. welcome.header=Bienvenue \u00E0 OpenOlat welcome.intro=<\!-- --> diff --git a/src/main/java/org/olat/ims/cp/ui/CPEditMainController.java b/src/main/java/org/olat/ims/cp/ui/CPEditMainController.java index 0ef50abc34b4d3694554d2b26abcf009a2b6b69e..8b61dc064ec7caac71dbe20ec5f3dc8804ec620a 100644 --- a/src/main/java/org/olat/ims/cp/ui/CPEditMainController.java +++ b/src/main/java/org/olat/ims/cp/ui/CPEditMainController.java @@ -45,7 +45,10 @@ import org.olat.core.util.coordinate.LockResult; import org.olat.core.util.vfs.VFSContainer; import org.olat.ims.cp.CPManager; import org.olat.ims.cp.ContentPackage; +import org.olat.modules.cp.CPAssessmentProvider; import org.olat.modules.cp.CPUIFactory; +import org.olat.modules.cp.PersistingAssessmentProvider; +import org.olat.repository.RepositoryEntry; import org.olat.repository.ui.RepositoryEntryRuntimeController.ToolbarAware; import org.springframework.beans.factory.annotation.Autowired; @@ -65,9 +68,10 @@ public class CPEditMainController extends BasicController implements ToolbarAwar private CPManager cpManager; public CPEditMainController(UserRequest ureq, WindowControl wControl, TooledStackedPanel toolbar, - VFSContainer cpContainer, OLATResourceable ores) { + VFSContainer cpContainer, RepositoryEntry cpEntry) { super(ureq, wControl); this.stackPanel = toolbar; + OLATResourceable ores = cpEntry.getOlatResource(); // acquire lock for resource lock = CoordinatorManager.getInstance().getCoordinator().getLocker().acquireLock(ores, ureq.getIdentity(), null); @@ -103,8 +107,10 @@ public class CPEditMainController extends BasicController implements ToolbarAwar } } else { showInfo("contentcontroller.no.lock"); + + CPAssessmentProvider cpAssessmentProvider = PersistingAssessmentProvider.create(cpEntry, getIdentity()); Controller cpCtr = CPUIFactory.getInstance() - .createMainLayoutController(ureq, wControl, cpContainer, true, deliveryOptions); + .createMainLayoutController(ureq, wControl, cpContainer, true, deliveryOptions, cpAssessmentProvider); putInitialPanel(cpCtr.getInitialComponent()); } } else { diff --git a/src/main/java/org/olat/ims/qti21/QTI21Service.java b/src/main/java/org/olat/ims/qti21/QTI21Service.java index b951c29fed082fb237513b26008973cc20f225fd..a5c6ba23d8de5405fddbd9ec81e176cfc23c65c2 100644 --- a/src/main/java/org/olat/ims/qti21/QTI21Service.java +++ b/src/main/java/org/olat/ims/qti21/QTI21Service.java @@ -490,5 +490,16 @@ public interface QTI21Service { public File importFileSubmission(AssessmentTestSession candidateSession, MultipartFileInfos multipartFile); public File importFileSubmission(AssessmentTestSession candidateSession, String filename, byte[] data); + + /** + * Returns the sum of the correction time set in metadata of the test. Only + * the items proposed to the assessed user are counted (with or without response + * of him). + * + * @param testEntry The reference / test entry + * @param candidateSession The test session + * @return A number of seconds, 0 if nothing found + */ + public Long getMetadataCorrectionTimeInSeconds(RepositoryEntry testEntry, AssessmentTestSession candidateSession); } diff --git a/src/main/java/org/olat/ims/qti21/manager/QTI21ServiceImpl.java b/src/main/java/org/olat/ims/qti21/manager/QTI21ServiceImpl.java index c70e7bc2567e7c7f42df701417a5aa297eac036a..eb8be2efcba3ad9df2fba748aa98910ce8d0df79 100644 --- a/src/main/java/org/olat/ims/qti21/manager/QTI21ServiceImpl.java +++ b/src/main/java/org/olat/ims/qti21/manager/QTI21ServiceImpl.java @@ -50,6 +50,7 @@ import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.apache.commons.io.IOUtils; +import org.apache.logging.log4j.Logger; import org.olat.basesecurity.IdentityRef; import org.olat.core.commons.persistence.DB; import org.olat.core.gui.components.form.flexible.impl.MultipartFileInfos; @@ -59,7 +60,6 @@ import org.olat.core.id.OLATResourceable; import org.olat.core.id.Persistable; import org.olat.core.id.User; import org.olat.core.logging.OLATRuntimeException; -import org.apache.logging.log4j.Logger; import org.olat.core.logging.Tracing; import org.olat.core.util.FileUtils; import org.olat.core.util.Formatter; @@ -104,6 +104,8 @@ import org.olat.ims.qti21.model.audit.CandidateEvent; import org.olat.ims.qti21.model.audit.CandidateItemEventType; import org.olat.ims.qti21.model.audit.CandidateTestEventType; import org.olat.ims.qti21.model.jpa.AssessmentTestSessionStatistics; +import org.olat.ims.qti21.model.xml.ManifestBuilder; +import org.olat.ims.qti21.model.xml.ManifestMetadataBuilder; import org.olat.ims.qti21.ui.event.RetrieveAssessmentTestSessionEvent; import org.olat.modules.assessment.AssessmentEntry; import org.olat.modules.assessment.manager.AssessmentEntryDAO; @@ -131,6 +133,9 @@ import uk.ac.ed.ph.jqtiplus.node.result.AssessmentResult; import uk.ac.ed.ph.jqtiplus.node.result.ItemResult; import uk.ac.ed.ph.jqtiplus.node.result.ItemVariable; import uk.ac.ed.ph.jqtiplus.node.result.OutcomeVariable; +import uk.ac.ed.ph.jqtiplus.node.test.AbstractPart; +import uk.ac.ed.ph.jqtiplus.node.test.AssessmentItemRef; +import uk.ac.ed.ph.jqtiplus.node.test.AssessmentTest; import uk.ac.ed.ph.jqtiplus.notification.NotificationRecorder; import uk.ac.ed.ph.jqtiplus.reading.AssessmentObjectXmlLoader; import uk.ac.ed.ph.jqtiplus.reading.QtiObjectReadResult; @@ -1233,7 +1238,7 @@ public class QTI21ServiceImpl implements QTI21Service, UserDataDeletable, Initia private void recordOutcomeVariable(AssessmentTestSession candidateSession, OutcomeVariable outcomeVariable, Map<Identifier,String> outcomes) { if(outcomeVariable.getCardinality() == null) { - log.error("Error outcome variable without cardinlaity: " + outcomeVariable); + log.error("Error outcome variable without cardinlaity: {}", outcomeVariable); return; } @@ -1256,8 +1261,8 @@ public class QTI21ServiceImpl implements QTI21Service, UserDataDeletable, Initia outcomes.put(identifier, stringifyQtiValue(computedValue)); } catch (Exception e) { - log.error("Error recording outcome variable: " + identifier, e); - log.error("Error recording outcome variable: " + outcomeVariable); + log.error("Error recording outcome variable: {}", identifier, e); + log.error("Error recording outcome variable: {}", outcomeVariable); } } @@ -1507,4 +1512,39 @@ public class QTI21ServiceImpl implements QTI21Service, UserDataDeletable, Initia return null; } } + + @Override + public Long getMetadataCorrectionTimeInSeconds(RepositoryEntry testEntry, AssessmentTestSession candidateSession) { + long timeInMinutes = 0l; + + File unzippedDirRoot = FileResourceManager.getInstance().unzipFileResource(testEntry.getOlatResource()); + ManifestBuilder manifestBuilder = ManifestBuilder.read(new File(unzippedDirRoot, "imsmanifest.xml")); + TestSessionState testSessionStates = loadTestSessionState(candidateSession); + ResolvedAssessmentTest resolvedObject = loadAndResolveAssessmentTest(unzippedDirRoot, false, false); + + if(testSessionStates != null && resolvedObject.getTestLookup() != null) { + AssessmentTest assessmentTest = resolvedObject.getTestLookup().extractAssumingSuccessful(); + List<TestPlanNode> testPlanNodes = testSessionStates.getTestPlan().getTestPlanNodeList(); + for(TestPlanNode testPlanNode:testPlanNodes) { + TestNodeType testNodeType = testPlanNode.getTestNodeType(); + TestPlanNodeKey testPlanNodeKey = testPlanNode.getKey(); + if(testNodeType == TestNodeType.ASSESSMENT_ITEM_REF) { + Identifier identifier = testPlanNodeKey.getIdentifier(); + AbstractPart partRef = assessmentTest.lookupFirstDescendant(identifier); + if(partRef instanceof AssessmentItemRef && ((AssessmentItemRef)partRef).getHref() != null) { + AssessmentItemRef itemRef = (AssessmentItemRef)partRef; + ManifestMetadataBuilder itemMetadata = manifestBuilder.getResourceBuilderByHref(itemRef.getHref().toString()); + if(itemMetadata != null) { + Integer correctionTime = itemMetadata.getOpenOLATMetadataCorrectionTime(); + if(correctionTime != null && correctionTime.intValue() > 0) { + timeInMinutes += correctionTime.longValue(); + } + } + } + } + } + } + + return Long.valueOf(timeInMinutes * 60l); + } } diff --git a/src/main/java/org/olat/ims/qti21/pool/QTI21ExportProcessor.java b/src/main/java/org/olat/ims/qti21/pool/QTI21ExportProcessor.java index 08f5c5d6beb57105e9c0ee94aeb1834d57be30fe..fce4ef6f6ddfe2295188454f035875f77d2705a8 100644 --- a/src/main/java/org/olat/ims/qti21/pool/QTI21ExportProcessor.java +++ b/src/main/java/org/olat/ims/qti21/pool/QTI21ExportProcessor.java @@ -22,6 +22,7 @@ package org.olat.ims.qti21.pool; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; +import java.io.OutputStream; import java.net.URI; import java.net.URISyntaxException; import java.nio.file.FileVisitResult; @@ -29,8 +30,10 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.SimpleFileVisitor; import java.nio.file.attribute.BasicFileAttributes; +import java.util.HashMap; import java.util.List; import java.util.Locale; +import java.util.Map; import java.util.concurrent.atomic.DoubleAdder; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; @@ -60,6 +63,7 @@ import org.olat.modules.qpool.manager.QPoolFileStorage; import uk.ac.ed.ph.jqtiplus.node.item.AssessmentItem; import uk.ac.ed.ph.jqtiplus.node.test.AssessmentSection; import uk.ac.ed.ph.jqtiplus.node.test.AssessmentTest; +import uk.ac.ed.ph.jqtiplus.node.test.TestPart; import uk.ac.ed.ph.jqtiplus.resolution.ResolvedAssessmentItem; import uk.ac.ed.ph.jqtiplus.serialization.QtiSerializer; @@ -104,9 +108,9 @@ public class QTI21ExportProcessor { .loadAndResolveAssessmentItemForCopy(assessmentItemUri, rootDirectory); enrichWithMetadata(qitem, resolvedAssessmentItem, manifestBuilder); - try { + try(OutputStream out = new ShieldOutputStream(zout)) { zout.putNextEntry(new ZipEntry(rootDir + "/imsmanifest.xml")); - manifestBuilder.write(new ShieldOutputStream(zout)); + manifestBuilder.write(out); zout.closeEntry(); } catch (Exception e) { log.error("", e); @@ -180,7 +184,7 @@ public class QTI21ExportProcessor { metadataBuilder.appendMetadataFrom(qitem, resolvedAssessmentItem, locale); } - public void assembleTest(String title, List<QuestionItemFull> fullItems, File directory) { + public void assembleTest(String title, List<QuestionItemFull> fullItems, boolean groupByTaxonomyLevel, File directory) { try { QtiSerializer qtiSerializer = qtiService.qtiSerializer(); //imsmanifest @@ -200,7 +204,9 @@ public class QTI21ExportProcessor { manifest.appendAssessmentTest(assessmentTestFilename); //make a section - AssessmentSection section = assessmentTest.getTestParts().get(0).getAssessmentSections().get(0); + final TestPart testPart = assessmentTest.getTestParts().get(0); + AssessmentSection defaultSection = testPart.getAssessmentSections().get(0); + Map<String,AssessmentSection> sectionByTitles = new HashMap<>(); //assessment items for(QuestionItemFull qitem:fullItems) { @@ -217,6 +223,12 @@ public class QTI21ExportProcessor { File newItemFile = new File(containerDir, assessmentItem.getIdentifier() + ".xml"); String newItemFilename = container + "/" + newItemFile.getName(); qtiService.persistAssessmentObject(newItemFile, assessmentItem); + + AssessmentSection section = defaultSection; + if(groupByTaxonomyLevel && StringHelper.containsNonWhitespace(qitem.getTaxonomyLevelName())) { + section = sectionByTitles.computeIfAbsent(qitem.getTaxonomyLevelName(), level + -> AssessmentTestFactory.appendAssessmentSection(level, testPart)); + } AssessmentTestFactory.appendAssessmentItem(section, newItemFilename); manifest.appendAssessmentItem(newItemFilename); @@ -242,6 +254,10 @@ public class QTI21ExportProcessor { } } + if(defaultSection.getSectionParts().isEmpty()) { + testPart.getChildAbstractParts().remove(defaultSection); + } + AssessmentTestBuilder assessmentTestBuilder = new AssessmentTestBuilder(assessmentTest); double sumMaxScore = atomicMaxScore.sum(); if(sumMaxScore > 0.0d) { @@ -263,7 +279,6 @@ public class QTI21ExportProcessor { public void assembleTest(List<QuestionItemFull> fullItems, ZipOutputStream zout) { try { - QtiSerializer qtiSerializer = qtiService.qtiSerializer(); //imsmanifest ManifestBuilder manifest = ManifestBuilder.createAssessmentTestBuilder(); @@ -310,14 +325,31 @@ public class QTI21ExportProcessor { } zout.putNextEntry(new ZipEntry(assessmentTestFilename)); - qtiSerializer.serializeJqtiObject(assessmentTest, new ShieldOutputStream(zout)); + serializeAssessmentTest(assessmentTest, zout); zout.closeEntry(); zout.putNextEntry(new ZipEntry("imsmanifest.xml")); - manifest.write(new ShieldOutputStream(zout)); + writeManifest(manifest, zout); zout.closeEntry(); } catch (IOException | URISyntaxException e) { log.error("", e); } } + + private void writeManifest(ManifestBuilder manifest, ZipOutputStream zout) { + try(OutputStream out = new ShieldOutputStream(zout)) { + manifest.write(out); + } catch(IOException e) { + log.error("Cannot write manifest", e); + } + } + + private void serializeAssessmentTest(AssessmentTest assessmentTest, ZipOutputStream zout) { + try(OutputStream out = new ShieldOutputStream(zout)) { + QtiSerializer qtiSerializer = qtiService.qtiSerializer(); + qtiSerializer.serializeJqtiObject(assessmentTest, out); + } catch(IOException e) { + log.error("Cannot write manifest", e); + } + } } diff --git a/src/main/java/org/olat/ims/qti21/pool/QTI21QPoolServiceProvider.java b/src/main/java/org/olat/ims/qti21/pool/QTI21QPoolServiceProvider.java index eaab55e620207ee11d57794bcafc3b7fb24e8971..5cc21534b8e8acf535a06976940d2c800f809465 100644 --- a/src/main/java/org/olat/ims/qti21/pool/QTI21QPoolServiceProvider.java +++ b/src/main/java/org/olat/ims/qti21/pool/QTI21QPoolServiceProvider.java @@ -482,10 +482,10 @@ public class QTI21QPoolServiceProvider implements QPoolSPI { * @param items The list of questions to export * @param locale The language */ - public void exportToEditorPackage(String testTitle, File exportDir, List<QuestionItemShort> items, Locale locale) { + public void exportToEditorPackage(String testTitle, File exportDir, List<QuestionItemShort> items, boolean groupByTaxonomyLevel, Locale locale) { List<QuestionItemFull> fullItems = loadQuestionFullItems(items); QTI21ExportProcessor processor = new QTI21ExportProcessor(qtiService, qpoolFileStorage, locale); - processor.assembleTest(testTitle, fullItems, exportDir); + processor.assembleTest(testTitle, fullItems, groupByTaxonomyLevel, exportDir); } private List<QuestionItemFull> loadQuestionFullItems(List<QuestionItemShort> items) { diff --git a/src/main/java/org/olat/ims/qti21/repository/handlers/QTI21AssessmentTestHandler.java b/src/main/java/org/olat/ims/qti21/repository/handlers/QTI21AssessmentTestHandler.java index 5165706b610794e21b578cccc07c4cc21ef2664d..d5657989d2fe6b4ba9e8f479516ea242a6f90a04 100644 --- a/src/main/java/org/olat/ims/qti21/repository/handlers/QTI21AssessmentTestHandler.java +++ b/src/main/java/org/olat/ims/qti21/repository/handlers/QTI21AssessmentTestHandler.java @@ -167,7 +167,8 @@ public class QTI21AssessmentTestHandler extends FileHandler { } if(createObject instanceof QItemList) { QItemList itemToImport = (QItemList)createObject; - qpoolServiceProvider.exportToEditorPackage(displayname, repositoryDir, itemToImport.getItems(), locale); + qpoolServiceProvider.exportToEditorPackage(displayname, repositoryDir, + itemToImport.getItems(), itemToImport.isGroupByTaxonomyLevel(), locale); } else if(createObject instanceof QTIEditorPackage) { QTIEditorPackage testToConvert = (QTIEditorPackage)createObject; QTI21DeliveryOptions options = qtiService.getDeliveryOptions(re); diff --git a/src/main/java/org/olat/ims/qti21/ui/AssessmentTestDisplayController.java b/src/main/java/org/olat/ims/qti21/ui/AssessmentTestDisplayController.java index 63161ebc8b637a4c8d33ad2f72d06efaaf2c2f46..68aaff92be9304c5a35ffde9c4cacc01a52faceb 100644 --- a/src/main/java/org/olat/ims/qti21/ui/AssessmentTestDisplayController.java +++ b/src/main/java/org/olat/ims/qti21/ui/AssessmentTestDisplayController.java @@ -282,7 +282,6 @@ public class AssessmentTestDisplayController extends BasicController implements .createOLATResourceableInstance(AssessmentTestSession.class, candidateSession.getKey()); CoordinatorManager.getInstance().getCoordinator().getEventBus().registerFor(this, getIdentity(), sessionOres); } - mainPanel = putInitialPanel(mainVC); } diff --git a/src/main/java/org/olat/ims/qti21/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/ims/qti21/ui/_i18n/LocalStrings_fr.properties index b516580424dc9be968c06abf825f4c0c5a9d3ae2..e94b143843ed1edaa5c28a34e681e33d4e7a7d46 100644 --- a/src/main/java/org/olat/ims/qti21/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/ims/qti21/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Mon Jun 24 21:09:26 CEST 2019 +#Sun Mar 01 07:52:32 CET 2020 actualPoints=$org.olat.modules.iq\:actualPoints admin.menu.title=QTI 2.1 admin.menu.title.alt=Configuration QTI 2.1 @@ -64,6 +64,7 @@ attemptsleft=$org.olat.modules.iq\:attemptsleft back.item=Pr\u00E9c\u00E9dent cancel=Cancel cancel.test=$org.olat.modules.iq\:cancelAssess +command.grading=Correction command.openassessment=Outil d'\u00E9valuation command.openteststatistic=Statistique des tests confirm.advance.testpart.text=Voulez-vous quitter cette partie du test et commencer la suivante? diff --git a/src/main/java/org/olat/modules/assessment/manager/AssessmentEntryDAO.java b/src/main/java/org/olat/modules/assessment/manager/AssessmentEntryDAO.java index 088a9510add67b1d5444f8e2461a01aeeabf4902..c5392972bda4e3c719636f4988f68a56e20ad90c 100644 --- a/src/main/java/org/olat/modules/assessment/manager/AssessmentEntryDAO.java +++ b/src/main/java/org/olat/modules/assessment/manager/AssessmentEntryDAO.java @@ -215,7 +215,7 @@ public class AssessmentEntryDAO { impl.setObligation(obligation.getCurrent()); impl.setObligationOriginal(obligation.getOriginal()); impl.setObligationModIdentity(obligation.getModBy()); - impl.setObligationModDate(obligation.getModDate());; + impl.setObligationModDate(obligation.getModDate()); } return dbInstance.getCurrentEntityManager().merge(nodeAssessment); diff --git a/src/main/java/org/olat/modules/assessment/model/AssessmentEntryImpl.java b/src/main/java/org/olat/modules/assessment/model/AssessmentEntryImpl.java index dd76c7b06a15b0ccb55ebe80ff3df36b63869c34..bf532ee61ef821311a82cd000c96d71f309a09e3 100644 --- a/src/main/java/org/olat/modules/assessment/model/AssessmentEntryImpl.java +++ b/src/main/java/org/olat/modules/assessment/model/AssessmentEntryImpl.java @@ -33,7 +33,6 @@ import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; -import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; import javax.persistence.Temporal; @@ -58,12 +57,10 @@ import org.olat.repository.RepositoryEntry; */ @Entity(name="assessmententry") @Table(name="o_as_entry") -@NamedQueries({ - @NamedQuery(name="loadAssessmentEntryById", - query="select data from assessmententry data where data.key=:key"), - @NamedQuery(name="loadAssessmentEntryByRepositoryEntryAndSubIdent", - query="select data from assessmententry data where data.repositoryEntry.key=:repositoryEntryKey and data.subIdent=:subIdent") -}) +@NamedQuery(name="loadAssessmentEntryById", + query="select data from assessmententry data where data.key=:key") +@NamedQuery(name="loadAssessmentEntryByRepositoryEntryAndSubIdent", + query="select data from assessmententry data where data.repositoryEntry.key=:repositoryEntryKey and data.subIdent=:subIdent") public class AssessmentEntryImpl implements Persistable, ModifiedInfo, CreateInfo, AssessmentEntry { private static final long serialVersionUID = 2934783777645549412L; diff --git a/src/main/java/org/olat/modules/assessment/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/modules/assessment/ui/_i18n/LocalStrings_de.properties index 1a10b826fab6049a8ef073f32cc65251759dd153..b3e286af9da98ff8dc4cfc929ff4b59e559c8d27 100644 --- a/src/main/java/org/olat/modules/assessment/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/modules/assessment/ui/_i18n/LocalStrings_de.properties @@ -39,7 +39,7 @@ table.header.numOfOtherUsers=Anzahl nicht-registrierter Benutzer table.header.numOfParticipants=Anzahl registrierter Teilnehmer table.header.numOfPassed=Bestanden table.header.passed=Bestanden -table.header.score=Score +table.header.score=Punkte table.header.scoreAverage=Durchschnitt table.header.tools=<i class\='o_icon o_icon_actions o_icon-lg'> </i> users=Benutzer diff --git a/src/main/java/org/olat/modules/assessment/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/assessment/ui/_i18n/LocalStrings_fr.properties index 5d8f134f0fa4b0d423ccd1d204cf9e824343f64f..d8647418b28415146a5893ab882ef889c67bbe6e 100644 --- a/src/main/java/org/olat/modules/assessment/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/modules/assessment/ui/_i18n/LocalStrings_fr.properties @@ -1,7 +1,8 @@ -#Thu Feb 01 18:26:00 CET 2018 +#Sun Mar 01 08:02:22 CET 2020 assessment.status.done=Evalu\u00E9 assessment.status.inProgress=D\u00E9marr\u00E9 assessment.status.inReview=A passer en revue +assessment.status.notReady=Pas pr\u00EAt assessment.status.notStart=Pas d\u00E9marr\u00E9 assessment.tool.assessable.items=Liste des \u00E9l\u00E9ments \u00E0 \u00E9valuer assessment.tool.numOfAssessedGroups={0} groupe(s) @@ -21,7 +22,9 @@ filter.inProgress=D\u00E9marr\u00E9 filter.inReview=A passer en revue filter.otherUsers=Tous les utilisateurs (inclus propri\u00E9taires and coach) filter.passed=R\u00E9ussi +fully.assessed=Termin\u00E9 index.introduction=Evaluez les participants de ce test avec l'outil d'\u00E9valuation. Il vous permettra d'acc\u00E9der aux r\u00E9sultats des tests et de les modifier. +learning.progress=Progr\u00E8s reopen=R\u00E9ouvrir review=Passer en revue run.ended=Termin\u00E9 @@ -37,6 +40,7 @@ table.header.numOfOtherUsers=\# autres utilisateurs table.header.numOfParticipants=\# participants table.header.numOfPassed=R\u00E9ussi table.header.passed=R\u00E9ussi +table.header.score=Points table.header.scoreAverage=Moyenne table.header.tools=<i class\='o_icon o_icon_actions o_icon-lg'> </i> users=Utilisateurs diff --git a/src/main/java/org/olat/modules/ceditor/ui/AddElementInfos.java b/src/main/java/org/olat/modules/ceditor/ui/AddElementInfos.java index 161bfb8df79022bec3b8cee279d86d98955fff37..fd434bd4f475aebc48e2df89917de65172de806d 100644 --- a/src/main/java/org/olat/modules/ceditor/ui/AddElementInfos.java +++ b/src/main/java/org/olat/modules/ceditor/ui/AddElementInfos.java @@ -20,6 +20,7 @@ package org.olat.modules.ceditor.ui; import org.olat.modules.ceditor.PageElementHandler; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; import org.olat.modules.ceditor.ui.model.EditorFragment; /** @@ -34,12 +35,22 @@ public class AddElementInfos { private final PageElementTarget target; private final PageElementHandler handler; private final EditorFragment referenceFragment; + private final ContentEditorFragment referenceEditorFragment; public AddElementInfos(EditorFragment referenceFragment, PageElementHandler handler, PageElementTarget target, int column) { this.target = target; this.handler = handler; this.column = column; this.referenceFragment = referenceFragment; + referenceEditorFragment = null; + } + + public AddElementInfos(ContentEditorFragment component, PageElementHandler handler, PageElementTarget target, int column) { + this.target = target; + this.handler = handler; + this.column = column; + this.referenceFragment = null; + referenceEditorFragment = component; } public int getColumn() { @@ -57,4 +68,8 @@ public class AddElementInfos { public EditorFragment getReferenceFragment() { return referenceFragment; } + + public ContentEditorFragment getReferenceComponent() { + return referenceEditorFragment; + } } diff --git a/src/main/java/org/olat/modules/ceditor/ui/AddElementsController.java b/src/main/java/org/olat/modules/ceditor/ui/AddElementsController.java index 7e2976da72ea4f2f6a122545ad78502aa0edd5bc..5bbb94ecd7d905c18576a606688805602b12c77f 100644 --- a/src/main/java/org/olat/modules/ceditor/ui/AddElementsController.java +++ b/src/main/java/org/olat/modules/ceditor/ui/AddElementsController.java @@ -36,6 +36,7 @@ import org.olat.modules.ceditor.PageEditorProvider; import org.olat.modules.ceditor.PageElementCategory; import org.olat.modules.ceditor.PageElementHandler; import org.olat.modules.ceditor.SimpleAddPageElementHandler; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; import org.olat.modules.ceditor.ui.event.AddElementEvent; import org.olat.modules.ceditor.ui.model.EditorFragment; @@ -50,12 +51,24 @@ public class AddElementsController extends BasicController { private final int containerColumn; private final PageElementTarget target; private final EditorFragment referenceFragment; + private final ContentEditorFragment referenceComponent; + + public AddElementsController(UserRequest ureq, WindowControl wControl, PageEditorProvider provider, + PageElementTarget target, Translator fallbackTranslator) { + super(ureq, wControl, fallbackTranslator); + this.target = target; + containerColumn = -1; + referenceFragment = null; + referenceComponent = null; + initContainer(provider); + } public AddElementsController(UserRequest ureq, WindowControl wControl, PageEditorProvider provider, EditorFragment referenceFragment, PageElementTarget target, Translator fallbackTranslator) { super(ureq, wControl, fallbackTranslator); this.target = target; containerColumn = -1; + referenceComponent = null; this.referenceFragment = referenceFragment; initContainer(provider); } @@ -64,11 +77,32 @@ public class AddElementsController extends BasicController { EditorFragment referenceFragment, PageElementTarget target, int containerColumn, Translator fallbackTranslator) { super(ureq, wControl, fallbackTranslator); this.target = target; + referenceComponent = null; this.containerColumn = containerColumn; this.referenceFragment = referenceFragment; initContainer(provider); } + public AddElementsController(UserRequest ureq, WindowControl wControl, PageEditorProvider provider, + ContentEditorFragment referenceComponent, PageElementTarget target, Translator fallbackTranslator) { + super(ureq, wControl, fallbackTranslator); + this.target = target; + containerColumn = -1; + referenceFragment = null; + this.referenceComponent = referenceComponent; + initContainer(provider); + } + + public AddElementsController(UserRequest ureq, WindowControl wControl, PageEditorProvider provider, + ContentEditorFragment referenceComponent, PageElementTarget target, int containerColumn, Translator fallbackTranslator) { + super(ureq, wControl, fallbackTranslator); + this.target = target; + referenceFragment = null; + this.containerColumn = containerColumn; + this.referenceComponent = referenceComponent; + initContainer(provider); + } + private void initContainer(PageEditorProvider provider) { VelocityContainer mainVC = createVelocityContainer("add_elements"); @@ -109,7 +143,7 @@ public class AddElementsController extends BasicController { Link link = (Link)source; if("add.elements".equals(link.getCommand())) { PageElementHandler handler = (PageElementHandler)link.getUserObject(); - fireEvent(ureq, new AddElementEvent(referenceFragment, handler, target, containerColumn)); + fireEvent(ureq, new AddElementEvent(referenceFragment, referenceComponent, handler, target, containerColumn)); } } } diff --git a/src/main/java/org/olat/modules/ceditor/ui/ContainerEditorController.java b/src/main/java/org/olat/modules/ceditor/ui/ContainerEditorController.java index d471cce96dc78e996a85f880f18824ac7a214a43..87650179e144da55deafdb891a436051c8bd8d98 100644 --- a/src/main/java/org/olat/modules/ceditor/ui/ContainerEditorController.java +++ b/src/main/java/org/olat/modules/ceditor/ui/ContainerEditorController.java @@ -80,19 +80,23 @@ public class ContainerEditorController extends FormBasicController implements Pa // } - protected ContainerElement setNumOfColumns(int numOfColumns) { + public ContainerElement getContainer() { + return container; + } + + public ContainerElement setNumOfColumns(int numOfColumns) { ContainerSettings settings = container.getContainerSettings(); settings.setNumOfColumns(numOfColumns); return save(settings); } - protected ContainerElement setElementAt(String fragmentId, int slot, String sibling) { + public ContainerElement setElementAt(String fragmentId, int slot, String sibling) { ContainerSettings settings = container.getContainerSettings(); settings.setElementAt(fragmentId, slot, sibling); return save(settings); } - protected ContainerElement setElementIn(String elementId, String collocatorId) { + public ContainerElement setElementIn(String elementId, String collocatorId) { ContainerSettings settings = container.getContainerSettings(); ContainerColumn column = settings.getColumn(collocatorId); if(column != null) { @@ -101,26 +105,26 @@ public class ContainerEditorController extends FormBasicController implements Pa return save(settings); } - protected ContainerElement removeElement(String fragmentId) { + public ContainerElement removeElement(String fragmentId) { ContainerSettings settings = container.getContainerSettings(); settings.removeElement(fragmentId); return save(settings); } - protected ContainerElement moveUp(String elementId) { + public ContainerElement moveUp(String elementId) { ContainerSettings settings = container.getContainerSettings(); settings.moveUp(elementId); return save(settings); } - protected ContainerElement moveDown(String elementId) { + public ContainerElement moveDown(String elementId) { ContainerSettings settings = container.getContainerSettings(); settings.moveDown(elementId); return save(settings); } - protected ContainerElement addElement(String elementId, String collocatorId, PageElementTarget target) { + public ContainerElement addElement(String elementId, String collocatorId, PageElementTarget target) { ContainerSettings settings = container.getContainerSettings(); ContainerColumn column = settings.getColumn(collocatorId); if(column != null) { diff --git a/src/main/java/org/olat/modules/ceditor/ui/HTMLRawEditorController.java b/src/main/java/org/olat/modules/ceditor/ui/HTMLRawEditorController.java index a89d0c49ec303ec09ab247a9576efdc05a8e3060..ca38556f14baf711c562f6a41a110fdbb44cd494 100644 --- a/src/main/java/org/olat/modules/ceditor/ui/HTMLRawEditorController.java +++ b/src/main/java/org/olat/modules/ceditor/ui/HTMLRawEditorController.java @@ -131,7 +131,7 @@ public class HTMLRawEditorController extends FormBasicController implements Page htmlItem.getEditorConfiguration().setAutoResizeEnabled(true, -1, 40, 0); String formattedContent = Formatter.formatLatexFormulas(content); - staticItem = uifactory.addStaticTextElement(cmpId + "_static", formattedContent, formLayout); + staticItem = uifactory.addStaticTextElement(cmpId + "_static", null, formattedContent, formLayout); staticItem.setDomWrapperElement(DomWrapperElement.div); // content contains multiple P elements ((FormLayoutContainer)formLayout).contextPut("htmlCmpId", cmpId); diff --git a/src/main/java/org/olat/modules/ceditor/ui/PageEditorController.java b/src/main/java/org/olat/modules/ceditor/ui/PageEditorController.java index b3d0d320372b42cd2f20f8832df8d29cec6295ac..a8a5b0eb6680e1542aba396dced585e777d02330 100644 --- a/src/main/java/org/olat/modules/ceditor/ui/PageEditorController.java +++ b/src/main/java/org/olat/modules/ceditor/ui/PageEditorController.java @@ -285,7 +285,7 @@ public class PageEditorController extends BasicController { } private void openMainAddElementsCallout(UserRequest ureq) { - addElementsCtrl = new AddElementsController(ureq, getWindowControl(), provider, null, + addElementsCtrl = new AddElementsController(ureq, getWindowControl(), provider, PageElementTarget.atTheEnd, getTranslator()); addElementsCtrl.addControllerListener(this); diff --git a/src/main/java/org/olat/modules/ceditor/ui/PageEditorV2Controller.java b/src/main/java/org/olat/modules/ceditor/ui/PageEditorV2Controller.java new file mode 100644 index 0000000000000000000000000000000000000000..e84b57d2259046d730dd8b90fb73e3b04c71b02c --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/PageEditorV2Controller.java @@ -0,0 +1,538 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import org.olat.core.gui.UserRequest; +import org.olat.core.gui.components.Component; +import org.olat.core.gui.components.ComponentHelper; +import org.olat.core.gui.components.link.Link; +import org.olat.core.gui.components.link.LinkFactory; +import org.olat.core.gui.components.velocity.VelocityContainer; +import org.olat.core.gui.control.Controller; +import org.olat.core.gui.control.Event; +import org.olat.core.gui.control.WindowControl; +import org.olat.core.gui.control.controller.BasicController; +import org.olat.core.gui.control.generic.closablewrapper.CloseableCalloutWindowController; +import org.olat.core.gui.control.generic.closablewrapper.CloseableModalController; +import org.olat.core.gui.translator.Translator; +import org.olat.core.util.component.ComponentTraverser; +import org.olat.modules.ceditor.InteractiveAddPageElementHandler; +import org.olat.modules.ceditor.PageEditorProvider; +import org.olat.modules.ceditor.PageEditorSecurityCallback; +import org.olat.modules.ceditor.PageElement; +import org.olat.modules.ceditor.PageElementAddController; +import org.olat.modules.ceditor.PageElementHandler; +import org.olat.modules.ceditor.SimpleAddPageElementHandler; +import org.olat.modules.ceditor.model.ContainerElement; +import org.olat.modules.ceditor.ui.component.ContentEditorComponent; +import org.olat.modules.ceditor.ui.component.ContentEditorContainerComponent; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; +import org.olat.modules.ceditor.ui.component.ContentEditorFragmentComponent; +import org.olat.modules.ceditor.ui.event.AddElementEvent; +import org.olat.modules.ceditor.ui.event.CloseElementsEvent; +import org.olat.modules.ceditor.ui.event.DeleteElementEvent; +import org.olat.modules.ceditor.ui.event.DropToEditorEvent; +import org.olat.modules.ceditor.ui.event.DropToPageElementEvent; +import org.olat.modules.ceditor.ui.event.EditElementEvent; +import org.olat.modules.ceditor.ui.event.MoveDownElementEvent; +import org.olat.modules.ceditor.ui.event.MoveUpElementEvent; +import org.olat.modules.ceditor.ui.event.OpenAddElementEvent; +import org.olat.modules.ceditor.ui.event.PositionEnum; + +/** + * + * Initial date: 08.06.2016<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class PageEditorV2Controller extends BasicController { + + private final VelocityContainer mainVC; + private final ContentEditorComponent editorCmp; + private Link addElementButton; + + private CloseableModalController cmc; + private PageElementAddController addCtrl; + private AddElementsController addElementsCtrl; + private CloseableCalloutWindowController addCalloutCtrl; + + private int counter; + private final PageEditorProvider provider; + private final PageEditorSecurityCallback secCallback; + private Map<String,PageElementHandler> handlerMap = new HashMap<>(); + + public PageEditorV2Controller(UserRequest ureq, WindowControl wControl, PageEditorProvider provider, + PageEditorSecurityCallback secCallback, Translator fallbackTranslator) { + super(ureq, wControl, fallbackTranslator); + this.provider = provider; + this.secCallback = secCallback; + + for(PageElementHandler handler:provider.getAvailableHandlers()) { + handlerMap.put(handler.getType(), handler); + } + + mainVC = createVelocityContainer("page_editor"); + + editorCmp = new ContentEditorComponent("page_editor_v2"); + editorCmp.addListener(this); + mainVC.put("page_editor", editorCmp); + + if (provider.getCreateHandlers() != null && !provider.getCreateHandlers().isEmpty()) { + addElementButton = LinkFactory.createButton("add.element", mainVC, this); + addElementButton.setIconLeftCSS("o_icon o_icon-lg o_icon_add"); + addElementButton.setElementCssClass("o_sel_add_element_main"); + } + + loadModel(ureq); + putInitialPanel(mainVC); + } + + private void loadModel(UserRequest ureq) { + List<? extends PageElement> elements = provider.getElements(); + List<ContentEditorFragment> flatFragmentsList = new ArrayList<>(elements.size()); + for(PageElement element:elements) { + ContentEditorFragment fragment = createFragmentComponent(ureq, element); + if(fragment != null) { + flatFragmentsList.add(fragment); + } + } + + Map<String,ContentEditorFragment> elementIdToFragementMap = flatFragmentsList.stream() + .collect(Collectors.toMap(ContentEditorFragment::getElementId, fragment -> fragment, (u, v) -> u)); + + List<ContentEditorFragment> rootFragmentsList = new ArrayList<>(flatFragmentsList); + for(ContentEditorFragment fragment:flatFragmentsList) { + if(fragment instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent container = (ContentEditorContainerComponent)fragment; + List<String> containedElementIds = container.getContainerSettings().getAllElementIds(); + for(String containedElementId:containedElementIds) { + ContentEditorFragment containedCmp = elementIdToFragementMap.get(containedElementId); + if(containedCmp != null) { + container.addComponent(containedCmp); + rootFragmentsList.remove(containedCmp); + } + } + } + } + + editorCmp.setRootComponents(rootFragmentsList); + } + + @Override + protected void doDispose() { + // + } + + @Override + protected void event(UserRequest ureq, Controller source, Event event) { + if(addCtrl == source) { + if(event == Event.DONE_EVENT || event == Event.CHANGED_EVENT) { + PageElement element = addCtrl.getPageElement(); + AddElementInfos uobject = addCtrl.getUserObject(); + ContentEditorFragment fragment = doAddPageElement(ureq, element, uobject.getReferenceComponent(), + uobject.getTarget(), uobject.getColumn()); + // close editor right away (file upload etc makes more sense) + doSaveElement(ureq, fragment); + } + cmc.deactivate(); + cleanUp(); + } else if(addElementsCtrl == source) { + addCalloutCtrl.deactivate(); + cleanUp(); + if(event instanceof AddElementEvent) { + AddElementEvent aee = (AddElementEvent)event; + doAddElement(ureq, aee.getReferenceComponent(), aee.getHandler(), + aee.getTarget(), aee.getContainerColumn()); + } + } else if(addCalloutCtrl == source) { + cleanUp(); + } else if(cmc == source) { + cleanUp(); + } + super.event(ureq, source, event); + } + + private void cleanUp() { + removeAsListenerAndDispose(addElementsCtrl); + removeAsListenerAndDispose(addCalloutCtrl); + removeAsListenerAndDispose(addCtrl); + removeAsListenerAndDispose(cmc); + addElementsCtrl = null; + addCalloutCtrl = null; + addCtrl = null; + cmc = null; + } + + @Override + protected void event(UserRequest ureq, Component source, Event event) { + if (source == addElementButton) { + openAddElementCallout(ureq); + } else if(event instanceof EditElementEvent) { + EditElementEvent e = (EditElementEvent)event; + doCloseEditionEvent(ureq, e.getElementId()); + } else if(event instanceof CloseElementsEvent) { + doCloseAllEditionEvent(ureq); + } else if(event instanceof OpenAddElementEvent) { + OpenAddElementEvent aee = (OpenAddElementEvent)event; + openAddElementCallout(ureq, aee.getDispatchId(), aee.getComponent(), aee.getTarget(), aee.getColumn()); + } else if(event instanceof DeleteElementEvent) { + doDeleteElement(ureq, ((DeleteElementEvent)event).getComponent()); + } else if(event instanceof MoveUpElementEvent) { + doMoveUpElement(ureq, ((MoveUpElementEvent)event).getComponent()); + } else if(event instanceof MoveDownElementEvent) { + doMoveDownElement(ureq, ((MoveDownElementEvent)event).getComponent()); + } else if(event instanceof DropToEditorEvent) { + doDrop(ureq, (DropToEditorEvent)event); + } else if(event instanceof DropToPageElementEvent) { + doDrop(ureq, (DropToPageElementEvent)event); + } + } + + private void doCloseEditionEvent(UserRequest ureq, String elementId) { + new ComponentTraverser((comp, uureq) -> { + if(comp instanceof ContentEditorFragment) { + ContentEditorFragment elementCmp = (ContentEditorFragment)comp; + if(!elementCmp.getElementId().equals(elementId) && elementCmp.isEditMode()) { + elementCmp.setEditMode(false); + } + } + return true; + }, editorCmp, false).visitAll(ureq); + } + + private void doCloseAllEditionEvent(UserRequest ureq) { + new ComponentTraverser((comp, uureq) -> { + if(comp instanceof ContentEditorFragment) { + ContentEditorFragment elementCmp = (ContentEditorFragment)comp; + if(elementCmp.isEditMode()) { + elementCmp.setEditMode(false); + } + } + return true; + }, editorCmp, false).visitAll(ureq); + } + + private ContentEditorFragment getContentEditorFragmentById(UserRequest ureq, String id) { + List<ContentEditorFragment> fragment = new ArrayList<>(); + + new ComponentTraverser((comp, uureq) -> { + if(comp instanceof ContentEditorFragment) { + ContentEditorFragment elementCmp = (ContentEditorFragment)comp; + if(elementCmp.getComponentName().equals(id) || elementCmp.getElementId().equals(id)) { + fragment.add(elementCmp); + } + } + return true; + }, editorCmp, false).visitAll(ureq); + + return fragment.isEmpty() ? null : fragment.get(0); + } + + private void openAddElementCallout(UserRequest ureq) { + addElementsCtrl = new AddElementsController(ureq, getWindowControl(), provider, + PageElementTarget.atTheEnd, getTranslator()); + addElementsCtrl.addControllerListener(this); + + addCalloutCtrl = new CloseableCalloutWindowController(ureq, getWindowControl(), addElementsCtrl.getInitialComponent(), + addElementButton, "", true, "o_sel_add_element_callout"); + addCalloutCtrl.addControllerListener(this); + addCalloutCtrl.activate(); + } + + private void openAddElementCallout(UserRequest ureq, String dispatchId, ContentEditorFragment referenceFragment, + PageElementTarget target, int column) { + addElementsCtrl = new AddElementsController(ureq, getWindowControl(), provider, + referenceFragment, target, column, getTranslator()); + listenTo(addElementsCtrl); + + addCalloutCtrl = new CloseableCalloutWindowController(ureq, getWindowControl(), + addElementsCtrl.getInitialComponent(), dispatchId, "", true, ""); + listenTo(addCalloutCtrl); + addCalloutCtrl.activate(); + } + + private void doAddElement(UserRequest ureq, ContentEditorFragment refenceFragment, PageElementHandler handler, PageElementTarget target, int column) { + if(guardModalController(addCtrl)) return; + + if(handler instanceof InteractiveAddPageElementHandler) { + InteractiveAddPageElementHandler interactiveHandler = (InteractiveAddPageElementHandler)handler; + addCtrl = interactiveHandler.getAddPageElementController(ureq, getWindowControl()); + if(addCtrl == null) { + showWarning("not.implement"); + } else { + addCtrl.setUserObject(new AddElementInfos(refenceFragment, handler, target, column)); + listenTo(addCtrl); + String title = translate("add." + handler.getType()); + cmc = new CloseableModalController(getWindowControl(), null, addCtrl.getInitialComponent(), true, title, true); + listenTo(cmc); + cmc.activate(); + } + } else if(handler instanceof SimpleAddPageElementHandler) { + SimpleAddPageElementHandler simpleHandler = (SimpleAddPageElementHandler)handler; + doAddPageElement(ureq, simpleHandler.createPageElement(getLocale()), refenceFragment, target, column); + } + } + + private ContentEditorFragment doAddPageElement(UserRequest ureq, PageElement element, ContentEditorFragment referenceFragment, + PageElementTarget target, int column) { + + ContentEditorFragment fragment = null; + if(target == PageElementTarget.atTheEnd && referenceFragment == null) { + fragment = doAddPageElementAtTheEnd(ureq, element); + + // with reference + // with column + + } else if(target == PageElementTarget.atTheEnd && referenceFragment != null) { + // + } else if(target == PageElementTarget.within && column >= 0) { + fragment = doAddPageElementInContainer(ureq, referenceFragment, element, column); + } else if(target == PageElementTarget.above || target == PageElementTarget.below) { + List<Component> ancestors = ComponentHelper.findAncestorsOrSelfByID(editorCmp, referenceFragment); + int parentLineIndex = ancestors.indexOf(referenceFragment); + if(parentLineIndex == 0 && ancestors.size() >= 2) { + Component parent = ancestors.get(parentLineIndex + 1); + if(parent == editorCmp) { + int index = editorCmp.indexOfRootComponent(referenceFragment); + if(target == PageElementTarget.below) { + index = index + 1; + } + element = provider.appendPageElementAt(element, index); + fragment = createFragmentComponent(ureq, element); + editorCmp.addRootComponent(index, fragment); + } else if(parent instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent container = (ContentEditorContainerComponent)parent; + element = provider.appendPageElement(element); + fragment = createFragmentComponent(ureq, element); + container.addElement(fragment, referenceFragment, target); + } + } + } + + if(fragment != null) { + if(referenceFragment != null) { + referenceFragment.setEditMode(false); + } + fragment.setEditMode(true); + fireEvent(ureq, Event.CHANGED_EVENT); + } + return fragment; + } + + private ContentEditorFragment doAddPageElementInContainer(UserRequest ureq, ContentEditorFragment referenceFragment, + PageElement element, int column) { + ContentEditorFragment fragment = null; + if(referenceFragment instanceof ContentEditorContainerComponent) { + PageElement pageElement = provider.appendPageElement(element); + fragment = createFragmentComponent(ureq, pageElement); + ContentEditorContainerComponent containerCmp = (ContentEditorContainerComponent)referenceFragment; + containerCmp.setElementAt(fragment, column, null); + } + return fragment; + } + + private ContentEditorFragment doAddPageElementAtTheEnd(UserRequest ureq, PageElement element) { + PageElement pageElement = provider.appendPageElement(element); + ContentEditorFragment fragment = createFragmentComponent(ureq, pageElement); + editorCmp.addRootComponent(fragment); + return fragment; + } + + private void doSaveElement(UserRequest ureq, ContentEditorFragment fragment) { + fragment.setEditMode(false); + fireEvent(ureq, Event.CHANGED_EVENT); + } + + private void doDeleteElement(UserRequest ureq, ContentEditorFragment fragment) { + List<Component> ancestors = ComponentHelper.findAncestorsOrSelfByID(editorCmp, fragment); + int index = ancestors.indexOf(fragment); + if(index == 0 && ancestors.size() >= 2) {// the root component is always the editor itself + provider.removePageElement(fragment.getElement()); + Component parent = ancestors.get(index + 1); + if(parent == editorCmp) { + editorCmp.removeRootComponent(fragment); + } else if(parent instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent container = (ContentEditorContainerComponent)parent; + container.removeElementAt(fragment); + } + } + fireEvent(ureq, Event.CHANGED_EVENT); + } + + private void doMoveUpElement(UserRequest ureq, ContentEditorFragment fragment) { + List<Component> ancestors = ComponentHelper.findAncestorsOrSelfByID(editorCmp, fragment); + int index = ancestors.indexOf(fragment); + if(index == 0 && ancestors.size() >= 2) {// the root component is always the editor itself + Component parent = ancestors.get(index + 1); + if(parent == editorCmp) { + if(editorCmp.moveUpRootComponent(fragment)) { + provider.moveUpPageElement(fragment.getElement()); + } + } else if(parent instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent container = (ContentEditorContainerComponent)parent; + container.moveUp(fragment.getElementId()); + } + } + fireEvent(ureq, Event.CHANGED_EVENT); + } + + private void doMoveDownElement(UserRequest ureq, ContentEditorFragment fragment) { + List<Component> ancestors = ComponentHelper.findAncestorsOrSelfByID(editorCmp, fragment); + int index = ancestors.indexOf(fragment); + if(index == 0 && ancestors.size() >= 2) {// the root component is always the editor itself + Component parent = ancestors.get(index + 1); + if(parent == editorCmp) { + if(editorCmp.moveDownRootComponent(fragment)) { + provider.moveDownPageElement(fragment.getElement()); + } + } else if(parent instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent container = (ContentEditorContainerComponent)parent; + container.moveDown(fragment.getElementId()); + } + } + fireEvent(ureq, Event.CHANGED_EVENT); + } + + private void doDrop(UserRequest ureq, DropToEditorEvent dropEvent) { + if(editorCmp == null || editorCmp != dropEvent.getTargetComponent()) return; + + String fragmentCmpId = dropEvent.getSourceComponentId(); + ContentEditorFragment source = getContentEditorFragmentById(ureq, fragmentCmpId); + if(source == null) { + return; + } + + Component sourceParent = getParent(source); + if(sourceParent != null && sourceParent == editorCmp) { + editorCmp.removeRootComponent(source); + } else if(sourceParent instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent container = (ContentEditorContainerComponent)sourceParent; + container.removeElementAt(source); + } else { + editorCmp.setDirty(true); + return; + } + + boolean after = dropEvent.getPosition() == PositionEnum.bottom; + provider.movePageElement(source.getElement(), null, after); + editorCmp.addRootComponent(source); + fireEvent(ureq, Event.CHANGED_EVENT); + } + + private void doDrop(UserRequest ureq, DropToPageElementEvent dropEvent) { + if(editorCmp == null) return; + + String fragmentCmpId = dropEvent.getSourceComponentId(); + ContentEditorFragment target = dropEvent.getTargetComponent(); + ContentEditorFragment source = getContentEditorFragmentById(ureq, fragmentCmpId); + if(target == null || source == null) { + return; + } + if(target == editorCmp) { + editorCmp.setDirty(true); + return; // not supported yet + } + + Component sourceParent = getParent(source); + Component targetParent = getParent(target); + + // check we can add the element + if(!(target instanceof ContentEditorContainerComponent) + && !(targetParent instanceof ContentEditorContainerComponent) + && !(targetParent == editorCmp && editorCmp.indexOfRootComponent(target) >= 0)) { + return; + } + + // do the thing + boolean ok = false; + boolean after = dropEvent.getPosition() == PositionEnum.bottom; + if(sourceParent != null && sourceParent == editorCmp) { + editorCmp.removeRootComponent(source); + } else if(sourceParent instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent container = (ContentEditorContainerComponent)sourceParent; + container.removeElementAt(source); + } else { + editorCmp.setDirty(true); + return; + } + + if(target instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent targetContainer = (ContentEditorContainerComponent)target; + targetContainer.setElementAt(source, dropEvent.getSlot(), null); + ok = true; + } else if(targetParent instanceof ContentEditorContainerComponent) { + ContentEditorContainerComponent targetContainer = (ContentEditorContainerComponent)targetParent; + PageElementTarget pos = after ? PageElementTarget.below : PageElementTarget.above; + targetContainer.addElement(source, target, pos); + ok = true; + } else if(targetParent == editorCmp) { + int index = editorCmp.indexOfRootComponent(target); + if(index >= 0) { + provider.movePageElement(source.getElement(), target.getElement(), after); + if(after) { + index++; + } + editorCmp.addRootComponent(index, source); + ok = true; + } + } + + if(!ok) { + editorCmp.setDirty(true); + } + fireEvent(ureq, Event.CHANGED_EVENT); + } + + private ContentEditorFragment createFragmentComponent(UserRequest ureq, PageElement element) { + PageElementHandler handler = handlerMap.get(element.getType()); + if(handler == null) { + logError("Cannot find an handler of type: " + element.getType(), null); + return null; + } + Controller editorPart = handler.getEditor(ureq, getWindowControl(), element); + listenTo(editorPart); + String cmpId = "frag-" + (++counter); + + ContentEditorFragment cmp; + if(element instanceof ContainerElement) { + cmp = new ContentEditorContainerComponent(cmpId, (ContainerEditorController)editorPart); + } else { + cmp = new ContentEditorFragmentComponent(cmpId, element, editorPart); + } + cmp.setDeleteable(secCallback.canDeleteElement()); + cmp.setMoveable(secCallback.canMoveUpAndDown()); + cmp.addListener(this); + return cmp; + } + + private Component getParent(ContentEditorFragment fragment) { + List<Component> ancestors = ComponentHelper.findAncestorsOrSelfByID(editorCmp, fragment); + if(ancestors.size() > 1) { + return ancestors.get(1); + } + return null; + } +} \ No newline at end of file diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/AbstractContentEditorComponentRenderer.java b/src/main/java/org/olat/modules/ceditor/ui/component/AbstractContentEditorComponentRenderer.java new file mode 100644 index 0000000000000000000000000000000000000000..2381fb96d80af689a9176f731b66465df3998cc8 --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/component/AbstractContentEditorComponentRenderer.java @@ -0,0 +1,110 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.component; + +import org.olat.core.gui.components.Component; +import org.olat.core.gui.components.DefaultComponentRenderer; +import org.olat.core.gui.components.form.flexible.impl.NameValuePair; +import org.olat.core.gui.components.velocity.VelocityContainer; +import org.olat.core.gui.render.StringOutput; +import org.olat.core.gui.render.URLBuilder; +import org.olat.core.gui.translator.Translator; + +/** + * + * Initial date: 6 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public abstract class AbstractContentEditorComponentRenderer extends DefaultComponentRenderer { + + + protected void renderAddAbove(StringOutput sb, Component cmp, URLBuilder ubu, Translator translator) { + sb.append("<div class='o_page_add_above'>"); + sb.append("<a id='o_ccaab_").append(cmp.getDispatchID()).append("' ") + .append("href='javascript:;' onclick=\"");// add elements directly in container + ubu.buildXHREvent(sb, "", false, true, + new NameValuePair(VelocityContainer.COMMAND_ID, "add_element_above"), + new NameValuePair("fragment", cmp.getComponentName())); // EditorFragment cmpFragment.getCmpId() + sb.append(" return false;\" class='o_sel_add_element_above' title='").append(translator.translate("add.element")) + .append("'><i class='o_icon o_icon_add'> </i></a>") + .append("</div>"); + } + + protected void renderAddBelow(StringOutput sb, Component cmp, URLBuilder ubu, Translator translator) { + sb.append("<div class='o_page_add_below'>"); + sb.append("<a id='o_ccabe_").append(cmp.getDispatchID()).append("' ") + .append("href='javascript:;' onclick=\"");// add elements directly in container + ubu.buildXHREvent(sb, "", false, true, + new NameValuePair(VelocityContainer.COMMAND_ID, "add_element_below"), + new NameValuePair("fragment", cmp.getComponentName())); // EditorFragment cmpFragment.getCmpId() + sb.append(" return false;\" class='o_sel_add_element_below' title='").append(translator.translate("add.element")) + .append("'><i class='o_icon o_icon_add'> </i></a>") + .append("</div>"); + } + + protected void renderPageUpDown(StringOutput sb, ContentEditorFragment cmp, URLBuilder ubu, Translator translator) { + if(cmp.isMoveable()) { + sb.append("<div class='o_page_tools o_page_tools_dd'>"); + + sb.append("<a id='o_ccup_").append(cmp.getDispatchID()).append("' ") + .append("href='javascript:;' onclick=\"");// add elements directly in container + ubu.buildXHREvent(sb, "", false, true, + new NameValuePair(VelocityContainer.COMMAND_ID, "move_up"), + new NameValuePair("fragment", cmp.getComponentName())); // EditorFragment cmpFragment.getCmpId() + sb.append(" return false;\" class='o_sel_move_up_element' title='").append(translator.translate("move.up")) + .append("'><i class='o_icon o_icon-sm o_icon_move_up'> </i></a>"); + + sb.append("<a id='o_ccdown_").append(cmp.getDispatchID()).append("' ") + .append("href='javascript:;' onclick=\"");// add elements directly in container + ubu.buildXHREvent(sb, "", false, true, + new NameValuePair(VelocityContainer.COMMAND_ID, "move_down"), + new NameValuePair("fragment", cmp.getComponentName())); // EditorFragment cmpFragment.getCmpId() + sb.append(" return false;\" class='o_sel_move_down_element' title='").append(translator.translate("move.down")) + .append("'><i class='o_icon o_icon-sm o_icon_move_down'> </i></a>"); + + sb.append("</div>"); + } else { + sb.append("<div class='o_page_tools'> </div>"); + } + } + + protected void renderClose(StringOutput sb, ContentEditorFragment cmp, URLBuilder ubu, Translator translator) { + sb.append("<a id='o_ccclose_").append(cmp.getDispatchID()).append("' ") + .append("href='javascript:;' onclick=\"");// add elements directly in container + ubu.buildXHREvent(sb, "", false, true, + new NameValuePair(VelocityContainer.COMMAND_ID, "save_element"), + new NameValuePair("fragment", cmp.getComponentName())); // EditorFragment cmpFragment.getCmpId() + sb.append(" return false;\" class='o_sel_save_element' title='").append(translator.translate("save.and.close")) + .append("'><i class='o_icon o_icon-sm o_icon_close'> </i> <span>").append(translator.translate("save.and.close")).append("</span></a>"); + } + + protected void renderDelete(StringOutput sb, ContentEditorFragment cmp, URLBuilder ubu, Translator translator) { + if(cmp.isDeleteable()) { + sb.append("<a id='o_ccdelete_").append(cmp.getDispatchID()).append("' ") + .append("href='javascript:;' onclick=\"");// add elements directly in container + ubu.buildXHREvent(sb, "", false, true, + new NameValuePair(VelocityContainer.COMMAND_ID, "delete_element"), + new NameValuePair("fragment", cmp.getComponentName())); // EditorFragment cmpFragment.getCmpId() + sb.append(" return false;\" class='o_sel_delete_element' title='").append(translator.translate("delete")) + .append("'><i class='o_icon o_icon-sm o_icon_delete_item'> </i> <span>").append(translator.translate("delete")).append("</span></a>"); + } + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorComponent.java b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorComponent.java new file mode 100644 index 0000000000000000000000000000000000000000..5e23ed658de37f06010828c50ada3c810320fd02 --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorComponent.java @@ -0,0 +1,193 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.component; + +import java.util.ArrayList; +import java.util.List; + +import org.olat.core.gui.UserRequest; +import org.olat.core.gui.components.Component; +import org.olat.core.gui.components.ComponentCollection; +import org.olat.core.gui.components.ComponentEventListener; +import org.olat.core.gui.components.ComponentRenderer; +import org.olat.core.gui.components.form.flexible.impl.FormBaseComponentImpl; +import org.olat.core.gui.components.velocity.VelocityContainer; +import org.olat.core.gui.control.Controller; +import org.olat.core.gui.control.ControllerEventListener; +import org.olat.core.gui.control.Event; +import org.olat.core.gui.render.ValidationResult; +import org.olat.core.helpers.Settings; +import org.olat.modules.ceditor.ui.event.CloseElementsEvent; +import org.olat.modules.ceditor.ui.event.DropToEditorEvent; +import org.olat.modules.ceditor.ui.event.PositionEnum; + +/** + * + * Initial date: 6 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class ContentEditorComponent extends FormBaseComponentImpl implements ComponentCollection, ComponentEventListener, ControllerEventListener { + + private static final ContentEditorComponentRenderer RENDERER = new ContentEditorComponentRenderer(); + + private List<Component> rootComponents = new ArrayList<>(); + + public ContentEditorComponent(String name) { + super(name); + setDomReplacementWrapperRequired(false); + } + + @Override + protected void doDispatchRequest(UserRequest ureq) { + String cmd = ureq.getParameter(VelocityContainer.COMMAND_ID); + if("close_edit_fragment".equals(cmd)) { + fireEvent(ureq, new CloseElementsEvent()); + } else if("drop_fragment".equals(cmd)) { + doDropFragment(ureq); + } + } + + @Override + public void dispatchEvent(UserRequest ureq, Controller source, Event event) { + // + } + + @Override + public void dispatchEvent(UserRequest ureq, Component source, Event event) { + // + } + + private void doDropFragment(UserRequest ureq) { + String sourceId = ureq.getParameter("source"); + String position = ureq.getParameter("position"); + fireEvent(ureq, new DropToEditorEvent(sourceId, this, + PositionEnum.valueOf(position, PositionEnum.bottom))); + } + + public void setRootComponents(List<ContentEditorFragment> components) { + rootComponents = new ArrayList<>(components); + for(ContentEditorFragment component:components) { + component.setTranslator(getTranslator()); + } + setDirty(true); + } + + public void addRootComponent(ContentEditorFragment component) { + if(rootComponents.contains(component)) return; + + rootComponents.add(component); + setDirty(true); + if(getTranslator() != null) { + component.setTranslator(getTranslator()); + } + } + + public void addRootComponent(int index, ContentEditorFragment component) { + if(index >= 0 && index < rootComponents.size()) { + rootComponents.add(index, component); + } else { + rootComponents.add(component); + } + setDirty(true); + if(getTranslator() != null) { + component.setTranslator(getTranslator()); + } + } + + public boolean removeRootComponent(ContentEditorFragment component) { + boolean removed = rootComponents.remove(component); + if(removed) { + setDirty(true); + } + return removed; + } + + public int indexOfRootComponent(ContentEditorFragment component) { + return rootComponents.indexOf(component); + } + + public int numberOfRootComponents() { + return rootComponents.size(); + } + + public boolean moveUpRootComponent(ContentEditorFragment component) { + int index = rootComponents.indexOf(component); + if(index > 0 && rootComponents.remove(component)) { + rootComponents.add(index - 1, component); + setDirty(true); + return true; + } + return false; + } + + public boolean moveDownRootComponent(ContentEditorFragment component) { + int index = rootComponents.indexOf(component) + 1; + if(index < rootComponents.size()) { + rootComponents.remove(component); + rootComponents.add(index, component); + setDirty(true); + return true; + } + return false; + } + + public boolean moveComponentUnderSibling(ContentEditorFragment component, ContentEditorFragment sibling) { + int index = rootComponents.indexOf(sibling) + 1; + if(index < rootComponents.size()) { + rootComponents.remove(component); + rootComponents.add(index, component); + setDirty(true); + return true; + } + return false; + } + + @Override + public Component getComponent(String name) { + for(Component cmp:getComponents()) { + if(name.equals(cmp.getComponentName())) { + return cmp; + } + } + return null; + } + + @Override + public Iterable<Component> getComponents() { + return rootComponents; + } + + @Override + public void validate(UserRequest ureq, ValidationResult vr) { + if(Settings.isDebuging()) { + vr.getJsAndCSSAdder().addRequiredStaticJsFile("js/interactjs/interact.js"); + } else { + vr.getJsAndCSSAdder().addRequiredStaticJsFile("js/interactjs/interact.min.js"); + } + vr.getJsAndCSSAdder().addRequiredStaticJsFile("js/jquery/openolat/jquery.contenteditor.v2.js"); + super.validate(ureq, vr); + } + + @Override + public ComponentRenderer getHTMLRendererSingleton() { + return RENDERER; + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorComponentRenderer.java b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorComponentRenderer.java new file mode 100644 index 0000000000000000000000000000000000000000..5371b7a242d040cb4e89b525d04eff50db8ed77c --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorComponentRenderer.java @@ -0,0 +1,64 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.component; + +import org.olat.core.gui.components.Component; +import org.olat.core.gui.render.RenderResult; +import org.olat.core.gui.render.Renderer; +import org.olat.core.gui.render.StringOutput; +import org.olat.core.gui.render.URLBuilder; +import org.olat.core.gui.translator.Translator; + +/** + * + * Initial date: 6 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class ContentEditorComponentRenderer extends AbstractContentEditorComponentRenderer { + + + @Override + public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, + RenderResult renderResult, String[] args) { + + ContentEditorComponent cmp = (ContentEditorComponent)source; + + Renderer fr = Renderer.getInstance(cmp, translator, ubu, new RenderResult(), renderer.getGlobalSettings()); + sb.append("<div id='o_c").append(cmp.getDispatchID()).append("' class='o_page_content_editor o_page_drop' data-oo-content-editor-url='") + .append(fr.getUrlBuilder().getJavascriptURI()).append("'>"); + for(Component subCmp:cmp.getComponents()) { + subCmp.getHTMLRendererSingleton().render(renderer, sb, subCmp, ubu, translator, renderResult, args); + subCmp.setDirty(false); + } + renderEditJavascript(fr, sb, cmp); + sb.append("</div>"); + } + + private void renderEditJavascript(Renderer renderer, StringOutput sb, ContentEditorComponent cmp) { + sb.append("<script>\n") + .append("jQuery(function() {\n") + .append(" jQuery('#o_c").append(cmp.getDispatchID()).append("').ceditor({\n") + .append(" componentUrl: '").append(renderer.getUrlBuilder().getJavascriptURI()).append("'\n") + .append(" });\n") + .append("});\n") + .append("</script>"); + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorContainerComponent.java b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorContainerComponent.java new file mode 100644 index 0000000000000000000000000000000000000000..d268c1549e48bffa83d110b43f02acf4aa0688e7 --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorContainerComponent.java @@ -0,0 +1,287 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.component; + +import java.util.ArrayList; +import java.util.List; + +import org.apache.logging.log4j.Logger; +import org.olat.core.gui.UserRequest; +import org.olat.core.gui.components.Component; +import org.olat.core.gui.components.ComponentEventListener; +import org.olat.core.gui.components.ComponentRenderer; +import org.olat.core.gui.components.form.flexible.impl.FormBaseComponentImpl; +import org.olat.core.gui.components.velocity.VelocityContainer; +import org.olat.core.gui.control.Controller; +import org.olat.core.gui.control.ControllerEventListener; +import org.olat.core.gui.control.Event; +import org.olat.core.gui.translator.Translator; +import org.olat.core.logging.Tracing; +import org.olat.core.util.StringHelper; +import org.olat.modules.ceditor.PageElement; +import org.olat.modules.ceditor.model.ContainerSettings; +import org.olat.modules.ceditor.ui.ContainerEditorController; +import org.olat.modules.ceditor.ui.PageElementTarget; +import org.olat.modules.ceditor.ui.event.DeleteElementEvent; +import org.olat.modules.ceditor.ui.event.DropToPageElementEvent; +import org.olat.modules.ceditor.ui.event.EditElementEvent; +import org.olat.modules.ceditor.ui.event.MoveDownElementEvent; +import org.olat.modules.ceditor.ui.event.MoveUpElementEvent; +import org.olat.modules.ceditor.ui.event.OpenAddElementEvent; +import org.olat.modules.ceditor.ui.event.PositionEnum; + +/** + * + * Initial date: 6 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class ContentEditorContainerComponent extends FormBaseComponentImpl implements ContentEditorFragment, ComponentEventListener, ControllerEventListener { + + private static final Logger log = Tracing.createLoggerFor(ContentEditorContainerComponent.class); + private static final ContentEditorContainerComponentRenderer RENDERER = new ContentEditorContainerComponentRenderer(); + + private boolean editMode = false; + private boolean moveable = false; + private boolean deleteable = false; + + private final ContainerEditorController editorPart; + + private List<Component> components = new ArrayList<>(); + + public ContentEditorContainerComponent(String name, ContainerEditorController editorPart) { + super(name); + this.editorPart = editorPart; + setDomReplacementWrapperRequired(false); + } + + @Override + public void setTranslator(Translator translator) { + super.setTranslator(translator); + for(Component component:components) { + component.setTranslator(translator); + } + } + + @Override + protected void doDispatchRequest(UserRequest ureq) { + String cmd = ureq.getParameter(VelocityContainer.COMMAND_ID); + String fragment = ureq.getParameter("fragment"); + String columns = ureq.getParameter("column"); + if(cmd != null && fragment != null && getComponentName().equals(fragment)) { + switch(cmd) { + case "edit_fragment": + setEditMode(true); + fireEvent(ureq, new EditElementEvent(editorPart.getContainer().getId())); + break; + case "change_nbre_columns": + setNumOfColumns(Integer.parseInt(columns)); + setDirty(true); + fireEvent(ureq, Event.CHANGED_EVENT); + break; + case "save_element": + case "close_edit_fragment": + doCloseEditFragment(); + break; + case "delete_element": + fireEvent(ureq, new DeleteElementEvent(this)); + break; + case "move_up": + fireEvent(ureq, new MoveUpElementEvent(this)); + break; + case "move_down": + fireEvent(ureq, new MoveDownElementEvent(this)); + break; + case "add_to_container": + String linkId = "o_ccad_" + getElementId() + "_" + columns; + fireEvent(ureq, new OpenAddElementEvent(linkId, this, PageElementTarget.within, Integer.parseInt(columns))); + break; + case "drop_fragment": + doDropFragment(ureq); + break; + case "add_element_above": + String aboveLinkId = "o_ccaab_".concat(getDispatchID()); + fireEvent(ureq, new OpenAddElementEvent(aboveLinkId, this, PageElementTarget.above)); + break; + case "add_element_below": + String belowLinkId = "o_ccabe_".concat(getDispatchID()); + fireEvent(ureq, new OpenAddElementEvent(belowLinkId, this, PageElementTarget.below)); + break; + default: + log.error("Uncatched dispatch to container {} with command {}", getComponentName(), cmd); + break; + } + } + } + + @Override + public void dispatchEvent(UserRequest ureq, Controller source, Event event) { + // + } + + @Override + public void dispatchEvent(UserRequest ureq, Component source, Event event) { + // + } + + @Override + public boolean isEditMode() { + return editMode; + } + + @Override + public void setEditMode(boolean editMode) { + if(this.editMode != editMode) { + this.editMode = editMode; + editorPart.setEditMode(editMode); + setDirty(true); + } + } + + + @Override + public boolean isDeleteable() { + return deleteable; + } + + @Override + public void setDeleteable(boolean enable) { + deleteable = enable; + } + + @Override + public boolean isMoveable() { + return moveable; + } + + @Override + public void setMoveable(boolean enable) { + this.moveable = enable; + } + + public void setElementAt(ContentEditorFragment component, int column, String sibling) { + editorPart.setElementAt(component.getElementId(), column, sibling); + addComponent(component); + setDirty(true); + } + + public void removeElementAt(ContentEditorFragment component) { + editorPart.removeElement(component.getElementId()); + removeComponent(component); + setDirty(true); + } + + public void moveUp(String fragmentId) { + editorPart.moveUp(fragmentId); + setDirty(true); + } + + public void moveDown(String fragmentId) { + editorPart.moveDown(fragmentId); + setDirty(true); + } + + public void addElement(ContentEditorFragment newComponent, ContentEditorFragment collocator, PageElementTarget target) { + editorPart.addElement(newComponent.getElementId(), collocator.getElementId(), target); + addComponent(newComponent); + setDirty(true); + } + + private void doDropFragment(UserRequest ureq) { + String sourceId = ureq.getParameter("source"); + String slotId = ureq.getParameter("slot"); + int slot = -1; + if(StringHelper.isLong(slotId)) { + slot = Integer.parseInt(slotId); + } + String position = ureq.getParameter("position"); + fireEvent(ureq, new DropToPageElementEvent(sourceId, this, slot, + PositionEnum.valueOf(position, PositionEnum.bottom))); + } + + private void doCloseEditFragment() { + editMode = false; + editorPart.setEditMode(editMode); + setDirty(true); + } + + protected void setNumOfColumns(int numOfColumns) { + ContainerSettings settings = getContainerSettings(); + settings.setNumOfColumns(numOfColumns); + editorPart.setNumOfColumns(numOfColumns); + } + + @Override + public String getElementId() { + return editorPart.getContainer().getId(); + } + + @Override + public PageElement getElement() { + return editorPart.getContainer(); + } + + public ContainerSettings getContainerSettings() { + return editorPart.getContainer().getContainerSettings(); + } + + public ContentEditorFragment getComponentByElementId(String elementId) { + for(Component component:getComponents()) { + if(component instanceof ContentEditorFragment + && ((ContentEditorFragment)component).getElementId().equals(elementId)) { + return (ContentEditorFragment)component; + } + } + return null; + } + + public void addComponent(ContentEditorFragment fragmentCmp) { + if(fragmentCmp == null) return; + components.add(fragmentCmp); + if(getTranslator() != null) { + fragmentCmp.setTranslator(getTranslator()); + } + } + + public void removeComponent(ContentEditorFragment fragmentCmp) { + if(fragmentCmp == null) return; + components.remove(fragmentCmp); + } + + @Override + public Component getComponent(String name) { + for(Component component:getComponents()) { + if(component.getComponentName().equals(name)) { + return component; + } + } + return null; + } + + @Override + public Iterable<Component> getComponents() { + return new ArrayList<>(components); + } + + @Override + public ComponentRenderer getHTMLRendererSingleton() { + return RENDERER; + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorContainerComponentRenderer.java b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorContainerComponentRenderer.java new file mode 100644 index 0000000000000000000000000000000000000000..348a9a4f88aea69b3e98122a79544abce86851b4 --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorContainerComponentRenderer.java @@ -0,0 +1,173 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.component; + +import java.util.List; + +import org.olat.core.gui.components.Component; +import org.olat.core.gui.components.form.flexible.impl.NameValuePair; +import org.olat.core.gui.components.velocity.VelocityContainer; +import org.olat.core.gui.render.RenderResult; +import org.olat.core.gui.render.Renderer; +import org.olat.core.gui.render.StringOutput; +import org.olat.core.gui.render.URLBuilder; +import org.olat.core.gui.translator.Translator; +import org.olat.modules.ceditor.model.ContainerColumn; +import org.olat.modules.ceditor.model.ContainerSettings; + +/** + * + * Initial date: 6 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class ContentEditorContainerComponentRenderer extends AbstractContentEditorComponentRenderer { + + @Override + public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, + RenderResult renderResult, String[] args) { + + ContentEditorContainerComponent cmp = (ContentEditorContainerComponent)source; + URLBuilder containerUbu = ubu.createCopyFor(cmp); + + if(cmp.isEditMode()) { + renderEditContainer(renderer, sb, cmp, containerUbu, translator, renderResult, args); + } else { + renderPreviewContainer(renderer, sb, cmp, containerUbu, translator, renderResult, args); + } + } + + private void renderPreviewContainer(Renderer renderer, StringOutput sb, ContentEditorContainerComponent cmp, URLBuilder containerUbu, + Translator translator, RenderResult renderResult, String[] args) { + Renderer fr = Renderer.getInstance(cmp, translator, containerUbu, new RenderResult(), renderer.getGlobalSettings()); + + sb.append("<div id='o_c").append(cmp.getDispatchID()).append("' data-oo-page-fragment='").append(cmp.getComponentName()).append("'") + .append(" data-oo-page-element-id='").append(cmp.getElementId()).append("'") + .append(" data-oo-content-editor-url='").append(fr.getUrlBuilder().getJavascriptURI()).append("'") + .append(" class='o_page_part o_page_part_view o_page_container clearfix'>"); + + renderContainer(fr, sb, cmp, containerUbu, translator, renderResult, args); + + sb.append("</div>"); + } + + private void renderEditContainer(Renderer renderer, StringOutput sb, ContentEditorContainerComponent cmp, URLBuilder containerUbu, + Translator translator, RenderResult renderResult, String[] args) { + + sb.append("<div id='o_c").append(cmp.getDispatchID()).append("' class='o_page_fragment_edit' data-oo-page-fragment='").append(cmp.getComponentName()).append("'>"); + + renderAboveTools(sb, cmp, containerUbu, translator); + renderPageUpDown(sb, cmp, containerUbu, translator); + + sb.append("<div id='oce_").append(cmp.getElementId()).append("' data-oo-page-fragment='").append(cmp.getComponentName()).append("' class='o_page_part o_page_edit clearfix'>"); + renderContainer(renderer, sb, cmp, containerUbu, translator, renderResult, args); + sb.append("</div>"); + + renderAddBelow(sb, cmp, containerUbu, translator); + + sb.append("</div>"); + } + + private void renderAboveTools(StringOutput sb, ContentEditorContainerComponent cmp, URLBuilder containerUbu, Translator translator) { + sb.append("<div class='o_page_tools_above clearfix'>"); + + renderAddAbove(sb, cmp, containerUbu, translator); + + sb.append("<div class='o_page_others_above'>"); + + renderClose(sb, cmp, containerUbu, translator); + renderDelete(sb, cmp, containerUbu, translator); + renderContainerColumnLinks(sb, cmp, containerUbu, translator); + + sb.append("</div>") // o_page_others_above + .append("</div>");// o_page_tools_above + } + + private void renderContainerColumnLinks(StringOutput sb, ContentEditorContainerComponent cmp, + URLBuilder ubu, Translator translator) { + + ContainerSettings settings = cmp.getContainerSettings(); + int numOfColumns = settings.getNumOfColumns(); + + renderColumnLink(sb, 4, numOfColumns == 4, cmp, ubu, translator); + renderColumnLink(sb, 3, numOfColumns == 3, cmp, ubu, translator); + renderColumnLink(sb, 2, numOfColumns == 2, cmp, ubu, translator); + renderColumnLink(sb, 1, numOfColumns == 1, cmp, ubu, translator); + } + + private void renderColumnLink(StringOutput sb, int columns, boolean selected, ContentEditorContainerComponent cmp, + URLBuilder ubu, Translator translator) { + sb.append("<a id='o_cccols_").append(cmp.getElementId()).append("_").append(columns).append("' ") + .append("href='javascript:;' onclick=\"");// add elements directly in container + ubu.buildXHREvent(sb, "", false, true, + new NameValuePair(VelocityContainer.COMMAND_ID, "change_nbre_columns"), + new NameValuePair("fragment", cmp.getComponentName()), // EditorFragment cmpFragment.getCmpId() + new NameValuePair("column", Integer.toString(columns))); + sb.append(" return false;\" class=''><i class='o_icon "); + if(selected) { + sb.append("o_icon_check"); + } else { + sb.append("o_icon_columns"); + } + sb.append("'> </i> <span>").append(translator.translate("text.column." + columns)).append("</span></a>"); + } + + private void renderContainer(Renderer renderer, StringOutput sb, ContentEditorContainerComponent cmp, URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) { + ContainerSettings settings = cmp.getContainerSettings(); + List<ContainerColumn> columns = settings.getColumns(); + int numOfColumns = settings.getNumOfColumns(); + List<String> cssColumns = ContainerCSSColumns.getCssColumns(numOfColumns); + for(int i=0; i<numOfColumns; i++) { + sb.append("<div id='occ_").append(cmp.getElementId()).append("_").append(i).append("' class='") + .append(cssColumns.get(i)).append(" o_page_container_slot o_page_drop' data-oo-slot='").append(i).append("'") + .append(" data-oo-content-editor-url='").append(ubu.getJavascriptURI()).append("'") + .append(" data-oo-page-element-id='").append(cmp.getElementId()).append("'") + .append(" data-oo-page-fragment='").append(cmp.getComponentName()).append("'") + .append(">"); + + sb.append("<div class='o_page_container_slot-inner'>"); + + if(columns != null && i < columns.size()) { + ContainerColumn column = columns.get(i); + for(String elementId:column.getElementIds()) { + Component fragment = cmp.getComponentByElementId(elementId); + if(fragment != null) { + fragment.getHTMLRendererSingleton().render(renderer, sb, fragment, ubu, translator, renderResult, args); + fragment.setDirty(false); + } + } + } + + sb.append("</div>"); + + if(cmp != null) { + sb.append("<div class='o_button_group o_page_add_in_container_grp'><a id='o_ccad_").append(cmp.getElementId()).append("_").append(i).append("' ") + .append("href='#' onclick=\"");// add elements directly in container + ubu.buildXHREvent(sb, "", false, true, + new NameValuePair(VelocityContainer.COMMAND_ID, "add_to_container"), + new NameValuePair("fragment", cmp.getComponentName()), // EditorFragment cmpFragment.getCmpId() + new NameValuePair("column", Integer.toString(i))); + sb.append(" return false;\" class='btn btn-default btn-xs o_page_add_in_container'><i class='o_icon o_icon_add'> </i>"); + sb.append(" <span>").append(translator.translate("add.element")).append("</span></a></div>"); + } + sb.append("</div>"); + } + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragment.java b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragment.java new file mode 100644 index 0000000000000000000000000000000000000000..60381fd54e10f9c41b0dfccf85987760a4f2eeec --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragment.java @@ -0,0 +1,49 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.component; + +import org.olat.core.gui.components.ComponentCollection; +import org.olat.modules.ceditor.PageElement; + +/** + * + * Initial date: 9 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public interface ContentEditorFragment extends ComponentCollection { + + public String getElementId(); + + public PageElement getElement(); + + public boolean isEditMode(); + + public void setEditMode(boolean editMode); + + public boolean isDeleteable(); + + public void setDeleteable(boolean enable); + + public boolean isMoveable(); + + public void setMoveable(boolean enable); + +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragmentComponent.java b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragmentComponent.java new file mode 100644 index 0000000000000000000000000000000000000000..de2c1e07473ac8bd45525c76a1daf776f7f4574b --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragmentComponent.java @@ -0,0 +1,238 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.component; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.apache.logging.log4j.Logger; +import org.olat.core.gui.UserRequest; +import org.olat.core.gui.components.Component; +import org.olat.core.gui.components.ComponentEventListener; +import org.olat.core.gui.components.ComponentRenderer; +import org.olat.core.gui.components.form.flexible.impl.FormBaseComponentImpl; +import org.olat.core.gui.components.link.Link; +import org.olat.core.gui.components.velocity.VelocityContainer; +import org.olat.core.gui.control.Controller; +import org.olat.core.gui.control.ControllerEventListener; +import org.olat.core.gui.control.Event; +import org.olat.core.logging.Tracing; +import org.olat.modules.ceditor.PageElement; +import org.olat.modules.ceditor.PageElementEditorController; +import org.olat.modules.ceditor.ui.PageElementTarget; +import org.olat.modules.ceditor.ui.event.DeleteElementEvent; +import org.olat.modules.ceditor.ui.event.DropToPageElementEvent; +import org.olat.modules.ceditor.ui.event.EditElementEvent; +import org.olat.modules.ceditor.ui.event.EditPageElementEvent; +import org.olat.modules.ceditor.ui.event.MoveDownElementEvent; +import org.olat.modules.ceditor.ui.event.MoveUpElementEvent; +import org.olat.modules.ceditor.ui.event.OpenAddElementEvent; +import org.olat.modules.ceditor.ui.event.PositionEnum; + +/** + * + * Initial date: 6 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class ContentEditorFragmentComponent extends FormBaseComponentImpl implements ContentEditorFragment, ComponentEventListener, ControllerEventListener { + + private static final Logger log = Tracing.createLoggerFor(ContentEditorFragmentComponent.class); + private static final ContentEditorFragmentComponentRenderer RENDERER = new ContentEditorFragmentComponentRenderer(); + + private boolean editMode = false; + private boolean moveable = false; + private boolean deleteable = false; + private Controller editorPart; + private final PageElement pageElement; + + public ContentEditorFragmentComponent(String name, PageElement pageElement, Controller editorPart) { + super(name); + this.editorPart = editorPart; + this.pageElement = pageElement; + setDomReplacementWrapperRequired(false); + } + + @Override + public boolean isEditMode() { + return editMode; + } + + @Override + public void setEditMode(boolean editMode) { + this.editMode = editMode; + doEditFragment(null, editMode); + } + + @Override + public boolean isDeleteable() { + return deleteable; + } + + @Override + public void setDeleteable(boolean enable) { + deleteable = enable; + } + + @Override + public boolean isMoveable() { + return moveable; + } + + @Override + public void setMoveable(boolean enable) { + this.moveable = enable; + } + + @Override + public String getElementId() { + return pageElement.getId(); + } + + @Override + public PageElement getElement() { + return pageElement; + } + + public boolean isDropppable() { + return false; + } + + public Component getPageElementComponent() { + return editorPart.getInitialComponent(); + } + + public List<Link> getAdditionalTools() { + if(editorPart instanceof PageElementEditorController) { + return ((PageElementEditorController)editorPart).getOptionLinks(); + } + return Collections.emptyList(); + } + + @Override + protected void doDispatchRequest(UserRequest ureq) { + String cmd = ureq.getParameter(VelocityContainer.COMMAND_ID); + String fragment = ureq.getParameter("fragment"); + if(cmd != null && fragment != null && getComponentName().equals(fragment)) { + switch(cmd) { + case "edit_fragment": + doEditFragment(ureq, true); + fireEvent(ureq, new EditElementEvent(pageElement.getId())); + break; + case "add_element_above": + String aboveLinkId = "o_ccaab_".concat(getDispatchID()); + fireEvent(ureq, new OpenAddElementEvent(aboveLinkId, this, PageElementTarget.above)); + break; + case "add_element_below": + String belowLinkId = "o_ccabe_".concat(getDispatchID()); + fireEvent(ureq, new OpenAddElementEvent(belowLinkId, this, PageElementTarget.below)); + break; + case "save_element": + doCloseEditFragment(); + break; + case "delete_element": + fireEvent(ureq, new DeleteElementEvent(this)); + break; + case "move_up": + fireEvent(ureq, new MoveUpElementEvent(this)); + break; + case "move_down": + fireEvent(ureq, new MoveDownElementEvent(this)); + break; + case "drop_fragment": + doDropFragment(ureq); + break; + default: + log.info("Dispatch fragment: {} {}", fragment, cmd); + break; + } + } + } + + @Override + public void dispatchEvent(UserRequest ureq, Controller source, Event event) { + // + } + + @Override + public void dispatchEvent(UserRequest ureq, Component source, Event event) { + // + } + + private void doDropFragment(UserRequest ureq) { + String sourceId = ureq.getParameter("source"); + String position = ureq.getParameter("position"); + fireEvent(ureq, new DropToPageElementEvent(sourceId, this, + PositionEnum.valueOf(position, PositionEnum.bottom))); + } + + private void doEditFragment(UserRequest ureq, boolean editMode) { + this.editMode = editMode; + if(editorPart instanceof PageElementEditorController) { + PageElementEditorController editorCtrl = (PageElementEditorController)editorPart; + if(editorCtrl.isEditMode() != editMode) { + ((PageElementEditorController)editorPart).setEditMode(editMode); + setDirty(true); + if(editMode) { + fireEvent(ureq, new EditPageElementEvent(this)); + } + } + } else { + setDirty(true); + if(editMode) { + fireEvent(ureq, new EditPageElementEvent(this)); + } + } + } + + private void doCloseEditFragment() { + this.editMode = false; + if(editorPart instanceof PageElementEditorController) { + ((PageElementEditorController)editorPart).setEditMode(false); + } + setDirty(true); + } + + @Override + public Component getComponent(String name) { + for(Component cmp:getComponents()) { + if(name.equals(cmp.getComponentName())) { + return cmp; + } + } + return null; + } + + @Override + public Iterable<Component> getComponents() { + List<Component> components = new ArrayList<>(); + components.add(editorPart.getInitialComponent()); + if(editorPart instanceof PageElementEditorController) { + components.addAll(((PageElementEditorController)editorPart).getOptionLinks()); + } + return components; + } + + @Override + public ComponentRenderer getHTMLRendererSingleton() { + return RENDERER; + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragmentComponentRenderer.java b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragmentComponentRenderer.java new file mode 100644 index 0000000000000000000000000000000000000000..357ba73081fff9a6d22cbadaff59da5d1899d91e --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/component/ContentEditorFragmentComponentRenderer.java @@ -0,0 +1,130 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.component; + +import java.util.List; + +import org.olat.core.gui.components.Component; +import org.olat.core.gui.components.link.Link; +import org.olat.core.gui.render.RenderResult; +import org.olat.core.gui.render.Renderer; +import org.olat.core.gui.render.StringOutput; +import org.olat.core.gui.render.URLBuilder; +import org.olat.core.gui.translator.Translator; + +/** + * + * Initial date: 6 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class ContentEditorFragmentComponentRenderer extends AbstractContentEditorComponentRenderer { + + @Override + public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, + RenderResult renderResult, String[] args) { + ContentEditorFragmentComponent cmp = (ContentEditorFragmentComponent)source; + render(renderer, sb, cmp, ubu, translator, renderResult, args); + } + + private void render(Renderer renderer, StringOutput sb, ContentEditorFragmentComponent cmp, URLBuilder ubu, + Translator translator, RenderResult renderResult, String[] args) { + if(cmp.isEditMode()) { + renderEdit(renderer, sb, cmp, ubu, translator, renderResult, args); + } else { + renderReadOnly(renderer, sb, cmp, ubu, translator, renderResult, args); + + // prevent dirty components which are not linked to the DOM tree + List<Link> additionalTools = cmp.getAdditionalTools(); + if(additionalTools != null && !additionalTools.isEmpty()) { + for(Link additionalTool:additionalTools) { + additionalTool.setDirty(false); + } + } + } + } + + private void renderEdit(Renderer renderer, StringOutput sb, ContentEditorFragmentComponent cmp, + URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) { + + URLBuilder fragmentUbu = ubu.createCopyFor(cmp); + Renderer fr = Renderer.getInstance(cmp, translator, fragmentUbu, new RenderResult(), renderer.getGlobalSettings()); + + sb.append("<div id='o_c").append(cmp.getDispatchID()).append("' class='o_page_fragment_edit' data-oo-page-fragment='").append(cmp.getComponentName()).append("'>"); + + renderAboveTools(renderer, sb, cmp, fragmentUbu, translator, renderResult, args); + renderPageUpDown(sb, cmp, fragmentUbu, translator); + + sb.append("<div id='o_cce").append(cmp.getDispatchID()).append("' data-oo-page-fragment='").append(cmp.getComponentName()).append("'") + .append(" data-oo-page-element-id='").append(cmp.getElementId()).append("'") + .append(" data-oo-content-editor-url='").append(fr.getUrlBuilder().getJavascriptURI()).append("'") + .append(" class='o_page_part o_page_edit'>"); + + Component subCmp = cmp.getPageElementComponent(); + subCmp.getHTMLRendererSingleton().render(fr, sb, subCmp, fragmentUbu, translator, renderResult, args); + subCmp.setDirty(false); + sb.append("</div>"); + + renderAddBelow(sb, cmp, fragmentUbu, translator); + + sb.append("</div>"); + } + + private void renderAboveTools(Renderer renderer, StringOutput sb, ContentEditorFragmentComponent cmp, URLBuilder fragmentUbu, + Translator translator, RenderResult renderResult, String[] args) { + sb.append("<div class='o_page_tools_above clearfix'>"); + + renderAddAbove(sb, cmp, fragmentUbu, translator); + + sb.append("<div class='o_page_others_above'>"); + + renderClose(sb, cmp, fragmentUbu, translator); + renderDelete(sb, cmp, fragmentUbu, translator); + + List<Link> additionalTools = cmp.getAdditionalTools(); + if(additionalTools != null && !additionalTools.isEmpty()) { + for(Link additionalTool:additionalTools) { + Renderer fr = Renderer.getInstance(cmp, translator, fragmentUbu, new RenderResult(), renderer.getGlobalSettings()); + URLBuilder aubu = fragmentUbu.createCopyFor(additionalTool); + additionalTool.getHTMLRendererSingleton().render(fr, sb, additionalTool, aubu, translator, renderResult, args); + additionalTool.setDirty(false); + } + } + + sb.append("</div>") // o_page_others_above + .append("</div>");// o_page_tools_above + } + + private void renderReadOnly(Renderer renderer, StringOutput sb, ContentEditorFragmentComponent cmp, + URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) { + + URLBuilder fragmentUbu = ubu.createCopyFor(cmp); + Renderer fr = Renderer.getInstance(cmp, translator, fragmentUbu, new RenderResult(), renderer.getGlobalSettings()); + + sb.append("<div id='o_c").append(cmp.getDispatchID()).append("' data-oo-page-fragment='").append(cmp.getComponentName()).append("'") + .append(" data-oo-page-element-id='").append(cmp.getElementId()).append("'") + .append(" data-oo-content-editor-url='").append(fr.getUrlBuilder().getJavascriptURI()).append("'") + .append(" class='o_page_part o_page_part_view o_page_drop'>"); + Component subCmp = cmp.getPageElementComponent(); + subCmp.getHTMLRendererSingleton().render(fr, sb, subCmp, fragmentUbu, translator, renderResult, args); + subCmp.setDirty(false); + sb.append("</div>"); + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/AddElementEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/AddElementEvent.java index 3a97edbabed1719ce534118bb1fc0ae6e29a17a1..0c5d679ada9b563685c40e0175f2a6c28f08c6f3 100644 --- a/src/main/java/org/olat/modules/ceditor/ui/event/AddElementEvent.java +++ b/src/main/java/org/olat/modules/ceditor/ui/event/AddElementEvent.java @@ -22,6 +22,7 @@ package org.olat.modules.ceditor.ui.event; import org.olat.core.gui.control.Event; import org.olat.modules.ceditor.PageElementHandler; import org.olat.modules.ceditor.ui.PageElementTarget; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; import org.olat.modules.ceditor.ui.model.EditorFragment; /** @@ -38,14 +39,16 @@ public class AddElementEvent extends Event { private final PageElementTarget target; private final PageElementHandler handler; private final EditorFragment referenceFragment; + private final ContentEditorFragment referenceComponent; - public AddElementEvent(EditorFragment referenceFragment, PageElementHandler handler, - PageElementTarget target, int containerColumn) { + public AddElementEvent(EditorFragment referenceFragment, ContentEditorFragment referenceComponent, + PageElementHandler handler, PageElementTarget target, int containerColumn) { super("pf-add-above-element"); this.target = target; this.handler = handler; this.containerColumn = containerColumn; this.referenceFragment = referenceFragment; + this.referenceComponent = referenceComponent; } public PageElementTarget getTarget() { @@ -60,6 +63,10 @@ public class AddElementEvent extends Event { return referenceFragment; } + public ContentEditorFragment getReferenceComponent() { + return referenceComponent; + } + public int getContainerColumn() { return containerColumn; } diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/CloseElementsEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/CloseElementsEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..6de74e1a5208d6fb27e4820dd7af3b4155f69dcd --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/CloseElementsEvent.java @@ -0,0 +1,38 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; + +/** + * + * Initial date: 24 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class CloseElementsEvent extends Event { + + private static final long serialVersionUID = 4308317625088526014L; + + public CloseElementsEvent() { + super("ed-close-elements"); + } + +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/DeleteElementEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/DeleteElementEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..9dc5424f30b5c502f0f68d0a0e267ced2c0de4fe --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/DeleteElementEvent.java @@ -0,0 +1,48 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; + +/** + * + * Initial date: 24 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class DeleteElementEvent extends Event { + + private static final long serialVersionUID = 3300706246686745496L; + + public static final String DELETE_ELEMENT = "ce-delete-element"; + + private final ContentEditorFragment component; + + public DeleteElementEvent(ContentEditorFragment component) { + super(DELETE_ELEMENT); + this.component = component; + } + + public ContentEditorFragment getComponent() { + return component; + } + +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/DropToEditorEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/DropToEditorEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..4d64f09ce355efefdd4cac00f5308811222c8ba9 --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/DropToEditorEvent.java @@ -0,0 +1,58 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; +import org.olat.modules.ceditor.ui.component.ContentEditorComponent; + +/** + * + * Initial date: 18 févr. 2020<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class DropToEditorEvent extends Event { + + private static final long serialVersionUID = -1824866150334642515L; + public static final String DROP_TO_EDITOR = "drop-to-editor"; + + private final PositionEnum position; + private final String sourceComponentId; + private final ContentEditorComponent targetComponent; + + public DropToEditorEvent(String sourceComponentId, ContentEditorComponent targetComponent, PositionEnum position) { + super(DROP_TO_EDITOR); + this.sourceComponentId = sourceComponentId; + this.targetComponent = targetComponent; + this.position = position; + } + + public String getSourceComponentId() { + return sourceComponentId; + } + + public PositionEnum getPosition() { + return position; + } + + public ContentEditorComponent getTargetComponent() { + return targetComponent; + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/DropToPageElementEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/DropToPageElementEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..bc8868403f3b3c32fd0a65c35077ce806079b4fd --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/DropToPageElementEvent.java @@ -0,0 +1,73 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; +import org.olat.modules.ceditor.ui.component.ContentEditorContainerComponent; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; + +/** + * + * Initial date: 27 janv. 2020<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class DropToPageElementEvent extends Event { + + private static final long serialVersionUID = -1824866150334642515L; + public static final String DROP_TO_ELEMENT = "drop-to-page-element"; + + private final int slot; + private final PositionEnum position; + private final String sourceComponentId; + private final ContentEditorFragment targetComponent; + + public DropToPageElementEvent(String sourceComponentId, ContentEditorFragment targetComponent, PositionEnum position) { + super(DROP_TO_ELEMENT); + slot = -1; + this.position = position; + this.sourceComponentId = sourceComponentId; + this.targetComponent = targetComponent; + } + + public DropToPageElementEvent(String sourceComponentId, ContentEditorContainerComponent targetComponent, int slot, PositionEnum position) { + super(DROP_TO_ELEMENT); + this.slot = slot; + this.position = position; + this.sourceComponentId = sourceComponentId; + this.targetComponent = targetComponent; + } + + public int getSlot() { + return slot; + } + + public PositionEnum getPosition() { + return position; + } + + public String getSourceComponentId() { + return sourceComponentId; + } + + public ContentEditorFragment getTargetComponent() { + return targetComponent; + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/EditElementEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/EditElementEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..3c62ca726f64c1a65e4899ca87f6d37b5aafe860 --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/EditElementEvent.java @@ -0,0 +1,45 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; + +/** + * + * Initial date: 24 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class EditElementEvent extends Event { + + private static final long serialVersionUID = 7174456756226096986L; + public static final String EDIT_ELEMENT = "edit-element"; + + private final String elementId; + + public EditElementEvent(String elementId) { + super(EDIT_ELEMENT); + this.elementId = elementId; + } + + public String getElementId() { + return elementId; + } +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/EditPageElementEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/EditPageElementEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..72a0c2b0aba45712929fd138739652e3a8ec242e --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/EditPageElementEvent.java @@ -0,0 +1,48 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; + +/** + * + * Initial date: 10 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class EditPageElementEvent extends Event { + + private static final long serialVersionUID = -6301222775215638526L; + + public static final String EDIT_FRAGMENT = "edit-element"; + + private final ContentEditorFragment fragment; + + public EditPageElementEvent(ContentEditorFragment fragment) { + super(EDIT_FRAGMENT); + this.fragment = fragment; + } + + public ContentEditorFragment getFragment() { + return fragment; + } + +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/MoveDownElementEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/MoveDownElementEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..4cd14e13e5e63bc994cc1a3a3f8a44622b30b68b --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/MoveDownElementEvent.java @@ -0,0 +1,48 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; + +/** + * + * Initial date: 3 janv. 2020<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class MoveDownElementEvent extends Event { + + private static final long serialVersionUID = 3300706246686745496L; + + public static final String MOVE_DOWN_ELEMENT = "ce-move-down-element"; + + private final ContentEditorFragment component; + + public MoveDownElementEvent(ContentEditorFragment component) { + super(MOVE_DOWN_ELEMENT); + this.component = component; + } + + public ContentEditorFragment getComponent() { + return component; + } + +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/MoveUpElementEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/MoveUpElementEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..b1a366c3fe62d64c5d407c33041ce287247e5909 --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/MoveUpElementEvent.java @@ -0,0 +1,48 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; + +/** + * + * Initial date: 3 janv. 2020<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class MoveUpElementEvent extends Event { + + private static final long serialVersionUID = 3300706246686745496L; + + public static final String MOVE_UP_ELEMENT = "ce-move-up-element"; + + private final ContentEditorFragment component; + + public MoveUpElementEvent(ContentEditorFragment component) { + super(MOVE_UP_ELEMENT); + this.component = component; + } + + public ContentEditorFragment getComponent() { + return component; + } + +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/OpenAddElementEvent.java b/src/main/java/org/olat/modules/ceditor/ui/event/OpenAddElementEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..5ddb43f97c9fa82ad82728d0b5d170bc26d4b53e --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/OpenAddElementEvent.java @@ -0,0 +1,78 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +import org.olat.core.gui.control.Event; +import org.olat.modules.ceditor.ui.PageElementTarget; +import org.olat.modules.ceditor.ui.component.ContentEditorContainerComponent; +import org.olat.modules.ceditor.ui.component.ContentEditorFragment; + +/** + * + * Initial date: 24 déc. 2019<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class OpenAddElementEvent extends Event { + + private static final long serialVersionUID = 6459899526791954631L; + + public static final String OPEN_ADD_ELEMENT = "ce-open-add-element"; + + private final int column; + private final String dispatchId; + private final PageElementTarget target; + private final ContentEditorFragment component; + + public OpenAddElementEvent(String dispatchId, ContentEditorFragment component, PageElementTarget target) { + super(OPEN_ADD_ELEMENT); + this.dispatchId = dispatchId; + this.component = component; + this.target = target; + this.column = -1; + } + + public OpenAddElementEvent(String dispatchId, ContentEditorContainerComponent component, PageElementTarget target, int column) { + super(OPEN_ADD_ELEMENT); + this.dispatchId = dispatchId; + this.component = component; + this.target = target; + this.column = column; + } + + public String getDispatchId() { + return dispatchId; + } + + public ContentEditorFragment getComponent() { + return component; + } + + public PageElementTarget getTarget() { + return target; + } + + public int getColumn() { + return column; + } + + + +} diff --git a/src/main/java/org/olat/modules/ceditor/ui/event/PositionEnum.java b/src/main/java/org/olat/modules/ceditor/ui/event/PositionEnum.java new file mode 100644 index 0000000000000000000000000000000000000000..17c30984c14b80f732e121a14ce66c3e09a9c6cb --- /dev/null +++ b/src/main/java/org/olat/modules/ceditor/ui/event/PositionEnum.java @@ -0,0 +1,41 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.ceditor.ui.event; + +/** + * + * Initial date: 18 févr. 2020<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public enum PositionEnum { + + top, + bottom; + + public static final PositionEnum valueOf(String val, PositionEnum def) { + for(PositionEnum position:PositionEnum.values()) { + if(position.name().equals(val)) { + return position; + } + } + return def; + } +} diff --git a/src/main/java/org/olat/modules/co/ContactForm.java b/src/main/java/org/olat/modules/co/ContactForm.java index 929c2775c1429b623a154dd4e39170b21163cd37..2248d8bdbdb7dde83a1570aa0f4c30b47ca5577f 100644 --- a/src/main/java/org/olat/modules/co/ContactForm.java +++ b/src/main/java/org/olat/modules/co/ContactForm.java @@ -38,6 +38,7 @@ import org.olat.core.gui.components.form.flexible.FormItem; import org.olat.core.gui.components.form.flexible.FormItemContainer; import org.olat.core.gui.components.form.flexible.elements.FileElement; import org.olat.core.gui.components.form.flexible.elements.FormLink; +import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; import org.olat.core.gui.components.form.flexible.elements.RichTextElement; import org.olat.core.gui.components.form.flexible.elements.SelectionElement; import org.olat.core.gui.components.form.flexible.elements.SingleSelection; @@ -107,10 +108,14 @@ public class ContactForm extends FormBasicController { private boolean readOnly=false; private boolean hasMsgCancel=false; private boolean hasMsgSave=true; + private boolean optional=false; private static final String NLS_CONTACT_SEND_CP_FROM = "contact.cp.from"; private SelectionElement tcpfrom; private static final String NLS_CONTACT_TEMPLATES = "contact.templates"; private SingleSelection templateEl; + private static final String[] optionalKeys = new String[] { "send" }; + private static final String NLS_CONTACT_SEND = "contact.send"; + private MultipleSelectionElement sendEl; private Identity emailFrom; private File attachementTempDir; private long attachmentSize = 0l; @@ -142,7 +147,12 @@ public class ContactForm extends FormBasicController { this.contactAttachmentMaxSizeInMb = CoreSpringFactory.getImpl(MailModule.class).getMaxSizeForAttachement(); userManager = CoreSpringFactory.getImpl(UserManager.class); initForm(ureq); - } + } + + public void setOptional(boolean optional) { + this.optional = optional; + sendEl.setVisible(optional); + } public void setSubject(final String defaultSubject) { tsubject.setValue(defaultSubject); @@ -218,10 +228,10 @@ public class ContactForm extends FormBasicController { @Override public boolean validateFormLogic(UserRequest ureq) { - - if(readOnly){ + if(readOnly || (optional && !sendEl.isSelected(0))) { return true; } + boolean fromMailAddOk = true; if(tfrom.isEnabled()) { String mailInputValue = tfrom.getValue().trim(); @@ -286,6 +296,10 @@ public class ContactForm extends FormBasicController { } return retVal; } + + public boolean isSend() { + return !optional || sendEl.isAtLeastSelected(1); + } public String getSubject() { return tsubject.getValue(); @@ -410,6 +424,8 @@ public class ContactForm extends FormBasicController { if(templateEl.isOneSelected() && StringHelper.isLong(templateEl.getSelectedKey())) { selectTemplate(Integer.parseInt(templateEl.getSelectedKey())); } + } else if(sendEl == source) { + updateUI(); } super.formInnerEvent(ureq, source, event); } @@ -421,6 +437,20 @@ public class ContactForm extends FormBasicController { setBody(template.getBodyTemplate()); } } + + private void updateUI() { + boolean sendMail = sendEl.isAtLeastSelected(1); + + tto.setVisible(sendMail && !recipientsAreEditable); + ttoBig.setVisible(sendMail && recipientsAreEditable); + tfrom.setVisible(sendMail); + tsubject.setVisible(sendMail); + tbody.setVisible(sendMail); + uploadCont.setVisible(sendMail); + attachmentEl.setVisible(sendMail); + tcpfrom.setVisible(sendMail); + templateEl.setVisible(sendMail && mailTemplates != null && mailTemplates.size() > 1); + } @Override protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { @@ -428,6 +458,12 @@ public class ContactForm extends FormBasicController { setFormTitle("header.newcntctmsg"); + String[] sendValues = new String[] { translate(NLS_CONTACT_SEND) }; + sendEl = uifactory.addCheckboxesHorizontal("toptional", null, formLayout, optionalKeys, sendValues); + sendEl.setVisible(optional); + sendEl.select(optionalKeys[0], true); + sendEl.addActionListener(FormEvent.ONCHANGE); + templateEl = uifactory.addDropdownSingleselect("ttemplates", NLS_CONTACT_TEMPLATES, formLayout, new String[0], new String[0]); templateEl.setVisible(false); templateEl.setAllowNoSelection(true); diff --git a/src/main/java/org/olat/modules/co/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/modules/co/_i18n/LocalStrings_de.properties index 57d0472afdbaabc84034ab9143357b24eb44cd8a..789d1ad566c39c2213e6da9132376ab5a71a7798 100644 --- a/src/main/java/org/olat/modules/co/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/modules/co/_i18n/LocalStrings_de.properties @@ -3,6 +3,7 @@ contact.body=Nachricht contact.cp.from = Kopie an Absender contact.list.sender = Absender contact.from=Von +contact.send=E-Mail versenden contact.subject=Betreff contact.templates=Vorlage contact.to=An diff --git a/src/main/java/org/olat/modules/co/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/modules/co/_i18n/LocalStrings_en.properties index e606d351bf224cfabde1261de2814794c35fdd3b..4d61afd86952558fea05381365815264168dfc15 100644 --- a/src/main/java/org/olat/modules/co/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/modules/co/_i18n/LocalStrings_en.properties @@ -5,6 +5,7 @@ contact.body=Message contact.cp.from=Copy sent to addresser contact.from=From contact.list.sender=Addresser +contact.send=Send e-mail contact.subject=Subject contact.templates=Templates contact.to=To diff --git a/src/main/java/org/olat/modules/co/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/co/_i18n/LocalStrings_fr.properties index 18261af49337f68750299485776cd8009bf2003e..309071b830ec6bee95d46c63a50c717e0a4af3b0 100644 --- a/src/main/java/org/olat/modules/co/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/modules/co/_i18n/LocalStrings_fr.properties @@ -1,11 +1,13 @@ -#Sun Nov 08 12:59:18 CET 2015 +#Sun Mar 01 08:26:13 CET 2020 contact.attachment=Pi\u00E8ce jointe contact.attachment.maxsize=La taille maximale des pi\u00E8ces jointes est de {0} MB contact.body=Message contact.cp.from=Copie \u00E0 l'exp\u00E9diteur contact.from=De contact.list.sender=Exp\u00E9diteur +contact.send=Envoyer un courriel contact.subject=Objet +contact.templates=Mod\u00E8les contact.to=Pour contact.to.groupname.undisclosedrecipients=Destinataire pr\u00E9d\u00E9fini error.field.not.empty=Ce champ ne doit pas \u00EAtre vide. @@ -14,7 +16,7 @@ error.msg.content.nok=L'objet ou le message n'est pas valable. error.msg.notconnectto.smtp=La connection au serveur SMTP <i>{0}</i> n'a pas pu \u00EAtre \u00E9tablie. error.msg.nousers=Le groupe de r\u00E9cepteurs s\u00E9lectionn\u00E9 ne contient aucun participant. Le message ne peut pas \u00EAtre envoy\u00E9. error.msg.send.553=L'adresse de l'exp\u00E9diteur et/ou du destinataire n'est pas correcte. -error.msg.send.invalid.rcps=V\u00E9rifier l'adresse courriel du ou des destinataires suivants: {0} +error.msg.send.invalid.rcps=V\u00E9rifier l'adresse courriel du ou des destinataires suivants\: {0} error.msg.send.no.rcps=Aucun destinataire n'a \u00E9t\u00E9 d\u00E9finie. error.msg.send.nok=Le message n'a pas pu \u00EAtre envoy\u00E9. error.msg.send.partially.nok=Le message n'a pu \u00EAtre envoy\u00E9 que partiellement. diff --git a/src/main/java/org/olat/modules/coach/manager/CoachingDAO.java b/src/main/java/org/olat/modules/coach/manager/CoachingDAO.java index 6c00ffbcf852d0b3cf5ac515f356ff5c50c71cbb..7aeac2cc1e01438afac98f7a92be963e21df0e25 100644 --- a/src/main/java/org/olat/modules/coach/manager/CoachingDAO.java +++ b/src/main/java/org/olat/modules/coach/manager/CoachingDAO.java @@ -878,7 +878,7 @@ public class CoachingDAO { .append(" inner join o_as_entry sg_ae") .append(" on (sg_ae.fk_identity = sg_participant.fk_identity_id and sg_ae.fk_entry = sg_re.repositoryentry_id)") .append(" where sg_re.status ").in(RepositoryEntryStatusEnum.coachPublishedToClosed()) - .append(" and sg_ae.a_entry_root=").appendTrue(); + .append(" and sg_ae.a_entry_root=").appendTrue().append(" and sg_ae.a_completion is not null"); } if(hasOwned) { if(hasCoached) { @@ -895,10 +895,9 @@ public class CoachingDAO { .append(" inner join o_as_entry sg_ae ") .append(" on (sg_ae.fk_identity = sg_participant.fk_identity_id and sg_ae.fk_entry = sg_re.repositoryentry_id)") .append(" where sg_re.status ").in(RepositoryEntryStatusEnum.coachPublishedToClosed()) - .append(" and sg_ae.a_entry_root=").appendTrue(); + .append(" and sg_ae.a_entry_root=").appendTrue().append(" and sg_ae.a_completion is not null"); } sb.append(")") - .append(" and ae.a_completion is not null") .append(" group by ae.fk_identity"); List<?> rawList = dbInstance.getCurrentEntityManager() diff --git a/src/main/java/org/olat/modules/coach/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/coach/ui/_i18n/LocalStrings_fr.properties index c49873d739884ac8aa91eefeb62423bf4bc56bc2..90bfc1c763e9caedd429809f145b88c3cdeb6ee5 100644 --- a/src/main/java/org/olat/modules/coach/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/modules/coach/ui/_i18n/LocalStrings_fr.properties @@ -1,73 +1,77 @@ -#Mon Aug 19 18:06:22 CEST 2019 -error.search.form.notempty=$org.olat.admin.user\:error.search.form.notempty +#Sun Mar 01 08:07:28 CET 2020 +coaching.enabled=Acc\u00E8s coaching +coaching.on=on +coaching.title=Coaching +contact.link=Contacter +contact.title=Contacter courses.menu.title=Mes cours -lectures.mastercoach.menu.title.alt=Classes de cours et gestions des absences -tooltip.of={0} of {1} -table.action.show=$org.olat.course.assessment\:table.action.show -table.header.login=Connect\u00E9 courses.menu.title.alt=Mes cours -next.course=$\:next -next.group=$\:next -search.menu.title=Recherche utilisateurs -coaching.enabled=Acc\u00E8s coaching -passed.false=$org.olat.course.assessment\:passed.false -search.menu.title.alt=Recherche utilisateurs -table.header.progress=Progression -table.header.averageScore=Moyenne -open.course=$\:open -table.header.attended.lectures=$org.olat.modules.lecture.ui\:table.header.attended.lectures -only.active=Actifs seul -results=R\u00E9sultats +details.assessment=Outil d'\u00E9valuation +details.lectures=Cours blocs +details.statement=Attestation de perfomance +error.no.found=Rien trouv\u00E9 +error.search.form.notempty=$org.olat.admin.user\:error.search.form.notempty +error.search.form.too.many=Trop de r\u00E9sultats. Veuillez restreindre votre recherche s'il vous pla\u00EEt. +grading.menu.title.alt=$\:grading.menu.title group.name=Groupe -table.header.lastCoachModificationDate=$org.olat.course.assessment\:table.header.lastCoachModificationDate -table.header.planned.lectures=$org.olat.modules.lecture.ui\:table.header.planned.lectures +groups.menu.title=Mes groupes groups.menu.title.alt=Mes groupes home.link=Carte-de-visite -menu.coaching=$\:site.title -students.menu.title=Mes \u00E9tudiants +lectures.mastercoach.menu.title=Classes +lectures.mastercoach.menu.title.alt=Classes de cours et gestions des absences lectures.teacher.menu.title=Cours blocs -previous.group=$\:previous -contact.title=Contacter +lectures.teacher.menu.title.alt=Administration des cours blocs et des absences main.menu.title=$\:site.title -table.header.score=$org.olat.course.assessment\:table.header.score -table.header.countCourses=\# cours -table.header.course.name=Cours +main.menu.title.alt=$\:site.title.alt +menu.coaching=$\:site.title +menu.coaching.alt=$\:site.title.alt +next=Suivant +next.course=$\:next +next.group=$\:next next.student=$\:next -passed.true=$org.olat.course.assessment\:passed.true -groups.menu.title=Mes groupes +only.active=Actifs seul +open=Ouvrir +open.course=$\:open open.group=$\:open -lectures.teacher.menu.title.alt=Administration des cours blocs et des absences -table.header.absent.lectures=$org.olat.modules.lecture.ui\:table.header.absent.lectures -coaching.on=on -table.header.passed=$org.olat.course.assessment\:table.header.passed -error.no.found=Rien trouv\u00E9 -next=Suivant +passed.false=$org.olat.course.assessment\:passed.false +passed.true=$org.olat.course.assessment\:passed.true +previous=Pr\u00E9c\u00E9dent +previous.course=$\:previous +previous.group=$\:previous +previous.student=$\:previous +progress.of={0} sur {1} +results=R\u00E9sultats +search=Chercher +search.form.login=Nom d'utilisateur +search.menu.title=Recherche utilisateurs +search.menu.title.alt=Recherche utilisateurs +site.title=Coaching site.title.alt=Coaching -coaching.title=Coaching +student.name=Nom students.details={0} {1}/{2} +students.menu.title=Mes \u00E9tudiants +students.menu.title.alt=Mes \u00E9tudiants +table.action.show=$org.olat.course.assessment\:table.action.show +table.header.absent.lectures=$org.olat.modules.lecture.ui\:table.header.absent.lectures +table.header.attended.lectures=$org.olat.modules.lecture.ui\:table.header.attended.lectures +table.header.authorized.absence=$org.olat.modules.lecture.ui\:table.header.authorized.absence +table.header.averageScore=Moyenne table.header.certificate=Certificat +table.header.completion=$org.olat.modules.assessment.ui\:learning.progress +table.header.countCourses=\# cours +table.header.countStudents=\# participants +table.header.course.access=Cycle de vie +table.header.course.name=Cours +table.header.lastCoachModificationDate=$org.olat.course.assessment\:table.header.lastCoachModificationDate table.header.lastScoreDate=$org.olat.course.assessment\:table.header.lastScoreDate table.header.lastUserModificationDate=$org.olat.course.assessment\:table.header.lastUserModificationDate -details.lectures=Cours blocs -table.header.course.access=Cycle de vie -search=Chercher -table.header.show=$org.olat.course.assessment\:table.header.show -search.form.login=Nom d'utilisateur -error.search.form.too.many=Trop de r\u00E9sultats. Veuillez restreindre votre recherche s'il vous pla\u00EEt. -details.assessment=Outil d'\u00E9valuation -lectures.mastercoach.menu.title=Classes -table.header.authorized.absence=$org.olat.modules.lecture.ui\:table.header.authorized.absence -menu.coaching.alt=$\:site.title.alt -previous=Pr\u00E9c\u00E9dent +table.header.login=Connect\u00E9 +table.header.number.assessments=\u00C9valuations +table.header.passed=$org.olat.course.assessment\:table.header.passed +table.header.planned.lectures=$org.olat.modules.lecture.ui\:table.header.planned.lectures +table.header.progress=Progression table.header.recertification=Recertification -details.statement=Attestation de perfomance -previous.student=$\:previous -site.title=Coaching -student.name=Nom -table.header.countStudents=\# participants -previous.course=$\:previous -students.menu.title.alt=Mes \u00E9tudiants +table.header.score=$org.olat.course.assessment\:table.header.score +table.header.show=$org.olat.course.assessment\:table.header.show table.header.unauthorized.absence=$org.olat.modules.lecture.ui\:table.header.unauthorized.absence -contact.link=Contacter -main.menu.title.alt=$\:site.title.alt -open=Ouvrir +tooltip.of={0} of {1} diff --git a/src/main/java/org/olat/modules/cp/CPAssessmentProvider.java b/src/main/java/org/olat/modules/cp/CPAssessmentProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..c8305fb35eb4a969efde3e336204ae6875754bdc --- /dev/null +++ b/src/main/java/org/olat/modules/cp/CPAssessmentProvider.java @@ -0,0 +1,36 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.cp; + +import org.olat.modules.assessment.model.AssessmentEntryStatus; + +/** + * + * Initial date: 26 Feb 2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +public interface CPAssessmentProvider { + + AssessmentEntryStatus onPageVisited(String itemIdentifier); + + AssessmentEntryStatus getStatus(String itemIdentifier); + +} diff --git a/src/main/java/org/olat/modules/cp/CPDisplayController.java b/src/main/java/org/olat/modules/cp/CPDisplayController.java index 584bb7800e1aa3a537a06dd7d76e4f9178687cda..2e1a8eb349060cdfa5b88894888f9a59761f5902 100644 --- a/src/main/java/org/olat/modules/cp/CPDisplayController.java +++ b/src/main/java/org/olat/modules/cp/CPDisplayController.java @@ -35,6 +35,7 @@ import org.olat.core.gui.components.htmlsite.HtmlStaticPageComponent; import org.olat.core.gui.components.htmlsite.NewInlineUriEvent; import org.olat.core.gui.components.link.Link; import org.olat.core.gui.components.link.LinkFactory; +import org.olat.core.gui.components.tree.GenericTreeNode; import org.olat.core.gui.components.tree.MenuTree; import org.olat.core.gui.components.tree.TreeEvent; import org.olat.core.gui.components.tree.TreeNode; @@ -68,6 +69,8 @@ import org.olat.core.util.vfs.VFSItem; import org.olat.core.util.vfs.VFSLeaf; import org.olat.core.util.vfs.VFSMediaResource; import org.olat.course.ICourse; +import org.olat.modules.assessment.model.AssessmentEntryStatus; +import org.olat.modules.cp.CPManifestTreeModel.UserObject; import org.olat.search.SearchModule; import org.olat.search.SearchServiceUIFactory; import org.olat.search.SearchServiceUIFactory.DisplayOption; @@ -101,24 +104,28 @@ public class CPDisplayController extends BasicController implements Activateable private CPSelectPrintPagesController printController; private CloseableModalController printPopup; + + private final CPAssessmentProvider cpAssessmentProvider; @Autowired private SearchModule searchModule; /** * @param ureq - * @param cpRoot * @param showMenu * @param showNavigation Show the next/previous link * @param activateFirstPage * @param identPrefix In a course, set a unique prefix per node, if someone set 2x the same CPs in the course, the node identifiers * of the CP elements must be different but predictable + * @param cpAssessmentProvider + * @param cpRoot */ public CPDisplayController(UserRequest ureq, WindowControl wControl, VFSContainer rootContainer, boolean showMenu, boolean showNavigation, boolean activateFirstPage, boolean showPrint, DeliveryOptions deliveryOptions, String initialUri, OLATResourceable ores, - String identPrefix, boolean randomizeMapper) { + String identPrefix, boolean randomizeMapper, CPAssessmentProvider cpAssessmentProvider) { super(ureq, wControl); this.rootContainer = rootContainer; + this.cpAssessmentProvider = cpAssessmentProvider; // wrapper velocity container for page content myContent = createVelocityContainer("cpcontent"); @@ -146,7 +153,7 @@ public class CPDisplayController extends BasicController implements Activateable } // initialize tree model in any case try { - ctm = new CPManifestTreeModel((VFSLeaf) mani, identPrefix); + ctm = new CPManifestTreeModel((VFSLeaf) mani, identPrefix, cpAssessmentProvider); } catch (IOException e) { showError("error.manifest.corrupted"); return; @@ -203,7 +210,8 @@ public class CPDisplayController extends BasicController implements Activateable } else node = null; } if (node != null) { // node.isAccessible - String nodeUri = (String) node.getUserObject(); + UserObject userObject = (UserObject)node.getUserObject(); + String nodeUri = userObject.getHref(); if (cpContentCtr != null) cpContentCtr.setCurrentURI(nodeUri); if (cpComponent != null) cpComponent.setCurrentURI(nodeUri); if (showMenu) cpTree.setSelectedNodeId(node.getIdent()); @@ -211,13 +219,11 @@ public class CPDisplayController extends BasicController implements Activateable // empty anyway and saves one user click) selNodeId = node.getIdent(); + onPageVisited(node); nodeInfo = LoggingResourceable.wrapCpNode(nodeUri); updateNextPreviousLink(node); - if(node.getUserObject() != null) { - String identifierRes = (String)node.getUserObject(); - OLATResourceable pOres = OresHelper.createOLATResourceableInstanceWithoutCheck("path=" + identifierRes, 0l); - addToHistory(ureq, pOres, null); - } + OLATResourceable pOres = OresHelper.createOLATResourceableInstanceWithoutCheck("path=" + nodeUri, 0l); + addToHistory(ureq, pOres, null); } } else if (initialUri != null) { // set page @@ -234,7 +240,7 @@ public class CPDisplayController extends BasicController implements Activateable } updateNextPreviousLink(newNode); if(newNode.getUserObject() != null) { - String identifierRes = (String)newNode.getUserObject(); + String identifierRes = ((UserObject)newNode.getUserObject()).getHref(); Long id = Long.parseLong(newNode.getIdent()); OLATResourceable pOres = OresHelper.createOLATResourceableInstanceWithoutCheck("path=" + identifierRes, id); addToHistory(ureq, pOres, null); @@ -281,11 +287,6 @@ public class CPDisplayController extends BasicController implements Activateable return cpTree; } - /** - * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest, - * org.olat.core.gui.components.Component, - * org.olat.core.gui.control.Event) - */ @Override public void event(UserRequest ureq, Component source, Event event) { if (source == cpTree) { @@ -450,7 +451,8 @@ public class CPDisplayController extends BasicController implements Activateable } public void switchToPage(UserRequest ureq, TreeNode tn) { - String identifierRes = (String) tn.getUserObject(); + UserObject userObject = (UserObject)tn.getUserObject(); + String identifierRes = userObject.getHref(); OLATResourceable ores = OresHelper.createOLATResourceableInstanceWithoutCheck("path=" + identifierRes, 0l); addToHistory(ureq, ores, null); @@ -487,13 +489,19 @@ public class CPDisplayController extends BasicController implements Activateable } updateNextPreviousLink(tn); + onPageVisited(tn); + ThreadLocalUserActivityLogger.log(CourseLoggingAction.CP_GET_FILE, getClass(), LoggingResourceable.wrapCpNode(identifierRes)); } - /** - * - * @see org.olat.core.gui.control.DefaultController#doDispose(boolean) - */ + private void onPageVisited(TreeNode treeNode) { + UserObject userObject = (UserObject)treeNode.getUserObject(); + String identifier = userObject.getIdentifier(); + AssessmentEntryStatus status = cpAssessmentProvider.onPageVisited(identifier); + String cssClass = CPManifestTreeModel.getItemCssClass(status); + ((GenericTreeNode)treeNode).setCssClass(cssClass); + } + @Override protected void doDispose() { ThreadLocalUserActivityLogger.log(LearningResourceLoggingAction.LEARNING_RESOURCE_CLOSE, getClass()); diff --git a/src/main/java/org/olat/modules/cp/CPManifestTreeModel.java b/src/main/java/org/olat/modules/cp/CPManifestTreeModel.java index 8b1fbd8b6ae3f8bb78602039697fb2a66adfd9b9..e939daa7d058eb45e940931fa0094359072d3c1a 100644 --- a/src/main/java/org/olat/modules/cp/CPManifestTreeModel.java +++ b/src/main/java/org/olat/modules/cp/CPManifestTreeModel.java @@ -50,6 +50,7 @@ import org.olat.core.util.Encoder; import org.olat.core.util.vfs.VFSLeaf; import org.olat.core.util.xml.XMLParser; import org.olat.ims.resources.IMSEntityResolver; +import org.olat.modules.assessment.model.AssessmentEntryStatus; /** * Description:<br> @@ -65,19 +66,23 @@ public class CPManifestTreeModel extends GenericTreeModel { private final List<TreeNode> treeNodes = new ArrayList<>(); private final String identPrefix; private final Logger log = Tracing.createLoggerFor(this.getClass()); + private final CPAssessmentProvider cpAssessmentProvider; /** * Constructor of the content packaging tree model * @param manifest the imsmanifest.xml file + * @param cpAssessmentProvider */ - CPManifestTreeModel(VFSLeaf manifest, String identPrefix) throws IOException { + CPManifestTreeModel(VFSLeaf manifest, String identPrefix, CPAssessmentProvider cpAssessmentProvider) throws IOException { this.identPrefix = identPrefix; + this.cpAssessmentProvider = cpAssessmentProvider; Document doc = loadDocument(manifest); initDocument(doc); } CPManifestTreeModel(String manifest, String identPrefix) throws IOException { this.identPrefix = identPrefix; + this.cpAssessmentProvider = DryRunAssessmentProvider.create(); Document doc = loadDocument(manifest); initDocument(doc); } @@ -195,7 +200,7 @@ public class CPManifestTreeModel extends GenericTreeModel { XPath meta = rootElement.createXPath("//ns:resource[@identifier='" + identifierref + "']"); meta.setNamespaceURIs(nsuris); gtn.setAccessible(true); - gtn.setUserObject(href); + gtn.setUserObject(new UserObject(identifier, href)); if (hrefToTreeNode.containsKey(href)){ log.debug("Duplicate href::" + href + " for identifierref::" + identifierref + " and identifier::" + identifier + ", use first one"); } else { @@ -207,6 +212,7 @@ public class CPManifestTreeModel extends GenericTreeModel { } } else if (item.getName().equals("item")) { gtn.setIconCssClass("o_cp_item"); + gtn.setCssClass(getItemCssClass(identifier)); //set resolved file path directly String identifierref = item.attributeValue("identifierref"); if(identifierref != null) { @@ -216,7 +222,7 @@ public class CPManifestTreeModel extends GenericTreeModel { meta.setNamespaceURIs(nsuris); String href = resources.get(identifierref); if (href != null) { - gtn.setUserObject(href); + gtn.setUserObject(new UserObject(identifier, href)); // allow lookup of a treenode given a href so we can quickly adjust the menu if the user clicks on hyperlinks within the text if (hrefToTreeNode.containsKey(href)){ log.debug("Duplicate href::" + href + " for identifierref::" + identifierref + " and identifier::" + identifier + ", use first one"); @@ -257,6 +263,18 @@ public class CPManifestTreeModel extends GenericTreeModel { return gtn; } + private String getItemCssClass(String identifier) { + AssessmentEntryStatus status = cpAssessmentProvider.getStatus(identifier); + return getItemCssClass(status); + } + + public static String getItemCssClass(AssessmentEntryStatus status) { + if (AssessmentEntryStatus.done.equals(status)) { + return "o_lp_done o_lp_not_in_sequence o_lp_contains_no_sequence"; + } + return "o_lp_ready o_lp_not_in_sequence o_lp_contains_no_sequence"; + } + private Document loadDocument(VFSLeaf documentF) throws IOException { InputStream in = null; Document doc = null; @@ -294,4 +312,24 @@ public class CPManifestTreeModel extends GenericTreeModel { } return doc; } + + public static final class UserObject { + + private final String identifier; + private final String href; + + public UserObject(String identifier, String href) { + this.identifier = identifier; + this.href = href; + } + + public String getIdentifier() { + return identifier; + } + + public String getHref() { + return href; + } + + } } diff --git a/src/main/java/org/olat/modules/cp/CPOfflineReadableManager.java b/src/main/java/org/olat/modules/cp/CPOfflineReadableManager.java index 62be000b01ce0b7ec99e26d1fb2c8607f44ce786..ebf4d8c09cf9f38835d05f9cdb66396ebc8d12a2 100644 --- a/src/main/java/org/olat/modules/cp/CPOfflineReadableManager.java +++ b/src/main/java/org/olat/modules/cp/CPOfflineReadableManager.java @@ -54,6 +54,7 @@ import org.olat.core.util.WebappHelper; import org.olat.core.util.ZipUtil; import org.olat.core.util.vfs.LocalFileImpl; import org.olat.fileresource.FileResourceManager; +import org.olat.modules.cp.CPManifestTreeModel.UserObject; /** * Description: <br> @@ -189,7 +190,7 @@ public class CPOfflineReadableManager { /* first, we do the menu-tree */ File mani = new File(unzippedDir, FILENAME_IMSMANIFEST); LocalFileImpl vfsMani = new LocalFileImpl(mani); - CPManifestTreeModel ctm = new CPManifestTreeModel(vfsMani, ""); + CPManifestTreeModel ctm = new CPManifestTreeModel(vfsMani, "", DryRunAssessmentProvider.create()); TreeNode root = ctm.getRootNode(); // let's take the rootnode title as page title this.rootTitle = root.getTitle(); @@ -260,7 +261,7 @@ public class CPOfflineReadableManager { // available // render current node - String nodeUri = (String) node.getUserObject(); + String nodeUri = node.getUserObject() != null? ((UserObject)node.getUserObject()).getHref(): null; String title = node.getTitle(); String altText = node.getAltText(); diff --git a/src/main/java/org/olat/modules/cp/CPPrintMapper.java b/src/main/java/org/olat/modules/cp/CPPrintMapper.java index d629ab64945022993e6e0a27927836a92cf0df4f..b5894d01ad48e9ccfc4abf168d5a4d6104e27287 100644 --- a/src/main/java/org/olat/modules/cp/CPPrintMapper.java +++ b/src/main/java/org/olat/modules/cp/CPPrintMapper.java @@ -48,6 +48,7 @@ import org.olat.core.util.vfs.VFSContainer; import org.olat.core.util.vfs.VFSItem; import org.olat.core.util.vfs.VFSLeaf; import org.olat.core.util.vfs.VFSMediaResource; +import org.olat.modules.cp.CPManifestTreeModel.UserObject; import org.xml.sax.InputSource; import nu.validator.htmlparser.common.XmlViolationPolicy; @@ -180,7 +181,7 @@ public class CPPrintMapper implements Mapper { for(String nodeId:nodeIds) { HtmlPageHandler parsedPage = null; TreeNode treeNode = ctm.getNodeById(nodeId); - String identifierRes = (String)treeNode.getUserObject(); + String identifierRes = ((UserObject)treeNode.getUserObject()).getHref(); if(StringHelper.containsNonWhitespace(identifierRes)) { VFSItem currentItem = rootDir.resolve(identifierRes); if(currentItem instanceof VFSLeaf) { diff --git a/src/main/java/org/olat/modules/cp/CPUIFactory.java b/src/main/java/org/olat/modules/cp/CPUIFactory.java index 75be2d650447d0c61b3092648348fee60df2ef11..dd561f7d5d896b12149ec5eeea074124db547754 100644 --- a/src/main/java/org/olat/modules/cp/CPUIFactory.java +++ b/src/main/java/org/olat/modules/cp/CPUIFactory.java @@ -69,13 +69,14 @@ public class CPUIFactory { * @param activateFirstPage true to automatically activate the first node with * content * @param initialUri can be NULL, will use first page then + * @param cpAssessmentProvider * @return a CPDisplayController */ public CPDisplayController createContentOnlyCPDisplayController(UserRequest ureq, WindowControl wControl, VFSContainer rootContainer, boolean activateFirstPage, boolean showNavigation, DeliveryOptions deliveryOptions, - String initialUri, OLATResourceable ores, String identPrefix, boolean preview) { + String initialUri, OLATResourceable ores, String identPrefix, boolean preview, CPAssessmentProvider cpAssessmentProvider) { return new CPDisplayController(ureq, wControl, rootContainer, false, showNavigation, activateFirstPage, true, deliveryOptions, - initialUri, ores, identPrefix, preview); + initialUri, ores, identPrefix, preview, cpAssessmentProvider); } /** @@ -89,11 +90,13 @@ public class CPUIFactory { * @param wControl * @param rootContainer The VFS root container where the CP is found on disk * @param showMenu true to display the menu, false to hide the menu + * @param cpAssessmentProvider * @return A main layout controller */ public MainLayout3ColumnsController createMainLayoutController(UserRequest ureq, WindowControl wControl, VFSContainer rootContainer, - boolean showMenu, DeliveryOptions deliveryOptions) { - CPDisplayController cpCtr = new CPDisplayController(ureq, wControl, rootContainer, showMenu, true, true, true, deliveryOptions, null, null, "", false); + boolean showMenu, DeliveryOptions deliveryOptions, CPAssessmentProvider cpAssessmentProvider) { + CPDisplayController cpCtr = new CPDisplayController(ureq, wControl, rootContainer, showMenu, true, true, true, + deliveryOptions, null, null, "", false, cpAssessmentProvider); MainLayout3ColumnsController layoutCtr = new LayoutMain3ColsController(ureq, wControl, cpCtr.getMenuComponent(), cpCtr.getInitialComponent(), rootContainer.getName()); layoutCtr.addDisposableChildController(cpCtr); // cascade disposing requests return layoutCtr; @@ -114,7 +117,8 @@ public class CPUIFactory { */ public LayoutMain3ColsPreviewController createMainLayoutPreviewController(UserRequest ureq, WindowControl wControl, VFSContainer rootContainer, boolean showMenu, DeliveryOptions deliveryOptions) { - CPDisplayController cpCtr = new CPDisplayController(ureq, wControl, rootContainer, showMenu, true, true, true, deliveryOptions, null, null, "", false); + CPDisplayController cpCtr = new CPDisplayController(ureq, wControl, rootContainer, showMenu, true, true, true, + deliveryOptions, null, null, "", false, DryRunAssessmentProvider.create()); LayoutMain3ColsPreviewController layoutCtr = new LayoutMain3ColsPreviewController(ureq, wControl, cpCtr.getMenuComponent(), cpCtr.getInitialComponent(), rootContainer.getName()); layoutCtr.addDisposableChildController(cpCtr); // cascade disposing requests return layoutCtr; @@ -135,7 +139,8 @@ public class CPUIFactory { */ public LayoutMain3ColsController createMainLayoutPreviewController_v2(UserRequest ureq, WindowControl wControl, VFSContainer rootContainer, boolean showMenu, DeliveryOptions deliveryOptions) { - CPDisplayController cpCtr = new CPDisplayController(ureq, wControl, rootContainer, showMenu, true, true, true, deliveryOptions, null, null, "", false); + CPDisplayController cpCtr = new CPDisplayController(ureq, wControl, rootContainer, showMenu, true, true, true, + deliveryOptions, null, null, "", false, DryRunAssessmentProvider.create()); LayoutMain3ColsController layoutCtr = new LayoutMain3ColsController(ureq, wControl, cpCtr.getMenuComponent(), cpCtr.getInitialComponent(), rootContainer.getName()); layoutCtr.addDisposableChildController(cpCtr); // cascade disposing requests layoutCtr.addCssClassToMain("o_preview"); diff --git a/src/main/java/org/olat/modules/cp/DryRunAssessmentProvider.java b/src/main/java/org/olat/modules/cp/DryRunAssessmentProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..46eb53be33d31851aee827a2794f5855c7108a70 --- /dev/null +++ b/src/main/java/org/olat/modules/cp/DryRunAssessmentProvider.java @@ -0,0 +1,52 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.cp; + +import org.olat.modules.assessment.model.AssessmentEntryStatus; + +/** + * + * Initial date: 26 Feb 2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +public class DryRunAssessmentProvider implements CPAssessmentProvider { + + private static final CPAssessmentProvider INSTANCE = new DryRunAssessmentProvider(); + + public static final CPAssessmentProvider create() { + return INSTANCE; + } + + private DryRunAssessmentProvider() { + // + } + + @Override + public AssessmentEntryStatus onPageVisited(String itemIdentifier) { + return null; + } + + @Override + public AssessmentEntryStatus getStatus(String itemIdentifier) { + return null; + } + +} diff --git a/src/main/java/org/olat/modules/cp/PersistingAssessmentProvider.java b/src/main/java/org/olat/modules/cp/PersistingAssessmentProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..af87aad28f7cea642fd84eac80484ea2ee8fe4e6 --- /dev/null +++ b/src/main/java/org/olat/modules/cp/PersistingAssessmentProvider.java @@ -0,0 +1,76 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.cp; + +import java.util.Map; +import java.util.stream.Collectors; + +import org.olat.core.CoreSpringFactory; +import org.olat.core.id.Identity; +import org.olat.modules.assessment.AssessmentEntry; +import org.olat.modules.assessment.AssessmentService; +import org.olat.modules.assessment.model.AssessmentEntryStatus; +import org.olat.repository.RepositoryEntry; + +/** + * + * Initial date: 26 Feb 2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +public class PersistingAssessmentProvider implements CPAssessmentProvider { + + private final Identity identity; + private final RepositoryEntry cpEntry; + + private Map<String, AssessmentEntryStatus> identifierToStatus; + + private AssessmentService assessmentService; + + public static final CPAssessmentProvider create(RepositoryEntry cpEntry, Identity identity) { + return new PersistingAssessmentProvider(cpEntry, identity); + } + + private PersistingAssessmentProvider(RepositoryEntry cpEntry, Identity identity) { + this.identity = identity; + this.cpEntry = cpEntry; + this.assessmentService = CoreSpringFactory.getImpl(AssessmentService.class); + this.identifierToStatus = assessmentService.loadAssessmentEntriesByAssessedIdentity(identity, cpEntry).stream() + .filter(ae -> ae.getSubIdent() != null && ae.getAssessmentStatus() != null) + .collect(Collectors.toMap(AssessmentEntry::getSubIdent, AssessmentEntry::getAssessmentStatus)); + } + + @Override + public AssessmentEntryStatus onPageVisited(String itemIdentifier) { + AssessmentEntry assessmentEntry = assessmentService.getOrCreateAssessmentEntry(identity, null, cpEntry, itemIdentifier, false, null); + if (!AssessmentEntryStatus.done.equals(assessmentEntry.getAssessmentStatus())) { + assessmentEntry.setAssessmentStatus(AssessmentEntryStatus.done); + assessmentService.updateAssessmentEntry(assessmentEntry); + identifierToStatus.put(itemIdentifier, assessmentEntry.getAssessmentStatus()); + } + return assessmentEntry.getAssessmentStatus(); + } + + @Override + public AssessmentEntryStatus getStatus(String itemIdentifier) { + return identifierToStatus.get(itemIdentifier); + } + +} diff --git a/src/main/java/org/olat/modules/curriculum/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/curriculum/ui/_i18n/LocalStrings_fr.properties index bba70e7a7d5315258343d65ce2bd2e9c164a25cd..eb50d80d544f6b4fb87d2deaba80dc47474c4012 100644 --- a/src/main/java/org/olat/modules/curriculum/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/modules/curriculum/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Wed Oct 02 09:58:20 CEST 2019 +#Tue Mar 03 06:18:07 CET 2020 add.curriculum=Cr\u00E9er un cursus add.curriculum.element=Cr\u00E9er un nouvel \u00E9l\u00E9ment add.element.under=Cr\u00E9er un nouveau sous-\u00E9l\u00E9ment @@ -69,6 +69,7 @@ filter.inactive=$\:status.inactive import.curriculum=Importer le curriculum import.member=$org.olat.group.ui.main\:import.member info.copy.element.type.sucessfull=Le type "{0}" a \u00E9t\u00E9 copi\u00E9 avec succ\u00E8s. +learning.progress=$org.olat.modules.assessment.ui\:learning.progress lectures=Absences move.element=D\u00E9placer un \u00E9l\u00E9ment move.element.title=D\u00E9placer l'\u00E9l\u00E9ment "{0}" @@ -104,6 +105,7 @@ table.curriculum.empty=Il n'y a pas de cursus disponible. table.header.active=Actif table.header.begin.date=D\u00E9but table.header.calendars=Calendrier +table.header.completion=$org.olat.modules.assessment.ui\:learning.progress table.header.curriculum=Curriculum table.header.curriculum.element.displayName=Nom table.header.curriculum.element.identifier=Identifiant @@ -114,6 +116,7 @@ table.header.end.date=Fin table.header.external.id=Id. externe table.header.identifier=Identifiant table.header.key=ID +table.header.learning.progress=$org.olat.modules.assessment.ui\:learning.progress table.header.lectures=Absences table.header.num.elements=El\u00E9ments table.header.num.of.coaches=Coaches @@ -150,6 +153,11 @@ type.cssClass=Class CSS type.description=Description type.displayname=Nom type.identifier=Identifiant +type.learning.progress.enabled=$org.olat.modules.assessment.ui\:learning.progress +type.learning.progress.enabled.disabled=D\u00E9sactiv\u00E9 +type.learning.progress.enabled.enabled=Activ\u00E9 +type.learning.progress.enabled.inherited=H\u00E9rit\u00E9 du type ({0}) +type.learning.progress.enabled.on=Activ\u00E9 type.lectures.enabled=Gestion des absences type.lectures.enabled.disabled=d\u00E9sactiv\u00E9 type.lectures.enabled.enabled=activ\u00E9 diff --git a/src/main/java/org/olat/modules/forms/model/jpa/CalculatedLong.java b/src/main/java/org/olat/modules/forms/model/jpa/CalculatedLong.java index 2f9636f9dcfe7248e69cb389e0fc0f2632e6a156..72cfd89b3aa9e8b93bb62bf4f0d011fe561155eb 100644 --- a/src/main/java/org/olat/modules/forms/model/jpa/CalculatedLong.java +++ b/src/main/java/org/olat/modules/forms/model/jpa/CalculatedLong.java @@ -67,12 +67,20 @@ public class CalculatedLong { } private static String trimZerosFromEnd(String value) { - int len = value.length(); - int st = 0; - while ((st < len) && (value.charAt(len - 1) == '0' || value.charAt(len - 1) == '.')) { - len--; + if (value.contains(".")) { + int len = value.length(); + int st = 0; + while (st < len) { + if (value.charAt(len - 1) == '0') { + len--; + } else if (value.charAt(len - 1) == '.') { + len--; + break; // stop at decimal point + } + } + return value.substring(0, len); } - return value.substring(0, len); + return value; } } diff --git a/src/main/java/org/olat/modules/forms/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/forms/ui/_i18n/LocalStrings_fr.properties index 006807445bb8d29ba9035b643df8aa9cbb8be942..c41bf9f9bc426c41c9ecb1ba4befd4f8066cce61 100644 --- a/src/main/java/org/olat/modules/forms/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/modules/forms/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Tue Jan 07 21:07:44 CET 2020 +#Sun Mar 01 07:32:53 CET 2020 add.formcontainer=Conteneur add.formdisclaimer=Conditions d'utilisation add.formfileupload=T\u00E9l\u00E9charger un fichier @@ -66,6 +66,7 @@ no.response.help=Activez cette option pour afficher la colonne "Pas de r\u00E9po report.anonymous.user=Anonyme report.count.count.title=Nombre report.count.name.title=Valeur +report.count.percent.title=% report.excel.legend=L\u00E9gende report.excel.text=Texte report.export=Export Excel @@ -76,6 +77,7 @@ report.overview.duration.title=Dur\u00E9e report.overview.figures.average.duration=Dur\u00E9e moyenne report.overview.figures.number.done.session=Nombre de participants report.overview.figures.number.done.session.of={0} sur {1} / {2}% +report.overview.figures.number.done.session.percent=$\:report.overview.figures.number.done.session / taux de retour report.overview.figures.submission.period=P\u00E9riode de soumission report.overview.figures.title=Indicateurs report.overview.total.title=Total rubriques diff --git a/src/main/java/org/olat/modules/grading/GradingService.java b/src/main/java/org/olat/modules/grading/GradingService.java index 365592416525a0dc425b7e052db9c35d9a246d41..47c4e6f9f92cf7364d114dfb1a3bea64cf66e91c 100644 --- a/src/main/java/org/olat/modules/grading/GradingService.java +++ b/src/main/java/org/olat/modules/grading/GradingService.java @@ -78,7 +78,7 @@ public interface GradingService { /** * Activate the specified identity as grader for all reference / test entry where it was - * deactivated. + * deactivated. It only works on deactivated / removed graders. * * @param identity The grader's identity */ @@ -86,6 +86,7 @@ public interface GradingService { /** * Activate the specified identity as grader for the specified reference / test entry. + * It only works on deactivated / removed graders. * * @param entry The reference / test entry * @param identity The grader's identity @@ -157,7 +158,14 @@ public interface GradingService { public GradingAssignment unassignGrader(GradingAssignment assignment); - public GradingAssignment assignmentDone(GradingAssignment assignment); + /** + * Set the assignment status to done. + * + * @param assignment The assignment to complete + * @param metadatatime The time use based on metadata (of QTI 2.1 questions) + * @return The merged assignment + */ + public GradingAssignment assignmentDone(GradingAssignment assignment, Long metadatatime); public GradingAssignment reopenAssignment(GradingAssignment assignment); @@ -238,5 +246,9 @@ public interface GradingService { */ public void sendGradersAsssignmentsNotification(); - + /** + * Check and eventually reassign graders which are on + * absence leave. + */ + public void graderAbsenceLeavesCheckWorkingDays(); } diff --git a/src/main/java/org/olat/modules/grading/GradingTimeRecord.java b/src/main/java/org/olat/modules/grading/GradingTimeRecord.java index 07a8a57c0d0e723e7ed1d23d2dc03d2b0cacd915..e31638737806c65a6d9be9ae3a6851fc7cd4e5f3 100644 --- a/src/main/java/org/olat/modules/grading/GradingTimeRecord.java +++ b/src/main/java/org/olat/modules/grading/GradingTimeRecord.java @@ -39,6 +39,10 @@ public interface GradingTimeRecord extends GradingTimeRecordRef, CreateInfo, Mod */ public long getTime(); + public long getMetadataTime(); + + public void setMetadataTime(long time); + public Date getDateOfRecord(); public GraderToIdentity getGrader(); diff --git a/src/main/java/org/olat/modules/grading/manager/GraderReminderJob.java b/src/main/java/org/olat/modules/grading/manager/GraderReminderJob.java index 17de172e473f2c609927574bf727f57689233ac9..c1b5df81bc53b9b9828161ed2a20b2942ddeff7a 100644 --- a/src/main/java/org/olat/modules/grading/manager/GraderReminderJob.java +++ b/src/main/java/org/olat/modules/grading/manager/GraderReminderJob.java @@ -36,7 +36,9 @@ public class GraderReminderJob extends JobWithDB { @Override public void executeWithDB(JobExecutionContext arg0) { - CoreSpringFactory.getImpl(GradingService.class).sendReminders(); - CoreSpringFactory.getImpl(GradingService.class).sendGradersAsssignmentsNotification(); + GradingService gradingService = CoreSpringFactory.getImpl(GradingService.class); + gradingService.sendReminders(); + gradingService.sendGradersAsssignmentsNotification(); + gradingService.graderAbsenceLeavesCheckWorkingDays(); } } diff --git a/src/main/java/org/olat/modules/grading/manager/GraderToIdentityDAO.java b/src/main/java/org/olat/modules/grading/manager/GraderToIdentityDAO.java index ebd0b4adede1ef3f7abc9b965baaea612d910e1d..eebfbe38a3672375b67e376cb3ca4f73a96b315e 100644 --- a/src/main/java/org/olat/modules/grading/manager/GraderToIdentityDAO.java +++ b/src/main/java/org/olat/modules/grading/manager/GraderToIdentityDAO.java @@ -248,7 +248,7 @@ public class GraderToIdentityDAO { public List<ReferenceEntryTimeRecordStatistics> findGradersRecordedTimeGroupByEntry(GradersSearchParameters searchParams) { QueryBuilder sb = new QueryBuilder(); - sb.append("select refEntry.key, sum(record.time)") + sb.append("select refEntry.key, sum(record.time), sum(record.metadataTime)") .append(" from gradingtimerecord as record ") .append(" inner join record.grader as rel") .append(" inner join rel.identity as ident") @@ -272,14 +272,15 @@ public class GraderToIdentityDAO { for(Object[] objects:rawObjects) { Long identityKey = (Long)objects[0]; long time = PersistenceHelper.extractPrimitiveLong(objects, 1); - records.add(new ReferenceEntryTimeRecordStatistics(identityKey, time)); + long metadataTime = PersistenceHelper.extractPrimitiveLong(objects, 2); + records.add(new ReferenceEntryTimeRecordStatistics(identityKey, time, metadataTime)); } return records; } public List<IdentityTimeRecordStatistics> findGradersRecordedTimeGroupByIdentity(GradersSearchParameters searchParams) { QueryBuilder sb = new QueryBuilder(); - sb.append("select ident.key, sum(record.time)") + sb.append("select ident.key, sum(record.time), sum(record.metadataTime)") .append(" from gradingtimerecord as record ") .append(" inner join record.grader as rel") .append(" inner join rel.identity as ident"); @@ -306,11 +307,35 @@ public class GraderToIdentityDAO { for(Object[] objects:rawObjects) { Long identityKey = (Long)objects[0]; long time = PersistenceHelper.extractPrimitiveLong(objects, 1); - records.add(new IdentityTimeRecordStatistics(identityKey, time)); + long metadataTime = PersistenceHelper.extractPrimitiveLong(objects, 2); + records.add(new IdentityTimeRecordStatistics(identityKey, time, metadataTime)); } return records; } + public List<GraderToIdentity> findGradersWithAssignmentInAbsenceLeave(Date date) { + QueryBuilder sb = new QueryBuilder(); + sb.append("select rel from grader2identity as rel") + .append(" inner join fetch rel.identity as ident") + .append(" inner join userabsenceleave as leave on (ident.key=leave.identity.key)") + .append(" inner join gradingassignment as assignment on (assignment.grader.key=rel.key)") + .append(" where assignment.status ").in(GradingAssignmentStatus.assigned, GradingAssignmentStatus.inProcess) + .append(" and (") + .append(" (leave.absentFrom is null and leave.absentTo>=:date)") + .append(" or") + .append(" (leave.absentFrom<=:date and leave.absentTo is null)") + .append(" or") + .append(" (leave.absentFrom<=:date and leave.absentTo>=:date)") + .append(" or") + .append(" (leave.absentFrom is null and leave.absentTo is null)") + .append(" )"); + + return dbInstance.getCurrentEntityManager() + .createQuery(sb.toString(), GraderToIdentity.class) + .setParameter("date", date) + .getResultList(); + } + public List<AbsenceLeave> findGradersAbsenceLeaves(GradersSearchParameters searchParams, Date from, Date to) { QueryBuilder sb = new QueryBuilder(); sb.append("select distinct leave from userabsenceleave as leave") diff --git a/src/main/java/org/olat/modules/grading/manager/GradingAssignmentDAO.java b/src/main/java/org/olat/modules/grading/manager/GradingAssignmentDAO.java index d1b266b7cd3bf0b12c3f900993b6cdd24a4a64fb..75be14e7d9f9886f786cbd72be2163b36eaf7cfb 100644 --- a/src/main/java/org/olat/modules/grading/manager/GradingAssignmentDAO.java +++ b/src/main/java/org/olat/modules/grading/manager/GradingAssignmentDAO.java @@ -104,6 +104,16 @@ public class GradingAssignmentDAO { .getResultList(); } + public List<GradingAssignment> getGradingAssignments(GraderToIdentity grader, GradingAssignmentStatus... assignmentStatus) { + QueryBuilder sb = new QueryBuilder(); + sb.append("select assignment from gradingassignment as assignment") + .append(" where assignment.grader.key=:graderKey and assignment.status ").in(assignmentStatus); + return dbInstance.getCurrentEntityManager() + .createQuery(sb.toString(), GradingAssignment.class) + .setParameter("graderKey", grader.getKey()) + .getResultList(); + } + public List<GradingAssignment> getGradingAssignments(IdentityRef grader) { QueryBuilder sb = new QueryBuilder(); sb.append("select assignment from gradingassignment as assignment") @@ -394,7 +404,14 @@ public class GradingAssignmentDAO { return assignments.isEmpty() ? null : assignments.get(0); } - public List<GradingAssignment> getGradingAssignmentsToRemind() { + /** + * This is not an exact method! check the configuration before send remidners. + * + * @return A list of grading assignments where the status is assigned or + * in process, the assignment was done and the configuration defined some + * reminders date. + */ + public List<GradingAssignment> getGradingAssignmentsOpenWithPotentialToRemind() { QueryBuilder sb = new QueryBuilder(); sb.append("select assignment from gradingassignment as assignment") .append(" inner join assignment.referenceEntry referenceEntry") @@ -403,9 +420,9 @@ public class GradingAssignmentDAO { .append(" and assignment.status ").in(GradingAssignmentStatus.assigned, GradingAssignmentStatus.inProcess) .append(" and assignment.assignmentDate is not null") .append(" and (") - .append(" (assignment.reminder1Date is null and assignment.assignmentDate <= cast((current_date - cast(config.firstReminder as integer)) as date))") + .append(" (assignment.reminder1Date is null and assignment.assignmentDate <= current_date)") .append(" or") - .append(" (assignment.reminder2Date is null and assignment.assignmentDate <= cast((current_date - cast(config.secondReminder as integer)) as date))") + .append(" (assignment.reminder2Date is null and assignment.assignmentDate <= current_date)") .append(" )"); return dbInstance.getCurrentEntityManager() diff --git a/src/main/java/org/olat/modules/grading/manager/GradingServiceImpl.java b/src/main/java/org/olat/modules/grading/manager/GradingServiceImpl.java index ae617752368a99ccff285f7a34bf9b5e7a7dacc5..90fcb2907bf182a0267a0c58766ba10441fe4942 100644 --- a/src/main/java/org/olat/modules/grading/manager/GradingServiceImpl.java +++ b/src/main/java/org/olat/modules/grading/manager/GradingServiceImpl.java @@ -22,10 +22,12 @@ package org.olat.modules.grading.manager; import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; +import java.util.Collections; import java.util.Date; import java.util.HashMap; import java.util.HashSet; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Objects; import java.util.Set; @@ -38,12 +40,15 @@ import org.olat.basesecurity.IdentityRef; import org.olat.commons.calendar.CalendarUtils; import org.olat.core.commons.persistence.DB; import org.olat.core.commons.persistence.QueryBuilder; +import org.olat.core.gui.translator.Translator; import org.olat.core.id.Identity; import org.olat.core.id.Roles; import org.olat.core.logging.Tracing; import org.olat.core.util.StringHelper; +import org.olat.core.util.Util; import org.olat.core.util.cache.CacheWrapper; import org.olat.core.util.coordinate.CoordinatorManager; +import org.olat.core.util.i18n.I18nManager; import org.olat.core.util.mail.MailBundle; import org.olat.core.util.mail.MailContext; import org.olat.core.util.mail.MailContextImpl; @@ -79,6 +84,7 @@ import org.olat.modules.grading.model.OlatResourceMapKey; import org.olat.modules.grading.model.ReferenceEntryStatistics; import org.olat.modules.grading.model.ReferenceEntryTimeRecordStatistics; import org.olat.modules.grading.model.ReferenceEntryWithStatistics; +import org.olat.modules.grading.ui.GradingAssignmentsListController; import org.olat.modules.grading.ui.component.GraderMailTemplate; import org.olat.modules.taxonomy.TaxonomyLevel; import org.olat.modules.taxonomy.TaxonomyModule; @@ -96,8 +102,6 @@ import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import edu.emory.mathcs.backport.java.util.Collections; - /** * * Initial date: 13 janv. 2020<br> @@ -288,6 +292,7 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re for(IdentityTimeRecordStatistics record:records) { GraderWithStatistics statistics = identityToStatistics.get(record.getKey()); statistics.addRecordedTimeInSeconds(record.getTime()); + statistics.addRecordedMetadataTimeInSeconds(record.getMetadataTime()); } for(AbsenceLeave absenceLeave:absenceLeaves) { @@ -340,6 +345,7 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re for(ReferenceEntryTimeRecordStatistics record:records) { ReferenceEntryWithStatistics stats = keyStatistics.get(record.getKey()); stats.addRecordedTimeInSeconds(record.getTime()); + stats.addRecordedMetadataTimeInSeconds(record.getMetadataTime()); } } return statistics; @@ -363,6 +369,8 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re if(graderRelation != null && graderRelation.getGraderStatus() != GraderStatus.activated) { graderRelation.setGraderStatus(GraderStatus.activated); graderRelation = gradedToIdentityDao.updateGrader(graderRelation); + log.info(Tracing.M_AUDIT, "Activate grader {} in resource {} ({})", + graderRelation.getIdentity(), graderRelation.getEntry().getKey(), graderRelation.getEntry().getDisplayname()); } return graderRelation; } @@ -394,6 +402,10 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re graderRelation.setGraderStatus(GraderStatus.deactivated); graderRelation = gradedToIdentityDao.updateGrader(graderRelation); dbInstance.commit(); + + log.info(Tracing.M_AUDIT, "Deactivate grader {} {}", + graderRelation.getKey(), graderRelation.getIdentity()); + moveAssignments(graderRelation, replacementGrader, reassignmentTemplate, result); } @@ -544,7 +556,7 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re @Override public void sendReminders() { // the query returns only an approximation because of the working days part of the configuration - List<GradingAssignment> inexactList = gradingAssignmentDao.getGradingAssignmentsToRemind(); + List<GradingAssignment> inexactList = gradingAssignmentDao.getGradingAssignmentsOpenWithPotentialToRemind(); for(GradingAssignment assignment:inexactList) { try { RepositoryEntryGradingConfiguration config = gradingConfigurationDao.getConfiguration(assignment.getReferenceEntry()); @@ -787,7 +799,10 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re grader.setGraderStatus(GraderStatus.activated); grader = gradedToIdentityDao.updateGrader(grader); } - + return assignGrader(assignment, grader, mailTemplate, result); + } + + private GradingAssignment assignGrader(GradingAssignment assignment, GraderToIdentity grader, GraderMailTemplate mailTemplate, MailerResult result) { assignment = gradingAssignmentDao.loadByKey(assignment.getKey()); assignment.setAssignmentStatus(GradingAssignmentStatus.assigned); assignment.setExtendedDeadline(null); @@ -798,6 +813,9 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re assignment = gradingAssignmentDao.updateAssignment(assignment); dbInstance.commit(); + log.info(Tracing.M_AUDIT, "Assign assignment {} to grader {} ({})", + assignment.getKey(), grader.getKey(), grader.getIdentity()); + if(mailTemplate != null) { MailContext context = new MailContextImpl("[CoachSite:0][Grading:0]"); decorateGraderMailTemplate(assignment, mailTemplate); @@ -816,15 +834,24 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re assignment.setReminder1Date(null); assignment.setReminder2Date(null); ((GradingAssignmentImpl)assignment).setGrader(null); - return gradingAssignmentDao.updateAssignment(assignment); + assignment = gradingAssignmentDao.updateAssignment(assignment); + log.info(Tracing.M_AUDIT, "Unassign assignment {}", assignment.getKey()); + return assignment; } @Override - public GradingAssignment assignmentDone(GradingAssignment assignment) { + public GradingAssignment assignmentDone(GradingAssignment assignment, Long metadataTime) { assignment = gradingAssignmentDao.loadByKey(assignment.getKey()); assignment.setAssignmentStatus(GradingAssignmentStatus.done); assignment.setClosingDate(new Date()); - return gradingAssignmentDao.updateAssignment(assignment); + assignment = gradingAssignmentDao.updateAssignment(assignment); + if(metadataTime != null) { + GradingTimeRecord timeRecord = (GradingTimeRecord)getCurrentTimeRecord(assignment, new Date()); + timeRecord.setMetadataTime(metadataTime.longValue()); + gradingTimeRecordDao.updateTimeRecord(timeRecord); + } + log.info(Tracing.M_AUDIT, "Assignment done {}", assignment.getKey()); + return assignment; } @Override @@ -832,7 +859,9 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re assignment = gradingAssignmentDao.loadByKey(assignment.getKey()); assignment.setAssignmentStatus(GradingAssignmentStatus.assigned); assignment.setClosingDate(null); - return gradingAssignmentDao.updateAssignment(assignment); + assignment = gradingAssignmentDao.updateAssignment(assignment); + log.info(Tracing.M_AUDIT, "Assignment reopened {}", assignment.getKey()); + return assignment; } @Override @@ -960,4 +989,64 @@ public class GradingServiceImpl implements GradingService, UserDataDeletable, Re } return elementTitle; } + + @Override + public void graderAbsenceLeavesCheckWorkingDays() { + Date now = new Date(); + if(CalendarUtils.isWorkingDay(now)) { + graderAbsenceLeavesCheck(); + } + } + + public void graderAbsenceLeavesCheck() { + List<GraderToIdentity> graders = gradedToIdentityDao.findGradersWithAssignmentInAbsenceLeave(new Date()); + for(GraderToIdentity grader:graders) { + reassignGraderAssignments(grader); + } + } + + /** + * The method make a rigorous check of the absence leaves + * per resource. + * + * @param grader The grader to reassign + */ + private void reassignGraderAssignments(GraderToIdentity grader) { + String language = grader.getIdentity().getUser().getPreferences().getLanguage(); + Locale locale = I18nManager.getInstance().getLocaleOrDefault(language); + List<GradingAssignment> assignments = gradingAssignmentDao.getGradingAssignments(grader, + GradingAssignmentStatus.assigned, GradingAssignmentStatus.inProcess); + Translator translator = Util.createPackageTranslator(GradingAssignmentsListController.class, locale); + + List<AbsenceLeave> absenceLeaves = absenceLeaveDao.getAbsenceLeaves(grader.getIdentity()); + + for(GradingAssignment assignment:assignments) { + RepositoryEntry referenceEntry = assignment.getReferenceEntry(); + boolean matchAbsence = false; + for(AbsenceLeave absenceLeave:absenceLeaves) { + if(AbsenceLeaveHelper.isOnLeave(new Date(), absenceLeave, referenceEntry.getOlatResource(), null)) { + matchAbsence = true; + } + } + + if(matchAbsence) { + log.info(Tracing.M_AUDIT, "Reassign assigment ({}) of grader on absence leaves {} in resource {} ({})", + assignment.getKey(), grader.getIdentity().getKey(), referenceEntry.getKey(), referenceEntry.getDisplayname()); + + RepositoryEntryGradingConfiguration config = gradingConfigurationDao.getConfiguration(referenceEntry); + unassignGrader(assignment); + dbInstance.commit(); + + MailerResult result = new MailerResult(); + GraderToIdentity replacementGrader = selectGrader(referenceEntry); + if(replacementGrader != null) { + GraderMailTemplate reassignmentTemplate = GraderMailTemplate.notification(translator, null, null, referenceEntry, config); + assignGrader(assignment, replacementGrader, reassignmentTemplate, result); + log.info(Tracing.M_AUDIT, "Reassignment of {} from grader {} (due to absence leaves) to {} in resource {} ({})", + assignment.getKey(), grader.getIdentity(), replacementGrader.getIdentity(), referenceEntry.getKey(), referenceEntry.getDisplayname()); + } + } + dbInstance.commit(); + } + } } diff --git a/src/main/java/org/olat/modules/grading/manager/GradingTimeRecordDAO.java b/src/main/java/org/olat/modules/grading/manager/GradingTimeRecordDAO.java index 2aeda096347d22ee9fcccc8a9c9795bc5131f7f4..087678730333eea6ee257377bfb407350d457871 100644 --- a/src/main/java/org/olat/modules/grading/manager/GradingTimeRecordDAO.java +++ b/src/main/java/org/olat/modules/grading/manager/GradingTimeRecordDAO.java @@ -57,6 +57,7 @@ public class GradingTimeRecordDAO { timesheet.setCreationDate(new Date()); timesheet.setLastModified(timesheet.getCreationDate()); timesheet.setTime(0l); + timesheet.setMetadataTime(0l); timesheet.setDateOfRecord(CalendarUtils.startOfDay(date)); timesheet.setGrader(grader); timesheet.setAssignment(assignment); @@ -125,6 +126,11 @@ public class GradingTimeRecordDAO { } } + public GradingTimeRecord updateTimeRecord(GradingTimeRecord timeRecord) { + timeRecord.setLastModified(new Date()); + return dbInstance.getCurrentEntityManager().merge(timeRecord); + } + public void deleteTimeRecords(GraderToIdentity grader) { String deleteQuery = "delete from gradingtimerecord as timerecord where timerecord.grader.key=:graderKey"; int deleted = dbInstance.getCurrentEntityManager().createQuery(deleteQuery) diff --git a/src/main/java/org/olat/modules/grading/model/GraderWithStatistics.java b/src/main/java/org/olat/modules/grading/model/GraderWithStatistics.java index 636ccca985254d38b8e32775cf779ca589db21e5..9391bed354c54b1b090cd2f2a11dd31a058b2b88 100644 --- a/src/main/java/org/olat/modules/grading/model/GraderWithStatistics.java +++ b/src/main/java/org/olat/modules/grading/model/GraderWithStatistics.java @@ -39,6 +39,7 @@ public class GraderWithStatistics { private final List<GraderStatus> graderStatus = new ArrayList<>(4); private final List<AbsenceLeave> absenceLeaves = new ArrayList<>(4); private long recordedTimeInSeconds = 0l; + private long recordedMetadataTimeInSeconds = 0l; public GraderWithStatistics(Identity grader, GraderStatistics statistics) { this.grader = grader; @@ -74,6 +75,14 @@ public class GraderWithStatistics { public void addRecordedTimeInSeconds(long seconds) { recordedTimeInSeconds += seconds; } + + public long getRecordedMetadataTimeInSeconds() { + return recordedMetadataTimeInSeconds; + } + + public void addRecordedMetadataTimeInSeconds(long seconds) { + recordedMetadataTimeInSeconds += seconds; + } public GraderStatistics getStatistics() { return statistics; diff --git a/src/main/java/org/olat/modules/grading/model/GradingAssignmentWithInfos.java b/src/main/java/org/olat/modules/grading/model/GradingAssignmentWithInfos.java index 910125bec95497b52a8dd8b2c72a5f000f4c64fb..8ca92b334ab188e1d56bac3f609f91f4b350150c 100644 --- a/src/main/java/org/olat/modules/grading/model/GradingAssignmentWithInfos.java +++ b/src/main/java/org/olat/modules/grading/model/GradingAssignmentWithInfos.java @@ -90,6 +90,10 @@ public class GradingAssignmentWithInfos { return timeRecord == null ? null : timeRecord.getTime(); } + public Long getMetadataTimeRecordedInSeconds() { + return timeRecord == null ? null : timeRecord.getMetadataTime(); + } + public Identity getAssessedIdentity() { return assessedIdentity; } diff --git a/src/main/java/org/olat/modules/grading/model/GradingTimeRecordImpl.java b/src/main/java/org/olat/modules/grading/model/GradingTimeRecordImpl.java index 22d679adff28494b01f8f9412ae6dbefbbb7c73f..0de25518901e8756164654ca9b1493f27c852179 100644 --- a/src/main/java/org/olat/modules/grading/model/GradingTimeRecordImpl.java +++ b/src/main/java/org/olat/modules/grading/model/GradingTimeRecordImpl.java @@ -65,6 +65,8 @@ public class GradingTimeRecordImpl implements GradingTimeRecord, Persistable { @Column(name="g_time", nullable=false, insertable=true, updatable=false) private long time; + @Column(name="g_metadata_time", nullable=false, insertable=true, updatable=true) + private long metadataTime; @Temporal(TemporalType.DATE) @Column(name="g_date_record", nullable=false, insertable=true, updatable=false) @@ -113,7 +115,17 @@ public class GradingTimeRecordImpl implements GradingTimeRecord, Persistable { public void setTime(long time) { this.time = time; } - + + @Override + public long getMetadataTime() { + return metadataTime; + } + + @Override + public void setMetadataTime(long metadataTime) { + this.metadataTime = metadataTime; + } + @Override public Date getDateOfRecord() { return dateOfRecord; diff --git a/src/main/java/org/olat/modules/grading/model/IdentityTimeRecordStatistics.java b/src/main/java/org/olat/modules/grading/model/IdentityTimeRecordStatistics.java index 9f8cc0e0267bbfbad895c0d8655f480af15601bc..221add2368e85557389711369a62b2238da45478 100644 --- a/src/main/java/org/olat/modules/grading/model/IdentityTimeRecordStatistics.java +++ b/src/main/java/org/olat/modules/grading/model/IdentityTimeRecordStatistics.java @@ -31,10 +31,12 @@ public class IdentityTimeRecordStatistics implements IdentityRef { private final Long identityKey; private final long time; + private final long metadataTime; - public IdentityTimeRecordStatistics(Long identityKey, long time) { + public IdentityTimeRecordStatistics(Long identityKey, long time, long metadataTime) { this.identityKey = identityKey; this.time = time; + this.metadataTime = metadataTime; } @Override @@ -45,4 +47,25 @@ public class IdentityTimeRecordStatistics implements IdentityRef { public long getTime() { return time; } + + public long getMetadataTime() { + return metadataTime; + } + + @Override + public int hashCode() { + return identityKey == null ? -737615 : identityKey.hashCode(); + } + + @Override + public boolean equals(Object obj) { + if(this == obj) { + return true; + } + if(obj instanceof IdentityTimeRecordStatistics) { + IdentityTimeRecordStatistics stats = (IdentityTimeRecordStatistics)obj; + return identityKey != null && identityKey.equals(stats.identityKey); + } + return false; + } } diff --git a/src/main/java/org/olat/modules/grading/model/ReferenceEntryTimeRecordStatistics.java b/src/main/java/org/olat/modules/grading/model/ReferenceEntryTimeRecordStatistics.java index 1e1b6b9a2918080ae1b98ec7783954e958e28bc8..089a18aeb232cd1ddb41c377316042642202c7c9 100644 --- a/src/main/java/org/olat/modules/grading/model/ReferenceEntryTimeRecordStatistics.java +++ b/src/main/java/org/olat/modules/grading/model/ReferenceEntryTimeRecordStatistics.java @@ -31,10 +31,12 @@ public class ReferenceEntryTimeRecordStatistics implements RepositoryEntryRef { private final Long entryKey; private final long time; + private final long metadataTime; - public ReferenceEntryTimeRecordStatistics(Long entryKey, long time) { + public ReferenceEntryTimeRecordStatistics(Long entryKey, long time, long metadataTime) { this.entryKey = entryKey; this.time = time; + this.metadataTime = metadataTime; } @Override @@ -45,4 +47,25 @@ public class ReferenceEntryTimeRecordStatistics implements RepositoryEntryRef { public long getTime() { return time; } + + public long getMetadataTime() { + return metadataTime; + } + + @Override + public int hashCode() { + return entryKey == null ? 87237615 : entryKey.hashCode(); + } + + @Override + public boolean equals(Object obj) { + if(this == obj) { + return true; + } + if(obj instanceof ReferenceEntryTimeRecordStatistics) { + ReferenceEntryTimeRecordStatistics stats = (ReferenceEntryTimeRecordStatistics)obj; + return entryKey != null && entryKey.equals(stats.entryKey); + } + return false; + } } diff --git a/src/main/java/org/olat/modules/grading/model/ReferenceEntryWithStatistics.java b/src/main/java/org/olat/modules/grading/model/ReferenceEntryWithStatistics.java index afd5ee292b76eea377e75f0ea1712c9f2a79f74d..07d30fb3dddc0e58dd79616b06fbba8a49c5c1b3 100644 --- a/src/main/java/org/olat/modules/grading/model/ReferenceEntryWithStatistics.java +++ b/src/main/java/org/olat/modules/grading/model/ReferenceEntryWithStatistics.java @@ -37,6 +37,7 @@ public class ReferenceEntryWithStatistics implements RepositoryEntryRef { private final RepositoryEntry entry; private final ReferenceEntryStatistics statistics; private long recordedTimeInSeconds = 0l; + private long recordedMetadataTimeInSeconds = 0l; private final List<AbsenceLeave> absenceLeaves = new ArrayList<>(4); public ReferenceEntryWithStatistics(RepositoryEntry entry) { @@ -77,4 +78,12 @@ public class ReferenceEntryWithStatistics implements RepositoryEntryRef { public void addRecordedTimeInSeconds(long seconds) { recordedTimeInSeconds += seconds; } + + public long getRecordedMetadataTimeInSeconds() { + return recordedMetadataTimeInSeconds; + } + + public void addRecordedMetadataTimeInSeconds(long seconds) { + recordedMetadataTimeInSeconds += seconds; + } } diff --git a/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryListController.java b/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryListController.java index b0a4311b09405248313a45378019688b967bf71b..731fa31dd63aead76252ad4fc4ce5cfd9988d57b 100644 --- a/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryListController.java +++ b/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryListController.java @@ -50,6 +50,7 @@ import org.olat.core.util.mail.ContactMessage; import org.olat.core.util.mail.MailTemplate; import org.olat.modules.co.ContactFormController; import org.olat.modules.grading.GradingService; +import org.olat.modules.grading.RepositoryEntryGradingConfiguration; import org.olat.modules.grading.model.GradingAssignmentSearchParameters.SearchStatus; import org.olat.modules.grading.model.ReferenceEntryWithStatistics; import org.olat.modules.grading.ui.AssignedReferenceEntryListTableModel.GEntryCol; @@ -106,6 +107,7 @@ public class AssignedReferenceEntryListController extends FormBasicController { columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GEntryCol.oldestOpenAssignment)); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GEntryCol.absence, new GraderAbsenceLeaveCellRenderer(getTranslator()))); + columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GEntryCol.recordedMetadataTime)); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GEntryCol.recordedTime)); DefaultFlexiColumnModel toolsCol = new DefaultFlexiColumnModel(GEntryCol.tools); @@ -240,8 +242,8 @@ public class AssignedReferenceEntryListController extends FormBasicController { msg.addEmailTo(contact); RepositoryEntry referenceEntry = row.getReferenceEntry(); - MailTemplate template = new GraderMailTemplate(null, null, null, referenceEntry); - contactGraderCtrl = new ContactFormController(ureq, getWindowControl(), true, false, false, msg, template); + List<MailTemplate> templates = getTemplates(referenceEntry); + contactGraderCtrl = new ContactFormController(ureq, getWindowControl(), true, false, false, msg, templates); listenTo(contactGraderCtrl); String graderName = userManager.getUserDisplayName(grader); @@ -251,6 +253,21 @@ public class AssignedReferenceEntryListController extends FormBasicController { cmc.activate(); } + private List<MailTemplate> getTemplates(RepositoryEntry refEntry) { + RepositoryEntryGradingConfiguration configuration = null; + if(refEntry != null) { + configuration = gradingService.getOrCreateConfiguration(refEntry); + } + + List<MailTemplate> templates = new ArrayList<>(); + templates.add(GraderMailTemplate.empty(getTranslator(), null, null, refEntry)); + templates.add(GraderMailTemplate.graderTo(getTranslator(), null, null, refEntry, configuration)); + templates.add(GraderMailTemplate.notification(getTranslator(), null, null, refEntry, configuration)); + templates.add(GraderMailTemplate.firstReminder(getTranslator(), null, null, refEntry, configuration)); + templates.add(GraderMailTemplate.secondReminder(getTranslator(), null, null, refEntry, configuration)); + return templates; + } + private void doAddAbsenceLeave(UserRequest ureq, AssignedReferenceEntryRow row) { OLATResourceable resource = row.getReferenceEntry().getOlatResource(); addAbsenceLeaveCtrl = new CreateAbsenceLeaveController(ureq, getWindowControl(), grader, resource, null); diff --git a/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryListTableModel.java b/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryListTableModel.java index ed5a5a4fd30ce74dc5931d2350dffdc05ca6d0b3..260180235d6323ffbc755b07d0f6ed084d9f0091 100644 --- a/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryListTableModel.java +++ b/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryListTableModel.java @@ -73,20 +73,22 @@ implements SortableFlexiTableDataModel<AssignedReferenceEntryRow> { case open: return row.getNumOfOpenAssignments(); case overdue: return row.getNumOfOverdueAssignments(); case oldestOpenAssignment: return row.getOldestOpenAssignment(); - case recordedTime: return getCorrectionTimeInMinutes(row); + case recordedTime: return getCorrectionTimeInMinutes(row.getRecordedTimeInSeconds()); + case recordedMetadataTime: return getCorrectionTimeInMinutes(row.getRecordedMetadataTimeInSeconds()); case absence: return row; case tools: return row.getToolsLink(); default: return "ERROR"; } } - private Long getCorrectionTimeInMinutes(AssignedReferenceEntryRow row) { - long timeInSeconds = row.getRecordedTimeInSeconds(); + private Long getCorrectionTimeInMinutes(long timeInSeconds) { if(timeInSeconds > 0) { return CalendarUtils.convertSecondsToMinutes(timeInSeconds); } return null; } + + @Override public AssignedReferenceEntryListTableModel createCopyWithEmptyList() { @@ -103,6 +105,7 @@ implements SortableFlexiTableDataModel<AssignedReferenceEntryRow> { overdue("table.header.assignments.overdue"), oldestOpenAssignment("table.header.assignments.oldest.open"), recordedTime("table.header.recorded.time"), + recordedMetadataTime("table.header.recorded.meta.time"), absence("table.header.absence.leave"), tools("table.header.tools"); diff --git a/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryRow.java b/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryRow.java index 4323b536613570b9ec9ca11dbd42b462699b953f..741304e0ec217652d90dc20585fbf6928aaafe8c 100644 --- a/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryRow.java +++ b/src/main/java/org/olat/modules/grading/ui/AssignedReferenceEntryRow.java @@ -74,6 +74,10 @@ public class AssignedReferenceEntryRow implements RepositoryEntryRef { return statistics.getRecordedTimeInSeconds(); } + public long getRecordedMetadataTimeInSeconds() { + return statistics.getRecordedMetadataTimeInSeconds(); + } + public long getTotalAssignments() { return statistics.getStatistics().getTotalAssignments(); } diff --git a/src/main/java/org/olat/modules/grading/ui/GraderRow.java b/src/main/java/org/olat/modules/grading/ui/GraderRow.java index f57ee7d8245e901ad4b9852750be2b0fbd427f65..e02aab3b34940b8f8b18ffa3097d02baaeec2ea7 100644 --- a/src/main/java/org/olat/modules/grading/ui/GraderRow.java +++ b/src/main/java/org/olat/modules/grading/ui/GraderRow.java @@ -43,15 +43,18 @@ public class GraderRow { private final List<AbsenceLeave> absenceLeaves; private final long recordedTimeInSeconds; + private final long recordedMetadataTimeInSeconds; private FormLink toolsLink; public GraderRow(Identity grader, GraderStatistics statistics, - long recordedTimeInSeconds, List<AbsenceLeave> absenceLeaves, List<GraderStatus> status) { + long recordedTimeInSeconds, long recordedMetadataTimeInSeconds, + List<AbsenceLeave> absenceLeaves, List<GraderStatus> status) { this.grader = grader; this.graderStatus = status; this.statistics = statistics; this.recordedTimeInSeconds = recordedTimeInSeconds; + this.recordedMetadataTimeInSeconds = recordedMetadataTimeInSeconds; if(absenceLeaves != null && !absenceLeaves.isEmpty()) { this.absenceLeaves = absenceLeaves; } else { @@ -102,6 +105,10 @@ public class GraderRow { public Long getRecordedTimeInSeconds() { return recordedTimeInSeconds; } + + public Long getRecordedMetadataTimeInSeconds() { + return recordedMetadataTimeInSeconds; + } public FormLink getToolsLink() { return toolsLink; diff --git a/src/main/java/org/olat/modules/grading/ui/GradersListController.java b/src/main/java/org/olat/modules/grading/ui/GradersListController.java index e31e38b8c8b345b94e5a6e594c1ee1cc03be9b84..5235f56566c2f7c7e6d67b1e78c65479c2bf22ca 100644 --- a/src/main/java/org/olat/modules/grading/ui/GradersListController.java +++ b/src/main/java/org/olat/modules/grading/ui/GradersListController.java @@ -58,6 +58,7 @@ import org.olat.core.util.mail.MailerResult; import org.olat.modules.co.ContactFormController; import org.olat.modules.grading.GraderStatus; import org.olat.modules.grading.GradingService; +import org.olat.modules.grading.RepositoryEntryGradingConfiguration; import org.olat.modules.grading.model.GraderWithStatistics; import org.olat.modules.grading.model.GradersSearchParameters; import org.olat.modules.grading.model.GradingAssignmentSearchParameters.SearchStatus; @@ -68,7 +69,7 @@ import org.olat.modules.grading.ui.component.GraderStatusCellRenderer; import org.olat.modules.grading.ui.confirmation.ConfirmDeactivationGraderController; import org.olat.modules.grading.ui.event.OpenAssignmentsEvent; import org.olat.modules.grading.ui.wizard.ImportGrader1ChooseMemberStep; -import org.olat.modules.grading.ui.wizard.ImportGraders; +import org.olat.modules.grading.ui.wizard.ImportGradersContext; import org.olat.repository.RepositoryEntry; import org.olat.user.UserManager; import org.olat.user.propertyhandlers.UserPropertyHandler; @@ -164,6 +165,7 @@ public class GradersListController extends FormBasicController { columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GradersCol.open, "open")); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GradersCol.overdue, "overdue")); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GradersCol.oldestOpenAssignment)); + columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GradersCol.recordedMetadataTime)); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GradersCol.recordedTime)); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GradersCol.absence, new GraderAbsenceLeaveCellRenderer(getTranslator()))); @@ -194,7 +196,8 @@ public class GradersListController extends FormBasicController { private GraderRow forgeRow(GraderWithStatistics rawGrader) { GraderRow row = new GraderRow(rawGrader.getGrader(), rawGrader.getStatistics(), - rawGrader.getRecordedTimeInSeconds(), rawGrader.getAbsenceLeaves(), rawGrader.getGraderStatus()); + rawGrader.getRecordedTimeInSeconds(), rawGrader.getRecordedMetadataTimeInSeconds(), + rawGrader.getAbsenceLeaves(), rawGrader.getGraderStatus()); // tools String linkName = "tools-" + counter++; FormLink toolsLink = uifactory.addFormLink(linkName, "tools", "", null, flc, Link.LINK | Link.NONTRANSLATED); @@ -330,15 +333,22 @@ public class GradersListController extends FormBasicController { private void doAddGrader(UserRequest ureq) { removeAsListenerAndDispose(importGradersWizard); + + RepositoryEntryGradingConfiguration configuration = null; + if(referenceEntry != null) { + configuration = gradingService.getOrCreateConfiguration(referenceEntry); + } - final ImportGraders graders = new ImportGraders(referenceEntry); - GraderMailTemplate mailTemplate = new GraderMailTemplate(null, null, referenceEntry); + final ImportGradersContext graders = new ImportGradersContext(referenceEntry); + GraderMailTemplate mailTemplate = GraderMailTemplate.graderTo(getTranslator(), null, null, referenceEntry, configuration); + Step start = new ImportGrader1ChooseMemberStep(ureq, graders, mailTemplate, referenceEntry == null); StepRunnerCallback finish = (uureq, wControl, runContext) -> { List<Identity> futureGraders = graders.getGraders(); if(!futureGraders.isEmpty()) { MailerResult result = new MailerResult(); - gradingService.addGraders(graders.getEntry(), futureGraders, mailTemplate, result); + GraderMailTemplate sendTemplate = graders.isSendEmail() ? mailTemplate : null; + gradingService.addGraders(graders.getEntry(), futureGraders, sendTemplate, result); } return StepsMainRunController.DONE_MODIFIED; }; @@ -389,9 +399,8 @@ public class GradersListController extends FormBasicController { contact.add(row.getGrader()); msg.addEmailTo(contact); - - MailTemplate template = new GraderMailTemplate(null, null, null); - contactGraderCtrl = new ContactFormController(ureq, getWindowControl(), true, false, false, msg, template); + List<MailTemplate> templates = getTemplates(referenceEntry); + contactGraderCtrl = new ContactFormController(ureq, getWindowControl(), true, false, false, msg, templates); contactGraderCtrl.getAndRemoveTitle(); listenTo(contactGraderCtrl); @@ -402,6 +411,21 @@ public class GradersListController extends FormBasicController { cmc.activate(); } + private List<MailTemplate> getTemplates(RepositoryEntry refEntry) { + RepositoryEntryGradingConfiguration configuration = null; + if(refEntry != null) { + configuration = gradingService.getOrCreateConfiguration(refEntry); + } + + List<MailTemplate> templates = new ArrayList<>(); + templates.add(GraderMailTemplate.empty(getTranslator(), null, null, referenceEntry)); + templates.add(GraderMailTemplate.graderTo(getTranslator(), null, null, refEntry, configuration)); + templates.add(GraderMailTemplate.notification(getTranslator(), null, null, refEntry, configuration)); + templates.add(GraderMailTemplate.firstReminder(getTranslator(), null, null, refEntry, configuration)); + templates.add(GraderMailTemplate.secondReminder(getTranslator(), null, null, refEntry, configuration)); + return templates; + } + private void doAddAbsenceLeave(UserRequest ureq, GraderRow row) { Identity grader = row.getGrader(); OLATResourceable resource = null; diff --git a/src/main/java/org/olat/modules/grading/ui/GradersListTableModel.java b/src/main/java/org/olat/modules/grading/ui/GradersListTableModel.java index b97b9b5809c283f2af16742d23a1b7243dc09005..b3d6257152117c9a70a8b9a033785bd4c49e0c18 100644 --- a/src/main/java/org/olat/modules/grading/ui/GradersListTableModel.java +++ b/src/main/java/org/olat/modules/grading/ui/GradersListTableModel.java @@ -73,6 +73,7 @@ public class GradersListTableModel extends DefaultFlexiTableDataModel<GraderRow> case overdue: return row.getNumOfOverdueAssignments(); case oldestOpenAssignment: return row.getOldestOpenAssignment(); case recordedTime: return CalendarUtils.convertSecondsToMinutes(row.getRecordedTimeInSeconds()); + case recordedMetadataTime: return CalendarUtils.convertSecondsToMinutes(row.getRecordedMetadataTimeInSeconds()); case absence: return row; case tools: return row.getToolsLink(); default: return "ERROR"; @@ -105,6 +106,7 @@ public class GradersListTableModel extends DefaultFlexiTableDataModel<GraderRow> oldestOpenAssignment("table.header.assignments.oldest.open"), absence("table.header.absence.leave"), recordedTime("table.header.recorded.time"), + recordedMetadataTime("table.header.recorded.meta.time"), tools("table.header.tools"); private final String i18nKey; diff --git a/src/main/java/org/olat/modules/grading/ui/GradingAdminTemplatesController.java b/src/main/java/org/olat/modules/grading/ui/GradingAdminTemplatesController.java index 2032148a61c8d6005af7ccce6c4b8ead6b9c7692..2e099272351750dab0eabba318e93d6b6f1b6c74 100644 --- a/src/main/java/org/olat/modules/grading/ui/GradingAdminTemplatesController.java +++ b/src/main/java/org/olat/modules/grading/ui/GradingAdminTemplatesController.java @@ -54,6 +54,11 @@ public class GradingAdminTemplatesController extends FormBasicController { @Override protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) { + // new grader + initForm("mail.to.grader.subject", "mail.grader.to.entry.subject", formLayout); + initForm("mail.to.grader.body", "mail.grader.to.entry.body", formLayout); + uifactory.addSpacerElement("spacer-new-grader", formLayout, false); + // notifications initForm("notification.subject", "mail.notification.subject", formLayout); initForm("notification.body", "mail.notification.body", formLayout); @@ -67,7 +72,6 @@ public class GradingAdminTemplatesController extends FormBasicController { // reminder 2 initForm("reminder.2.subject", "mail.reminder2.subject", formLayout); initForm("reminder.2.body", "mail.reminder2.body", formLayout); - uifactory.addSpacerElement("spacer-2-reminder", formLayout, false); } private void initForm(String labelI18nKey, String textI18nKey, FormItemContainer formLayout) { diff --git a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentRow.java b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentRow.java index 3779378bf59af90b4b49680010d7bcc7c9112e99..c7ec667bbd07223f2ad8358c8c1c06d82e3b7500 100644 --- a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentRow.java +++ b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentRow.java @@ -94,6 +94,10 @@ public class GradingAssignmentRow implements GradingAssignmentRef { return timeRecord == null ? null : timeRecord.getTime(); } + public Long getRecordedMetadataSeconds() { + return timeRecord == null ? null : timeRecord.getMetadataTime(); + } + public GradingAssignmentStatus getAssignmentStatus() { return assignment.getAssignmentStatus(); } diff --git a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java index 20d2182065c2df5f1da7aa980e085415e2e3ecf0..ade777882b41461b68bf502f110670bacaafd458 100644 --- a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java +++ b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsListController.java @@ -105,6 +105,7 @@ import org.olat.modules.grading.GradingAssignmentStatus; import org.olat.modules.grading.GradingSecurityCallback; import org.olat.modules.grading.GradingService; import org.olat.modules.grading.GradingTimeRecordRef; +import org.olat.modules.grading.RepositoryEntryGradingConfiguration; import org.olat.modules.grading.model.GradingAssignmentSearchParameters; import org.olat.modules.grading.model.GradingAssignmentWithInfos; import org.olat.modules.grading.ui.GradingAssignmentsTableModel.GAssignmentsCol; @@ -115,8 +116,8 @@ import org.olat.modules.grading.ui.confirmation.ConfirmUnassignGraderController; import org.olat.modules.grading.ui.confirmation.ExtendDeadlineController; import org.olat.modules.grading.ui.event.OpenAssignmentsEvent; import org.olat.modules.grading.ui.event.OpenEntryAssignmentsEvent; -import org.olat.modules.grading.ui.wizard.AssignGrader; import org.olat.modules.grading.ui.wizard.AssignGrader1ChooseMemberStep; +import org.olat.modules.grading.ui.wizard.AssignGraderContext; import org.olat.modules.taxonomy.TaxonomyModule; import org.olat.repository.RepositoryEntry; import org.olat.user.UserManager; @@ -296,6 +297,7 @@ public class GradingAssignmentsListController extends FormBasicController implem } columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(GAssignmentsCol.courseElement, "open_course")); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, GAssignmentsCol.assessmentDate)); + columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, GAssignmentsCol.correctionMetadataMinutes)); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, GAssignmentsCol.correctionMinutes)); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, GAssignmentsCol.assignmentDate)); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, GAssignmentsCol.doneDate)); @@ -474,7 +476,7 @@ public class GradingAssignmentsListController extends FormBasicController implem if(event instanceof CompleteAssessmentTestSessionEvent) { stackPanel.popController(correctionCtrl); CompleteAssessmentTestSessionEvent catse = (CompleteAssessmentTestSessionEvent)event; - doUpdateCourseNode(catse.getTestSessions(), catse.getAssessmentTest(), catse.getStatus(), + doUpdateCourseNode(catse.getTestSessions().get(0), catse.getAssessmentTest(), catse.getStatus(), correctionCtrl.getGradingAssignment()); loadModel(); cleanUp(); @@ -600,9 +602,9 @@ public class GradingAssignmentsListController extends FormBasicController implem stackPanel.pushController(translate("correction"), correctionCtrl); } - private void doUpdateCourseNode(List<AssessmentTestSession> testSessionsToComplete, AssessmentTest assessmentTest, + private void doUpdateCourseNode(AssessmentTestSession testSessionsToComplete, AssessmentTest assessmentTest, AssessmentEntryStatus status, GradingAssignment assignment) { - if(testSessionsToComplete == null || testSessionsToComplete.isEmpty()) return; + if(testSessionsToComplete == null) return; assignment = gradingService.getGradingAssignment(assignment); AssessmentEntry assessment = assignment.getAssessmentEntry(); @@ -616,29 +618,30 @@ public class GradingAssignmentsListController extends FormBasicController implem CourseEnvironment courseEnv = course.getCourseEnvironment(); Double cutValue = QtiNodesExtractor.extractCutValue(assessmentTest); - for(AssessmentTestSession testSession:testSessionsToComplete) { - UserCourseEnvironment assessedUserCourseEnv = AssessmentHelper - .createAndInitUserCourseEnvironment(testSession.getIdentity(), courseEnv); - AssessmentEvaluation scoreEval = courseAssessmentService.getAssessmentEvaluation(courseNode, assessedUserCourseEnv); - - BigDecimal finalScore = testSession.getFinalScore(); - Float score = finalScore == null ? null : finalScore.floatValue(); - Boolean passed = scoreEval.getPassed(); - if(testSession.getManualScore() != null && finalScore != null && cutValue != null) { - boolean calculated = finalScore.compareTo(BigDecimal.valueOf(cutValue.doubleValue())) >= 0; - passed = Boolean.valueOf(calculated); - } - AssessmentEntryStatus finalStatus = status == null ? scoreEval.getAssessmentStatus() : status; - ScoreEvaluation manualScoreEval = new ScoreEvaluation(score, passed, - finalStatus, scoreEval.getUserVisible(), scoreEval.getCurrentRunCompletion(), - scoreEval.getCurrentRunStatus(), testSession.getKey()); - courseAssessmentService.updateScoreEvaluation(courseNode, manualScoreEval, assessedUserCourseEnv, - getIdentity(), false, Role.coach); + + UserCourseEnvironment assessedUserCourseEnv = AssessmentHelper + .createAndInitUserCourseEnvironment(testSessionsToComplete.getIdentity(), courseEnv); + AssessmentEvaluation scoreEval = courseAssessmentService.getAssessmentEvaluation(courseNode, assessedUserCourseEnv); + + BigDecimal finalScore = testSessionsToComplete.getFinalScore(); + Float score = finalScore == null ? null : finalScore.floatValue(); + Boolean passed = scoreEval.getPassed(); + if(testSessionsToComplete.getManualScore() != null && finalScore != null && cutValue != null) { + boolean calculated = finalScore.compareTo(BigDecimal.valueOf(cutValue.doubleValue())) >= 0; + passed = Boolean.valueOf(calculated); } + AssessmentEntryStatus finalStatus = status == null ? scoreEval.getAssessmentStatus() : status; + ScoreEvaluation manualScoreEval = new ScoreEvaluation(score, passed, + finalStatus, scoreEval.getUserVisible(), scoreEval.getCurrentRunCompletion(), + scoreEval.getCurrentRunStatus(), testSessionsToComplete.getKey()); + courseAssessmentService.updateScoreEvaluation(courseNode, manualScoreEval, assessedUserCourseEnv, + getIdentity(), false, Role.coach); + } if(status == AssessmentEntryStatus.done) { - gradingService.assignmentDone(assignment); + Long metadataTime = qtiService.getMetadataCorrectionTimeInSeconds(assignment.getReferenceEntry(), testSessionsToComplete); + gradingService.assignmentDone(assignment, metadataTime); } dbInstance.commit();// commit all @@ -698,13 +701,19 @@ public class GradingAssignmentsListController extends FormBasicController implem } private void doAssignGrader(UserRequest ureq, final List<GradingAssignment> assignments) { - final AssignGrader assignGrader = new AssignGrader(testEntry); - GraderMailTemplate mailTemplate = new GraderMailTemplate(null, null, testEntry); + RepositoryEntryGradingConfiguration configuration = null; + if(testEntry != null) { + configuration = gradingService.getOrCreateConfiguration(testEntry); + } + + final AssignGraderContext assignGrader = new AssignGraderContext(testEntry); + GraderMailTemplate mailTemplate = GraderMailTemplate.notification(getTranslator(), null, null, testEntry, configuration); Step start = new AssignGrader1ChooseMemberStep(ureq, assignGrader, mailTemplate); StepRunnerCallback finish = (uureq, wControl, runContext) -> { MailerResult result = new MailerResult(); + GraderMailTemplate sendTemplate = assignGrader.isSendEmail() ? mailTemplate : null; for(GradingAssignment assignment:assignments) { - gradingService.assignGrader(assignment, assignGrader.getGrader(), mailTemplate, result); + gradingService.assignGrader(assignment, assignGrader.getGrader(), sendTemplate, result); } return StepsMainRunController.DONE_MODIFIED; }; @@ -734,14 +743,21 @@ public class GradingAssignmentsListController extends FormBasicController implem .map(GradingAssignment::getGrader) .filter(Objects::nonNull) .collect(Collectors.toList()); - final AssignGrader assignGrader = new AssignGrader(testEntry, currentGrader); - GraderMailTemplate mailTemplate = new GraderMailTemplate(null, null, testEntry); + + RepositoryEntryGradingConfiguration configuration = null; + if(testEntry != null) { + configuration = gradingService.getOrCreateConfiguration(testEntry); + } + + final AssignGraderContext assignGrader = new AssignGraderContext(testEntry, currentGrader); + GraderMailTemplate mailTemplate = GraderMailTemplate.notification(getTranslator(), null, null, testEntry, configuration); Step start = new AssignGrader1ChooseMemberStep(ureq, assignGrader, mailTemplate); StepRunnerCallback finish = (uureq, wControl, runContext) -> { MailerResult result = new MailerResult(); + GraderMailTemplate sendTemplate = assignGrader.isSendEmail() ? mailTemplate : null; for(GradingAssignment assignment:assignments) { GradingAssignment unassignedAssignment = gradingService.unassignGrader(assignment); - gradingService.assignGrader(unassignedAssignment, assignGrader.getGrader(), mailTemplate, result); + gradingService.assignGrader(unassignedAssignment, assignGrader.getGrader(), sendTemplate, result); } return StepsMainRunController.DONE_MODIFIED; }; @@ -813,14 +829,17 @@ public class GradingAssignmentsListController extends FormBasicController implem } private List<MailTemplate> getTemplates(RepositoryEntry entry, RepositoryEntry referenceEntry) { + RepositoryEntryGradingConfiguration configuration = null; + if(referenceEntry != null) { + configuration = gradingService.getOrCreateConfiguration(referenceEntry); + } + List<MailTemplate> templates = new ArrayList<>(); - templates.add(new GraderMailTemplate(translate("template.empty"), entry, null, referenceEntry)); - templates.add(new GraderMailTemplate(translate("template.notification"), - translate("mail.notification.subject"), translate("mail.notification.subject"), entry, null, referenceEntry)); - templates.add(new GraderMailTemplate(translate("template.reminder1"), - translate("mail.reminder1.subject"), translate("mail.reminder1.body"), entry, null, referenceEntry)); - templates.add(new GraderMailTemplate(translate("template.reminder2"), - translate("mail.reminder2.subject"), translate("mail.reminder2.body"), entry, null, referenceEntry)); + templates.add(GraderMailTemplate.empty(getTranslator(), entry, null, referenceEntry)); + templates.add(GraderMailTemplate.graderTo(getTranslator(), entry, null, referenceEntry, configuration)); + templates.add(GraderMailTemplate.notification(getTranslator(), entry, null, referenceEntry, configuration)); + templates.add(GraderMailTemplate.firstReminder(getTranslator(), entry, null, referenceEntry, configuration)); + templates.add(GraderMailTemplate.secondReminder(getTranslator(), entry, null, referenceEntry, configuration)); return templates; } diff --git a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsTableModel.java b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsTableModel.java index 236face6b98c05f95a58bc681707096bc67894f9..62b631723ef524aff7cf5512706a33396f13c762 100644 --- a/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsTableModel.java +++ b/src/main/java/org/olat/modules/grading/ui/GradingAssignmentsTableModel.java @@ -84,6 +84,7 @@ implements SortableFlexiTableDataModel<GradingAssignmentRow> { case taxonomy: return row.getTaxonomyLevels(); case courseElement: return row.getCourseElementTitle(); case correctionMinutes: return CalendarUtils.convertSecondsToMinutes(row.getRecordedSeconds()); + case correctionMetadataMinutes: return CalendarUtils.convertSecondsToMinutes(row.getRecordedMetadataSeconds()); case assessmentDate: return row.getAssessmentDate(); case assignmentDate: return row.getAssignmentDate(); case doneDate: return row.getDoneDate(); @@ -145,6 +146,7 @@ implements SortableFlexiTableDataModel<GradingAssignmentRow> { courseElement("table.header.course.element"), assessmentDate("table.header.assessment.date"), correctionMinutes("table.header.correction.minutes"), + correctionMetadataMinutes("table.header.correction.meta.minutes"), assignmentDate("table.header.assignment.date"), doneDate("table.header.done.date"), score("table.header.score"), diff --git a/src/main/java/org/olat/modules/grading/ui/GradingRepositoryEntryConfigurationController.java b/src/main/java/org/olat/modules/grading/ui/GradingRepositoryEntryConfigurationController.java index 9c67cc04fdc9b5d967d84b4759cd583528c39230..65d32a4d83195feef032f19d4c3bacf2c38a644e 100644 --- a/src/main/java/org/olat/modules/grading/ui/GradingRepositoryEntryConfigurationController.java +++ b/src/main/java/org/olat/modules/grading/ui/GradingRepositoryEntryConfigurationController.java @@ -32,6 +32,7 @@ import org.olat.core.gui.components.form.flexible.FormItemContainer; import org.olat.core.gui.components.form.flexible.elements.FormLink; import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; import org.olat.core.gui.components.form.flexible.elements.SingleSelection; +import org.olat.core.gui.components.form.flexible.elements.SpacerElement; import org.olat.core.gui.components.form.flexible.elements.TextElement; import org.olat.core.gui.components.form.flexible.impl.FormBasicController; import org.olat.core.gui.components.form.flexible.impl.FormEvent; @@ -84,6 +85,10 @@ public class GradingRepositoryEntryConfigurationController extends FormBasicCont private TextElement secondReminderSubjectEl; private TextElement secondReminderBodyEl; + private DropdownItem templatesDropdownEl; + private SpacerElement spacerReminderEl; + private SpacerElement spacerNotificationsEl; + private final RepositoryEntry entry; private RepositoryEntryGradingConfiguration configuration; @@ -140,7 +145,7 @@ public class GradingRepositoryEntryConfigurationController extends FormBasicCont notificationSubjectEl = uifactory.addTextElement("configuration.notification.subject", 255, configuration.getNotificationSubject(), formLayout); notificationBodyEl = uifactory.addTextAreaElement("configuration.notification.body", 4, 60, configuration.getNotificationBody(), formLayout); - uifactory.addSpacerElement("spacer-notification", formLayout, false); + spacerNotificationsEl = uifactory.addSpacerElement("spacer-notification", formLayout, false); String firstReminder = configuration.getFirstReminder() == null ? null : configuration.getFirstReminder().toString(); firstReminderPeriodEl = uifactory.addTextElement("configuration.first.reminder.period", 6, firstReminder, formLayout); @@ -148,7 +153,7 @@ public class GradingRepositoryEntryConfigurationController extends FormBasicCont firstReminderSubjectEl = uifactory.addTextElement("configuration.first.reminder.subject", 255, configuration.getFirstReminderSubject(), formLayout); firstReminderBodyEl = uifactory.addTextAreaElement("configuration.first.reminder.body", 4, 60, configuration.getFirstReminderBody(), formLayout); - uifactory.addSpacerElement("spacer-reminder", formLayout, false); + spacerReminderEl = uifactory.addSpacerElement("spacer-reminder", formLayout, false); String secondReminder = configuration.getSecondReminder() == null ? null : configuration.getSecondReminder().toString(); secondReminderPeriodEl = uifactory.addTextElement("configuration.second.reminder.period", 6, secondReminder, formLayout); @@ -161,9 +166,9 @@ public class GradingRepositoryEntryConfigurationController extends FormBasicCont buttonsCont.setRootForm(mainForm); uifactory.addFormSubmitButton("save", buttonsCont); - DropdownItem dropdownEl = uifactory.addDropdownMenu("choose.template.language", null, buttonsCont, getTranslator()); - dropdownEl.setOrientation(DropdownOrientation.right); - dropdownEl.setEmbbeded(true); + templatesDropdownEl = uifactory.addDropdownMenu("choose.template.language", null, buttonsCont, getTranslator()); + templatesDropdownEl.setOrientation(DropdownOrientation.right); + templatesDropdownEl.setEmbbeded(true); String dummyPage = velocity_root + "empty.html"; FormLayoutContainer dummyCont = FormLayoutContainer.createCustomFormLayout("dummy", getTranslator(), dummyPage); @@ -176,7 +181,7 @@ public class GradingRepositoryEntryConfigurationController extends FormBasicCont String label = locale.getDisplayLanguage(getLocale()); FormLink languageLink = uifactory.addFormLink("use.".concat(key), "choose.template", label, null, dummyCont, Link.LINK | Link.NONTRANSLATED); languageLink.setUserObject(locale); - dropdownEl.addElement(languageLink); + templatesDropdownEl.addElement(languageLink); } } } @@ -280,6 +285,9 @@ public class GradingRepositoryEntryConfigurationController extends FormBasicCont secondReminderPeriodEl.setVisible(enabled); secondReminderSubjectEl.setVisible(enabled); secondReminderBodyEl.setVisible(enabled); + spacerReminderEl.setVisible(enabled); + spacerNotificationsEl.setVisible(enabled); + templatesDropdownEl.setVisible(enabled); } private void doChooseTemplateLanguage(Locale locale) { diff --git a/src/main/java/org/olat/modules/grading/ui/ReportResource.java b/src/main/java/org/olat/modules/grading/ui/ReportResource.java index 98081bc280a5ba1856a798216191c6c7390e5424..2a5cc83ef89773473c3557cc61d4f0b31b23fa21 100644 --- a/src/main/java/org/olat/modules/grading/ui/ReportResource.java +++ b/src/main/java/org/olat/modules/grading/ui/ReportResource.java @@ -137,6 +137,7 @@ public class ReportResource extends OpenXMLWorkbookResource { headerRow.addCell(pos++, translator.translate("table.header.assignments.open"), headerStyle); headerRow.addCell(pos++, translator.translate("table.header.assignments.overdue"), headerStyle); headerRow.addCell(pos++, translator.translate("table.header.assignments.oldest.open"), headerStyle); + headerRow.addCell(pos++, translator.translate("table.header.recorded.meta.time"), headerStyle); headerRow.addCell(pos, translator.translate("table.header.recorded.time"), headerStyle); } @@ -164,6 +165,7 @@ public class ReportResource extends OpenXMLWorkbookResource { row.addCell(pos++, graderStatistics.getStatistics().getNumOfOpenAssignments(), null); row.addCell(pos++, graderStatistics.getStatistics().getNumOfOverdueAssignments(), null); row.addCell(pos++, graderStatistics.getStatistics().getOldestOpenAssignment(), workbook.getStyles().getDateStyle()); + row.addCell(pos++, CalendarUtils.convertSecondsToMinutes(graderStatistics.getRecordedMetadataTimeInSeconds()), null); row.addCell(pos, CalendarUtils.convertSecondsToMinutes(graderStatistics.getRecordedTimeInSeconds()), null); } @@ -216,6 +218,7 @@ public class ReportResource extends OpenXMLWorkbookResource { // assessment infos headerRow.addCell(pos++, translator.translate("table.header.assessment.date"), headerStyle); + headerRow.addCell(pos++, translator.translate("table.header.correction.meta.minutes"), headerStyle); headerRow.addCell(pos++, translator.translate("table.header.correction.minutes"), headerStyle); headerRow.addCell(pos++, translator.translate("table.header.assignment.date"), headerStyle); headerRow.addCell(pos++, translator.translate("table.header.done.date"), headerStyle); @@ -275,6 +278,7 @@ public class ReportResource extends OpenXMLWorkbookResource { row.addCell(pos++, assignmentWithInfos.getCourseElementTitle()); row.addCell(pos++, assignmentWithInfos.getAssessmentDate(), workbook.getStyles().getDateStyle()); + row.addCell(pos++, CalendarUtils.convertSecondsToMinutes(assignmentWithInfos.getMetadataTimeRecordedInSeconds()), null); row.addCell(pos++, CalendarUtils.convertSecondsToMinutes(assignmentWithInfos.getTimeRecordedInSeconds()), null); row.addCell(pos++, assignment.getAssignmentDate(), workbook.getStyles().getDateStyle()); row.addCell(pos++, assignment.getClosingDate(), workbook.getStyles().getDateStyle()); diff --git a/src/main/java/org/olat/modules/grading/ui/_content/grading_infos.html b/src/main/java/org/olat/modules/grading/ui/_content/grading_infos.html index 5cfddfd8f388d237607f637be2a1a621299f4d2d..6a73b8435ab3d38f42388269b4adf92dcaa945db 100644 --- a/src/main/java/org/olat/modules/grading/ui/_content/grading_infos.html +++ b/src/main/java/org/olat/modules/grading/ui/_content/grading_infos.html @@ -10,7 +10,7 @@ <legend>$r.translate("grading.infos.configuration")</legend> <table class="table"> <tbody> - <tr> + <tr class="o_no_border"> <th scope="row">$r.translate("configuration.assessed.identity.visibility")</th> <td>$visibility</td> </tr> diff --git a/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_de.properties index 26c9a84d6629aad4e85d703b1671021c88fbc17b..69188cf92ae9226fbfe27bc0196f363da6ab75b7 100644 --- a/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_de.properties @@ -55,6 +55,7 @@ contact.owners.title=Besitzer kontaktieren choose.template.language=Vorlage Sprache w\u00E4hlen correction=Korrigieren deactivate.grader.title=Korrektor "{0}" deaktivieren +error.before.deadline=Frist nach diesem Datum k\u00F6nnen nicht ge\u00E4ndert werden. error.date.future=Bitte ein Datum in Zukunft w\u00E4hlen. error.working.days=Anzahl Tage muss gr\u00F6sser als {0} oder leer. extend.deadline=Frist @@ -71,12 +72,16 @@ grading.infos.graders=Korrektoren grading.my.assignments.title=Meine Zuweisungen grading.repo.enabled=Korrektur einschalten info.grader.activated=Korrektor "{0}" wurde erfolgreich aktiviert +mail.grader.to.entry.subject=Als Korrektor +mail.grader.to.entry.body=Sie sind jetzt Korrektor mail.notification.subject=Neue Zuweisung mail.notification.body=Neue Zuweisung für $coursetitle mail.reminder1.subject=Zuweisung vergessen mail.reminder1.body=Zuweisung vergessen für $coursetitle mail.reminder2.subject=Mahnung Zuweisung mail.reminder2.body=Mahnung Zuweisung für $coursetitle +mail.to.grader.body=Text zu Korrektor +mail.to.grader.subject=Betreff zu Korrektor notification.body=Text Benachrichtigung notification.subject=Betreff Benachrichtigung passed.false=$org.olat.course.assessment\:passed.false @@ -128,23 +133,27 @@ table.header.assignments.oldest.open=\u00C4lterste table.header.assignments.open=\# Offen table.header.assignments.overdue=\# \u00DCberf\u00E4llig table.header.assignments.total=\# Total -table.header.correction.minutes=Korrektur (Minuten) +table.header.correction.minutes=Korrektur (echte Minuten) +table.header.correction.meta.minutes=Korrektur (Minuten) table.header.course.element=Kursbaustein table.header.deadline=Frist table.header.done.date=Erledigt am table.header.entry=Kurs table.header.entry.external.ref=External Ref. +table.header.id=ID table.header.grade=Korrigieren table.header.passed=Bestanden -table.header.recorded.time=Korrektur (Minuten) +table.header.recorded.time=Korrektur (echte Minuten) +table.header.recorded.meta.time=Korrektur (Minuten) table.header.reference.entry=Test table.header.reference.entry.external.ref=External Ref. table.header.score=Punkte table.header.status=Status table.header.taxonomy=Taxonomie -table.header.tools=Action +table.header.tools=Werkzeuge table.header.username=Benutzername template.empty=Leer +template.grader.to=Einladung Korrektor template.notification=Zuweisung Benachrichtigung template.reminder1=1. Erinnerung template.reminder2=2. Erinnerung diff --git a/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_en.properties index 3240a23d2a79c98ed622cd93f9172c41447a6d3b..f1f2cc843c29902dd6643494fb38ee11f098ebab 100644 --- a/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_en.properties @@ -55,6 +55,7 @@ contact.owners.title=Contact owners choose.template.language=Choose language template correction=Grade deactivate.grader.title=Deactivate grader "{0}" +error.before.deadline=Deadline after this date cannot be changed. error.date.future=Please, choose a date in future error.working.days=Number of days must be bigger than {0} or empty. extend.deadline=Deadline @@ -77,12 +78,16 @@ reminder.1.body=Text first reminder reminder.1.subject=Subject first reminder reminder.2.body=Text second reminder reminder.2.subject=Subject second reminder +mail.grader.to.entry.subject=As grader +mail.grader.to.entry.body=You are a grader now mail.notification.subject=New grading assignment mail.notification.body=New grading assignment for $coursetitle mail.reminder1.subject=First reminder mail.reminder1.body=First reminder for assignment for $coursetitle mail.reminder2.subject=Second reminder and last mail.reminder2.body=Second reminder and last for $coursetitle +mail.to.grader.body=Text to grader +mail.to.grader.subject=Subject to grader passed.false=$org.olat.course.assessment\:passed.false passed.false.label=Not passed passed.true=$org.olat.course.assessment\:passed.true @@ -126,22 +131,26 @@ table.header.assignments.oldest.open=Oldest table.header.assignments.open=\# Open table.header.assignments.overdue=\# Overdue table.header.assignments.total=\# Total -table.header.correction.minutes=Correction (minutes) +table.header.correction.minutes=Correction (real minutes) +table.header.correction.meta.minutes=Correction (minutes) table.header.course.element=Course element table.header.deadline=Deadline table.header.done.date=Close date table.header.entry=Course table.header.entry.external.ref=External ref. +table.header.id=ID table.header.passed=Passed table.header.reference.entry=Test table.header.reference.entry.external.ref=External ref. -table.header.recorded.time=Time correction +table.header.recorded.time=Correction (real minutes) +table.header.recorded.meta.time=Correction (minutes) table.header.score=Score table.header.status=Status table.header.taxonomy=Taxonomie -table.header.tools=Action +table.header.tools=Tools table.header.username=Username template.empty=Empty +template.grader.to=Grader invitation template.notification=Assignment notification template.reminder1=First reminder template.reminder2=Second reminder diff --git a/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_fr.properties new file mode 100644 index 0000000000000000000000000000000000000000..66d241f3e79d7962a745c080b092b1d75f222435 --- /dev/null +++ b/src/main/java/org/olat/modules/grading/ui/_i18n/LocalStrings_fr.properties @@ -0,0 +1,160 @@ +#Tue Mar 03 06:57:53 CET 2020 +absence.grader.title=Ajouter un cong\u00E9 pour "{0}" +add.grader=Ajouter un correcteur +admin.menu.title=Correction +admin.menu.title.alt=Corrections +admin.title=Configuration du processus de correction +assignment.status.assigned=Assign\u00E9 +assignment.status.deadlineInDay=encore un jour +assignment.status.deadlineInDays=encore {0} jours +assignment.status.deadlineMissed=D\u00E9lai expir\u00E9 +assignment.status.deadlineToday=Fi du d\u00E9lai aujourd'hui +assignment.status.done=Termin\u00E9 +assignment.status.inProcess=En cours +assignment.status.unassigned=Pas assign\u00E9 +assignments.report=Rapport +change.grader=Changer de correcteur +choose.template.language=Choisir la langue du mod\u00E8le +coaching.graders=Correcteurs +coaching.my.assignments=Mes affectations +configuration.assessed.identity.anonyme=Anonyme +configuration.assessed.identity.name.visible=Afficher le nom du candidat pendant la correction +configuration.assessed.identity.visibility=Identit\u00E9 des candidats +configuration.first.reminder.body=Text du rappel +configuration.first.reminder.period=1. rappel apr\u00E8s +configuration.first.reminder.subject=Objet du rappel +configuration.grading.period=P\u00E9riode allou\u00E9e \u00E0 la correction +configuration.informations.resource.contact=Contact +configuration.informations.resource.id=ID +configuration.informations.resource.open=Ouvrir +configuration.informations.resource.owners=Propri\u00E9taires +configuration.notification.afterTestSubmission=Imm\u00E9diatement apr\u00E8s la fin du test +configuration.notification.body=Notification +configuration.notification.onceDay=Une fois par jour apr\u00E8s minuit +configuration.notification.subject=Objet de la notification +configuration.notification.type=Notifier les nouvelles affectations de corrections +configuration.second.reminder.body=Rappel +configuration.second.reminder.period=2. rappel apr\u00E8s +configuration.second.reminder.subject=Objet du rappel +confirm.deactivate.grader.all=Voulez-vous d\u00E9sactiver le correcteur suivant "{0}" et r\u00E9partir toutes ses affectations? +confirm.deactivate.grader.entry=Voulez-vous d\u00E9sactiver le correcteur "{0}" pour le test "{0}" et r\u00E9partir ses affectations? +confirm.deactivate.grader.entry.ref=Voulez-vous d\u00E9sactiver le correcteur suivant "{0}" pour le test "{1} ({2})" et r\u00E9partir ses affectations? +confirm.deactivate.replacement=Rempla\u00E7ant +confirm.deactivate.replacement.none=Personne +confirm.remove.grader.all=Voulez-vous enlevez le correcteur suivant "{0}" et r\u00E9partir toutes ses affectations? +confirm.remove.grader.entry=Voulez-vous enlever le correcteur suivant "{0}" pour le test "{1}" et r\u00E9partir ses affectations? +confirm.remove.grader.entry.ref=Voulez-vous enlever le correcteur suivant "{0}" pour le test "{1} ({2})" et r\u00E9partir ses affectations? +confirm.reopen.assignment=Voulez-vous r\u00E9ouvrir cette affectation? +confirm.reopen.assignment.title=R\u00E9ouvrir l'affectation +confirm.unassign.grader=Voulez-vous enlever le correcteur "{0}"? Le temps de correction d\u00E9j\u00E0 utilis\u00E9 sera conserv\u00E9. +confirm.unassign.grader.title=Enlever le correcteur "{0}" +contact.grader.mail=Correcteur +contact.grader.title=Contacter le correcteur "{0}" +contact.owners.title=Contacter les propri\u00E9taires +correction=Corriger +deactivate.grader.title=D\u00E9sactiver le correcteur "{0}" +error.before.deadline=Le d\u00E9lai apr\u00E8s cette date ne peut pas \u00EAtre modifi\u00E9. +error.date.future=Choisissez s'il vous pla\u00EEt une date dans le future. +error.working.days=Le nombre de jours doit \u00EAtre plus grand que {0} ou laisser vide. +extend.deadline=D\u00E9lai +extend.deadline.title=Prolong\u00E9 le d\u00E9lai de "{0}" +grade=Corriger +grader.status.activated=Actif +grader.status.deactivated=Inactif +grader.status.removed=Enlev\u00E9 +grading.admin.configuration=Configuration +grading.admin.templates=Mod\u00E8les +grading.enabled=Activ\u00E9 le flux de travail correction +grading.infos.configuration=Configuration +grading.infos.graders=Correcteurs +grading.my.assignments.title=Mes affectations +grading.repo.enabled=Activer la correction +info.grader.activated=Correcteur "{0}" a \u00E9t\u00E9 activ\u00E9. +notification.body=Texte de la notification +notification.subject=Objet de la notification +passed.false=$org.olat.course.assessment\:passed.false +passed.false.label=Pas r\u00E9ussi +passed.true=$org.olat.course.assessment\:passed.true +passed.true.label=R\u00E9ussi +reminder.1.body=Text 1. rappel +reminder.1.subject=Objet 1. rappel +reminder.2.body=Texte 2. rappel +reminder.2.subject=Objet 2. rappel +remove.grader.title=Enlever le correcteur "{0}" +report.custom=T\u00E9l\u00E9charger +report.custom.dates.from=Du +report.custom.dates.to=Au +report.last.month=Le mois dernier +repository.assignments=Affectations +repository.configuration=Configuration +repository.graders=Correcteurs +search.entries=Cours +search.grader.status=Statut +search.grader.status.activated=Actif +search.grader.status.deactivated=Inactif +search.grader.status.removed=Enlev\u00E9 +search.graders=Correcteur +search.grading.dates=P\u00E9riode de correction +search.grading.dates.sep=du +search.passed=R\u00E9ussi +search.reference.entries=Test +search.scores=Points +search.scores.sep=au +search.status=Statut +search.status.closed=Termin\u00E9 +search.status.deadlineMissed=D\u00E9lai d\u00E9pass\u00E9 +search.status.reminder1=1. rappel +search.status.reminder2=2. rappel +search.status.unassigned=Pas affect\u00E9 +search.taxonomy=Taxonomie +show.all=Tout montrer +table.assignments.empty=Aucune affectation n'a \u00E9t\u00E9 trouv\u00E9e. +table.header.absence.leave=Cong\u00E9 +table.header.assessment.date=Date du test +table.header.assignment.date=Date de l'affectation +table.header.assignments.done=\# Termin\u00E9 +table.header.assignments.oldest.open=Le plus ancien +table.header.assignments.overdue=\# En retard +table.header.assignments.total=\# Total +table.header.correction.meta.minutes=Correction (minutes) +table.header.correction.minutes=Correction (minutes r\u00E9elles) +table.header.course.element=\u00C9l\u00E9ment de cours +table.header.deadline=D\u00E9lai +table.header.done.date=Termin\u00E9 le +table.header.entry=Cours +table.header.entry.external.ref=R\u00E9f\u00E9rence ext. +table.header.grade=Corriger +table.header.id=ID +table.header.passed=R\u00E9ussi +table.header.recorded.meta.time=Correction (minutes) +table.header.recorded.time=Correction (minutes r\u00E9elles) +table.header.reference.entry=Test +table.header.reference.entry.external.ref=R\u00E9f\u00E9rence ext. +table.header.score=Points +table.header.status=Statut +table.header.taxonomy=Taxonomie +table.header.tools=Outils +table.header.username=Nom d'utilisateur +template.empty=Vide +template.grader.to=Invitation correcteur +template.notification=Notification d'affectation +template.reminder1=1. rappel +template.reminder2=2. rappel +tool.absence=Ajouter un cong\u00E9 +tool.activate=Activer +tool.assign.grader=Choisir un correcteur +tool.change.grader=Changer un correcteur +tool.deactivate=D\u00E9sactiver +tool.download.report=T\u00E9l\u00E9charger un rapport +tool.extend.deadline=Prolonger le d\u00E9lai +tool.remove=Enlever +tool.reopen.assignment=R\u00E9ouvrir +tool.send.mail=Contacter le correcteur +tool.show.assignments=Montrer les affectations +tool.unassign=Annuler l'affectation +tool.view.grading=Voire la correction +translate=Traduire +translate.title=Traduire "{0}" +user.assigned.tests=Tests affect\u00E9s +warning.atleastone=Choisissez s'il vous pla\u00EEt au moins une affectation. +working.days=jours ouvrables (lundi - vendredi) diff --git a/src/main/java/org/olat/modules/grading/ui/component/GraderMailTemplate.java b/src/main/java/org/olat/modules/grading/ui/component/GraderMailTemplate.java index bc1dcf5b4e988f196b2f7013d34b06232ef98ebf..6e7b7ede40d9996420c67f3008669ab665577c48 100644 --- a/src/main/java/org/olat/modules/grading/ui/component/GraderMailTemplate.java +++ b/src/main/java/org/olat/modules/grading/ui/component/GraderMailTemplate.java @@ -23,6 +23,7 @@ import java.util.Date; import java.util.Locale; import org.apache.velocity.VelocityContext; +import org.olat.core.gui.translator.Translator; import org.olat.core.helpers.Settings; import org.olat.core.id.Identity; import org.olat.core.id.Preferences; @@ -32,6 +33,7 @@ import org.olat.core.util.StringHelper; import org.olat.core.util.i18n.I18nManager; import org.olat.core.util.mail.MailTemplate; import org.olat.course.nodes.CourseNode; +import org.olat.modules.grading.RepositoryEntryGradingConfiguration; import org.olat.repository.RepositoryEntry; /** @@ -54,27 +56,96 @@ public class GraderMailTemplate extends MailTemplate { super(subject, body, null); } - public GraderMailTemplate(RepositoryEntry entry, CourseNode courseNode, RepositoryEntry referenceEntry) { + private GraderMailTemplate(RepositoryEntry entry, CourseNode courseNode, RepositoryEntry referenceEntry) { super(null, null, null); this.entry = entry; this.courseNode = courseNode; this.referenceEntry = referenceEntry; } - public GraderMailTemplate(String name, RepositoryEntry entry, CourseNode courseNode, RepositoryEntry referenceEntry) { + private GraderMailTemplate(String templateName, RepositoryEntry entry, CourseNode courseNode, RepositoryEntry referenceEntry) { super(null, null, null); - setTemplateName(name); + setTemplateName(templateName); this.entry = entry; this.courseNode = courseNode; this.referenceEntry = referenceEntry; } - public GraderMailTemplate(String templateName, String subject, String body, RepositoryEntry entry, CourseNode courseNode, RepositoryEntry referenceEntry) { - super(subject, body, null); - setTemplateName(templateName); - this.entry = entry; - this.courseNode = courseNode; - this.referenceEntry = referenceEntry; + public static final GraderMailTemplate empty(Translator translator, RepositoryEntry entry, CourseNode courseNode, + RepositoryEntry referenceEntry) { + return new GraderMailTemplate(translator.translate("template.empty"), entry, courseNode, referenceEntry); + } + + public static final GraderMailTemplate graderTo(Translator translator, RepositoryEntry entry, CourseNode courseNode, + RepositoryEntry referenceEntry, RepositoryEntryGradingConfiguration configuration) { + + String templateName = translator.translate("template.grader.to"); + GraderMailTemplate template = new GraderMailTemplate(templateName, entry, courseNode, referenceEntry); + if(configuration != null && StringHelper.containsNonWhitespace(configuration.getNotificationSubject())) { + template.setSubjectTemplate(configuration.getNotificationSubject()); + } else { + template.setSubjectTemplate(translator.translate("mail.grader.to.entry.subject")); + } + if(configuration != null && StringHelper.containsNonWhitespace(configuration.getNotificationBody())) { + template.setBodyTemplate(configuration.getNotificationBody()); + } else { + template.setBodyTemplate(translator.translate("mail.grader.to.entry.body")); + } + return template; + } + + public static final GraderMailTemplate notification(Translator translator, RepositoryEntry entry, CourseNode courseNode, + RepositoryEntry referenceEntry, RepositoryEntryGradingConfiguration configuration) { + + String templateName = translator.translate("template.notification"); + GraderMailTemplate template = new GraderMailTemplate(templateName, entry, courseNode, referenceEntry); + if(configuration != null && StringHelper.containsNonWhitespace(configuration.getNotificationSubject())) { + template.setSubjectTemplate(configuration.getNotificationSubject()); + } else { + template.setSubjectTemplate(translator.translate("mail.notification.subject")); + } + if(configuration != null && StringHelper.containsNonWhitespace(configuration.getNotificationBody())) { + template.setBodyTemplate(configuration.getNotificationBody()); + } else { + template.setBodyTemplate(translator.translate("mail.notification.body")); + } + return template; + } + + public static final GraderMailTemplate firstReminder(Translator translator, RepositoryEntry entry, CourseNode courseNode, + RepositoryEntry referenceEntry, RepositoryEntryGradingConfiguration configuration) { + + String templateName = translator.translate("template.reminder1"); + GraderMailTemplate template = new GraderMailTemplate(templateName, entry, courseNode, referenceEntry); + if(configuration != null && StringHelper.containsNonWhitespace(configuration.getFirstReminderSubject())) { + template.setSubjectTemplate(configuration.getFirstReminderSubject()); + } else { + template.setSubjectTemplate(translator.translate("mail.reminder1.subject")); + } + if(configuration != null && StringHelper.containsNonWhitespace(configuration.getFirstReminderBody())) { + template.setBodyTemplate(configuration.getFirstReminderBody()); + } else { + template.setBodyTemplate(translator.translate("mail.reminder1.body")); + } + return template; + } + + public static final GraderMailTemplate secondReminder(Translator translator, RepositoryEntry entry, CourseNode courseNode, + RepositoryEntry referenceEntry, RepositoryEntryGradingConfiguration configuration) { + + String templateName = translator.translate("template.reminder2"); + GraderMailTemplate template = new GraderMailTemplate(templateName, entry, courseNode, referenceEntry); + if(configuration != null && StringHelper.containsNonWhitespace(configuration.getSecondReminderSubject())) { + template.setSubjectTemplate(configuration.getSecondReminderSubject()); + } else { + template.setSubjectTemplate(translator.translate("mail.reminder2.subject")); + } + if(configuration != null && StringHelper.containsNonWhitespace(configuration.getSecondReminderBody())) { + template.setBodyTemplate(configuration.getSecondReminderBody()); + } else { + template.setBodyTemplate(translator.translate("mail.reminder2.body")); + } + return template; } public Date getAssessmentDate() { diff --git a/src/main/java/org/olat/modules/grading/ui/component/GraderStatusCellRenderer.java b/src/main/java/org/olat/modules/grading/ui/component/GraderStatusCellRenderer.java index dfbf7d5a07faeb16581127f107c0f8d6cc2a09aa..41f2aeaf72e15092ab8acd4f9c31951ea07e0102 100644 --- a/src/main/java/org/olat/modules/grading/ui/component/GraderStatusCellRenderer.java +++ b/src/main/java/org/olat/modules/grading/ui/component/GraderStatusCellRenderer.java @@ -50,23 +50,31 @@ public class GraderStatusCellRenderer implements FlexiCellRenderer { @SuppressWarnings("unchecked") GraderStatus status = getFinalStatus((List<GraderStatus>)cellValue); if(status != null) { - String iconCssClass; - if(status == GraderStatus.activated) { - iconCssClass = "o_icon o_grader_active"; - } else if(status == GraderStatus.deactivated) { - iconCssClass = "o_icon o_grader_inactive"; - } else { - iconCssClass = "o_icon o_grader_absence"; - } - - String label = translator.translate("grader.status.".concat(status.name())); - target.append("<span><i class='") - .append(iconCssClass).append("'> </i> ") - .append(label).append("</span>"); + renderStatus(target, status); } + } else if(cellValue instanceof GraderStatus) { + renderStatus(target, (GraderStatus)cellValue); } } + private void renderStatus(StringOutput target, GraderStatus status) { + if(status == null) return; + + String iconCssClass; + if(status == GraderStatus.activated) { + iconCssClass = "o_icon o_grader_active"; + } else if(status == GraderStatus.deactivated) { + iconCssClass = "o_icon o_grader_inactive"; + } else { + iconCssClass = "o_icon o_grader_absence"; + } + + String label = translator.translate("grader.status.".concat(status.name())); + target.append("<span><i class='") + .append(iconCssClass).append("'> </i> ") + .append(label).append("</span>"); + } + public static GraderStatus getFinalStatus(List<GraderStatus> status) { if(status == null || status.isEmpty()) { return null; diff --git a/src/main/java/org/olat/modules/grading/ui/confirmation/ConfirmDeactivationGraderController.java b/src/main/java/org/olat/modules/grading/ui/confirmation/ConfirmDeactivationGraderController.java index e303b47b38e0f3517d2f635a17a58e90c97b7f1e..2e9e52f789101c57ca55fde51c6e77ed7c8fcb4e 100644 --- a/src/main/java/org/olat/modules/grading/ui/confirmation/ConfirmDeactivationGraderController.java +++ b/src/main/java/org/olat/modules/grading/ui/confirmation/ConfirmDeactivationGraderController.java @@ -38,6 +38,7 @@ import org.olat.core.util.mail.MailerResult; import org.olat.modules.grading.GraderStatus; import org.olat.modules.grading.GraderToIdentity; import org.olat.modules.grading.GradingService; +import org.olat.modules.grading.RepositoryEntryGradingConfiguration; import org.olat.modules.grading.ui.GradingRepositoryOverviewController; import org.olat.modules.grading.ui.component.GraderMailTemplate; import org.olat.repository.RepositoryEntry; @@ -160,7 +161,11 @@ public class ConfirmDeactivationGraderController extends FormBasicController { MailerResult result = new MailerResult(); GraderMailTemplate reassignmentTemplate = null; if(replacement != null) { - reassignmentTemplate = new GraderMailTemplate(null, null, referenceEntry); + RepositoryEntryGradingConfiguration configuration = null; + if(referenceEntry != null) { + configuration = gradingService.getOrCreateConfiguration(referenceEntry); + } + reassignmentTemplate = GraderMailTemplate.notification(getTranslator(), null, null, referenceEntry, configuration); } if(remove) { diff --git a/src/main/java/org/olat/modules/grading/ui/confirmation/ExtendDeadlineController.java b/src/main/java/org/olat/modules/grading/ui/confirmation/ExtendDeadlineController.java index af5b731a5dadafa54e3b57e872f9c04232b58a98..f5f7b0cc1ca6699cd83c9e504e07b87acdb5af03 100644 --- a/src/main/java/org/olat/modules/grading/ui/confirmation/ExtendDeadlineController.java +++ b/src/main/java/org/olat/modules/grading/ui/confirmation/ExtendDeadlineController.java @@ -82,6 +82,10 @@ public class ExtendDeadlineController extends FormBasicController { private Date getLastExtendedDeadline() { Date lastDate = null; for(GradingAssignment assignment:assignments) { + if(assignment.getDeadline() != null + && (lastDate == null || assignment.getDeadline().after(lastDate))) { + lastDate = assignment.getDeadline(); + } if(assignment.getExtendedDeadline() != null && (lastDate == null || assignment.getExtendedDeadline().after(lastDate))) { lastDate = assignment.getExtendedDeadline(); @@ -90,6 +94,17 @@ public class ExtendDeadlineController extends FormBasicController { return lastDate; } + private Date getLastDeadline() { + Date lastDate = null; + for(GradingAssignment assignment:assignments) { + if(assignment.getDeadline() != null + && (lastDate == null || assignment.getDeadline().after(lastDate))) { + lastDate = assignment.getDeadline(); + } + } + return lastDate; + } + private Date getLastAssignmentDate() { GradingAssignment lastAssignment = null; for(GradingAssignment assignment:assignments) { @@ -127,8 +142,13 @@ public class ExtendDeadlineController extends FormBasicController { } else if(deadlineEl.getDate().compareTo(new Date()) <= 0) { deadlineEl.setErrorKey("error.date.future", null); allOk &= false; + } else { + Date lastDeadline = getLastDeadline(); + if(lastDeadline != null && lastDeadline.after(deadlineEl.getDate())) { + deadlineEl.setErrorKey("error.before.deadline", null); + allOk &= false; + } } - return allOk; } diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/AbstractGraderContext.java b/src/main/java/org/olat/modules/grading/ui/wizard/AbstractGraderContext.java new file mode 100644 index 0000000000000000000000000000000000000000..f0e475ef713d56092235d42136cf8aa0fe0bd40b --- /dev/null +++ b/src/main/java/org/olat/modules/grading/ui/wizard/AbstractGraderContext.java @@ -0,0 +1,54 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.grading.ui.wizard; + +import org.olat.repository.RepositoryEntry; + +/** + * + * Initial date: 27 févr. 2020<br> + * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com + * + */ +public class AbstractGraderContext { + + private boolean sendEmail; + private RepositoryEntry entry; + + public AbstractGraderContext(RepositoryEntry entry) { + this.entry = entry; + } + + public boolean isSendEmail() { + return sendEmail; + } + + public void setSendEmail(boolean sendEmail) { + this.sendEmail = sendEmail; + } + + public RepositoryEntry getEntry() { + return entry; + } + + public void setEntry(RepositoryEntry entry) { + this.entry = entry; + } +} diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader1ChooseMemberStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader1ChooseMemberStep.java index 33e2412db302b6824e3f1d61f71a4973c6604ad6..8e9e6720cf04c91514be60359a517b21c5b9eac6 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader1ChooseMemberStep.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader1ChooseMemberStep.java @@ -36,9 +36,9 @@ import org.olat.core.util.mail.MailTemplate; */ public class AssignGrader1ChooseMemberStep extends BasicStep { - private final AssignGrader assignGrader; + private final AssignGraderContext assignGrader; - public AssignGrader1ChooseMemberStep(UserRequest ureq, AssignGrader assignGrader, MailTemplate mailTemplate) { + public AssignGrader1ChooseMemberStep(UserRequest ureq, AssignGraderContext assignGrader, MailTemplate mailTemplate) { super(ureq); this.assignGrader = assignGrader; setNextStep(new AssignGrader2ConfirmMemberChoiceStep(ureq, assignGrader, mailTemplate)); diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader2ConfirmMemberChoiceStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader2ConfirmMemberChoiceStep.java index a81a6b20a3aba2f4a5d90713ea1c4a78690d7ccf..e29d0065b7bbf2b77bb42e703e674a6d0b332737 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader2ConfirmMemberChoiceStep.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader2ConfirmMemberChoiceStep.java @@ -38,9 +38,9 @@ import org.olat.core.util.mail.MailTemplate; */ public class AssignGrader2ConfirmMemberChoiceStep extends BasicStep { - private final AssignGrader assignGrader; + private final AssignGraderContext assignGrader; - public AssignGrader2ConfirmMemberChoiceStep(UserRequest ureq, AssignGrader assignGrader, MailTemplate mailTemplate) { + public AssignGrader2ConfirmMemberChoiceStep(UserRequest ureq, AssignGraderContext assignGrader, MailTemplate mailTemplate) { super(ureq); this.assignGrader = assignGrader; setNextStep(new AssignGrader3MailStep(ureq, assignGrader, mailTemplate)); diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader3MailStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader3MailStep.java index bde9aeef5c0b8b2502aeb0583c850655f86bea9a..9906bef6992b52680803cbe3179d4dd32215eaf4 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader3MailStep.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader3MailStep.java @@ -36,9 +36,9 @@ import org.olat.core.util.mail.MailTemplate; public class AssignGrader3MailStep extends BasicStep { private final MailTemplate mailTemplate; - private final AssignGrader assignGrader; + private final AssignGraderContext assignGrader; - public AssignGrader3MailStep(UserRequest ureq, AssignGrader assignGrader, MailTemplate mailTemplate) { + public AssignGrader3MailStep(UserRequest ureq, AssignGraderContext assignGrader, MailTemplate mailTemplate) { super(ureq); this.mailTemplate = mailTemplate; this.assignGrader = assignGrader; @@ -55,6 +55,6 @@ public class AssignGrader3MailStep extends BasicStep { public StepFormController getStepController(UserRequest ureq, WindowControl wControl, StepsRunContext runContext, Form form) { ContactList contacts = new ContactList(getTranslator().translate("assign.grader.contact")); contacts.add(assignGrader.getGrader()); - return new ImportGraderMailController(ureq, wControl, mailTemplate, contacts, form, runContext); + return new ImportGraderMailController(ureq, wControl, mailTemplate, contacts, assignGrader, form, runContext); } } \ No newline at end of file diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGraderBySearchController.java b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGraderBySearchController.java index 9dff5e4e7b15c8bd8327400ad200e9488d985b6c..fd1821ef5afcd90c298857ada5e63c9bf8684a7c 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGraderBySearchController.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGraderBySearchController.java @@ -42,11 +42,11 @@ import org.olat.core.id.Identity; */ public class AssignGraderBySearchController extends StepFormBasicController { - private final AssignGrader assignGrader; + private final AssignGraderContext assignGrader; private final UserSearchFlexiController searchController; - public AssignGraderBySearchController(UserRequest ureq, WindowControl wControl, AssignGrader assignGrader, + public AssignGraderBySearchController(UserRequest ureq, WindowControl wControl, AssignGraderContext assignGrader, Form rootForm, StepsRunContext runContext) { super(ureq, wControl, rootForm, runContext, LAYOUT_CUSTOM, "import_search"); this.assignGrader = assignGrader; diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader.java b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGraderContext.java similarity index 80% rename from src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader.java rename to src/main/java/org/olat/modules/grading/ui/wizard/AssignGraderContext.java index 6059a19d09b6295c377d7f247693eb996b5c8ac8..fc94cc56ac2a27ce1419bcf8073178c219df4a94 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/AssignGrader.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/AssignGraderContext.java @@ -31,19 +31,18 @@ import org.olat.repository.RepositoryEntry; * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com * */ -public class AssignGrader { +public class AssignGraderContext extends AbstractGraderContext { private Identity grader; - private RepositoryEntry entry; private final List<GraderToIdentity> currentGrader; - public AssignGrader(RepositoryEntry entry) { - this.entry = entry; + public AssignGraderContext(RepositoryEntry entry) { + super(entry); currentGrader = null; } - public AssignGrader(RepositoryEntry entry, List<GraderToIdentity> currentGrader) { - this.entry = entry; + public AssignGraderContext(RepositoryEntry entry, List<GraderToIdentity> currentGrader) { + super(entry); this.currentGrader = currentGrader; } @@ -55,14 +54,6 @@ public class AssignGrader { this.grader = grader; } - public RepositoryEntry getEntry() { - return entry; - } - - public void setEntry(RepositoryEntry entry) { - this.entry = entry; - } - public List<GraderToIdentity> getCurrentGrader() { return currentGrader; } diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader1ChooseMemberStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader1ChooseMemberStep.java index 2789d11d30d9422d4ff8a819fd0d8e60f03393ef..d02dcf9e3a1a72218dc0a649303dfcbfeac1b069 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader1ChooseMemberStep.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader1ChooseMemberStep.java @@ -34,9 +34,9 @@ import org.olat.core.util.mail.MailTemplate; */ public class ImportGrader1ChooseMemberStep extends BasicStep { - private final ImportGraders graders; + private final ImportGradersContext graders; - public ImportGrader1ChooseMemberStep(UserRequest ureq, ImportGraders graders, + public ImportGrader1ChooseMemberStep(UserRequest ureq, ImportGradersContext graders, MailTemplate mailTemplate, boolean searchResource) { super(ureq); this.graders = graders; diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader2ConfirmMemberChoiceStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader2ConfirmMemberChoiceStep.java index 463ba10d4a8bbdd9ae023867b95d475ff30cc047..701f76bc1f78a2d10a345c6dbe8551184531c9e1 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader2ConfirmMemberChoiceStep.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader2ConfirmMemberChoiceStep.java @@ -34,10 +34,10 @@ import org.olat.core.util.mail.MailTemplate; */ public class ImportGrader2ConfirmMemberChoiceStep extends BasicStep { - private final ImportGraders graders; + private final ImportGradersContext graders; public ImportGrader2ConfirmMemberChoiceStep(UserRequest ureq, - ImportGraders graders, MailTemplate mailTemplate, boolean searchResource) { + ImportGradersContext graders, MailTemplate mailTemplate, boolean searchResource) { super(ureq); this.graders = graders; if(searchResource) { diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader3SearchResourceStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader3SearchResourceStep.java index 13da2b5a2af8097748378a4bb0f7c9c67e22ad91..0f72d21a24295f38e6347172dbf7d9e6d78b0221 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader3SearchResourceStep.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader3SearchResourceStep.java @@ -36,9 +36,9 @@ import org.olat.core.util.mail.MailTemplate; */ public class ImportGrader3SearchResourceStep extends BasicStep { - private final ImportGraders graders; + private final ImportGradersContext graders; - public ImportGrader3SearchResourceStep(UserRequest ureq, ImportGraders graders, MailTemplate mailTemplate) { + public ImportGrader3SearchResourceStep(UserRequest ureq, ImportGradersContext graders, MailTemplate mailTemplate) { super(ureq); this.graders = graders; setNextStep(new ImportGrader5MailStep(ureq, graders, mailTemplate)); diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader5MailStep.java b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader5MailStep.java index 090e88d606c438864d1437b6f436b1e949fdaf71..a30a3f9ea939afb6d6b23dafc4df3623afbbc267 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader5MailStep.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGrader5MailStep.java @@ -35,10 +35,10 @@ import org.olat.core.util.mail.MailTemplate; */ public class ImportGrader5MailStep extends BasicStep { - private final ImportGraders graders; + private final ImportGradersContext graders; private final MailTemplate mailTemplate; - public ImportGrader5MailStep(UserRequest ureq, ImportGraders graders, MailTemplate mailTemplate) { + public ImportGrader5MailStep(UserRequest ureq, ImportGradersContext graders, MailTemplate mailTemplate) { super(ureq); this.graders = graders; this.mailTemplate = mailTemplate; @@ -55,6 +55,6 @@ public class ImportGrader5MailStep extends BasicStep { public StepFormController getStepController(UserRequest ureq, WindowControl wControl, StepsRunContext runContext, Form form) { ContactList contacts = new ContactList(getTranslator().translate("assign.grader.contact")); contacts.addAllIdentites(graders.getGraders()); - return new ImportGraderMailController(ureq, wControl, mailTemplate, contacts, form, runContext); + return new ImportGraderMailController(ureq, wControl, mailTemplate, contacts, graders, form, runContext); } } \ No newline at end of file diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraderBySearchController.java b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraderBySearchController.java index 1a2acbb7f1d92c828ad6216ace884ef33de139bb..a457eba3209fc6d99fde4bcb4008ccd412773222 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraderBySearchController.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraderBySearchController.java @@ -44,11 +44,11 @@ import org.olat.core.id.Identity; */ public class ImportGraderBySearchController extends StepFormBasicController { - private final ImportGraders graders; + private final ImportGradersContext graders; private final UserSearchFlexiController searchController; - public ImportGraderBySearchController(UserRequest ureq, WindowControl wControl, ImportGraders graders, + public ImportGraderBySearchController(UserRequest ureq, WindowControl wControl, ImportGradersContext graders, Form rootForm, StepsRunContext runContext) { super(ureq, wControl, rootForm, runContext, LAYOUT_CUSTOM, "import_search"); this.graders = graders; diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraderMailController.java b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraderMailController.java index 162e28e6fd55d34f22aff7a50e9869a2a2cc793c..5826fcdd938178c4fb95563ac588d0d8163bfa17 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraderMailController.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraderMailController.java @@ -40,15 +40,18 @@ import org.olat.modules.co.ContactForm; public class ImportGraderMailController extends StepFormBasicController { private MailTemplate mailTemplate; + private final AbstractGraderContext assignGrader; private final ContactForm mailCtrl; public ImportGraderMailController(UserRequest ureq, WindowControl wControl, MailTemplate mailTemplate, - ContactList contactList, Form rootForm, StepsRunContext runContext) { + ContactList contactList, AbstractGraderContext assignGrader, Form rootForm, StepsRunContext runContext) { super(ureq, wControl, rootForm, runContext, LAYOUT_CUSTOM, "mail_template"); this.mailTemplate = mailTemplate; + this.assignGrader = assignGrader; mailCtrl = new ContactForm(ureq, getWindowControl(), rootForm, getIdentity(), false, false, false, false); mailCtrl.getAndRemoveFormTitle(); + mailCtrl.setOptional(true); mailCtrl.setSubject(mailTemplate.getSubjectTemplate()); mailCtrl.setBody(mailTemplate.getBodyTemplate()); mailCtrl.setRecipientsLists(Collections.singletonList(contactList)); @@ -75,9 +78,12 @@ public class ImportGraderMailController extends StepFormBasicController { @Override protected void formOK(UserRequest ureq) { - mailTemplate.setSubjectTemplate(mailCtrl.getSubject()); - mailTemplate.setBodyTemplate(mailCtrl.getBody()); - mailTemplate.setAttachments(mailCtrl.getAttachments()); + assignGrader.setSendEmail(mailCtrl.isSend()); + if(mailCtrl.isSend()) { + mailTemplate.setSubjectTemplate(mailCtrl.getSubject()); + mailTemplate.setBodyTemplate(mailCtrl.getBody()); + mailTemplate.setAttachments(mailCtrl.getAttachments()); + } fireEvent (ureq, StepsEvent.ACTIVATE_NEXT); } } \ No newline at end of file diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraders.java b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGradersContext.java similarity index 83% rename from src/main/java/org/olat/modules/grading/ui/wizard/ImportGraders.java rename to src/main/java/org/olat/modules/grading/ui/wizard/ImportGradersContext.java index fa3bbb5b5c3bf49fa9aef31188d19b135d54395e..91ea2ce13e22eb40826d44837b3152f419dca0d4 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/ImportGraders.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/ImportGradersContext.java @@ -30,21 +30,12 @@ import org.olat.repository.RepositoryEntry; * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com * */ -public class ImportGraders { +public class ImportGradersContext extends AbstractGraderContext { private List<Identity> graders; - private RepositoryEntry entry; - public ImportGraders(RepositoryEntry entry) { - this.entry = entry; - } - - public RepositoryEntry getEntry() { - return entry; - } - - public void setEntry(RepositoryEntry entry) { - this.entry = entry; + public ImportGradersContext(RepositoryEntry entry) { + super(entry); } public List<Identity> getGraders() { diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/SearchResourceListController.java b/src/main/java/org/olat/modules/grading/ui/wizard/SearchResourceListController.java index 05c514c100ab1781f18060bcb9f0e8d2beb3459d..b741032db85da045c01bdb564e6e06bccf2d1625 100644 --- a/src/main/java/org/olat/modules/grading/ui/wizard/SearchResourceListController.java +++ b/src/main/java/org/olat/modules/grading/ui/wizard/SearchResourceListController.java @@ -56,7 +56,7 @@ import org.springframework.beans.factory.annotation.Autowired; */ public class SearchResourceListController extends StepFormBasicController { - private ImportGraders graders; + private ImportGradersContext graders; private FlexiTableElement tableEl; private RepositoryFlexiTableModel tableModel; @@ -64,7 +64,7 @@ public class SearchResourceListController extends StepFormBasicController { @Autowired private GradingService gradingService; - public SearchResourceListController(UserRequest ureq, WindowControl wControl, ImportGraders graders, Form rootForm, StepsRunContext runContext) { + public SearchResourceListController(UserRequest ureq, WindowControl wControl, ImportGradersContext graders, Form rootForm, StepsRunContext runContext) { super(ureq, wControl, rootForm, runContext, LAYOUT_CUSTOM, "resource_list"); setTranslator(Util.createPackageTranslator(RepositoryService.class, getLocale(), getTranslator())); this.graders = graders; diff --git a/src/main/java/org/olat/modules/grading/ui/wizard/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/grading/ui/wizard/_i18n/LocalStrings_fr.properties new file mode 100644 index 0000000000000000000000000000000000000000..9315b5f8a7830fd8e341d83c7dfe57e0ab21d4d2 --- /dev/null +++ b/src/main/java/org/olat/modules/grading/ui/wizard/_i18n/LocalStrings_fr.properties @@ -0,0 +1,7 @@ +#Tue Mar 03 06:58:46 CET 2020 +assign.grader.contact=Correcteurs +import.choose.title=Choisir un correcteur +import.confirm.title=Confirmer +import.mail.title=Contact +import.search.resource.title=Choisir un test +resources.noresources=Aucun test n'a \u00E9t\u00E9 trouv\u00E9. diff --git a/src/main/java/org/olat/modules/portfolio/ui/PageRunController.java b/src/main/java/org/olat/modules/portfolio/ui/PageRunController.java index 73a4a33d51df93dda8b6c4eb3dd4f4e90f7bd6b0..0d85f09eec1eaf6cb5579a5d1d2cf3efc4396d16 100644 --- a/src/main/java/org/olat/modules/portfolio/ui/PageRunController.java +++ b/src/main/java/org/olat/modules/portfolio/ui/PageRunController.java @@ -77,7 +77,7 @@ import org.olat.modules.ceditor.SimpleAddPageElementHandler; import org.olat.modules.ceditor.ui.AddElementInfos; import org.olat.modules.ceditor.ui.FullEditorSecurityCallback; import org.olat.modules.ceditor.ui.PageController; -import org.olat.modules.ceditor.ui.PageEditorController; +import org.olat.modules.ceditor.ui.PageEditorV2Controller; import org.olat.modules.ceditor.ui.ValidationMessage; import org.olat.modules.portfolio.Assignment; import org.olat.modules.portfolio.Binder; @@ -134,7 +134,7 @@ public class PageRunController extends BasicController implements TooledControll private CloseableModalController cmc; private PageMetadataController pageMetaCtrl; private PageController pageCtrl; - private PageEditorController pageEditCtrl; + private PageEditorV2Controller pageEditCtrl; private RestorePageController restorePageCtrl; private ConfirmClosePageController confirmDonePageCtrl; private DialogBoxController confirmPublishCtrl, confirmRevisionCtrl, confirmCloseCtrl, @@ -200,7 +200,7 @@ public class PageRunController extends BasicController implements TooledControll putInitialPanel(mainVC); if(openInEditMode) { - pageEditCtrl = new PageEditorController(ureq, getWindowControl(), + pageEditCtrl = new PageEditorV2Controller(ureq, getWindowControl(), new PortfolioPageEditorProvider(ureq.getUserSession().getRoles()), new FullEditorSecurityCallback(), getTranslator()); listenTo(pageEditCtrl); @@ -651,7 +651,7 @@ public class PageRunController extends BasicController implements TooledControll } else { lockEntry = coordinator.getCoordinator().getLocker().acquireLock(lockOres, getIdentity(), ""); if(lockEntry.isSuccess()) { - pageEditCtrl = new PageEditorController(ureq, getWindowControl(), + pageEditCtrl = new PageEditorV2Controller(ureq, getWindowControl(), new PortfolioPageEditorProvider(ureq.getUserSession().getRoles()), new FullEditorSecurityCallback(), getTranslator()); listenTo(pageEditCtrl); diff --git a/src/main/java/org/olat/modules/qpool/model/QItemList.java b/src/main/java/org/olat/modules/qpool/model/QItemList.java index 921a8d107ce10a8167298151876d477375577cba..0976f861508784b0c0d04ad624645c366431fb1a 100644 --- a/src/main/java/org/olat/modules/qpool/model/QItemList.java +++ b/src/main/java/org/olat/modules/qpool/model/QItemList.java @@ -31,22 +31,20 @@ import org.olat.modules.qpool.QuestionItemShort; */ public class QItemList { - private List<QuestionItemShort> items; + private final boolean groupByTaxonomyLevel; + private final List<QuestionItemShort> items; - public QItemList() { - // - } - - public QItemList(List<QuestionItemShort> items) { + public QItemList(List<QuestionItemShort> items, boolean groupByTaxonomyLevel) { this.items = items; + this.groupByTaxonomyLevel = groupByTaxonomyLevel; } - public List<QuestionItemShort> getItems() { - return items; + public boolean isGroupByTaxonomyLevel() { + return groupByTaxonomyLevel; } - public void setItems(List<QuestionItemShort> items) { - this.items = items; + public List<QuestionItemShort> getItems() { + return items; } } diff --git a/src/main/java/org/olat/modules/qpool/ui/CreateTestOverviewController.java b/src/main/java/org/olat/modules/qpool/ui/CreateTestOverviewController.java index 7144d4f8c1d0a368861ea85cd960d1e5f36a9bf6..e09a8e7776b3ee0c632f662b246f771ca4df8ca2 100644 --- a/src/main/java/org/olat/modules/qpool/ui/CreateTestOverviewController.java +++ b/src/main/java/org/olat/modules/qpool/ui/CreateTestOverviewController.java @@ -36,13 +36,14 @@ import org.olat.core.commons.services.license.ResourceLicense; import org.olat.core.commons.services.license.ui.LicenseUIFactory; import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.form.flexible.FormItemContainer; +import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; import org.olat.core.gui.components.form.flexible.impl.FormBasicController; import org.olat.core.gui.components.form.flexible.impl.elements.table.BooleanCellRenderer; import org.olat.core.gui.components.form.flexible.impl.elements.table.CSSIconFlexiCellRenderer; import org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel; import org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiTableDataModel; -import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiColumnDef; import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiColumnModel; +import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiSortableColumnDef; import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel; import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableDataModelFactory; import org.olat.core.gui.control.Controller; @@ -52,8 +53,10 @@ import org.olat.core.util.Formatter; import org.olat.core.util.StringHelper; import org.olat.modules.qpool.ExportFormatOptions; import org.olat.modules.qpool.QPoolSPI; +import org.olat.modules.qpool.QPoolSecurityCallback; import org.olat.modules.qpool.QuestionItemShort; import org.olat.modules.qpool.QuestionPoolModule; +import org.olat.modules.qpool.QuestionStatus; import org.olat.modules.qpool.manager.QuestionPoolLicenseHandler; import org.springframework.beans.factory.annotation.Autowired; @@ -64,12 +67,15 @@ import org.springframework.beans.factory.annotation.Autowired; * */ public class CreateTestOverviewController extends FormBasicController { + + private static final String[] groupByKeys = new String[] { "on" }; private final boolean withLicenses; + private final boolean withTaxonomy; private final ExportFormatOptions format; - private QItemDataModel itemsModel; - + private QItemDataModel itemsModel; + private MultipleSelectionElement groupByEl; @Autowired private LicenseModule licenseModule; @@ -78,11 +84,11 @@ public class CreateTestOverviewController extends FormBasicController { @Autowired private QuestionPoolLicenseHandler licenseHandler; - public CreateTestOverviewController(UserRequest ureq, WindowControl wControl, List<QuestionItemShort> items, - ExportFormatOptions format) { + ExportFormatOptions format, QPoolSecurityCallback secCallback) { super(ureq, wControl, "create_test"); this.format = format; + withTaxonomy = secCallback.canUseTaxonomy(); withLicenses = licenseModule.isEnabled(licenseHandler); initForm(ureq); loadModel(items); @@ -98,15 +104,26 @@ public class CreateTestOverviewController extends FormBasicController { new CSSIconFlexiCellRenderer("o_icon_failed")) )); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(Cols.title)); + columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(Cols.topic)); + if(withTaxonomy) { + columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(Cols.taxonomyLevel)); + columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, Cols.taxonomyPath)); + } + columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(Cols.type)); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(Cols.format)); + columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(Cols.status, new QuestionStatusCellRenderer())); if(withLicenses) { columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(Cols.license)); } itemsModel = new QItemDataModel(columnsModel, format, getLocale()); uifactory.addTableElement(getWindowControl(), "shares", itemsModel, getTranslator(), formLayout); - uifactory.addFormSubmitButton("create.test", formLayout); + String[] groupByValues = new String[] { translate("group.by.taxonomy.level") }; + groupByEl = uifactory.addCheckboxesHorizontal("group.by", null, formLayout, groupByKeys, groupByValues); + groupByEl.setVisible(withTaxonomy); + uifactory.addFormCancelButton("cancel", formLayout, ureq, getWindowControl()); + uifactory.addFormSubmitButton("create.test", formLayout); } private void loadModel(List<QuestionItemShort> items) { @@ -156,6 +173,10 @@ public class CreateTestOverviewController extends FormBasicController { } return exportableItems; } + + public boolean isGroupByTaxonomyLevel() { + return groupByEl.isVisible() && groupByEl.isAtLeastSelected(1); + } @Override protected void formOK(UserRequest ureq) { @@ -218,6 +239,18 @@ public class CreateTestOverviewController extends FormBasicController { return question.getTitle(); } + public String getTopic() { + return question.getTopic(); + } + + public String getTaxonomyLevelName() { + return question.getTaxonomyLevelName(); + } + + public String getTaxonomyPath() { + return question.getTaxonomicPath(); + } + public String getFormat() { return question.getFormat(); } @@ -225,6 +258,18 @@ public class CreateTestOverviewController extends FormBasicController { public ResourceLicense getLicense() { return license; } + + public QuestionStatus getQuestionStatus() { + return question.getQuestionStatus(); + } + + public String getItemType() { + String type = question.getItemType(); + if(type == null) { + return ""; + } + return type; + } public QuestionItemShort getQuestion() { return question; @@ -261,7 +306,12 @@ public class CreateTestOverviewController extends FormBasicController { return Boolean.FALSE; } case title: return share.getTitle(); + case topic: return share.getTopic(); + case taxonomyLevel: return share.getTaxonomyLevelName(); + case taxonomyPath: return share.getTaxonomyPath(); case format: return share.getFormat(); + case type: return share.getItemType(); + case status: return share.getQuestionStatus(); case license: return shortenedLicense(share); default : return share; } @@ -286,10 +336,15 @@ public class CreateTestOverviewController extends FormBasicController { } } - private enum Cols implements FlexiColumnDef { + private enum Cols implements FlexiSortableColumnDef { accept("export.overview.accept"), title("general.title"), + topic("general.topic"), + taxonomyLevel("classification.taxonomy.level"), + taxonomyPath("classification.taxonomic.path"), format("technical.format"), + status("lifecycle.status"), + type("question.type"), license("rights.license"); private final String i18nKey; @@ -302,5 +357,15 @@ public class CreateTestOverviewController extends FormBasicController { public String i18nHeaderKey() { return i18nKey; } + + @Override + public boolean sortable() { + return false; + } + + @Override + public String sortKey() { + return name(); + } } } diff --git a/src/main/java/org/olat/modules/qpool/ui/QuestionListController.java b/src/main/java/org/olat/modules/qpool/ui/QuestionListController.java index 813f607bac57a6dd1aae31da97c8ef2520986ad3..4204cbd40b3e4fe898b68710044cb0b87f26c159 100644 --- a/src/main/java/org/olat/modules/qpool/ui/QuestionListController.java +++ b/src/main/java/org/olat/modules/qpool/ui/QuestionListController.java @@ -520,10 +520,11 @@ public class QuestionListController extends AbstractItemListController implement List<QuestionItemShort> items = createTestOverviewCtrl.getExportableQuestionItems(); String typeFormat = createTestOverviewCtrl.getResourceTypeFormat(); LicenseType licenseType = createTestOverviewCtrl.getLicenseType(); + boolean groupBy = createTestOverviewCtrl.isGroupByTaxonomyLevel(); cmc.deactivate(); cleanUp(); if (event == Event.DONE_EVENT) { - doOpenCreateRepositoryTest(ureq, items, typeFormat, licenseType); + doOpenCreateRepositoryTest(ureq, items, typeFormat, licenseType, groupBy); } } else if(source == exportWizard) { if(event == Event.CANCELLED_EVENT || event == Event.DONE_EVENT || event == Event.CHANGED_EVENT) { @@ -1042,7 +1043,7 @@ public class QuestionListController extends AbstractItemListController implement private void doShowCreateTestOverview(UserRequest ureq, List<QuestionItemShort> items, ExportFormatOptions format) { removeAsListenerAndDispose(createTestOverviewCtrl); - createTestOverviewCtrl = new CreateTestOverviewController(ureq, getWindowControl(), items, format); + createTestOverviewCtrl = new CreateTestOverviewController(ureq, getWindowControl(), items, format, getSecurityCallback()); listenTo(createTestOverviewCtrl); removeAsListenerAndDispose(cmc); @@ -1052,13 +1053,13 @@ public class QuestionListController extends AbstractItemListController implement listenTo(cmc); } - private void doOpenCreateRepositoryTest(UserRequest ureq, List<QuestionItemShort> items, String type, LicenseType licenseType) { + private void doOpenCreateRepositoryTest(UserRequest ureq, List<QuestionItemShort> items, String type, LicenseType licenseType, boolean groupBy) { removeAsListenerAndDispose(cmc); removeAsListenerAndDispose(addController); RepositoryHandler handler = repositoryHandlerFactory.getRepositoryHandler(type); addController = handler.createCreateRepositoryEntryController(ureq, getWindowControl()); - addController.setCreateObject(new QItemList(items)); + addController.setCreateObject(new QItemList(items, groupBy)); addController.setLicenseType(licenseType); listenTo(addController); cmc = new CloseableModalController(getWindowControl(), translate("close"), addController.getInitialComponent()); diff --git a/src/main/java/org/olat/modules/qpool/ui/_content/create_test.html b/src/main/java/org/olat/modules/qpool/ui/_content/create_test.html index 5e3ebd6d6bd7cd29c81011aef16e846180caae48..c0a5f52c911a0ec8317549026b105ba5334a58e5 100644 --- a/src/main/java/org/olat/modules/qpool/ui/_content/create_test.html +++ b/src/main/java/org/olat/modules/qpool/ui/_content/create_test.html @@ -3,6 +3,9 @@ $r.translate("warning.different.licenses")</div> #end $r.render("shares") +#if($r.visible("group.by")) + $r.render("group.by") +#end <div class="o_button_group"> $r.render("cancel") $r.render("create.test") diff --git a/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_de.properties index 0960dec93169ee4fa74824082e8df62252da6d82..4cba538728e884aac7e2c49dc7c1d7cb9e8e1dc9 100644 --- a/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_de.properties @@ -115,6 +115,7 @@ general.taxonomy.level=Fachbereich general.taxonomy.path={0} general.title=Titel general.topic=Thema +group.by.taxonomy.level=Fragen nach Fachbereich gruppieren import.excellike.12=QTI 1.2 Excelimport \u00FCber Copy&Paste import.excellike.21=QTI 2.1 Excelimport \u00FCber Copy&Paste import.failed=Frage konnte nicht importiert werden. diff --git a/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_en.properties index 11f9173265eb379b361c526cd3a315557bc7754a..f514b7bec39f10095e546d8bb10222334f9ed640 100644 --- a/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_en.properties @@ -115,6 +115,7 @@ general.taxonomy.level=Subject general.taxonomy.path={0} general.title=Title general.topic=Topic +group.by.taxonomy.level=Group items by subject import.excellike.12=QTI 1.2 Excel import via copy&paste import.excellike.21=QTI 2.1 Excel import via copy&paste import.failed=No questions were imported diff --git a/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_fr.properties index c81c99379bc59a8662835cbfdb98542b96aab596..084a6f9f049446f8f6b9e1f8a2290d1401a67ecb 100644 --- a/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/modules/qpool/ui/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Tue Jan 07 21:08:20 CET 2020 +#Wed Mar 04 06:50:09 CET 2020 add=+ add.to.list=Ajouter \u00E0 la liste admin.menu.title=Banque de questions @@ -115,6 +115,7 @@ general.taxonomy.level=Sujet general.taxonomy.path={0} general.title=Titre general.topic=Th\u00E8me +group.by.taxonomy.level=Grouper les questions en sections par sujet import.excellike.12=Importer QTI 1.2 un fichier Excel par copier coller import.excellike.21=Importer QTI 2.1 un fichier Excel par copier coller import.failed=Les questions n'ont pas pu \u00EAtre import\u00E9es. diff --git a/src/main/java/org/olat/modules/video/VideoModule.java b/src/main/java/org/olat/modules/video/VideoModule.java index 0d9ab0c93699bb5f1f5939640e071105e74a7e8e..7e027f4b53f6cb3752b3e6434f00253b561ccad5 100644 --- a/src/main/java/org/olat/modules/video/VideoModule.java +++ b/src/main/java/org/olat/modules/video/VideoModule.java @@ -51,6 +51,8 @@ import org.springframework.stereotype.Service; public class VideoModule extends AbstractSpringModule { private static final Logger log = Tracing.createLoggerFor(VideoModule.class); + + public static final Integer DEFAULT_RESOLUTION = Integer.valueOf(720); private static final String VIDEO_ENABLED = "video.enabled"; private static final String VIDEOCOURSENODE_ENABLED = "video.coursenode.enabled"; @@ -81,8 +83,8 @@ public class VideoModule extends AbstractSpringModule { @Value("${video.transcoding.profile}") private String transcodingProfile; - private int[] transcodingResolutionsArr; //= new int[] { 1080,720,480,360 }; - private Integer preferredDefaultResolution;// = new Integer(720); + private int[] transcodingResolutionsArr; // 1080, 720, 480, 360 + private Integer preferredDefaultResolution;// 720 @Autowired private VideoHandler videoHandler; @@ -149,14 +151,14 @@ public class VideoModule extends AbstractSpringModule { setVideoTranscodingProfile(this.transcodingProfile); - log.info("video.enabled=" + isEnabled()); - log.info("video.coursenode.enabled=" + isCoursenodeEnabled()); - log.info("video.transcoding.enabled=" + isTranscodingEnabled()); - log.info("video.transcoding.resolutions=" + Arrays.toString(getTranscodingResolutions())); - log.info("video.transcoding.resolution.preferred=" + getPreferredDefaultResolution()); - log.info("video.transcoding.taskset.cpuconfig=" + getTranscodingTasksetConfig()); - log.info("video.transcoding.local=" + isTranscodingLocal()); - log.info("video.transcoding.profile=" + getVideoTranscodingProfile()); + log.info("video.enabled={}", isEnabled()); + log.info("video.coursenode.enabled={}", isCoursenodeEnabled()); + log.info("video.transcoding.enabled={}", isTranscodingEnabled()); + log.info("video.transcoding.resolutions={}", Arrays.toString(getTranscodingResolutions())); + log.info("video.transcoding.resolution.preferred={}", getPreferredDefaultResolution()); + log.info("video.transcoding.taskset.cpuconfig={}", getTranscodingTasksetConfig()); + log.info("video.transcoding.local={}", isTranscodingLocal()); + log.info("video.transcoding.profile={}", getVideoTranscodingProfile()); // Register video site for activation in top navigation NewControllerFactory.getInstance().addContextEntryControllerCreator(VideoSite.class.getSimpleName(), @@ -233,7 +235,7 @@ public class VideoModule extends AbstractSpringModule { } } if (transcodingEnabled) { - log.error("Error, no valid transcoding dir. Disabling transcoding. video.transcoding.dir=" + transcodingDir); + log.error("Error, no valid transcoding dir. Disabling transcoding. video.transcoding.dir={}", transcodingDir); // only disable variable, don't store it in persisted properties transcodingEnabled = false; } @@ -306,7 +308,7 @@ public class VideoModule extends AbstractSpringModule { return; } } - this.transcodingProfile = "Fast"; // default; + this.transcodingProfile = "Fast"; // default } public String getVideoTranscodingProfile() { diff --git a/src/main/java/org/olat/modules/video/manager/VideoNotificationsHandler.java b/src/main/java/org/olat/modules/video/manager/VideoNotificationsHandler.java index 3c845a295e66bd2f7578456d7fd407f84a6aaafe..c966dce19d18001b8727c9e5fd768d639e89c7e1 100644 --- a/src/main/java/org/olat/modules/video/manager/VideoNotificationsHandler.java +++ b/src/main/java/org/olat/modules/video/manager/VideoNotificationsHandler.java @@ -127,7 +127,8 @@ public class VideoNotificationsHandler implements NotificationsHandler { .getURLFromBusinessPathString(businessPath); List<SubscriptionListItem> items = new ArrayList<>(); - List<UserComment> comments = commentAndRatingService.getComments(re.getOlatResource(), p.getSubidentifier()); + String subIdentifier = StringHelper.containsNonWhitespace(p.getSubidentifier()) ? p.getSubidentifier() : null; + List<UserComment> comments = commentAndRatingService.getComments(re.getOlatResource(), subIdentifier); for (UserComment comment : comments) { if (compareDate.before(comment.getCreationDate())) { String desc; diff --git a/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java b/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java index b5436a716e3110d822f7911e69f07405b16a17da..c92fc5cf7720e3517eaac46f941dfda2e0ca4220 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java @@ -177,10 +177,7 @@ public class VideoDisplayController extends BasicController { // Load users preferred version from GUI prefs UserSession usess = ureq.getUserSession(); Preferences guiPrefs = usess.getGuiPreferences(); - userPreferredResolution = (Integer) guiPrefs.get(VideoDisplayController.class, GUIPREF_KEY_PREFERRED_RESOLUTION); - if (userPreferredResolution == null) { - userPreferredResolution = videoModule.getPreferredDefaultResolution(); - } + setUserPreferredResolution((Integer)guiPrefs.get(VideoDisplayController.class, GUIPREF_KEY_PREFERRED_RESOLUTION)); mainVC.contextPut("autoplay", displayOptions.isAutoplay()); @@ -246,6 +243,20 @@ public class VideoDisplayController extends BasicController { mainVC.contextPut("listenTimeUpdate", enable); } + public Integer getUserPreferredResolution() { + if (userPreferredResolution == null) { + userPreferredResolution = videoModule.getPreferredDefaultResolution(); + } + if (userPreferredResolution == null) { + userPreferredResolution = VideoModule.DEFAULT_RESOLUTION; + } + return userPreferredResolution; + } + + public void setUserPreferredResolution(Integer resolution) { + userPreferredResolution = resolution; + } + private void initMediaElementJs() { // load mediaelementjs player, speed and sourcechooser plugins List<String> cssPath = new ArrayList<>(); @@ -355,7 +366,7 @@ public class VideoDisplayController extends BasicController { // Check if at least one has equal height, else use master as resource addMaster &= videoTranscoding.getHeight() < masterResolution.getHeight(); // Use the users preferred resolution or the next higher resolution - if (videoTranscoding.getResolution() >= userPreferredResolution.intValue()) { + if (videoTranscoding.getResolution() >= getUserPreferredResolution().intValue()) { preferredAvailableResolution = readyToPlayVideos.size() - 1; } // Calculate title. Standard title for standard resolution, original title if not standard resolution @@ -699,6 +710,7 @@ public class VideoDisplayController extends BasicController { } } } + public static class VideoMarkerWrapper { diff --git a/src/main/java/org/olat/modules/video/ui/VideoEntryDataSource.java b/src/main/java/org/olat/modules/video/ui/VideoEntryDataSource.java index 214fb5d1df58b59ea95747e3738f16606fc9d961..cc065a135e36e8ac514d0576b5006a4e71f294a6 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoEntryDataSource.java +++ b/src/main/java/org/olat/modules/video/ui/VideoEntryDataSource.java @@ -86,7 +86,7 @@ public class VideoEntryDataSource implements FlexiTableDataSourceDelegate<Reposi public ResultInfos<RepositoryEntryRow> getRows(String query, List<FlexiTableFilter> filters, List<String> condQueries, int firstResult, int maxResults, SortKey... orderBy) { - if(condQueries != null && condQueries.size() > 0) { + if(condQueries != null && !condQueries.isEmpty()) { String filter = condQueries.get(0); if(StringHelper.containsNonWhitespace(filter)) { searchParams.setFilters(Collections.singletonList(Filter.valueOf(filter))); @@ -111,7 +111,7 @@ public class VideoEntryDataSource implements FlexiTableDataSourceDelegate<Reposi List<RepositoryEntryRow> rows = processViewModel(views); ResultInfos<RepositoryEntryRow> results = new DefaultResultInfos<>(firstResult + rows.size(), -1, rows); if(firstResult == 0 && views.size() < maxResults) { - count = new Integer(views.size()); + count = Integer.valueOf(views.size()); } return results; } diff --git a/src/main/java/org/olat/modules/video/ui/VideoListingController.java b/src/main/java/org/olat/modules/video/ui/VideoListingController.java index f39b9a16ef1a898dab956d47336dcf8680570f1b..a2f3acdcaa76220ca19c365c1a01e7fa5487b804 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoListingController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoListingController.java @@ -59,6 +59,7 @@ import org.olat.fileresource.types.VideoFileResource; import org.olat.modules.video.ui.VideoEntryDataModel.Cols; import org.olat.repository.RepositoryEntry; import org.olat.repository.RepositoryEntrySecurity; +import org.olat.repository.RepositoryEntryStatusEnum; import org.olat.repository.RepositoryManager; import org.olat.repository.RepositoryModule; import org.olat.repository.RepositoryService; @@ -81,7 +82,6 @@ public class VideoListingController extends FormBasicController implements Activ private final String imgUrl; private FlexiTableElement tableEl; - private VideoEntryDataModel model; private VideoEntryDataSource dataSource; private SearchMyRepositoryEntryViewParams searchParams; @@ -94,11 +94,12 @@ public class VideoListingController extends FormBasicController implements Activ public VideoListingController(UserRequest ureq, WindowControl wControl, TooledStackedPanel toolbarPanel) { super(ureq, wControl, "video_listing"); - this.setTranslator(Util.createPackageTranslator(RepositoryService.class, getLocale(), getTranslator())); + setTranslator(Util.createPackageTranslator(RepositoryService.class, getLocale(), getTranslator())); this.toolbarPanel = toolbarPanel; searchParams = new SearchMyRepositoryEntryViewParams(getIdentity(), ureq.getUserSession().getRoles(), VideoFileResource.TYPE_NAME); + searchParams.setEntryStatus(new RepositoryEntryStatusEnum[] { RepositoryEntryStatusEnum.published }); dataSource = new VideoEntryDataSource(searchParams); imgUrl = registerMapper(ureq, new VideoMapper()); @@ -111,7 +112,7 @@ public class VideoListingController extends FormBasicController implements Activ FlexiTableColumnModel columnsModel = FlexiTableDataModelFactory.createFlexiTableColumnModel(); columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, Cols.key.i18nKey(), Cols.key.ordinal(), true, OrderBy.key.name())); - model = new VideoEntryDataModel(dataSource, columnsModel); + VideoEntryDataModel model = new VideoEntryDataModel(dataSource, columnsModel); tableEl = uifactory.addTableElement(getWindowControl(), "table", model, 20, false, getTranslator(), formLayout); tableEl.setAvailableRendererTypes(FlexiTableRendererType.custom); tableEl.setRendererType(FlexiTableRendererType.custom); diff --git a/src/main/java/org/olat/modules/video/ui/question/QuestionConfigurationController.java b/src/main/java/org/olat/modules/video/ui/question/QuestionConfigurationController.java index ed515c77be4bf00f4114682fc779f8639a5a4d25..519f8ed7c2744f6ed47fcf5e0a71052fb9a29def 100644 --- a/src/main/java/org/olat/modules/video/ui/question/QuestionConfigurationController.java +++ b/src/main/java/org/olat/modules/video/ui/question/QuestionConfigurationController.java @@ -95,7 +95,7 @@ public class QuestionConfigurationController extends FormBasicController { beginEl.setExampleKey("time.format", null); beginEl.setMandatory(true); - String timeLimit = question.getTimeLimit() >= 0 ? Long.toString(question.getTimeLimit()) : ""; + String timeLimit = question.getTimeLimit() > 0 ? Long.toString(question.getTimeLimit()) : ""; timeLimitEl = uifactory.addTextElement("timeLimit", "video.question.timeLimit", 10, timeLimit, formLayout); String[] onValues = new String[] { translate("video.question.allow.skipping"), translate("video.question.allow.retry") }; @@ -195,7 +195,12 @@ public class QuestionConfigurationController extends FormBasicController { try { String beginTime = beginEl.getValue(); question.setBegin(displayDateFormat.parse(beginTime)); - question.setTimeLimit(Long.parseLong(timeLimitEl.getValue())); + if(StringHelper.containsNonWhitespace(timeLimitEl.getValue()) + && StringHelper.isLong(timeLimitEl.getValue())) { + question.setTimeLimit(Long.parseLong(timeLimitEl.getValue())); + } else { + question.setTimeLimit(-1l); + } question.setStyle(styleEl.getSelectedKey()); question.setAllowSkipping(skippingEl.isSelected(0)); question.setAllowNewAttempt(skippingEl.isSelected(1)); diff --git a/src/main/java/org/olat/modules/wiki/DryRunAssessmentProvider.java b/src/main/java/org/olat/modules/wiki/DryRunAssessmentProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..9f4c0b046319364dbb848c99a3e441b83f7f9876 --- /dev/null +++ b/src/main/java/org/olat/modules/wiki/DryRunAssessmentProvider.java @@ -0,0 +1,52 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.wiki; + +import org.olat.modules.assessment.model.AssessmentEntryStatus; + +/** + * + * Initial date: 2 Mar 2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +public class DryRunAssessmentProvider implements WikiAssessmentProvider { + + private static final WikiAssessmentProvider INSTANCE = new DryRunAssessmentProvider(); + + public static final WikiAssessmentProvider create() { + return INSTANCE; + } + + private DryRunAssessmentProvider() { + // + } + + @Override + public void setStatusDone(String pageId) { + // + } + + @Override + public AssessmentEntryStatus getStatus(String pageId) { + return null; + } + +} diff --git a/src/main/java/org/olat/modules/wiki/PersistingAssessmentProvider.java b/src/main/java/org/olat/modules/wiki/PersistingAssessmentProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..8330bdef120a97690ac280fc7b1543da4f399f4f --- /dev/null +++ b/src/main/java/org/olat/modules/wiki/PersistingAssessmentProvider.java @@ -0,0 +1,75 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.wiki; + +import java.util.Map; +import java.util.stream.Collectors; + +import org.olat.core.CoreSpringFactory; +import org.olat.core.id.Identity; +import org.olat.modules.assessment.AssessmentEntry; +import org.olat.modules.assessment.AssessmentService; +import org.olat.modules.assessment.model.AssessmentEntryStatus; +import org.olat.repository.RepositoryEntry; + +/** + * + * Initial date: 28 Feb 2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +public class PersistingAssessmentProvider implements WikiAssessmentProvider { + + private final Identity identity; + private final RepositoryEntry wikiEntry; + + private Map<String, AssessmentEntryStatus> pageIdToStatus; + + private AssessmentService assessmentService; + + public static final WikiAssessmentProvider create(RepositoryEntry wikiEntry, Identity identity) { + return new PersistingAssessmentProvider(wikiEntry, identity); + } + + private PersistingAssessmentProvider(RepositoryEntry wikiEntry, Identity identity) { + this.identity = identity; + this.wikiEntry = wikiEntry; + this.assessmentService = CoreSpringFactory.getImpl(AssessmentService.class); + this.pageIdToStatus = assessmentService.loadAssessmentEntriesByAssessedIdentity(identity, wikiEntry).stream() + .filter(ae -> ae.getSubIdent() != null && ae.getAssessmentStatus() != null) + .collect(Collectors.toMap(AssessmentEntry::getSubIdent, AssessmentEntry::getAssessmentStatus)); + } + + @Override + public void setStatusDone(String pageId) { + AssessmentEntry assessmentEntry = assessmentService.getOrCreateAssessmentEntry(identity, null, wikiEntry, pageId, false, null); + if (!AssessmentEntryStatus.done.equals(assessmentEntry.getAssessmentStatus())) { + assessmentEntry.setAssessmentStatus(AssessmentEntryStatus.done); + assessmentService.updateAssessmentEntry(assessmentEntry); + pageIdToStatus.put(pageId, assessmentEntry.getAssessmentStatus()); + } + } + + @Override + public AssessmentEntryStatus getStatus(String pageId) { + return pageIdToStatus.get(pageId); + } + +} diff --git a/src/main/java/org/olat/modules/wiki/Wiki.java b/src/main/java/org/olat/modules/wiki/Wiki.java index 684fb357496b3cac258fe969de1aea7e737df916..d35af5ae3a0087099abaedca474c7544e7efb34a 100644 --- a/src/main/java/org/olat/modules/wiki/Wiki.java +++ b/src/main/java/org/olat/modules/wiki/Wiki.java @@ -38,12 +38,13 @@ import java.util.List; import java.util.Locale; import java.util.Map; import java.util.Properties; +import java.util.function.Predicate; +import org.apache.logging.log4j.Logger; import org.jamwiki.utils.Utilities; import org.olat.core.CoreSpringFactory; import org.olat.core.logging.AssertException; import org.olat.core.logging.OLATRuntimeException; -import org.apache.logging.log4j.Logger; import org.olat.core.logging.Tracing; import org.olat.core.util.FileUtils; import org.olat.core.util.Formatter; @@ -378,74 +379,49 @@ public class Wiki implements WikiContainer, Serializable { return page; } - /** - * @see org.olat.core.commons.modules.wiki.WikiContainer#generatePageId(java.lang.String) - */ @Override public String generatePageId(String pageName) { if(log.isDebugEnabled()) log.debug("Generating page id from page name: "+pageName +" to id: "+WikiManager.generatePageId(pageName)); return WikiManager.generatePageId(pageName); } - /** - * @return a List of all pages in a wiki ordered by date - */ - protected List<WikiPage> getPagesByDate() { - ArrayList<WikiPage> pages = new ArrayList<>(wikiPages.values()); - Collections.sort(pages, WikiPageSort.MODTIME_ORDER); - return pages; + public List<WikiPage> getAllPages() { + return new ArrayList<>(wikiPages.values()); } - - /** - * @return a List containing all pages names of the wiki sorted alphabetically - */ - protected List<String> getListOfAllPageNames() { - ArrayList<WikiPage> pages = new ArrayList<>(wikiPages.values()); - ArrayList<String> pageNames = new ArrayList<>(pages.size()); - Collections.sort(pages, WikiPageSort.PAGENAME_ORDER); - for (Iterator<WikiPage> iter = pages.iterator(); iter.hasNext();) { - WikiPage page = iter.next(); - if (!page.getPageName().startsWith("O_")) { - pageNames.add(page.getPageName()); - } - } - return pageNames; + + public final static Predicate<WikiPage> REGULAR_PAGE_FILTER = + page -> !page.getPageName().startsWith("O_"); + + public List<WikiPage> getAllPagesWithContent() { + return getAllPagesWithContent(false); } - - /** - * - * @return a List of all pages in a wiki - */ - public List<WikiPage> getAllPagesWithContent() { - return getAllPagesWithContent(false); - } - - public List<WikiPage> getAllPagesWithContent(boolean includeSpecialPages) { - ArrayList<WikiPage> pages = new ArrayList<>(); - for (Iterator<String> keyes = wikiPages.keySet().iterator(); keyes.hasNext();) { - String pageId = keyes.next(); - WikiPage wikiPage = getPage(pageId); - // check if the page is a content page - if (includeSpecialPages) { + + public List<WikiPage> getAllPagesWithContent(boolean includeSpecialPages) { + ArrayList<WikiPage> pages = new ArrayList<>(); + for (Iterator<String> keyes = wikiPages.keySet().iterator(); keyes.hasNext();) { + String pageId = keyes.next(); + WikiPage wikiPage = getPage(pageId); + // check if the page is a content page + if (includeSpecialPages) { + if (wikiPage.getContent().equals("") ) { + // wikiPage has empty content => try to load content + if (!wikiPage.getPageName().startsWith("O_")) { + wikiPage = getPage(pageId, true); + } + } + pages.add(wikiPage); + } else { + if (!wikiPage.getPageName().startsWith("O_")) { if (wikiPage.getContent().equals("") ) { // wikiPage has empty content => try to load content - if (!wikiPage.getPageName().startsWith("O_")) { - wikiPage = getPage(pageId, true); - } - } - pages.add(wikiPage); - } else { - if (!wikiPage.getPageName().startsWith("O_")) { - if (wikiPage.getContent().equals("") ) { - // wikiPage has empty content => try to load content - wikiPage = getPage(pageId, true); - } - pages.add(wikiPage); + wikiPage = getPage(pageId, true); } + pages.add(wikiPage); } } - return pages; } + return pages; + } /** * FIXME:gs increase performance diff --git a/src/main/java/org/olat/modules/wiki/WikiAssessmentProvider.java b/src/main/java/org/olat/modules/wiki/WikiAssessmentProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..0457946b328eb9670217fde263c104dd05111cd0 --- /dev/null +++ b/src/main/java/org/olat/modules/wiki/WikiAssessmentProvider.java @@ -0,0 +1,36 @@ +/** + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * frentix GmbH, http://www.frentix.com + * <p> + */ +package org.olat.modules.wiki; + +import org.olat.modules.assessment.model.AssessmentEntryStatus; + +/** + * + * Initial date: 28 Feb 2020<br> + * @author uhensler, urs.hensler@frentix.com, http://www.frentix.com + * + */ +public interface WikiAssessmentProvider { + + void setStatusDone(String pageId); + + public AssessmentEntryStatus getStatus(String pageId); + +} diff --git a/src/main/java/org/olat/modules/wiki/WikiMainController.java b/src/main/java/org/olat/modules/wiki/WikiMainController.java index e1984250c98d79c50cb9dd43c52e51a195b5ac47..756fb037b51ae32d7d787d74e53e389ecace59a6 100644 --- a/src/main/java/org/olat/modules/wiki/WikiMainController.java +++ b/src/main/java/org/olat/modules/wiki/WikiMainController.java @@ -28,14 +28,15 @@ package org.olat.modules.wiki; import java.io.IOException; import java.io.OutputStream; import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.stream.Collectors; +import org.apache.logging.log4j.Logger; import org.olat.core.CoreSpringFactory; import org.olat.core.commons.modules.bc.FolderEvent; import org.olat.core.commons.services.notifications.NotificationsManager; @@ -78,7 +79,6 @@ import org.olat.core.id.context.BusinessControlFactory; import org.olat.core.id.context.ContextEntry; import org.olat.core.id.context.StateEntry; import org.olat.core.logging.OLATRuntimeException; -import org.apache.logging.log4j.Logger; import org.olat.core.logging.Tracing; import org.olat.core.logging.activity.LearningResourceLoggingAction; import org.olat.core.logging.activity.OlatResourceableType; @@ -92,6 +92,7 @@ import org.olat.core.util.vfs.VFSContainer; import org.olat.core.util.vfs.VFSItem; import org.olat.core.util.vfs.VFSLeaf; import org.olat.core.util.vfs.VFSMediaResource; +import org.olat.modules.assessment.model.AssessmentEntryStatus; import org.olat.modules.fo.Forum; import org.olat.modules.fo.ForumCallback; import org.olat.modules.fo.manager.ForumManager; @@ -167,6 +168,7 @@ public class WikiMainController extends BasicController implements CloneableCont private Dropdown wikiMenuDropdown, navigationDropdown, breadcrumpDropdown; private GenericTreeNode navMainPageNode, navAZNode, navChangesNode, wikiMenuNode; + private WikiAssessmentProvider assessmentProvider; public static final String ACTION_COMPARE = "compare"; public static final String ACTION_SHOW = "view.version"; @@ -196,13 +198,14 @@ public class WikiMainController extends BasicController implements CloneableCont private NotificationsManager notificationsManager; public WikiMainController(UserRequest ureq, WindowControl wControl, OLATResourceable ores, - WikiSecurityCallback securityCallback, String initialPageName) { + WikiSecurityCallback securityCallback, WikiAssessmentProvider assessmentProvider, String initialPageName) { super(ureq, wControl); this.wikiContainer = WikiManager.getInstance().getWikiRootContainer(ores); this.ores = ores; this.securityCallback = securityCallback; this.subsContext = securityCallback.getSubscriptionContext(); + this.assessmentProvider = assessmentProvider; WikiPage page = null; Wiki wiki = getWiki(); @@ -376,24 +379,35 @@ public class WikiMainController extends BasicController implements CloneableCont List<VFSItem> mediaFiles = wiki.getMediaFileList(); Collections.sort(mediaFiles, new WikiFileComparator(getLocale())); editContent.contextPut("fileList", mediaFiles); - List<String> allPages = wiki.getListOfAllPageNames(); - Collections.sort(allPages, new WikiPageNameComparator(getLocale())); - editContent.contextPut("linkList", allPages); + List<String> linkList = wiki.getAllPages().stream() + .filter(Wiki.REGULAR_PAGE_FILTER) + .map(WikiPage::getPageName) + .sorted(new WikiPageNameComparator(getLocale())) + .collect(Collectors.toList()); + editContent.contextPut("linkList", linkList); } private void updateWikiMenu(Wiki wiki) { - Collection<String> links = wiki.getListOfAllPageNames(); + List<WikiPage> pages = wiki.getAllPages().stream() + .filter(Wiki.REGULAR_PAGE_FILTER) + .sorted(WikiPageSort.PAGENAME_ORDER) + .collect(Collectors.toList()); + if (wikiMenuNode != null) { wikiMenuNode.removeAllChildren(); - for (String link : links) { + for (WikiPage page : pages) { + String link = page.getPageName(); String ident = "w" + Encoder.md5hash(link); GenericTreeNode menuItemNode = new GenericTreeNode(ident, link, link); + String cssClass = getNodeCssClass(page.getPageId()); + menuItemNode.setCssClass(cssClass); wikiMenuNode.addChild(menuItemNode); } } - + wikiMenuDropdown.removeAllComponents(); - for (String link : links) { + for (WikiPage page : pages) { + String link = page.getPageName(); Link menuLink = LinkFactory.createToolLink(link, "select-page", link, this); wikiMenuDropdown.addComponent(menuLink); } @@ -415,20 +429,24 @@ public class WikiMainController extends BasicController implements CloneableCont // Index String navMainItem = "nav-main-item-" + resId; navMainPageNode = new GenericTreeNode(navMainItem, translate("navigation.mainpage"), navMainItem); + navMainPageNode.setCssClass(getNodeDoneCssClass()); rootNode.addChild(navMainPageNode); // Wiki-Menu String wikiMenuTitle = translate("navigation.menu"); String wikiMenuItem = "menu-item-" + resId; wikiMenuNode = new GenericTreeNode(wikiMenuItem, wikiMenuTitle, wikiMenuItem); + wikiMenuNode.setCssClass(getNodeDoneCssClass()); rootNode.addChild(wikiMenuNode); String navAZItem = "nav-az-item-" + resId; navAZNode = new GenericTreeNode(navAZItem, translate("navigation.a-z"), navAZItem); + navAZNode.setCssClass(getNodeDoneCssClass()); rootNode.addChild(navAZNode); String navChangesItem = "nav-changes-item-" + resId; navChangesNode = new GenericTreeNode(navChangesItem, translate("navigation.changes"), navChangesItem); + navChangesNode.setCssClass(getNodeDoneCssClass()); rootNode.addChild(navChangesNode); updateWikiMenu(wiki); @@ -439,6 +457,22 @@ public class WikiMainController extends BasicController implements CloneableCont navigationContent.contextPut("navigationEnabled", Boolean.FALSE); return wikiMenuModel; } + + private String getNodeCssClass(String pageId) { + AssessmentEntryStatus status = assessmentProvider.getStatus(pageId); + return getNodeCssClass(status); + } + + private String getNodeCssClass(AssessmentEntryStatus status) { + if (AssessmentEntryStatus.done.equals(status)) { + return getNodeDoneCssClass(); + } + return "o_lp_ready o_lp_not_in_sequence o_lp_contains_no_sequence"; + } + + private String getNodeDoneCssClass() { + return "o_lp_done o_lp_not_in_sequence o_lp_contains_no_sequence"; + } @Override public void activate(UserRequest ureq, List<ContextEntry> entries, StateEntry state) { @@ -1169,7 +1203,7 @@ public class WikiMainController extends BasicController implements CloneableCont @Override public Controller cloneController(UserRequest ureq, WindowControl wControl) { - return WikiManager.getInstance().createWikiMainController(ureq, wControl, ores, securityCallback, null); + return WikiManager.getInstance().createWikiMainController(ureq, wControl, ores, securityCallback, null, null); } private void doReleaseEditLock() { @@ -1243,8 +1277,11 @@ public class WikiMainController extends BasicController implements CloneableCont OLATResourceable pageRes = OresHelper.createOLATResourceableInstanceWithoutCheck("path=" + page.getPageName(), 0l); addToHistory(ureq, pageRes, null); + + assessmentProvider.setStatusDone(page.getPageId()); + updateWikiMenu(getWiki()); } - + private void clearPortfolioLink() { navigationContent.put("portfolio-link", new Panel("empty")); } diff --git a/src/main/java/org/olat/modules/wiki/WikiManager.java b/src/main/java/org/olat/modules/wiki/WikiManager.java index 0fd330270763b1da7651e8b30265bf7f067e2103..208a0129550c88e3adba155ee93b2d47bc044e97 100644 --- a/src/main/java/org/olat/modules/wiki/WikiManager.java +++ b/src/main/java/org/olat/modules/wiki/WikiManager.java @@ -42,13 +42,13 @@ import java.util.List; import java.util.Properties; import org.apache.commons.codec.binary.Base64; +import org.apache.logging.log4j.Logger; import org.olat.core.commons.services.notifications.SubscriptionContext; import org.olat.core.gui.UserRequest; import org.olat.core.gui.control.WindowControl; import org.olat.core.id.OLATResourceable; import org.olat.core.logging.AssertException; import org.olat.core.logging.OLATRuntimeException; -import org.apache.logging.log4j.Logger; import org.olat.core.logging.Tracing; import org.olat.core.logging.activity.LearningResourceLoggingAction; import org.olat.core.logging.activity.ThreadLocalUserActivityLogger; @@ -131,22 +131,11 @@ public class WikiManager { return instance; } - - // ---- begin controller factory ----- - /** @param ureq - * @param wControl - * @param ores either an OlatResourcable of an repository entry or of an BusinessGroup - * @param securityCallback a callback to evaluate the permissions - * @param initialPageName opens the wiki with an certain page, default is the index page if null is passed - * @param courseContext - a course context or null if used outside a course - * @param courseNodeContext - a courseNode context or null if used outside a course - */ - public WikiMainController createWikiMainController(UserRequest ureq, WindowControl wControl, OLATResourceable ores, WikiSecurityCallback securityCallback, String initialPageName) { - return new WikiMainController(ureq, wControl, ores, securityCallback, initialPageName); + public WikiMainController createWikiMainController(UserRequest ureq, WindowControl wControl, OLATResourceable ores, + WikiSecurityCallback securityCallback, WikiAssessmentProvider assessmentProvider, String initialPageName) { + return new WikiMainController(ureq, wControl, ores, securityCallback, assessmentProvider, initialPageName); } - // ---- end controller factory ----- - /** * @return the new created resource */ diff --git a/src/main/java/org/olat/modules/wiki/WikiPageChangeOrCreateNotificationHandler.java b/src/main/java/org/olat/modules/wiki/WikiPageChangeOrCreateNotificationHandler.java index 04c90c3cbcadab9f93fd306435541cb9f6fac910..6225d9288ce2a9f82f99009a8c64ecceabbd5965 100644 --- a/src/main/java/org/olat/modules/wiki/WikiPageChangeOrCreateNotificationHandler.java +++ b/src/main/java/org/olat/modules/wiki/WikiPageChangeOrCreateNotificationHandler.java @@ -29,6 +29,7 @@ import java.util.Date; import java.util.Iterator; import java.util.List; import java.util.Locale; +import java.util.stream.Collectors; import org.apache.logging.log4j.Logger; import org.olat.basesecurity.BaseSecurityManager; @@ -137,7 +138,9 @@ public class WikiPageChangeOrCreateNotificationHandler implements NotificationsH } Wiki wiki = WikiManager.getInstance().getOrLoadWiki(ores); - final List<WikiPage> pages = wiki.getPagesByDate(); + List<WikiPage> pages = wiki.getAllPages().stream() + .sorted(WikiPageSort.MODTIME_ORDER) + .collect(Collectors.toList()); Translator translator = Util.createPackageTranslator(WikiPageChangeOrCreateNotificationHandler.class, locale); Translator forumTranslator = Util.createPackageTranslator(ForumNotificationsHandler.class, locale); diff --git a/src/main/java/org/olat/modules/wiki/WikiSecurityCallbackImpl.java b/src/main/java/org/olat/modules/wiki/WikiSecurityCallbackImpl.java index 0b9205ff4f635d2b095ff2112472ff42eaab0436..423fa17c044ca4d0555dae564ac2cb8c073f200c 100644 --- a/src/main/java/org/olat/modules/wiki/WikiSecurityCallbackImpl.java +++ b/src/main/java/org/olat/modules/wiki/WikiSecurityCallbackImpl.java @@ -25,7 +25,6 @@ package org.olat.modules.wiki; import org.olat.core.commons.services.notifications.SubscriptionContext; -import org.olat.course.run.userview.NodeEvaluation; import org.olat.modules.fo.ForumCallback; /** @@ -34,24 +33,17 @@ import org.olat.modules.fo.ForumCallback; */ public class WikiSecurityCallbackImpl implements WikiSecurityCallback { - private NodeEvaluation ne; + private Boolean courseEditRight; private boolean isAdministator; private boolean isGuestOnly; private boolean isGroupWiki; private boolean isResourceOwner; private SubscriptionContext subscriptionContext; - /** - * - * @param ne - * @param isOlatAdmin - * @param isGuestOnly - * @param isGroupWiki - */ - public WikiSecurityCallbackImpl(NodeEvaluation ne, boolean isAdministator, + public WikiSecurityCallbackImpl(Boolean courseEditRight, boolean isAdministator, boolean isGuestOnly, boolean isGroupWiki, boolean isResourceOwner, SubscriptionContext subscriptionContext){ - this.ne = ne; + this.courseEditRight = courseEditRight; this.isAdministator = isAdministator; this.isGuestOnly = isGuestOnly; this.isGroupWiki = isGroupWiki; @@ -59,36 +51,25 @@ public class WikiSecurityCallbackImpl implements WikiSecurityCallback { this.subscriptionContext = subscriptionContext; } - /** - * - * @return true if administrator or allowed by preconditions - */ @Override public boolean mayEditAndCreateArticle() { if(isGuestOnly) return false; if(isGroupWiki || isAdministator) { return true; } - if(ne != null && ne.isCapabilityAccessible("access") && ne.isCapabilityAccessible("editarticle")) { + if(courseEditRight != null && courseEditRight.booleanValue()) { return true; } //wiki is started from repo, and it's visible to this user, so creating pages is allowed - return ne == null; + return courseEditRight == null; } - /** - * - * @return true if admin or resource owner or used in group context - */ @Override public boolean mayEditWikiMenu(){ if(isGuestOnly) return false; return isGroupWiki || isAdministator || isResourceOwner; } - /** - * @return the subscriptionContext. if null, then no subscription must be offered - */ @Override public SubscriptionContext getSubscriptionContext() { return (isGuestOnly ? null : subscriptionContext); diff --git a/src/main/java/org/olat/modules/wiki/WikiToCPExport.java b/src/main/java/org/olat/modules/wiki/WikiToCPExport.java index 368020e51607ff2d21025888eb3581b75c1e8727..eb0633017f8ade12825d97f47adc2b0d973f444b 100644 --- a/src/main/java/org/olat/modules/wiki/WikiToCPExport.java +++ b/src/main/java/org/olat/modules/wiki/WikiToCPExport.java @@ -31,6 +31,7 @@ import java.util.Date; import java.util.Iterator; import java.util.List; import java.util.Locale; +import java.util.stream.Collectors; import org.jamwiki.parser.ParserDocument; import org.jamwiki.parser.ParserInput; @@ -97,7 +98,9 @@ public class WikiToCPExport { protected String createJsMappingContent(Wiki wiki) { StringBuilder sb = new StringBuilder(); - List<WikiPage> pages = wiki.getPagesByDate(); + List<WikiPage> pages = wiki.getAllPages().stream() + .sorted(WikiPageSort.MODTIME_ORDER) + .collect(Collectors.toList()); // create javascript assoz. array sb.append("var mappings = new Array();\n"); @@ -273,8 +276,10 @@ public class WikiToCPExport { // href="einleitung.html"> // <file href="einleitung.html" /> // </resource> - List<WikiPage> pageNames = wiki.getPagesByDate(); - for (WikiPage page :pageNames) { + List<WikiPage> pages = wiki.getAllPages().stream() + .sorted(WikiPageSort.MODTIME_ORDER) + .collect(Collectors.toList()); + for (WikiPage page : pages) { sb.append("<resource identifier=\"res_").append(page.getPageId()).append("\" type=\"text/html\" ").append("href=\""); sb.append(page.getPageId()).append(".html\">"); sb.append("<file href=\"").append(page.getPageId()).append(".html\" />"); diff --git a/src/main/java/org/olat/repository/RepositoryEntryManagedFlag.java b/src/main/java/org/olat/repository/RepositoryEntryManagedFlag.java index 963191a90b44db1dcb7be88f14f168691998006e..f58198ff2508f076ba4e08c9b600fe0a957cb1dd 100644 --- a/src/main/java/org/olat/repository/RepositoryEntryManagedFlag.java +++ b/src/main/java/org/olat/repository/RepositoryEntryManagedFlag.java @@ -51,6 +51,7 @@ public enum RepositoryEntryManagedFlag { participantInfo(settings, all), email(settings, all), blog(settings, all), + wiki(settings, all), forum(settings, all), documents(settings, all), chat(settings,all), diff --git a/src/main/java/org/olat/repository/RepositoryMailing.java b/src/main/java/org/olat/repository/RepositoryMailing.java index b0293c3a6a39053ac204f6092b41fa1b5ed81a35..90432edb0ca78b2db63b83055738893377b698c3 100644 --- a/src/main/java/org/olat/repository/RepositoryMailing.java +++ b/src/main/java/org/olat/repository/RepositoryMailing.java @@ -244,9 +244,8 @@ public class RepositoryMailing { @Override public void putVariablesInMailContext(VelocityContext context, Identity identity) { // Put user variables into velocity context + fillContextWithStandardIdentityValues(context, identity, locale); User user = identity.getUser(); - context.put("firstname", user.getProperty(UserConstants.FIRSTNAME, null)); - context.put("lastname", user.getProperty(UserConstants.LASTNAME, null)); context.put("login", UserManager.getInstance().getUserDisplayEmail(user, locale)); // Put variables from greater context context.put("coursename", reName); diff --git a/src/main/java/org/olat/repository/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/repository/_i18n/LocalStrings_de.properties index 7a255f8e03b0a677dd1dd9b8e07db44474b8d4a0..a413f0b79d415ddccafc32e10e560db664a1fcdc 100644 --- a/src/main/java/org/olat/repository/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/repository/_i18n/LocalStrings_de.properties @@ -254,6 +254,7 @@ details.close.ressoure.desc.2=Alle Kursmitglieder haben weiterhin Zugriff auf de details.close.ressoure.desc.3=Der Kurs befindet sich im Lesemodus. details.close.ressoure.desc.4=Der Kurs befindet sich unter Kurse im Tab "Beendet". details.closed=Beenden +details.convert.learning.path=$org.olat.course.nodeaccess.ui\:settings.convert details.copy=Kopieren details.copy.confirm=Wollen Sie die folgende Lernressource kopieren? {0} details.copy.confirm.warning=<div class\="o_warning">Bei einigen der ausgew\u00E4hlten Lernressourcen sind Sie nicht berechtigt diese zu kopieren.</div><p>Wollen Sie die folgenden Lernressourcen kopieren? {0}</p> @@ -733,6 +734,7 @@ tools.new.portfolio=Portfoliovorlage tools.new.wiki=Wiki tools.restore=Wiederherstellen tools.send.mail=E-Mail versenden +unsupported.course.nodes.title=$org.olat.course.nodeaccess.ui\:unsupported.course.nodes.title upload.url=URL user.notfound=Folgende Benutzer wurden nicht gefunden\: {0} warn.config.reference.no.access=Beachten Sie bitte, dass die Konfiguration "Referenzierung m\u00F6glich" erst aktiv wird wenn der Zugriff auch f\u00FCr Autoren freigegeben wurde. diff --git a/src/main/java/org/olat/repository/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/repository/_i18n/LocalStrings_en.properties index 94eec8732324abf7fe1356101dc9a540b1a60935..224dccceea7076387fb055e1ecd54d5453113f8c 100644 --- a/src/main/java/org/olat/repository/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/repository/_i18n/LocalStrings_en.properties @@ -254,6 +254,7 @@ details.close.ressoure.desc.2=All course members have still access to the course details.close.ressoure.desc.3=The course is in the read only mode. details.close.ressoure.desc.4=The course can be found under courses in the tab "Finished". details.closed=Finish +details.convert.learning.path=$org.olat.course.nodeaccess.ui\:settings.convert details.copy=Copy details.copy.confirm=Would you like to copy this learning resource? {0} details.copy.confirm.warning=<div class\="o_warning">There are learning resources you are not allowed to copy.</div><p>Would you like to duplicate the following learning resources? {0}</p> @@ -733,6 +734,7 @@ tools.new.portfolio=Portfolio template tools.new.wiki=Wiki tools.restore=Restore tools.send.mail=Send E-mail +unsupported.course.nodes.title=$org.olat.course.nodeaccess.ui\:unsupported.course.nodes.title upload.url=URL user.notfound=The following users have not been found\: {0} warn.config.reference.no.access=Please note that the configuration "Can be referenced" is activated only after access to this resource is granted to other authors as well. diff --git a/src/main/java/org/olat/repository/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/repository/_i18n/LocalStrings_fr.properties index 7739ba4aa4bf353fc31546320d8a38204761d0d6..acd50eaeea5a4907f36fa2fcd61a123d9b284e55 100644 --- a/src/main/java/org/olat/repository/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/repository/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Wed Aug 21 11:01:59 CEST 2019 +#Sun Mar 01 08:24:51 CET 2020 BinderTemplate=Mod\u00E8le de portfolio 2.0 CourseModule=Cours EPStructuredMapTemplate=Mod\u00E8le de portfolio @@ -152,6 +152,7 @@ cif.location=Lieu cif.mainLanguage=Langue principale cif.managedflags=Module g\u00E9r\u00E9 de l'ext\u00E9rieur cif.membership.mandatory=Mes cours +cif.node.access=Type de cours cif.objectives=Objectifs cif.ores_id=OpenOlat Resource Id cif.organisations=Organisations @@ -456,7 +457,9 @@ notification.mail.removed.subject=Cours $coursename\: vous avez \u00E9t\u00E9 d\ on=Activ\u00E9 orderby.author=Auteur orderby.automatic=Automatique +orderby.completion=$org.olat.modules.assessment.ui\:learning.progress orderby.creationDate=Date de cr\u00E9ation +orderby.custom=Pr\u00E9tri\u00E9 orderby.favorit=Favoris orderby.lastModified=Derni\u00E8re mise \u00E0 jour orderby.lastVisited=Derni\u00E8re visite @@ -537,6 +540,10 @@ resource.no.organisation=Le contenu didactique n'a pas pu \u00EAtre ajout\u00E9\ resource.no.resource=Le contenu didactique n'a pas pu \u00EAtre ajout\u00E9\! Votre fichier manifeste (imsmanifest.xml) ne contient pas d'\u00E9l\u00E9ment "<resource/>". Tout fichier manifeste a besoin d'au moins un \u00E9l\u00E9ment de cette sorte. restr.access.first=Vous n'\u00EAtes pas connect\u00E9-e. Des parties de cette ressource peuvent ne pas \u00EAtre visibles pour vous ( restr.access.second=). +role.coach=Coach +role.owner=Propri\u00E9taire +role.participant=Participant +role.switch=R\u00F4le d'utilisateur scorm.found.seqencing=Le contenu didactique SCORM n'a pas pu \u00EAtre ajout\u00E9\! Votre fichier manifeste (imsmanifest.xml) contient des \u00E9l\u00E9ments "simple seqencing", qu'OpenOlat ne supporte cependant pas. scorm.no.attribute.scormtype=Le contenu didactique SCORM n'a pas pu \u00EAtre ajout\u00E9\! Votre \u00E9l\u00E9ment "<item/>" ne contient pas un des attributs suivants\: "adlcp\:scormtype\='sco'" ou "adlcp\:scormtype\='asset'" scorm.no.attribute.value=Le contenu didactique SCORM n'a pas pu \u00EAtre ajout\u00E9\! Votre \u00E9l\u00E9ment "<item/>" ne contient pas la valeur d'attribut "sco" ou "asset" pour l'attribut "adlcp\:scormtype". @@ -612,12 +619,14 @@ table.header.access=Acc\u00E8s* table.header.actions=<i class\='o_icon o_icon_actions o_icon-lg'> </i> table.header.author=Cr\u00E9ateur table.header.authors=$\:cif.authors +table.header.completion=$org.olat.modules.assessment.ui\:learning.progress table.header.date=Cr\u00E9\u00E9e table.header.deletedby=Effac\u00E9 par table.header.deletiondate=Date de suppression table.header.description=Description table.header.details=<i class\='o_icon o_icon_details o_icon-lg'> </i> table.header.displayname=Titre de la ressource didactique +table.header.down=Vers le bas table.header.edit=$org.olat.group.ui.main\:table.header.edit table.header.externalid=ID ext. table.header.externalref=R\u00E9f. ext. @@ -644,6 +653,7 @@ table.header.mark=<i class\="o_icon o_icon_bookmark_header o_icon-lg" title\="Fa table.header.online=$org.olat.group.ui.main\:table.header.online table.header.participants=$org.olat.group.ui.main\:table.header.participants table.header.participantsCount=$org.olat.group.ui.main\:table.header.participantsCount +table.header.position=Position table.header.references=R\u00E9f. table.header.remove=$org.olat.group.ui.main\:table.header.remove table.header.role=$org.olat.group.ui.main\:table.header.role @@ -651,6 +661,7 @@ table.header.start=D\u00E9marrer table.header.tutors=$org.olat.group.ui.main\:table.header.tutors table.header.tutorsCount=$org.olat.group.ui.main\:table.header.tutorsCount table.header.typeimg=Type +table.header.up=Vers le haut table.header.waitingList=$org.olat.group.ui.main\:table.header.waitingList table.preview=<i class\='o_icon o_icon-lg o_icon_preview' title\='$\:preview.header'> </i> table.rollcall.enabled=Absences @@ -724,6 +735,7 @@ tools.restore=Restaurer tools.send.mail=Envoyez un courriel upload.url=URL user.notfound=Les utilisateurs suivants n'ont pas \u00E9t\u00E9 trouv\u00E9\: {0} +vfs.context.repositoryentry=Objet didactique warn.config.reference.no.access=Veuillez faire attention \u00E0 ce que la "possibilit\u00E9 de r\u00E9f\u00E9rencier" est seulement active si l'acc\u00E8s a aussi \u00E9t\u00E9 permis aux auteurs. warn.entry.meantimedeleted=L'entr\u00E9e a entre-temps \u00E9t\u00E9 supprim\u00E9e par un autre utilisateur. warn.resource.need.course=S'il vous pla\u00EEt noter les ressources de type SCORM, test et auto-\u00E9valuation ont besoin d'\u00EAtre int\u00E9gr\u00E9 dans un cours pour sauver leurs r\u00E9sultats. diff --git a/src/main/java/org/olat/repository/handlers/ImsCPHandler.java b/src/main/java/org/olat/repository/handlers/ImsCPHandler.java index d982cd8a0217a137915b8e72deaacdb1c8319be5..fbbc1d3abfad590f546e8a2a6c8691ff2e0e0300 100644 --- a/src/main/java/org/olat/repository/handlers/ImsCPHandler.java +++ b/src/main/java/org/olat/repository/handlers/ImsCPHandler.java @@ -66,8 +66,10 @@ import org.olat.ims.cp.ui.CPContentController; import org.olat.ims.cp.ui.CPEditMainController; import org.olat.ims.cp.ui.CPPackageConfig; import org.olat.ims.cp.ui.CPRuntimeController; +import org.olat.modules.cp.CPAssessmentProvider; import org.olat.modules.cp.CPDisplayController; import org.olat.modules.cp.CPOfflineReadableManager; +import org.olat.modules.cp.PersistingAssessmentProvider; import org.olat.repository.RepositoryEntry; import org.olat.repository.RepositoryEntrySecurity; import org.olat.repository.RepositoryEntryStatusEnum; @@ -221,8 +223,10 @@ public class ImsCPHandler extends FileHandler { OLATResource res = re.getOlatResource(); File cpRoot = FileResourceManager.getInstance().unzipFileResource(res); final LocalFolderImpl vfsWrapper = new LocalFolderImpl(cpRoot); - CPPackageConfig packageConfig = CoreSpringFactory.getImpl(CPManager.class).getCPPackageConfig(res); + CPManager cpManager = CoreSpringFactory.getImpl(CPManager.class); + CPPackageConfig packageConfig = cpManager.getCPPackageConfig(res); final DeliveryOptions deliveryOptions = (packageConfig == null ? null : packageConfig.getDeliveryOptions()); + return new CPRuntimeController(ureq, wControl, re, reSecurity, (uureq, wwControl, toolbarPanel, entry, security, assessmentMode) -> { boolean activateFirstPage = true; @@ -231,8 +235,9 @@ public class ImsCPHandler extends FileHandler { CoreSpringFactory.getImpl(UserCourseInformationsManager.class) .updateUserCourseInformations(entry.getOlatResource(), uureq.getIdentity()); + CPAssessmentProvider cpAssessmentProvider = PersistingAssessmentProvider.create(re, uureq.getIdentity()); CPDisplayController cpCtr = new CPDisplayController(uureq, wwControl, vfsWrapper, true, true, activateFirstPage, true, deliveryOptions, - initialUri, entry.getOlatResource(), "", false); + initialUri, entry.getOlatResource(), "", false, cpAssessmentProvider); LayoutMain3ColsController ctr = new LayoutMain3ColsController(uureq, wwControl, cpCtr.getMenuComponent(), cpCtr.getInitialComponent(), vfsWrapper.getName()); ctr.addDisposableChildController(cpCtr); ctr.addActivateableDelegate(cpCtr); @@ -254,7 +259,7 @@ public class ImsCPHandler extends FileHandler { VFSSecurityCallback secCallback = new FullAccessWithQuotaCallback(quota); cpRoot.setLocalSecurityCallback(secCallback); - return new CPEditMainController(ureq, wControl, toolbar, cpRoot, re.getOlatResource()); + return new CPEditMainController(ureq, wControl, toolbar, cpRoot, re); } @Override @@ -262,31 +267,23 @@ public class ImsCPHandler extends FileHandler { return null; } + @Override protected String getDeletedFilePrefix() { return "del_imscp_"; } - /** - * - * @see org.olat.repository.handlers.RepositoryHandler#acquireLock(org.olat.core.id.OLATResourceable, org.olat.core.id.Identity) - */ + @Override public LockResult acquireLock(OLATResourceable ores, Identity identity) { //nothing to do return null; } - /** - * - * @see org.olat.repository.handlers.RepositoryHandler#releaseLock(org.olat.core.util.coordinate.LockResult) - */ + @Override public void releaseLock(LockResult lockResult) { //nothing to do since nothing locked } - /** - * - * @see org.olat.repository.handlers.RepositoryHandler#isLocked(org.olat.core.id.OLATResourceable) - */ + @Override public boolean isLocked(OLATResourceable ores) { return false; } diff --git a/src/main/java/org/olat/repository/handlers/WikiHandler.java b/src/main/java/org/olat/repository/handlers/WikiHandler.java index cf305098e722ea27af3f806c0c8617ded02866e6..6a582080b0a99cc03d3a9222bc294a4181b87969 100644 --- a/src/main/java/org/olat/repository/handlers/WikiHandler.java +++ b/src/main/java/org/olat/repository/handlers/WikiHandler.java @@ -60,6 +60,8 @@ import org.olat.course.assessment.manager.UserCourseInformationsManager; import org.olat.fileresource.FileResourceManager; import org.olat.fileresource.types.ResourceEvaluation; import org.olat.fileresource.types.WikiResource; +import org.olat.modules.wiki.PersistingAssessmentProvider; +import org.olat.modules.wiki.WikiAssessmentProvider; import org.olat.modules.wiki.WikiMainController; import org.olat.modules.wiki.WikiManager; import org.olat.modules.wiki.WikiModule; @@ -221,6 +223,7 @@ public class WikiHandler implements RepositoryHandler { final ContextEntry ce = bc.popLauncherContextEntry(); SubscriptionContext subsContext = new SubscriptionContext(res, WikiManager.WIKI_RESOURCE_FOLDER_NAME); final WikiSecurityCallback callback = new WikiSecurityCallbackImpl(null, isOLatAdmin, isGuestOnly, false, isResourceOwner, subsContext); + WikiAssessmentProvider assessmentProvider = PersistingAssessmentProvider.create(re, ureq.getIdentity()); return new RepositoryEntryRuntimeController(ureq, wControl, re, reSecurity, new RuntimeControllerCreator() { @@ -234,9 +237,9 @@ public class WikiHandler implements RepositoryHandler { OLATResourceable ores = ce.getOLATResourceable(); String typeName = ores.getResourceableTypeName(); String page = typeName.substring("page=".length()); - controller = new WikiMainController(uureq, wwControl, entry.getOlatResource(), callback, page); + controller = new WikiMainController(uureq, wwControl, entry.getOlatResource(), callback, assessmentProvider, page); } else { - controller = new WikiMainController(uureq, wwControl, entry.getOlatResource(), callback, null); + controller = new WikiMainController(uureq, wwControl, entry.getOlatResource(), callback, assessmentProvider, null); } return new OLATResourceableListeningWrapperController(uureq, wwControl, entry.getOlatResource(), controller, null, uureq.getIdentity()); } diff --git a/src/main/java/org/olat/repository/manager/RepositoryEntryMyCourseQueries.java b/src/main/java/org/olat/repository/manager/RepositoryEntryMyCourseQueries.java index 800b4856505e6b5318fe876a18bcbf951a91338c..7aa02bfac31f4929a13e48e8f5745da18f02c9cf 100644 --- a/src/main/java/org/olat/repository/manager/RepositoryEntryMyCourseQueries.java +++ b/src/main/java/org/olat/repository/manager/RepositoryEntryMyCourseQueries.java @@ -229,12 +229,8 @@ public class RepositoryEntryMyCourseQueries { sb.append(" where "); needIdentityKey |= appendMyViewAccessSubSelect(sb, roles, params.getFilters(), params.isMembershipMandatory()); - if(params.getClosed() != null) { - if(params.getClosed().booleanValue()) { - sb.append(" and v.status ").in(RepositoryEntryStatusEnum.closed); - } else { - sb.append(" and v.status ").in(RepositoryEntryStatusEnum.preparationToPublished()); - } + if(params.getEntryStatus() != null) { + sb.append(" and v.status ").in(params.getEntryStatus()); } if(params.getFilters() != null) { diff --git a/src/main/java/org/olat/repository/model/SearchMyRepositoryEntryViewParams.java b/src/main/java/org/olat/repository/model/SearchMyRepositoryEntryViewParams.java index 87c16ebe8618e33fcc94d793004adcb178b85e87..a7207b5e70624ca43fd122ad7a89d70af8c7a8d9 100644 --- a/src/main/java/org/olat/repository/model/SearchMyRepositoryEntryViewParams.java +++ b/src/main/java/org/olat/repository/model/SearchMyRepositoryEntryViewParams.java @@ -26,6 +26,7 @@ import org.olat.core.id.Identity; import org.olat.core.id.Roles; import org.olat.modules.curriculum.CurriculumRef; import org.olat.repository.CatalogEntry; +import org.olat.repository.RepositoryEntryStatusEnum; /** * @@ -38,8 +39,8 @@ public class SearchMyRepositoryEntryViewParams { private Roles roles; private Boolean marked; - private Boolean closed; private boolean membershipMandatory = false; + private RepositoryEntryStatusEnum[] entryStatus; private OrderBy orderBy; private boolean asc; @@ -182,12 +183,12 @@ public class SearchMyRepositoryEntryViewParams { return roles; } - public Boolean getClosed() { - return closed; + public RepositoryEntryStatusEnum[] getEntryStatus() { + return entryStatus; } - public void setClosed(Boolean closed) { - this.closed = closed; + public void setEntryStatus(RepositoryEntryStatusEnum[] entryStatus) { + this.entryStatus = entryStatus; } public Boolean getMarked() { diff --git a/src/main/java/org/olat/repository/ui/author/AuthorListController.java b/src/main/java/org/olat/repository/ui/author/AuthorListController.java index 6353cdb223c3c1f74ee5bd6aa1eeb2ca7228a478..f69723650b8a40e4ebba57c8b77cb46977aff8b3 100644 --- a/src/main/java/org/olat/repository/ui/author/AuthorListController.java +++ b/src/main/java/org/olat/repository/ui/author/AuthorListController.java @@ -91,7 +91,13 @@ import org.olat.core.util.Util; import org.olat.core.util.coordinate.LockResult; import org.olat.core.util.resource.OresHelper; import org.olat.course.CorruptedCourseException; +import org.olat.course.CourseFactory; import org.olat.course.CourseModule; +import org.olat.course.ICourse; +import org.olat.course.learningpath.LearningPathService; +import org.olat.course.learningpath.manager.LearningPathNodeAccessProvider; +import org.olat.course.nodeaccess.ui.UnsupportedCourseNodesController; +import org.olat.course.nodes.CourseNode; import org.olat.login.LoginModule; import org.olat.modules.portfolio.PortfolioService; import org.olat.modules.portfolio.handler.BinderTemplateResource; @@ -156,6 +162,7 @@ public class AuthorListController extends FormBasicController implements Activat private ImportRepositoryEntryController importCtrl; private ImportURLRepositoryEntryController importUrlCtrl; private CreateEntryController createCtrl; + private UnsupportedCourseNodesController unsupportedCourseNodesCtrl; protected CloseableCalloutWindowController toolsCalloutCtrl; protected boolean hasAuthorRight; @@ -193,6 +200,8 @@ public class AuthorListController extends FormBasicController implements Activat private LicenseModule licenseModule; @Autowired private RepositoryEntryLicenseHandler licenseHandler; + @Autowired + private LearningPathService learningPathService; public AuthorListController(UserRequest ureq, WindowControl wControl, String i18nName, SearchAuthorRepositoryEntryViewParams searchParams, boolean withSearch, boolean withClosedfilter) { @@ -1029,6 +1038,30 @@ public class AuthorListController extends FormBasicController implements Activat cmc.activate(); } + private void doConvertToLearningPath(UserRequest ureq, AuthoringEntryRow row) { + RepositoryEntry entry = repositoryService.loadByKey(row.getKey()); + ICourse course = CourseFactory.loadCourse(entry); + List<CourseNode> unsupportedCourseNodes = learningPathService.getUnsupportedCourseNodes(course); + if (!unsupportedCourseNodes.isEmpty()) { + showUnsupportedMessage(ureq, unsupportedCourseNodes); + return; + } + + RepositoryEntry lpEntry = learningPathService.migrate(entry, getIdentity()); + String bPath = "[RepositoryEntry:" + lpEntry.getKey() + "]"; + NewControllerFactory.getInstance().launch(bPath, ureq, getWindowControl()); + } + + private void showUnsupportedMessage(UserRequest ureq, List<CourseNode> unsupportedCourseNodes) { + unsupportedCourseNodesCtrl = new UnsupportedCourseNodesController(ureq, getWindowControl(), unsupportedCourseNodes); + listenTo(unsupportedCourseNodesCtrl); + + cmc = new CloseableModalController(getWindowControl(), translate("close"), + unsupportedCourseNodesCtrl.getInitialComponent(), true, translate("unsupported.course.nodes.title")); + cmc.activate(); + listenTo(cmc); + } + private void doDelete(UserRequest ureq, List<AuthoringEntryRow> rows) { List<Long> deleteableRowKeys = new ArrayList<>(rows.size()); for(AuthoringEntryRow row:rows) { @@ -1305,6 +1338,16 @@ public class AuthorListController extends FormBasicController implements Activat boolean copyManaged = RepositoryEntryManagedFlag.isManaged(entry, RepositoryEntryManagedFlag.copy); boolean canCopy = (isAuthor || isOwner) && (entry.getCanCopy() || isOwner) && !copyManaged; + boolean canConvertLearningPath = false; + if (canCopy && "CourseModule".equals(entry.getOlatResource().getResourceableTypeName())) { + ICourse course = CourseFactory.loadCourse(entry); + if (course != null) { + if (!LearningPathNodeAccessProvider.TYPE.equals(course.getCourseConfig().getNodeAccessType().getType())) { + canConvertLearningPath = true; + } + } + } + boolean canDownload = entry.getCanDownload() && handler.supportsDownload(); // disable download for courses if not author or owner if (entry.getOlatResource().getResourceableTypeName().equals(CourseModule.getCourseTypeName()) && !(isOwner || isAuthor)) { @@ -1315,11 +1358,15 @@ public class AuthorListController extends FormBasicController implements Activat canDownload = true; } + if(canCopy || canDownload) { links.add("-"); if (canCopy) { addLink("details.copy", "copy", "o_icon o_icon-fw o_icon_copy", links); } + if (canConvertLearningPath) { + addLink("details.convert.learning.path", "convertLearningPath", "o_icon o_icon-fw o_icon_learning_path", links); + } if(canDownload) { addLink("details.download", "download", "o_icon o_icon-fw o_icon_download", links); } @@ -1373,6 +1420,8 @@ public class AuthorListController extends FormBasicController implements Activat launchMembers(ureq, row); } else if("copy".equals(cmd)) { doCopy(ureq, row); + } else if("convertLearningPath".equals(cmd)) { + doConvertToLearningPath(ureq, row); } else if("download".equals(cmd)) { doDownload(ureq, row); } else if("close".equals(cmd)) { diff --git a/src/main/java/org/olat/repository/ui/catalog/CatalogNodeController.java b/src/main/java/org/olat/repository/ui/catalog/CatalogNodeController.java index ada3d9e5274c0f6dc653ca0e0e4235292c004451..baba091383eb8cd1bbbc5f35d628b964b7d9e2ab 100644 --- a/src/main/java/org/olat/repository/ui/catalog/CatalogNodeController.java +++ b/src/main/java/org/olat/repository/ui/catalog/CatalogNodeController.java @@ -47,6 +47,7 @@ import org.olat.core.util.resource.OresHelper; import org.olat.core.util.vfs.VFSLeaf; import org.olat.repository.CatalogEntry; import org.olat.repository.CatalogEntry.Style; +import org.olat.repository.RepositoryEntryStatusEnum; import org.olat.repository.RepositoryManager; import org.olat.repository.manager.CatalogManager; import org.olat.repository.model.SearchMyRepositoryEntryViewParams; @@ -154,7 +155,7 @@ public class CatalogNodeController extends BasicController implements Activateab SearchMyRepositoryEntryViewParams searchParams = new SearchMyRepositoryEntryViewParams(getIdentity(), ureq.getUserSession().getRoles()); searchParams.setParentEntry(catalogEntry); - searchParams.setClosed(Boolean.FALSE); + searchParams.setEntryStatus(RepositoryEntryStatusEnum.preparationToPublished()); entryListController = new RepositoryEntryListController(ureq, wControl, searchParams, true, false, false, "catalog", stackPanel); if(!entryListController.isEmpty() || searchParams.getFilters() != null) { @@ -166,9 +167,9 @@ public class CatalogNodeController extends BasicController implements Activateab SearchMyRepositoryEntryViewParams searchClosedParams = new SearchMyRepositoryEntryViewParams(getIdentity(), ureq.getUserSession().getRoles()); searchClosedParams.setParentEntry(catalogEntry); - searchClosedParams.setClosed(Boolean.TRUE); closedEntryListController = new RepositoryEntryListController(ureq, wControl, searchClosedParams, true, false, false, "catalog-closed", stackPanel); + if(!closedEntryListController.isEmpty() || searchClosedParams.getFilters() != null) { mainVC.put("closedEntries", closedEntryListController.getInitialComponent()); } diff --git a/src/main/java/org/olat/repository/ui/catalog/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/repository/ui/catalog/_i18n/LocalStrings_fr.properties index d1884461799c552658ddd483d939792b9a772f85..55e0cb72451c33f147d1e0672ea5029c8328c916 100644 --- a/src/main/java/org/olat/repository/ui/catalog/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/repository/ui/catalog/_i18n/LocalStrings_fr.properties @@ -1,4 +1,4 @@ -#Sun Nov 08 12:59:37 CET 2015 +#Sun Mar 01 08:26:42 CET 2020 admin.catalog.settings=Configuration du catalogue admin.menu.title=Catalogue admin.menu.title.alt=Catalogue @@ -27,6 +27,7 @@ entry.category=Nom entry.description=Description entry.leaf=Ressource didactique entry.pic=Image +entry.shorttitle=Titre bref error.download.image=L'image n'a pas pu \u00EAtre utilis\u00E9e. filtered.first=Vous n'\u00EAtes pas inscrit-e. La liste suivante n'est donc pas compl\u00E8te( filtered.second=). @@ -53,4 +54,5 @@ tools.move.catalog.entry=D\u00E9placer tools.move.catalog.entry.failed=Une erreur s'est produite, l'\u00E9l\u00E9ment n'a pas pu \u00EAtre d\u00E9plac\u00E9 tools.move.catalog.entry.success=L'entr\u00E9e de catalogue "{0}" a \u00E9t\u00E9 d\u00E9plac\u00E9e avec succ\u00E8s tools.new.catalog.categoryrequest=Contacter administrateur +tools.order.catalog=Triage manuel tools.pastestructure=Ins\u00E9rer structure diff --git a/src/main/java/org/olat/repository/ui/list/OverviewRepositoryListController.java b/src/main/java/org/olat/repository/ui/list/OverviewRepositoryListController.java index 5386cd22990abcfbe9f3b75a7f0d4d0d5ad0b9c2..8a4271877ce0980acfeafbd8de0ec915c40e1077 100644 --- a/src/main/java/org/olat/repository/ui/list/OverviewRepositoryListController.java +++ b/src/main/java/org/olat/repository/ui/list/OverviewRepositoryListController.java @@ -49,6 +49,7 @@ import org.olat.modules.curriculum.CurriculumModule; import org.olat.modules.curriculum.CurriculumService; import org.olat.modules.curriculum.ui.CurriculumListController; import org.olat.repository.CatalogEntry; +import org.olat.repository.RepositoryEntryStatusEnum; import org.olat.repository.RepositoryManager; import org.olat.repository.RepositoryModule; import org.olat.repository.RepositoryService; @@ -314,7 +315,7 @@ public class OverviewRepositoryListController extends BasicController implements SearchMyRepositoryEntryViewParams searchParams = new SearchMyRepositoryEntryViewParams(getIdentity(), ureq.getUserSession().getRoles()); searchParams.setMembershipMandatory(true); - searchParams.setClosed(Boolean.FALSE); + searchParams.setEntryStatus(RepositoryEntryStatusEnum.preparationToPublished()); OLATResourceable ores = OresHelper.createOLATResourceableInstance("My", 0l); ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores)); @@ -407,7 +408,7 @@ public class OverviewRepositoryListController extends BasicController implements SearchMyRepositoryEntryViewParams searchParams = new SearchMyRepositoryEntryViewParams(getIdentity(), ureq.getUserSession().getRoles()); searchParams.setMembershipMandatory(true); - searchParams.setClosed(Boolean.TRUE); + searchParams.setEntryStatus(new RepositoryEntryStatusEnum[] {RepositoryEntryStatusEnum.closed }); OLATResourceable ores = OresHelper.createOLATResourceableInstance("Closed", 0l); ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores)); diff --git a/src/main/java/org/olat/repository/ui/list/RepositoryEntryListController.java b/src/main/java/org/olat/repository/ui/list/RepositoryEntryListController.java index 7d9e6aeba9d7afbc13397866fbdc33bf61b5ae0e..115ee70dc5c916e7aadf6a5476ac235676b315be 100644 --- a/src/main/java/org/olat/repository/ui/list/RepositoryEntryListController.java +++ b/src/main/java/org/olat/repository/ui/list/RepositoryEntryListController.java @@ -80,6 +80,7 @@ import org.olat.core.util.Util; import org.olat.core.util.resource.OresHelper; import org.olat.course.CorruptedCourseException; import org.olat.repository.RepositoryEntry; +import org.olat.repository.RepositoryEntryStatusEnum; import org.olat.repository.RepositoryManager; import org.olat.repository.RepositoryModule; import org.olat.repository.RepositoryService; @@ -519,7 +520,15 @@ public class RepositoryEntryListController extends FormBasicController searchParams.setAuthor(se.getAuthor()); searchParams.setText(se.getDisplayname()); searchParams.setMembershipMandatory(se.isMembershipMandatory()); - searchParams.setClosed(se.getClosed()); + if(se.getClosed() != null) { + if(se.getClosed().booleanValue()) { + searchParams.setEntryStatus(new RepositoryEntryStatusEnum[] { RepositoryEntryStatusEnum.closed }); + } else { + searchParams.setEntryStatus(RepositoryEntryStatusEnum.preparationToPublished()); + } + } else { + searchParams.setEntryStatus(null); + } tableEl.reset(true, true, true); RepositoryEntryListState state = new RepositoryEntryListState(); diff --git a/src/main/java/org/olat/upgrade/_spring/databaseUpgradeContext.xml b/src/main/java/org/olat/upgrade/_spring/databaseUpgradeContext.xml index 882f8e8cad8999420b72b4f852151224b8ae13c2..a1153b816d450783e3b8d4634eb217d8ae1a9796 100644 --- a/src/main/java/org/olat/upgrade/_spring/databaseUpgradeContext.xml +++ b/src/main/java/org/olat/upgrade/_spring/databaseUpgradeContext.xml @@ -226,7 +226,7 @@ </bean> <bean id="database_upgrade_15_pre_5" class="org.olat.upgrade.DatabaseUpgrade"> <constructor-arg index="0" value="OLAT_15.pre.5" /> - <property name="alterDbStatements" value="alter_15_pre_0_to_15_pre_5.sql" /> + <property name="alterDbStatements" value="alter_15_pre_4_to_15_pre_5.sql" /> </bean> </list> </property> diff --git a/src/main/java/org/olat/user/ui/absenceleave/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/user/ui/absenceleave/_i18n/LocalStrings_fr.properties new file mode 100644 index 0000000000000000000000000000000000000000..d4848f996640a8287a84e01c3ccc8ed204ce4703 --- /dev/null +++ b/src/main/java/org/olat/user/ui/absenceleave/_i18n/LocalStrings_fr.properties @@ -0,0 +1,4 @@ +#Wed Mar 04 07:25:14 CET 2020 +absence.dates=Date +absence.dates.separator=au +absence.restrict.resource=Limiter \u00E0 l'objet didactique diff --git a/src/main/resources/database/mysql/alter_15_pre_0_to_15_pre_4.sql b/src/main/resources/database/mysql/alter_15_pre_0_to_15_pre_4.sql index c7f1879be3e7f30139fd5a189e9943e41b8e76ec..8cc811b843e4183ba132717f34141414e271af80 100644 --- a/src/main/resources/database/mysql/alter_15_pre_0_to_15_pre_4.sql +++ b/src/main/resources/database/mysql/alter_15_pre_0_to_15_pre_4.sql @@ -43,7 +43,7 @@ create table o_grad_time_record ( id bigint not null auto_increment, creationdate datetime not null, lastmodified datetime not null, - g_time int8 default 0 not null, + g_time bigint default 0 not null, g_date_record date not null, fk_assignment bigint, fk_grader bigint not null, diff --git a/src/main/resources/database/mysql/alter_15_pre_0_to_15_pre_5.sql b/src/main/resources/database/mysql/alter_15_pre_0_to_15_pre_5.sql deleted file mode 100644 index 3a7de8e9146c691ee489f5578a5d0109f99e8c85..0000000000000000000000000000000000000000 --- a/src/main/resources/database/mysql/alter_15_pre_0_to_15_pre_5.sql +++ /dev/null @@ -1,2 +0,0 @@ --- CATALOG -UPDATE o_catentry SET short_title = name; \ No newline at end of file diff --git a/src/main/resources/database/mysql/alter_15_pre_4_to_15_pre_5.sql b/src/main/resources/database/mysql/alter_15_pre_4_to_15_pre_5.sql new file mode 100644 index 0000000000000000000000000000000000000000..5056466300edac3af491ff0afeb6c5afd058b4b3 --- /dev/null +++ b/src/main/resources/database/mysql/alter_15_pre_4_to_15_pre_5.sql @@ -0,0 +1,6 @@ +-- grading +alter table o_grad_time_record add column g_metadata_time bigint default 0 not null; + + +-- CATALOG +UPDATE o_catentry SET short_title = name; \ No newline at end of file diff --git a/src/main/resources/database/mysql/setupDatabase.sql b/src/main/resources/database/mysql/setupDatabase.sql index ae9ec9c0d693044b57f7334405c5a52e38b3a71d..54bb8167fc17d40982ff0c574f43886e93745add 100644 --- a/src/main/resources/database/mysql/setupDatabase.sql +++ b/src/main/resources/database/mysql/setupDatabase.sql @@ -2997,7 +2997,8 @@ create table o_grad_time_record ( id bigint not null auto_increment, creationdate datetime not null, lastmodified datetime not null, - g_time int8 default 0 not null, + g_time bigint default 0 not null, + g_metadata_time bigint default 0 not null, g_date_record date not null, fk_assignment bigint, fk_grader bigint not null, diff --git a/src/main/resources/database/oracle/alter_15_pre_0_to_15_pre_5.sql b/src/main/resources/database/oracle/alter_15_pre_0_to_15_pre_5.sql deleted file mode 100644 index 3a7de8e9146c691ee489f5578a5d0109f99e8c85..0000000000000000000000000000000000000000 --- a/src/main/resources/database/oracle/alter_15_pre_0_to_15_pre_5.sql +++ /dev/null @@ -1,2 +0,0 @@ --- CATALOG -UPDATE o_catentry SET short_title = name; \ No newline at end of file diff --git a/src/main/resources/database/oracle/alter_15_pre_4_to_15_pre_5.sql b/src/main/resources/database/oracle/alter_15_pre_4_to_15_pre_5.sql new file mode 100644 index 0000000000000000000000000000000000000000..61ecdfa5277b7e25999ecb7cf748e4b322edba55 --- /dev/null +++ b/src/main/resources/database/oracle/alter_15_pre_4_to_15_pre_5.sql @@ -0,0 +1,5 @@ +-- grading +alter table o_grad_time_record add g_metadata_time number(20) default 0 not null; + +-- CATALOG +UPDATE o_catentry SET short_title = name; \ No newline at end of file diff --git a/src/main/resources/database/oracle/setupDatabase.sql b/src/main/resources/database/oracle/setupDatabase.sql index 7522a97358717d472d0cbe8ffdf33c9817f646f0..be581d6c89c105da3ca55d94c728eec429a2805e 100644 --- a/src/main/resources/database/oracle/setupDatabase.sql +++ b/src/main/resources/database/oracle/setupDatabase.sql @@ -3080,6 +3080,7 @@ create table o_grad_time_record ( creationdate timestamp not null, lastmodified timestamp not null, g_time number(20) default 0 not null, + g_metadata_time number(20) default 0 not null, g_date_record date not null, fk_assignment number(20), fk_grader number(20) not null, diff --git a/src/main/resources/database/postgresql/alter_15_pre_0_to_15_pre_5.sql b/src/main/resources/database/postgresql/alter_15_pre_0_to_15_pre_5.sql deleted file mode 100644 index 3a7de8e9146c691ee489f5578a5d0109f99e8c85..0000000000000000000000000000000000000000 --- a/src/main/resources/database/postgresql/alter_15_pre_0_to_15_pre_5.sql +++ /dev/null @@ -1,2 +0,0 @@ --- CATALOG -UPDATE o_catentry SET short_title = name; \ No newline at end of file diff --git a/src/main/resources/database/postgresql/alter_15_pre_4_to_15_pre_5.sql b/src/main/resources/database/postgresql/alter_15_pre_4_to_15_pre_5.sql new file mode 100644 index 0000000000000000000000000000000000000000..7ba20af08e226dda310bc62d46cb9a5c15a46726 --- /dev/null +++ b/src/main/resources/database/postgresql/alter_15_pre_4_to_15_pre_5.sql @@ -0,0 +1,5 @@ +-- grading +alter table o_grad_time_record add column g_metadata_time int8 default 0 not null; + +-- CATALOG +UPDATE o_catentry SET short_title = name; \ No newline at end of file diff --git a/src/main/resources/database/postgresql/setupDatabase.sql b/src/main/resources/database/postgresql/setupDatabase.sql index 674f39b683f337c5ee2671d965cdb82233352926..5f1f7c4912d54a86b902fdd8c80876593f0339b4 100644 --- a/src/main/resources/database/postgresql/setupDatabase.sql +++ b/src/main/resources/database/postgresql/setupDatabase.sql @@ -3024,6 +3024,7 @@ create table o_grad_time_record ( creationdate timestamp not null, lastmodified timestamp not null, g_time int8 default 0 not null, + g_metadata_time int8 default 0 not null, g_date_record date not null, fk_assignment int8, fk_grader int8 not null, diff --git a/src/main/resources/serviceconfig/olat.properties b/src/main/resources/serviceconfig/olat.properties index 4fa0bd6b75239adea628434533e94435f4523c7a..b2ff3704a415a85a15deeff4a014615f7d527035 100644 --- a/src/main/resources/serviceconfig/olat.properties +++ b/src/main/resources/serviceconfig/olat.properties @@ -1257,8 +1257,8 @@ ldap.learningResourceManagerRoleValue= # Build properties ##### application.name=OpenOlat -build.version=15.pre.4 -build.identifier=openolat150pre4-dev +build.version=15.pre.5 +build.identifier=openolat150pre5-dev build.repo.revision=local-devel ##### diff --git a/src/main/webapp/static/js/interactjs/interact.js b/src/main/webapp/static/js/interactjs/interact.js new file mode 100644 index 0000000000000000000000000000000000000000..74c6fb8b408b43c6a06c9fdc65cfd5c7536867ae --- /dev/null +++ b/src/main/webapp/static/js/interactjs/interact.js @@ -0,0 +1,10496 @@ +/** + * interact.js 1.7.3 + * + * Copyright (c) 2012-2019 Taye Adeyemi <dev@taye.me> + * Released under the MIT License. + * https://raw.github.com/taye/interact.js/master/LICENSE + */ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.interact = f()}})(function(){var define,module,exports; +var createModuleFactory = function createModuleFactory(t){var e;return function(r){return e||t(e={exports:{},parent:r},e.exports),e.exports}}; +var _$scope_24 = createModuleFactory(function (module, exports) { +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +/* common-shake removed: exports.createScope = */ void createScope; +/* common-shake removed: exports.initScope = */ void initScope; +exports.Scope = exports.ActionName = void 0; + +var _domObjects = _interopRequireDefault(_$domObjects_49); + +var utils = _interopRequireWildcard(_$utils_55); + +var _defaultOptions = _interopRequireDefault(_$defaultOptions_20); + +var _Eventable = _interopRequireDefault(_$Eventable_14); + +var _Interactable = _interopRequireDefault(_$Interactable_16); + +var _InteractableSet = _interopRequireDefault(_$InteractableSet_17); + +var _InteractEvent = _interopRequireDefault(_$InteractEvent_15); + +var _interactions = _interopRequireDefault(_$interactions_23({})); + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _get(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); } + +function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +var win = utils.win, + browser = utils.browser, + raf = utils.raf, + events = utils.events; +var ActionName; +exports.ActionName = ActionName; + +(function (ActionName) {})(ActionName || (exports.ActionName = ActionName = {})); + +function createScope() { + return new Scope(); +} + +var Scope = +/*#__PURE__*/ +function () { + // main window + // main document + // main window + // all documents being listened to + function Scope() { + var _this = this; + + _classCallCheck(this, Scope); + + _defineProperty(this, "id", "__interact_scope_".concat(Math.floor(Math.random() * 100))); + + _defineProperty(this, "listenerMaps", []); + + _defineProperty(this, "browser", browser); + + _defineProperty(this, "events", events); + + _defineProperty(this, "utils", utils); + + _defineProperty(this, "defaults", utils.clone(_defaultOptions["default"])); + + _defineProperty(this, "Eventable", _Eventable["default"]); + + _defineProperty(this, "actions", { + names: [], + methodDict: {}, + eventTypes: [] + }); + + _defineProperty(this, "InteractEvent", _InteractEvent["default"]); + + _defineProperty(this, "Interactable", void 0); + + _defineProperty(this, "interactables", new _InteractableSet["default"](this)); + + _defineProperty(this, "_win", void 0); + + _defineProperty(this, "document", void 0); + + _defineProperty(this, "window", void 0); + + _defineProperty(this, "documents", []); + + _defineProperty(this, "_plugins", { + list: [], + map: {} + }); + + _defineProperty(this, "onWindowUnload", function (event) { + return _this.removeDocument(event.target); + }); + + var scope = this; + + this.Interactable = + /*#__PURE__*/ + function (_InteractableBase) { + _inherits(Interactable, _InteractableBase); + + function Interactable() { + _classCallCheck(this, Interactable); + + return _possibleConstructorReturn(this, _getPrototypeOf(Interactable).apply(this, arguments)); + } + + _createClass(Interactable, [{ + key: "set", + value: function set(options) { + _get(_getPrototypeOf(Interactable.prototype), "set", this).call(this, options); + + scope.fire('interactable:set', { + options: options, + interactable: this + }); + return this; + } + }, { + key: "unset", + value: function unset() { + _get(_getPrototypeOf(Interactable.prototype), "unset", this).call(this); + + for (var i = scope.interactions.list.length - 1; i >= 0; i--) { + var interaction = scope.interactions.list[i]; + + if (interaction.interactable === this) { + interaction.stop(); + scope.fire('interactions:destroy', { + interaction: interaction + }); + interaction.destroy(); + + if (scope.interactions.list.length > 2) { + scope.interactions.list.splice(i, 1); + } + } + } + + scope.fire('interactable:unset', { + interactable: this + }); + } + }, { + key: "_defaults", + get: function get() { + return scope.defaults; + } + }]); + + return Interactable; + }(_Interactable["default"]); + } + + _createClass(Scope, [{ + key: "addListeners", + value: function addListeners(map, id) { + this.listenerMaps.push({ + id: id, + map: map + }); + } + }, { + key: "fire", + value: function fire(name, arg) { + for (var _i = 0; _i < this.listenerMaps.length; _i++) { + var _ref; + + _ref = this.listenerMaps[_i]; + var _ref2 = _ref, + listener = _ref2.map[name]; + + if (!!listener && listener(arg, this, name) === false) { + return false; + } + } + } + }, { + key: "init", + value: function init(window) { + return initScope(this, window); + } + }, { + key: "pluginIsInstalled", + value: function pluginIsInstalled(plugin) { + return this._plugins.map[plugin.id] || this._plugins.list.indexOf(plugin) !== -1; + } + }, { + key: "usePlugin", + value: function usePlugin(plugin, options) { + if (this.pluginIsInstalled(plugin)) { + return this; + } + + if (plugin.id) { + this._plugins.map[plugin.id] = plugin; + } + + this._plugins.list.push(plugin); + + if (plugin.install) { + plugin.install(this, options); + } + + if (plugin.listeners && plugin.before) { + var index = 0; + + for (; index < this.listenerMaps.length; index++) { + var otherId = this.listenerMaps[index].id; + + if (otherId === plugin.before) { + break; + } + } + + this.listenerMaps.splice(index, 0, { + id: plugin.id, + map: plugin.listeners + }); + } else if (plugin.listeners) { + this.listenerMaps.push({ + id: plugin.id, + map: plugin.listeners + }); + } + + return this; + } + }, { + key: "addDocument", + value: function addDocument(doc, options) { + // do nothing if document is already known + if (this.getDocIndex(doc) !== -1) { + return false; + } + + var window = win.getWindow(doc); + options = options ? utils.extend({}, options) : {}; + this.documents.push({ + doc: doc, + options: options + }); + events.documents.push(doc); // don't add an unload event for the main document + // so that the page may be cached in browser history + + if (doc !== this.document) { + events.add(window, 'unload', this.onWindowUnload); + } + + this.fire('scope:add-document', { + doc: doc, + window: window, + scope: this, + options: options + }); + } + }, { + key: "removeDocument", + value: function removeDocument(doc) { + var index = this.getDocIndex(doc); + var window = win.getWindow(doc); + var options = this.documents[index].options; + events.remove(window, 'unload', this.onWindowUnload); + this.documents.splice(index, 1); + events.documents.splice(index, 1); + this.fire('scope:remove-document', { + doc: doc, + window: window, + scope: this, + options: options + }); + } + }, { + key: "getDocIndex", + value: function getDocIndex(doc) { + for (var i = 0; i < this.documents.length; i++) { + if (this.documents[i].doc === doc) { + return i; + } + } + + return -1; + } + }, { + key: "getDocOptions", + value: function getDocOptions(doc) { + var docIndex = this.getDocIndex(doc); + return docIndex === -1 ? null : this.documents[docIndex].options; + } + }, { + key: "now", + value: function now() { + return (this.window.Date || Date).now(); + } + }]); + + return Scope; +}(); + +exports.Scope = Scope; + +function initScope(scope, window) { + win.init(window); + + _domObjects["default"].init(window); + + browser.init(window); + raf.init(window); + events.init(window); + scope.usePlugin(_interactions["default"]); + scope.document = window.document; + scope.window = window; + return scope; +} + +}); +var _$interactions_23 = createModuleFactory(function (module, exports) { +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _browser = _interopRequireDefault(_$browser_47); + +var _domObjects = _interopRequireDefault(_$domObjects_49); + +/* removed: var _$domUtils_50 = require("../utils/domUtils.js"); */; + +var _events = _interopRequireDefault(_$events_51); + +var pointerUtils = _interopRequireWildcard(_$pointerUtils_60); + +var _Interaction = _interopRequireDefault(_$Interaction_18({})); + +var _interactionFinder = _interopRequireDefault(_$interactionFinder_22); + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } + +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } + +function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } + +function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +var methodNames = ['pointerDown', 'pointerMove', 'pointerUp', 'updatePointer', 'removePointer', 'windowBlur']; + +function install(scope) { + var listeners = {}; + + for (var _i = 0; _i < methodNames.length; _i++) { + var _ref; + + _ref = methodNames[_i]; + var method = _ref; + listeners[method] = doOnInteractions(method, scope); + } + + var pEventTypes = _browser["default"].pEventTypes; + var docEvents; + + if (_domObjects["default"].PointerEvent) { + docEvents = [{ + type: pEventTypes.down, + listener: releasePointersOnRemovedEls + }, { + type: pEventTypes.down, + listener: listeners.pointerDown + }, { + type: pEventTypes.move, + listener: listeners.pointerMove + }, { + type: pEventTypes.up, + listener: listeners.pointerUp + }, { + type: pEventTypes.cancel, + listener: listeners.pointerUp + }]; + } else { + docEvents = [{ + type: 'mousedown', + listener: listeners.pointerDown + }, { + type: 'mousemove', + listener: listeners.pointerMove + }, { + type: 'mouseup', + listener: listeners.pointerUp + }, { + type: 'touchstart', + listener: releasePointersOnRemovedEls + }, { + type: 'touchstart', + listener: listeners.pointerDown + }, { + type: 'touchmove', + listener: listeners.pointerMove + }, { + type: 'touchend', + listener: listeners.pointerUp + }, { + type: 'touchcancel', + listener: listeners.pointerUp + }]; + } + + docEvents.push({ + type: 'blur', + listener: function listener(event) { + for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) { + var _ref2; + + _ref2 = scope.interactions.list[_i2]; + var interaction = _ref2; + interaction.documentBlur(event); + } + } + }); // for ignoring browser's simulated mouse events + + scope.prevTouchTime = 0; + + scope.Interaction = + /*#__PURE__*/ + function (_InteractionBase) { + _inherits(Interaction, _InteractionBase); + + function Interaction() { + _classCallCheck(this, Interaction); + + return _possibleConstructorReturn(this, _getPrototypeOf(Interaction).apply(this, arguments)); + } + + _createClass(Interaction, [{ + key: "_now", + value: function _now() { + return scope.now(); + } + }, { + key: "pointerMoveTolerance", + get: function get() { + return scope.interactions.pointerMoveTolerance; + }, + set: function set(value) { + scope.interactions.pointerMoveTolerance = value; + } + }]); + + return Interaction; + }(_Interaction["default"]); + + scope.interactions = { + // all active and idle interactions + list: [], + "new": function _new(options) { + options.scopeFire = function (name, arg) { + return scope.fire(name, arg); + }; + + var interaction = new scope.Interaction(options); + scope.interactions.list.push(interaction); + return interaction; + }, + listeners: listeners, + docEvents: docEvents, + pointerMoveTolerance: 1 + }; + + function releasePointersOnRemovedEls() { + // for all inactive touch interactions with pointers down + for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { + var _ref3; + + _ref3 = scope.interactions.list[_i3]; + var interaction = _ref3; + + if (!interaction.pointerIsDown || interaction.pointerType !== 'touch' || interaction._interacting) { + continue; + } // if a pointer is down on an element that is no longer in the DOM tree + + + var _loop = function _loop() { + _ref4 = interaction.pointers[_i4]; + var pointer = _ref4; + + if (!scope.documents.some(function (_ref5) { + var doc = _ref5.doc; + return (0, _$domUtils_50.nodeContains)(doc, pointer.downTarget); + })) { + // remove the pointer from the interaction + interaction.removePointer(pointer.pointer, pointer.event); + } + }; + + for (var _i4 = 0; _i4 < interaction.pointers.length; _i4++) { + var _ref4; + + _loop(); + } + } + } +} + +function doOnInteractions(method, scope) { + return function (event) { + var interactions = scope.interactions.list; + var pointerType = pointerUtils.getPointerType(event); + + var _pointerUtils$getEven = pointerUtils.getEventTargets(event), + _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 2), + eventTarget = _pointerUtils$getEven2[0], + curEventTarget = _pointerUtils$getEven2[1]; + + var matches = []; // [ [pointer, interaction], ...] + + if (/^touch/.test(event.type)) { + scope.prevTouchTime = scope.now(); + + for (var _i5 = 0; _i5 < event.changedTouches.length; _i5++) { + var _ref6; + + _ref6 = event.changedTouches[_i5]; + var changedTouch = _ref6; + var pointer = changedTouch; + var pointerId = pointerUtils.getPointerId(pointer); + var searchDetails = { + pointer: pointer, + pointerId: pointerId, + pointerType: pointerType, + eventType: event.type, + eventTarget: eventTarget, + curEventTarget: curEventTarget, + scope: scope + }; + var interaction = getInteraction(searchDetails); + matches.push([searchDetails.pointer, searchDetails.eventTarget, searchDetails.curEventTarget, interaction]); + } + } else { + var invalidPointer = false; + + if (!_browser["default"].supportsPointerEvent && /mouse/.test(event.type)) { + // ignore mouse events while touch interactions are active + for (var i = 0; i < interactions.length && !invalidPointer; i++) { + invalidPointer = interactions[i].pointerType !== 'mouse' && interactions[i].pointerIsDown; + } // try to ignore mouse events that are simulated by the browser + // after a touch event + + + invalidPointer = invalidPointer || scope.now() - scope.prevTouchTime < 500 || // on iOS and Firefox Mobile, MouseEvent.timeStamp is zero if simulated + event.timeStamp === 0; + } + + if (!invalidPointer) { + var _searchDetails = { + pointer: event, + pointerId: pointerUtils.getPointerId(event), + pointerType: pointerType, + eventType: event.type, + curEventTarget: curEventTarget, + eventTarget: eventTarget, + scope: scope + }; + + var _interaction = getInteraction(_searchDetails); + + matches.push([_searchDetails.pointer, _searchDetails.eventTarget, _searchDetails.curEventTarget, _interaction]); + } + } // eslint-disable-next-line no-shadow + + + for (var _i6 = 0; _i6 < matches.length; _i6++) { + var _matches$_i = _slicedToArray(matches[_i6], 4), + _pointer = _matches$_i[0], + _eventTarget = _matches$_i[1], + _curEventTarget = _matches$_i[2], + _interaction2 = _matches$_i[3]; + + _interaction2[method](_pointer, event, _eventTarget, _curEventTarget); + } + }; +} + +function getInteraction(searchDetails) { + var pointerType = searchDetails.pointerType, + scope = searchDetails.scope; + + var foundInteraction = _interactionFinder["default"].search(searchDetails); + + var signalArg = { + interaction: foundInteraction, + searchDetails: searchDetails + }; + scope.fire('interactions:find', signalArg); + return signalArg.interaction || scope.interactions["new"]({ + pointerType: pointerType + }); +} + +function onDocSignal(_ref7, eventMethodName) { + var doc = _ref7.doc, + scope = _ref7.scope, + options = _ref7.options; + var docEvents = scope.interactions.docEvents; + var eventMethod = _events["default"][eventMethodName]; + + if (scope.browser.isIOS && !options.events) { + options.events = { + passive: false + }; + } // delegate event listener + + + for (var eventType in _events["default"].delegatedEvents) { + eventMethod(doc, eventType, _events["default"].delegateListener); + eventMethod(doc, eventType, _events["default"].delegateUseCapture, true); + } + + var eventOptions = options && options.events; + + for (var _i7 = 0; _i7 < docEvents.length; _i7++) { + var _ref8; + + _ref8 = docEvents[_i7]; + var _ref9 = _ref8, + type = _ref9.type, + listener = _ref9.listener; + eventMethod(doc, type, listener, eventOptions); + } +} + +var _default = { + id: 'core/interactions', + install: install, + listeners: { + 'scope:add-document': function scopeAddDocument(arg) { + return onDocSignal(arg, 'add'); + }, + 'scope:remove-document': function scopeRemoveDocument(arg) { + return onDocSignal(arg, 'remove'); + } + }, + onDocSignal: onDocSignal, + doOnInteractions: doOnInteractions, + methodNames: methodNames +}; +exports["default"] = _default; + +}); +var _$Interaction_18 = createModuleFactory(function (module, exports) { +"use strict"; + +function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "PointerInfo", { + enumerable: true, + get: function get() { + return _PointerInfo["default"]; + } +}); +exports["default"] = exports.Interaction = exports._ProxyMethods = exports._ProxyValues = void 0; + +var utils = _interopRequireWildcard(_$utils_55); + +var _InteractEvent = _interopRequireWildcard(_$InteractEvent_15); + +var _PointerInfo = _interopRequireDefault(_$PointerInfo_19); + +var _scope = _$scope_24({}); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +var _ProxyValues; + +exports._ProxyValues = _ProxyValues; + +(function (_ProxyValues) { + _ProxyValues["interactable"] = ""; + _ProxyValues["element"] = ""; + _ProxyValues["prepared"] = ""; + _ProxyValues["pointerIsDown"] = ""; + _ProxyValues["pointerWasMoved"] = ""; + _ProxyValues["_proxy"] = ""; +})(_ProxyValues || (exports._ProxyValues = _ProxyValues = {})); + +var _ProxyMethods; + +exports._ProxyMethods = _ProxyMethods; + +(function (_ProxyMethods) { + _ProxyMethods["start"] = ""; + _ProxyMethods["move"] = ""; + _ProxyMethods["end"] = ""; + _ProxyMethods["stop"] = ""; + _ProxyMethods["interacting"] = ""; +})(_ProxyMethods || (exports._ProxyMethods = _ProxyMethods = {})); + +var Interaction = +/*#__PURE__*/ +function () { + _createClass(Interaction, [{ + key: "pointerMoveTolerance", + // current interactable being interacted with + // the target element of the interactable + // action that's ready to be fired on next move event + // keep track of added pointers + // pointerdown/mousedown/touchstart event + // previous action event + get: function get() { + return 1; + } + /** + * @alias Interaction.prototype.move + */ + + /** */ + + }]); + + function Interaction(_ref) { + var _this = this; + + var pointerType = _ref.pointerType, + scopeFire = _ref.scopeFire; + + _classCallCheck(this, Interaction); + + _defineProperty(this, "interactable", null); + + _defineProperty(this, "element", null); + + _defineProperty(this, "rect", void 0); + + _defineProperty(this, "edges", void 0); + + _defineProperty(this, "_scopeFire", void 0); + + _defineProperty(this, "prepared", { + name: null, + axis: null, + edges: null + }); + + _defineProperty(this, "pointerType", void 0); + + _defineProperty(this, "pointers", []); + + _defineProperty(this, "downEvent", null); + + _defineProperty(this, "downPointer", {}); + + _defineProperty(this, "_latestPointer", { + pointer: null, + event: null, + eventTarget: null + }); + + _defineProperty(this, "prevEvent", null); + + _defineProperty(this, "pointerIsDown", false); + + _defineProperty(this, "pointerWasMoved", false); + + _defineProperty(this, "_interacting", false); + + _defineProperty(this, "_ending", false); + + _defineProperty(this, "_stopped", true); + + _defineProperty(this, "_proxy", null); + + _defineProperty(this, "simulation", null); + + _defineProperty(this, "doMove", utils.warnOnce(function (signalArg) { + this.move(signalArg); + }, 'The interaction.doMove() method has been renamed to interaction.move()')); + + _defineProperty(this, "coords", { + // Starting InteractEvent pointer coordinates + start: utils.pointer.newCoords(), + // Previous native pointer move event coordinates + prev: utils.pointer.newCoords(), + // current native pointer move event coordinates + cur: utils.pointer.newCoords(), + // Change in coordinates and time of the pointer + delta: utils.pointer.newCoords(), + // pointer velocity + velocity: utils.pointer.newCoords() + }); + + this._scopeFire = scopeFire; + this.pointerType = pointerType; + var that = this; + this._proxy = {}; + + var _loop = function _loop(key) { + Object.defineProperty(_this._proxy, key, { + get: function get() { + return that[key]; + } + }); + }; + + for (var key in _ProxyValues) { + _loop(key); + } + + var _loop2 = function _loop2(_key) { + Object.defineProperty(_this._proxy, _key, { + value: function value() { + return that[_key].apply(that, arguments); + } + }); + }; + + for (var _key in _ProxyMethods) { + _loop2(_key); + } + + this._scopeFire('interactions:new', { + interaction: this + }); + } + + _createClass(Interaction, [{ + key: "pointerDown", + value: function pointerDown(pointer, event, eventTarget) { + var pointerIndex = this.updatePointer(pointer, event, eventTarget, true); + + this._scopeFire('interactions:down', { + pointer: pointer, + event: event, + eventTarget: eventTarget, + pointerIndex: pointerIndex, + type: 'down', + interaction: this + }); + } + /** + * ```js + * interact(target) + * .draggable({ + * // disable the default drag start by down->move + * manualStart: true + * }) + * // start dragging after the user holds the pointer down + * .on('hold', function (event) { + * var interaction = event.interaction + * + * if (!interaction.interacting()) { + * interaction.start({ name: 'drag' }, + * event.interactable, + * event.currentTarget) + * } + * }) + * ``` + * + * Start an action with the given Interactable and Element as tartgets. The + * action must be enabled for the target Interactable and an appropriate + * number of pointers must be held down - 1 for drag/resize, 2 for gesture. + * + * Use it with `interactable.<action>able({ manualStart: false })` to always + * [start actions manually](https://github.com/taye/interact.js/issues/114) + * + * @param {object} action The action to be performed - drag, resize, etc. + * @param {Interactable} target The Interactable to target + * @param {Element} element The DOM Element to target + * @return {object} interact + */ + + }, { + key: "start", + value: function start(action, interactable, element) { + if (this.interacting() || !this.pointerIsDown || this.pointers.length < (action.name === _scope.ActionName.Gesture ? 2 : 1) || !interactable.options[action.name].enabled) { + return false; + } + + utils.copyAction(this.prepared, action); + this.interactable = interactable; + this.element = element; + this.rect = interactable.getRect(element); + this.edges = this.prepared.edges; + this._stopped = false; + this._interacting = this._doPhase({ + interaction: this, + event: this.downEvent, + phase: _InteractEvent.EventPhase.Start + }) && !this._stopped; + return this._interacting; + } + }, { + key: "pointerMove", + value: function pointerMove(pointer, event, eventTarget) { + if (!this.simulation && !(this.modifiers && this.modifiers.endPrevented)) { + this.updatePointer(pointer, event, eventTarget, false); + utils.pointer.setCoords(this.coords.cur, this.pointers.map(function (p) { + return p.pointer; + }), this._now()); + } + + var duplicateMove = this.coords.cur.page.x === this.coords.prev.page.x && this.coords.cur.page.y === this.coords.prev.page.y && this.coords.cur.client.x === this.coords.prev.client.x && this.coords.cur.client.y === this.coords.prev.client.y; + var dx; + var dy; // register movement greater than pointerMoveTolerance + + if (this.pointerIsDown && !this.pointerWasMoved) { + dx = this.coords.cur.client.x - this.coords.start.client.x; + dy = this.coords.cur.client.y - this.coords.start.client.y; + this.pointerWasMoved = utils.hypot(dx, dy) > this.pointerMoveTolerance; + } + + var signalArg = { + pointer: pointer, + pointerIndex: this.getPointerIndex(pointer), + event: event, + type: 'move', + eventTarget: eventTarget, + dx: dx, + dy: dy, + duplicate: duplicateMove, + interaction: this + }; + + if (!duplicateMove) { + // set pointer coordinate, time changes and velocity + utils.pointer.setCoordDeltas(this.coords.delta, this.coords.prev, this.coords.cur); + utils.pointer.setCoordVelocity(this.coords.velocity, this.coords.delta); + } + + this._scopeFire('interactions:move', signalArg); + + if (!duplicateMove) { + // if interacting, fire an 'action-move' signal etc + if (this.interacting()) { + signalArg.type = null; + this.move(signalArg); + } + + if (this.pointerWasMoved) { + utils.pointer.copyCoords(this.coords.prev, this.coords.cur); + } + } + } + /** + * ```js + * interact(target) + * .draggable(true) + * .on('dragmove', function (event) { + * if (someCondition) { + * // change the snap settings + * event.interactable.draggable({ snap: { targets: [] }}) + * // fire another move event with re-calculated snap + * event.interaction.move() + * } + * }) + * ``` + * + * Force a move of the current action at the same coordinates. Useful if + * snap/restrict has been changed and you want a movement with the new + * settings. + */ + + }, { + key: "move", + value: function move(signalArg) { + signalArg = utils.extend({ + pointer: this._latestPointer.pointer, + event: this._latestPointer.event, + eventTarget: this._latestPointer.eventTarget, + interaction: this + }, signalArg || {}); + signalArg.phase = _InteractEvent.EventPhase.Move; + + this._doPhase(signalArg); + } // End interact move events and stop auto-scroll unless simulation is running + + }, { + key: "pointerUp", + value: function pointerUp(pointer, event, eventTarget, curEventTarget) { + var pointerIndex = this.getPointerIndex(pointer); + + if (pointerIndex === -1) { + pointerIndex = this.updatePointer(pointer, event, eventTarget, false); + } + + var type = /cancel$/i.test(event.type) ? 'cancel' : 'up'; + + this._scopeFire("interactions:".concat(type), { + pointer: pointer, + pointerIndex: pointerIndex, + event: event, + eventTarget: eventTarget, + type: type, + curEventTarget: curEventTarget, + interaction: this + }); + + if (!this.simulation) { + this.end(event); + } + + this.pointerIsDown = false; + this.removePointer(pointer, event); + } + }, { + key: "documentBlur", + value: function documentBlur(event) { + this.end(event); + + this._scopeFire('interactions:blur', { + event: event, + type: 'blur', + interaction: this + }); + } + /** + * ```js + * interact(target) + * .draggable(true) + * .on('move', function (event) { + * if (event.pageX > 1000) { + * // end the current action + * event.interaction.end() + * // stop all further listeners from being called + * event.stopImmediatePropagation() + * } + * }) + * ``` + * + * @param {PointerEvent} [event] + */ + + }, { + key: "end", + value: function end(event) { + this._ending = true; + event = event || this._latestPointer.event; + var endPhaseResult; + + if (this.interacting()) { + endPhaseResult = this._doPhase({ + event: event, + interaction: this, + phase: _InteractEvent.EventPhase.End + }); + } + + this._ending = false; + + if (endPhaseResult === true) { + this.stop(); + } + } + }, { + key: "currentAction", + value: function currentAction() { + return this._interacting ? this.prepared.name : null; + } + }, { + key: "interacting", + value: function interacting() { + return this._interacting; + } + /** */ + + }, { + key: "stop", + value: function stop() { + this._scopeFire('interactions:stop', { + interaction: this + }); + + this.interactable = this.element = null; + this._interacting = false; + this._stopped = true; + this.prepared.name = this.prevEvent = null; + } + }, { + key: "getPointerIndex", + value: function getPointerIndex(pointer) { + var pointerId = utils.pointer.getPointerId(pointer); // mouse and pen interactions may have only one pointer + + return this.pointerType === 'mouse' || this.pointerType === 'pen' ? this.pointers.length - 1 : utils.arr.findIndex(this.pointers, function (curPointer) { + return curPointer.id === pointerId; + }); + } + }, { + key: "getPointerInfo", + value: function getPointerInfo(pointer) { + return this.pointers[this.getPointerIndex(pointer)]; + } + }, { + key: "updatePointer", + value: function updatePointer(pointer, event, eventTarget, down) { + var id = utils.pointer.getPointerId(pointer); + var pointerIndex = this.getPointerIndex(pointer); + var pointerInfo = this.pointers[pointerIndex]; + down = down === false ? false : down || /(down|start)$/i.test(event.type); + + if (!pointerInfo) { + pointerInfo = new _PointerInfo["default"](id, pointer, event, null, null); + pointerIndex = this.pointers.length; + this.pointers.push(pointerInfo); + } else { + pointerInfo.pointer = pointer; + } + + if (down) { + this.pointerIsDown = true; + + if (!this.interacting()) { + utils.pointer.setCoords(this.coords.start, this.pointers.map(function (p) { + return p.pointer; + }), this._now()); + utils.pointer.copyCoords(this.coords.cur, this.coords.start); + utils.pointer.copyCoords(this.coords.prev, this.coords.start); + utils.pointer.pointerExtend(this.downPointer, pointer); + this.downEvent = event; + pointerInfo.downTime = this.coords.cur.timeStamp; + pointerInfo.downTarget = eventTarget; + this.pointerWasMoved = false; + } + } + + this._updateLatestPointer(pointer, event, eventTarget); + + this._scopeFire('interactions:update-pointer', { + pointer: pointer, + event: event, + eventTarget: eventTarget, + down: down, + pointerInfo: pointerInfo, + pointerIndex: pointerIndex, + interaction: this + }); + + return pointerIndex; + } + }, { + key: "removePointer", + value: function removePointer(pointer, event) { + var pointerIndex = this.getPointerIndex(pointer); + + if (pointerIndex === -1) { + return; + } + + var pointerInfo = this.pointers[pointerIndex]; + + this._scopeFire('interactions:remove-pointer', { + pointer: pointer, + event: event, + eventTarget: null, + pointerIndex: pointerIndex, + pointerInfo: pointerInfo, + interaction: this + }); + + this.pointers.splice(pointerIndex, 1); + } + }, { + key: "_updateLatestPointer", + value: function _updateLatestPointer(pointer, event, eventTarget) { + this._latestPointer.pointer = pointer; + this._latestPointer.event = event; + this._latestPointer.eventTarget = eventTarget; + } + }, { + key: "destroy", + value: function destroy() { + this._latestPointer.pointer = null; + this._latestPointer.event = null; + this._latestPointer.eventTarget = null; + } + }, { + key: "_createPreparedEvent", + value: function _createPreparedEvent(event, phase, preEnd, type) { + var actionName = this.prepared.name; + return new _InteractEvent["default"](this, event, actionName, phase, this.element, null, preEnd, type); + } + }, { + key: "_fireEvent", + value: function _fireEvent(iEvent) { + this.interactable.fire(iEvent); + + if (!this.prevEvent || iEvent.timeStamp >= this.prevEvent.timeStamp) { + this.prevEvent = iEvent; + } + } + }, { + key: "_doPhase", + value: function _doPhase(signalArg) { + var event = signalArg.event, + phase = signalArg.phase, + preEnd = signalArg.preEnd, + type = signalArg.type; + + var beforeResult = this._scopeFire("interactions:before-action-".concat(phase), signalArg); + + if (beforeResult === false) { + return false; + } + + var iEvent = signalArg.iEvent = this._createPreparedEvent(event, phase, preEnd, type); + + var rect = this.rect; + + if (rect) { + // update the rect modifications + var edges = this.edges || this.prepared.edges || { + left: true, + right: true, + top: true, + bottom: true + }; + + if (edges.top) { + rect.top += iEvent.delta.y; + } + + if (edges.bottom) { + rect.bottom += iEvent.delta.y; + } + + if (edges.left) { + rect.left += iEvent.delta.x; + } + + if (edges.right) { + rect.right += iEvent.delta.x; + } + + rect.width = rect.right - rect.left; + rect.height = rect.bottom - rect.top; + } + + this._scopeFire("interactions:action-".concat(phase), signalArg); + + this._fireEvent(iEvent); + + this._scopeFire("interactions:after-action-".concat(phase), signalArg); + + return true; + } + }, { + key: "_now", + value: function _now() { + return Date.now(); + } + }]); + + return Interaction; +}(); + +exports.Interaction = Interaction; +var _default = Interaction; +exports["default"] = _default; + +}); +var _$domObjects_49 = {}; +"use strict"; + +Object.defineProperty(_$domObjects_49, "__esModule", { + value: true +}); +_$domObjects_49["default"] = void 0; +var domObjects = { + init: init, + document: null, + DocumentFragment: null, + SVGElement: null, + SVGSVGElement: null, + // eslint-disable-next-line no-undef + SVGElementInstance: null, + Element: null, + HTMLElement: null, + Event: null, + Touch: null, + PointerEvent: null +}; + +function blank() {} + +var _default = domObjects; +_$domObjects_49["default"] = _default; + +function init(window) { + var win = window; + domObjects.document = win.document; + domObjects.DocumentFragment = win.DocumentFragment || blank; + domObjects.SVGElement = win.SVGElement || blank; + domObjects.SVGSVGElement = win.SVGSVGElement || blank; + domObjects.SVGElementInstance = win.SVGElementInstance || blank; + domObjects.Element = win.Element || blank; + domObjects.HTMLElement = win.HTMLElement || domObjects.Element; + domObjects.Event = win.Event; + domObjects.Touch = win.Touch || blank; + domObjects.PointerEvent = win.PointerEvent || win.MSPointerEvent; +} + +var _$arr_46 = {}; +"use strict"; + +Object.defineProperty(_$arr_46, "__esModule", { + value: true +}); +_$arr_46.contains = contains; +_$arr_46.remove = remove; +_$arr_46.merge = merge; +_$arr_46.from = from; +_$arr_46.findIndex = findIndex; +_$arr_46.find = find; + +function contains(array, target) { + return array.indexOf(target) !== -1; +} + +function remove(array, target) { + return array.splice(array.indexOf(target), 1); +} + +function merge(target, source) { + for (var _i = 0; _i < source.length; _i++) { + var _ref; + + _ref = source[_i]; + var item = _ref; + target.push(item); + } + + return target; +} + +function from(source) { + return merge([], source); +} + +function findIndex(array, func) { + for (var i = 0; i < array.length; i++) { + if (func(array[i], i, array)) { + return i; + } + } + + return -1; +} + +function find(array, func) { + return array[findIndex(array, func)]; +} + +var _$isWindow_57 = {}; +"use strict"; + +Object.defineProperty(_$isWindow_57, "__esModule", { + value: true +}); +_$isWindow_57["default"] = void 0; + +var ___default_57 = function _default(thing) { + return !!(thing && thing.Window) && thing instanceof thing.Window; +}; + +_$isWindow_57["default"] = ___default_57; + +var _$window_65 = {}; +"use strict"; + +Object.defineProperty(_$window_65, "__esModule", { + value: true +}); +_$window_65.init = __init_65; +_$window_65.getWindow = getWindow; +_$window_65["default"] = void 0; + +var _isWindow = _interopRequireDefault(_$isWindow_57); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +var win = { + realWindow: undefined, + window: undefined, + getWindow: getWindow, + init: __init_65 +}; + +function __init_65(window) { + // get wrapped window if using Shadow DOM polyfill + win.realWindow = window; // create a TextNode + + var el = window.document.createTextNode(''); // check if it's wrapped by a polyfill + + if (el.ownerDocument !== window.document && typeof window.wrap === 'function' && window.wrap(el) === el) { + // use wrapped window + window = window.wrap(window); + } + + win.window = window; +} + +if (typeof window === 'undefined') { + win.window = undefined; + win.realWindow = undefined; +} else { + __init_65(window); +} + +function getWindow(node) { + if ((0, _isWindow["default"])(node)) { + return node; + } + + var rootNode = node.ownerDocument || node; + return rootNode.defaultView || win.window; +} + +win.init = __init_65; +var ___default_65 = win; +_$window_65["default"] = ___default_65; + +var _$is_56 = {}; +"use strict"; + +Object.defineProperty(_$is_56, "__esModule", { + value: true +}); +_$is_56.array = _$is_56.plainObject = _$is_56.element = _$is_56.string = _$is_56.bool = _$is_56.number = _$is_56.func = _$is_56.object = _$is_56.docFrag = _$is_56.window = void 0; + +var ___isWindow_56 = ___interopRequireDefault_56(_$isWindow_57); + +var _window2 = ___interopRequireDefault_56(_$window_65); + +function ___interopRequireDefault_56(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + +var __window_56 = function window(thing) { + return thing === _window2["default"].window || (0, ___isWindow_56["default"])(thing); +}; + +_$is_56.window = __window_56; + +var docFrag = function docFrag(thing) { + return object(thing) && thing.nodeType === 11; +}; + +_$is_56.docFrag = docFrag; + +var object = function object(thing) { + return !!thing && _typeof(thing) === 'object'; +}; + +_$is_56.object = object; + +var func = function func(thing) { + return typeof thing === 'function'; +}; + +_$is_56.func = func; + +var number = function number(thing) { + return typeof thing === 'number'; +}; + +_$is_56.number = number; + +var bool = function bool(thing) { + return typeof thing === 'boolean'; +}; + +_$is_56.bool = bool; + +var string = function string(thing) { + return typeof thing === 'string'; +}; + +_$is_56.string = string; + +var element = function element(thing) { + if (!thing || _typeof(thing) !== 'object') { + return false; + } + + var _window = _window2["default"].getWindow(thing) || _window2["default"].window; + + return /object|function/.test(_typeof(_window.Element)) ? thing instanceof _window.Element // DOM2 + : thing.nodeType === 1 && typeof thing.nodeName === 'string'; +}; + +_$is_56.element = element; + +var plainObject = function plainObject(thing) { + return object(thing) && !!thing.constructor && /function Object\b/.test(thing.constructor.toString()); +}; + +_$is_56.plainObject = plainObject; + +var array = function array(thing) { + return object(thing) && typeof thing.length !== 'undefined' && func(thing.splice); +}; + +_$is_56.array = array; + +var _$browser_47 = {}; +"use strict"; + +function ___typeof_47(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_47 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_47 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_47(obj); } + +Object.defineProperty(_$browser_47, "__esModule", { + value: true +}); +_$browser_47["default"] = void 0; + +var _domObjects = ___interopRequireDefault_47(_$domObjects_49); + +var is = _interopRequireWildcard(_$is_56); + +var _window = ___interopRequireDefault_47(_$window_65); + +function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_47(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_47(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +var browser = { + init: __init_47, + supportsTouch: null, + supportsPointerEvent: null, + isIOS7: null, + isIOS: null, + isIe9: null, + isOperaMobile: null, + prefixedMatchesSelector: null, + pEventTypes: null, + wheelEvent: null +}; + +function __init_47(window) { + var Element = _domObjects["default"].Element; + var navigator = _window["default"].window.navigator; // Does the browser support touch input? + + browser.supportsTouch = 'ontouchstart' in window || is.func(window.DocumentTouch) && _domObjects["default"].document instanceof window.DocumentTouch; // Does the browser support PointerEvents + + browser.supportsPointerEvent = navigator.pointerEnabled !== false && !!_domObjects["default"].PointerEvent; + browser.isIOS = /iP(hone|od|ad)/.test(navigator.platform); // scrolling doesn't change the result of getClientRects on iOS 7 + + browser.isIOS7 = /iP(hone|od|ad)/.test(navigator.platform) && /OS 7[^\d]/.test(navigator.appVersion); + browser.isIe9 = /MSIE 9/.test(navigator.userAgent); // Opera Mobile must be handled differently + + browser.isOperaMobile = navigator.appName === 'Opera' && browser.supportsTouch && /Presto/.test(navigator.userAgent); // prefix matchesSelector + + browser.prefixedMatchesSelector = 'matches' in Element.prototype ? 'matches' : 'webkitMatchesSelector' in Element.prototype ? 'webkitMatchesSelector' : 'mozMatchesSelector' in Element.prototype ? 'mozMatchesSelector' : 'oMatchesSelector' in Element.prototype ? 'oMatchesSelector' : 'msMatchesSelector'; + browser.pEventTypes = browser.supportsPointerEvent ? _domObjects["default"].PointerEvent === window.MSPointerEvent ? { + up: 'MSPointerUp', + down: 'MSPointerDown', + over: 'mouseover', + out: 'mouseout', + move: 'MSPointerMove', + cancel: 'MSPointerCancel' + } : { + up: 'pointerup', + down: 'pointerdown', + over: 'pointerover', + out: 'pointerout', + move: 'pointermove', + cancel: 'pointercancel' + } : null; // because Webkit and Opera still use 'mousewheel' event type + + browser.wheelEvent = 'onmousewheel' in _domObjects["default"].document ? 'mousewheel' : 'wheel'; +} + +var ___default_47 = browser; +_$browser_47["default"] = ___default_47; + +var _$domUtils_50 = {}; +"use strict"; + +function ___typeof_50(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_50 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_50 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_50(obj); } + +Object.defineProperty(_$domUtils_50, "__esModule", { + value: true +}); +_$domUtils_50.nodeContains = nodeContains; +_$domUtils_50.closest = closest; +_$domUtils_50.parentNode = parentNode; +_$domUtils_50.matchesSelector = matchesSelector; +_$domUtils_50.indexOfDeepestElement = indexOfDeepestElement; +_$domUtils_50.matchesUpTo = matchesUpTo; +_$domUtils_50.getActualElement = getActualElement; +_$domUtils_50.getScrollXY = getScrollXY; +_$domUtils_50.getElementClientRect = getElementClientRect; +_$domUtils_50.getElementRect = getElementRect; +_$domUtils_50.getPath = getPath; +_$domUtils_50.trySelector = trySelector; + +var _browser = ___interopRequireDefault_50(_$browser_47); + +var ___domObjects_50 = ___interopRequireDefault_50(_$domObjects_49); + +var __is_50 = ___interopRequireWildcard_50(_$is_56); + +var ___window_50 = ___interopRequireWildcard_50(_$window_65); + +function ___getRequireWildcardCache_50() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_50 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_50(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_50(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_50(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_50(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function nodeContains(parent, child) { + while (child) { + if (child === parent) { + return true; + } + + child = child.parentNode; + } + + return false; +} + +function closest(element, selector) { + while (__is_50.element(element)) { + if (matchesSelector(element, selector)) { + return element; + } + + element = parentNode(element); + } + + return null; +} + +function parentNode(node) { + var parent = node.parentNode; + + if (__is_50.docFrag(parent)) { + // skip past #shado-root fragments + // tslint:disable-next-line + while ((parent = parent.host) && __is_50.docFrag(parent)) { + continue; + } + + return parent; + } + + return parent; +} + +function matchesSelector(element, selector) { + // remove /deep/ from selectors if shadowDOM polyfill is used + if (___window_50["default"].window !== ___window_50["default"].realWindow) { + selector = selector.replace(/\/deep\//g, ' '); + } + + return element[_browser["default"].prefixedMatchesSelector](selector); +} + +var getParent = function getParent(el) { + return el.parentNode ? el.parentNode : el.host; +}; // Test for the element that's "above" all other qualifiers + + +function indexOfDeepestElement(elements) { + var deepestZoneParents = []; + var deepestZone = elements[0]; + var index = deepestZone ? 0 : -1; + var i; + var n; + + for (i = 1; i < elements.length; i++) { + var dropzone = elements[i]; // an element might belong to multiple selector dropzones + + if (!dropzone || dropzone === deepestZone) { + continue; + } + + if (!deepestZone) { + deepestZone = dropzone; + index = i; + continue; + } // check if the deepest or current are document.documentElement or document.rootElement + // - if the current dropzone is, do nothing and continue + + + if (dropzone.parentNode === dropzone.ownerDocument) { + continue; + } // - if deepest is, update with the current dropzone and continue to next + else if (deepestZone.parentNode === dropzone.ownerDocument) { + deepestZone = dropzone; + index = i; + continue; + } // compare zIndex of siblings + + + if (dropzone.parentNode === deepestZone.parentNode) { + var deepestZIndex = parseInt((0, ___window_50.getWindow)(deepestZone).getComputedStyle(deepestZone).zIndex, 10) || 0; + var dropzoneZIndex = parseInt((0, ___window_50.getWindow)(dropzone).getComputedStyle(dropzone).zIndex, 10) || 0; + + if (dropzoneZIndex >= deepestZIndex) { + deepestZone = dropzone; + index = i; + } + + continue; + } // populate the ancestry array for the latest deepest dropzone + + + if (!deepestZoneParents.length) { + var _parent = deepestZone; + var parentParent = void 0; + + while ((parentParent = getParent(_parent)) && parentParent !== _parent.ownerDocument) { + deepestZoneParents.unshift(_parent); + _parent = parentParent; + } + } + + var parent = void 0; // if this element is an svg element and the current deepest is an + // HTMLElement + + if (deepestZone instanceof ___domObjects_50["default"].HTMLElement && dropzone instanceof ___domObjects_50["default"].SVGElement && !(dropzone instanceof ___domObjects_50["default"].SVGSVGElement)) { + if (dropzone === deepestZone.parentNode) { + continue; + } + + parent = dropzone.ownerSVGElement; + } else { + parent = dropzone; + } + + var dropzoneParents = []; + + while (parent.parentNode !== parent.ownerDocument) { + dropzoneParents.unshift(parent); + parent = getParent(parent); + } + + n = 0; // get (position of last common ancestor) + 1 + + while (dropzoneParents[n] && dropzoneParents[n] === deepestZoneParents[n]) { + n++; + } + + var parents = [dropzoneParents[n - 1], dropzoneParents[n], deepestZoneParents[n]]; + var child = parents[0].lastChild; + + while (child) { + if (child === parents[1]) { + deepestZone = dropzone; + index = i; + deepestZoneParents = dropzoneParents; + break; + } else if (child === parents[2]) { + break; + } + + child = child.previousSibling; + } + } + + return index; +} + +function matchesUpTo(element, selector, limit) { + while (__is_50.element(element)) { + if (matchesSelector(element, selector)) { + return true; + } + + element = parentNode(element); + + if (element === limit) { + return matchesSelector(element, selector); + } + } + + return false; +} + +function getActualElement(element) { + return element instanceof ___domObjects_50["default"].SVGElementInstance ? element.correspondingUseElement : element; +} + +function getScrollXY(relevantWindow) { + relevantWindow = relevantWindow || ___window_50["default"].window; + return { + x: relevantWindow.scrollX || relevantWindow.document.documentElement.scrollLeft, + y: relevantWindow.scrollY || relevantWindow.document.documentElement.scrollTop + }; +} + +function getElementClientRect(element) { + var clientRect = element instanceof ___domObjects_50["default"].SVGElement ? element.getBoundingClientRect() : element.getClientRects()[0]; + return clientRect && { + left: clientRect.left, + right: clientRect.right, + top: clientRect.top, + bottom: clientRect.bottom, + width: clientRect.width || clientRect.right - clientRect.left, + height: clientRect.height || clientRect.bottom - clientRect.top + }; +} + +function getElementRect(element) { + var clientRect = getElementClientRect(element); + + if (!_browser["default"].isIOS7 && clientRect) { + var scroll = getScrollXY(___window_50["default"].getWindow(element)); + clientRect.left += scroll.x; + clientRect.right += scroll.x; + clientRect.top += scroll.y; + clientRect.bottom += scroll.y; + } + + return clientRect; +} + +function getPath(node) { + var path = []; + + while (node) { + path.push(node); + node = parentNode(node); + } + + return path; +} + +function trySelector(value) { + if (!__is_50.string(value)) { + return false; + } // an exception will be raised if it is invalid + + + ___domObjects_50["default"].document.querySelector(value); + + return true; +} + +var _$hypot_54 = {}; +"use strict"; + +Object.defineProperty(_$hypot_54, "__esModule", { + value: true +}); +_$hypot_54["default"] = void 0; + +var ___default_54 = function _default(x, y) { + return Math.sqrt(x * x + y * y); +}; + +_$hypot_54["default"] = ___default_54; + +var _$pointerExtend_59 = {}; +"use strict"; + +Object.defineProperty(_$pointerExtend_59, "__esModule", { + value: true +}); +_$pointerExtend_59["default"] = void 0; + +function pointerExtend(dest, source) { + for (var prop in source) { + var prefixedPropREs = pointerExtend.prefixedPropREs; + var deprecated = false; // skip deprecated prefixed properties + + for (var vendor in prefixedPropREs) { + if (prop.indexOf(vendor) === 0 && prefixedPropREs[vendor].test(prop)) { + deprecated = true; + break; + } + } + + if (!deprecated && typeof source[prop] !== 'function') { + dest[prop] = source[prop]; + } + } + + return dest; +} + +pointerExtend.prefixedPropREs = { + webkit: /(Movement[XY]|Radius[XY]|RotationAngle|Force)$/, + moz: /(Pressure)$/ +}; +var ___default_59 = pointerExtend; +_$pointerExtend_59["default"] = ___default_59; + +var _$pointerUtils_60 = {}; +"use strict"; + +function ___typeof_60(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_60 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_60 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_60(obj); } + +Object.defineProperty(_$pointerUtils_60, "__esModule", { + value: true +}); +_$pointerUtils_60.copyCoords = copyCoords; +_$pointerUtils_60.setCoordDeltas = setCoordDeltas; +_$pointerUtils_60.setCoordVelocity = setCoordVelocity; +_$pointerUtils_60.setZeroCoords = setZeroCoords; +_$pointerUtils_60.isNativePointer = isNativePointer; +_$pointerUtils_60.getXY = getXY; +_$pointerUtils_60.getPageXY = getPageXY; +_$pointerUtils_60.getClientXY = getClientXY; +_$pointerUtils_60.getPointerId = getPointerId; +_$pointerUtils_60.setCoords = setCoords; +_$pointerUtils_60.getTouchPair = getTouchPair; +_$pointerUtils_60.pointerAverage = pointerAverage; +_$pointerUtils_60.touchBBox = touchBBox; +_$pointerUtils_60.touchDistance = touchDistance; +_$pointerUtils_60.touchAngle = touchAngle; +_$pointerUtils_60.getPointerType = getPointerType; +_$pointerUtils_60.getEventTargets = getEventTargets; +_$pointerUtils_60.newCoords = newCoords; +_$pointerUtils_60.coordsToEvent = coordsToEvent; +Object.defineProperty(_$pointerUtils_60, "pointerExtend", { + enumerable: true, + get: function get() { + return _pointerExtend["default"]; + } +}); + +var ___browser_60 = ___interopRequireDefault_60(_$browser_47); + +var ___domObjects_60 = ___interopRequireDefault_60(_$domObjects_49); + +var domUtils = ___interopRequireWildcard_60(_$domUtils_50); + +var _hypot = ___interopRequireDefault_60(_$hypot_54); + +var __is_60 = ___interopRequireWildcard_60(_$is_56); + +var _pointerExtend = ___interopRequireDefault_60(_$pointerExtend_59); + +function ___getRequireWildcardCache_60() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_60 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_60(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_60(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_60(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_60(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function copyCoords(dest, src) { + dest.page = dest.page || {}; + dest.page.x = src.page.x; + dest.page.y = src.page.y; + dest.client = dest.client || {}; + dest.client.x = src.client.x; + dest.client.y = src.client.y; + dest.timeStamp = src.timeStamp; +} + +function setCoordDeltas(targetObj, prev, cur) { + targetObj.page.x = cur.page.x - prev.page.x; + targetObj.page.y = cur.page.y - prev.page.y; + targetObj.client.x = cur.client.x - prev.client.x; + targetObj.client.y = cur.client.y - prev.client.y; + targetObj.timeStamp = cur.timeStamp - prev.timeStamp; +} + +function setCoordVelocity(targetObj, delta) { + var dt = Math.max(delta.timeStamp / 1000, 0.001); + targetObj.page.x = delta.page.x / dt; + targetObj.page.y = delta.page.y / dt; + targetObj.client.x = delta.client.x / dt; + targetObj.client.y = delta.client.y / dt; + targetObj.timeStamp = dt; +} + +function setZeroCoords(targetObj) { + targetObj.page.x = 0; + targetObj.page.y = 0; + targetObj.client.x = 0; + targetObj.client.y = 0; +} + +function isNativePointer(pointer) { + return pointer instanceof ___domObjects_60["default"].Event || pointer instanceof ___domObjects_60["default"].Touch; +} // Get specified X/Y coords for mouse or event.touches[0] + + +function getXY(type, pointer, xy) { + xy = xy || {}; + type = type || 'page'; + xy.x = pointer[type + 'X']; + xy.y = pointer[type + 'Y']; + return xy; +} + +function getPageXY(pointer, page) { + page = page || { + x: 0, + y: 0 + }; // Opera Mobile handles the viewport and scrolling oddly + + if (___browser_60["default"].isOperaMobile && isNativePointer(pointer)) { + getXY('screen', pointer, page); + page.x += window.scrollX; + page.y += window.scrollY; + } else { + getXY('page', pointer, page); + } + + return page; +} + +function getClientXY(pointer, client) { + client = client || {}; + + if (___browser_60["default"].isOperaMobile && isNativePointer(pointer)) { + // Opera Mobile handles the viewport and scrolling oddly + getXY('screen', pointer, client); + } else { + getXY('client', pointer, client); + } + + return client; +} + +function getPointerId(pointer) { + return __is_60.number(pointer.pointerId) ? pointer.pointerId : pointer.identifier; +} + +function setCoords(targetObj, pointers, timeStamp) { + var pointer = pointers.length > 1 ? pointerAverage(pointers) : pointers[0]; + var tmpXY = {}; + getPageXY(pointer, tmpXY); + targetObj.page.x = tmpXY.x; + targetObj.page.y = tmpXY.y; + getClientXY(pointer, tmpXY); + targetObj.client.x = tmpXY.x; + targetObj.client.y = tmpXY.y; + targetObj.timeStamp = timeStamp; +} + +function getTouchPair(event) { + var touches = []; // array of touches is supplied + + if (__is_60.array(event)) { + touches[0] = event[0]; + touches[1] = event[1]; + } // an event + else { + if (event.type === 'touchend') { + if (event.touches.length === 1) { + touches[0] = event.touches[0]; + touches[1] = event.changedTouches[0]; + } else if (event.touches.length === 0) { + touches[0] = event.changedTouches[0]; + touches[1] = event.changedTouches[1]; + } + } else { + touches[0] = event.touches[0]; + touches[1] = event.touches[1]; + } + } + + return touches; +} + +function pointerAverage(pointers) { + var average = { + pageX: 0, + pageY: 0, + clientX: 0, + clientY: 0, + screenX: 0, + screenY: 0 + }; + + for (var _i = 0; _i < pointers.length; _i++) { + var _ref; + + _ref = pointers[_i]; + var pointer = _ref; + + for (var _prop in average) { + average[_prop] += pointer[_prop]; + } + } + + for (var prop in average) { + average[prop] /= pointers.length; + } + + return average; +} + +function touchBBox(event) { + if (!event.length && !(event.touches && event.touches.length > 1)) { + return null; + } + + var touches = getTouchPair(event); + var minX = Math.min(touches[0].pageX, touches[1].pageX); + var minY = Math.min(touches[0].pageY, touches[1].pageY); + var maxX = Math.max(touches[0].pageX, touches[1].pageX); + var maxY = Math.max(touches[0].pageY, touches[1].pageY); + return { + x: minX, + y: minY, + left: minX, + top: minY, + right: maxX, + bottom: maxY, + width: maxX - minX, + height: maxY - minY + }; +} + +function touchDistance(event, deltaSource) { + var sourceX = deltaSource + 'X'; + var sourceY = deltaSource + 'Y'; + var touches = getTouchPair(event); + var dx = touches[0][sourceX] - touches[1][sourceX]; + var dy = touches[0][sourceY] - touches[1][sourceY]; + return (0, _hypot["default"])(dx, dy); +} + +function touchAngle(event, deltaSource) { + var sourceX = deltaSource + 'X'; + var sourceY = deltaSource + 'Y'; + var touches = getTouchPair(event); + var dx = touches[1][sourceX] - touches[0][sourceX]; + var dy = touches[1][sourceY] - touches[0][sourceY]; + var angle = 180 * Math.atan2(dy, dx) / Math.PI; + return angle; +} + +function getPointerType(pointer) { + return __is_60.string(pointer.pointerType) ? pointer.pointerType : __is_60.number(pointer.pointerType) ? [undefined, undefined, 'touch', 'pen', 'mouse'][pointer.pointerType] // if the PointerEvent API isn't available, then the "pointer" must + // be either a MouseEvent, TouchEvent, or Touch object + : /touch/.test(pointer.type) || pointer instanceof ___domObjects_60["default"].Touch ? 'touch' : 'mouse'; +} // [ event.target, event.currentTarget ] + + +function getEventTargets(event) { + var path = __is_60.func(event.composedPath) ? event.composedPath() : event.path; + return [domUtils.getActualElement(path ? path[0] : event.target), domUtils.getActualElement(event.currentTarget)]; +} + +function newCoords() { + return { + page: { + x: 0, + y: 0 + }, + client: { + x: 0, + y: 0 + }, + timeStamp: 0 + }; +} + +function coordsToEvent(coords) { + var event = { + coords: coords, + + get page() { + return this.coords.page; + }, + + get client() { + return this.coords.client; + }, + + get timeStamp() { + return this.coords.timeStamp; + }, + + get pageX() { + return this.coords.page.x; + }, + + get pageY() { + return this.coords.page.y; + }, + + get clientX() { + return this.coords.client.x; + }, + + get clientY() { + return this.coords.client.y; + }, + + get pointerId() { + return this.coords.pointerId; + }, + + get target() { + return this.coords.target; + }, + + get type() { + return this.coords.type; + }, + + get pointerType() { + return this.coords.pointerType; + }, + + get buttons() { + return this.coords.buttons; + } + + }; + return event; +} + +var _$extend_52 = {}; +"use strict"; + +Object.defineProperty(_$extend_52, "__esModule", { + value: true +}); +_$extend_52["default"] = extend; + +function extend(dest, source) { + for (var prop in source) { + dest[prop] = source[prop]; + } + + var ret = dest; + return ret; +} + +var _$rect_62 = {}; +"use strict"; + +function ___typeof_62(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_62 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_62 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_62(obj); } + +Object.defineProperty(_$rect_62, "__esModule", { + value: true +}); +_$rect_62.getStringOptionResult = getStringOptionResult; +_$rect_62.resolveRectLike = resolveRectLike; +_$rect_62.rectToXY = rectToXY; +_$rect_62.xywhToTlbr = xywhToTlbr; +_$rect_62.tlbrToXywh = tlbrToXywh; + +/* removed: var _$domUtils_50 = require("./domUtils.js"); */; + +var _extend = ___interopRequireDefault_62(_$extend_52); + +var __is_62 = ___interopRequireWildcard_62(_$is_56); + +function ___getRequireWildcardCache_62() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_62 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_62(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_62(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_62(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_62(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } + +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } + +function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } + +function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } + +function getStringOptionResult(value, target, element) { + if (value === 'parent') { + return (0, _$domUtils_50.parentNode)(element); + } + + if (value === 'self') { + return target.getRect(element); + } + + return (0, _$domUtils_50.closest)(element, value); +} + +function resolveRectLike(value, target, element, functionArgs) { + if (__is_62.string(value)) { + value = getStringOptionResult(value, target, element); + } else if (__is_62.func(value)) { + value = value.apply(void 0, _toConsumableArray(functionArgs)); + } + + if (__is_62.element(value)) { + value = (0, _$domUtils_50.getElementRect)(value); + } + + return value; +} + +function rectToXY(rect) { + return rect && { + x: 'x' in rect ? rect.x : rect.left, + y: 'y' in rect ? rect.y : rect.top + }; +} + +function xywhToTlbr(rect) { + if (rect && !('left' in rect && 'top' in rect)) { + rect = (0, _extend["default"])({}, rect); + rect.left = rect.x || 0; + rect.top = rect.y || 0; + rect.right = rect.right || rect.left + rect.width; + rect.bottom = rect.bottom || rect.top + rect.height; + } + + return rect; +} + +function tlbrToXywh(rect) { + if (rect && !('x' in rect && 'y' in rect)) { + rect = (0, _extend["default"])({}, rect); + rect.x = rect.left || 0; + rect.y = rect.top || 0; + rect.width = rect.width || rect.right - rect.x; + rect.height = rect.height || rect.bottom - rect.y; + } + + return rect; +} + +var _$clone_48 = {}; +"use strict"; + +function ___typeof_48(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_48 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_48 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_48(obj); } + +Object.defineProperty(_$clone_48, "__esModule", { + value: true +}); +_$clone_48["default"] = clone; + +var arr = ___interopRequireWildcard_48(_$arr_46); + +var __is_48 = ___interopRequireWildcard_48(_$is_56); + +function ___getRequireWildcardCache_48() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_48 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_48(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_48(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_48(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function clone(source) { + var dest = {}; + + for (var prop in source) { + var value = source[prop]; + + if (__is_48.plainObject(value)) { + dest[prop] = clone(value); + } else if (__is_48.array(value)) { + dest[prop] = arr.from(value); + } else { + dest[prop] = value; + } + } + + return dest; +} + +var _$events_51 = {}; +"use strict"; + +function ___typeof_51(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_51 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_51 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_51(obj); } + +Object.defineProperty(_$events_51, "__esModule", { + value: true +}); +_$events_51["default"] = _$events_51.FakeEvent = void 0; + +/* removed: var _$arr_46 = require("./arr.js"); */; + +var __domUtils_51 = ___interopRequireWildcard_51(_$domUtils_50); + +var __is_51 = ___interopRequireWildcard_51(_$is_56); + +var ___pointerExtend_51 = ___interopRequireDefault_51(_$pointerExtend_59); + +var pointerUtils = ___interopRequireWildcard_51(_$pointerUtils_60); + +function ___interopRequireDefault_51(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_51() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_51 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_51(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_51(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_51(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } + +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } + +function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } + +function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } + +function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +var elements = []; +var targets = []; +var delegatedEvents = {}; +var documents = []; + +function add(element, type, listener, optionalArg) { + var options = getOptions(optionalArg); + var elementIndex = elements.indexOf(element); + var target = targets[elementIndex]; + + if (!target) { + target = { + events: {}, + typeCount: 0 + }; + elementIndex = elements.push(element) - 1; + targets.push(target); + } + + if (!target.events[type]) { + target.events[type] = []; + target.typeCount++; + } + + if (!(0, _$arr_46.contains)(target.events[type], listener)) { + element.addEventListener(type, listener, events.supportsOptions ? options : !!options.capture); + target.events[type].push(listener); + } +} + +function __remove_51(element, type, listener, optionalArg) { + var options = getOptions(optionalArg); + var elementIndex = elements.indexOf(element); + var target = targets[elementIndex]; + + if (!target || !target.events) { + return; + } + + if (type === 'all') { + for (type in target.events) { + if (target.events.hasOwnProperty(type)) { + __remove_51(element, type, 'all'); + } + } + + return; + } + + if (target.events[type]) { + var len = target.events[type].length; + + if (listener === 'all') { + for (var i = 0; i < len; i++) { + __remove_51(element, type, target.events[type][i], options); + } + + return; + } else { + for (var _i = 0; _i < len; _i++) { + if (target.events[type][_i] === listener) { + element.removeEventListener(type, listener, events.supportsOptions ? options : !!options.capture); + target.events[type].splice(_i, 1); + break; + } + } + } + + if (target.events[type] && target.events[type].length === 0) { + target.events[type] = null; + target.typeCount--; + } + } + + if (!target.typeCount) { + targets.splice(elementIndex, 1); + elements.splice(elementIndex, 1); + } +} + +function addDelegate(selector, context, type, listener, optionalArg) { + var options = getOptions(optionalArg); + + if (!delegatedEvents[type]) { + delegatedEvents[type] = { + contexts: [], + listeners: [], + selectors: [] + }; // add delegate listener functions + + for (var _i2 = 0; _i2 < documents.length; _i2++) { + var _ref; + + _ref = documents[_i2]; + var doc = _ref; + add(doc, type, delegateListener); + add(doc, type, delegateUseCapture, true); + } + } + + var delegated = delegatedEvents[type]; + var index; + + for (index = delegated.selectors.length - 1; index >= 0; index--) { + if (delegated.selectors[index] === selector && delegated.contexts[index] === context) { + break; + } + } + + if (index === -1) { + index = delegated.selectors.length; + delegated.selectors.push(selector); + delegated.contexts.push(context); + delegated.listeners.push([]); + } // keep listener and capture and passive flags + + + delegated.listeners[index].push([listener, !!options.capture, options.passive]); +} + +function removeDelegate(selector, context, type, listener, optionalArg) { + var options = getOptions(optionalArg); + var delegated = delegatedEvents[type]; + var matchFound = false; + var index; + + if (!delegated) { + return; + } // count from last index of delegated to 0 + + + for (index = delegated.selectors.length - 1; index >= 0; index--) { + // look for matching selector and context Node + if (delegated.selectors[index] === selector && delegated.contexts[index] === context) { + var listeners = delegated.listeners[index]; // each item of the listeners array is an array: [function, capture, passive] + + for (var i = listeners.length - 1; i >= 0; i--) { + var _listeners$i = _slicedToArray(listeners[i], 3), + fn = _listeners$i[0], + capture = _listeners$i[1], + passive = _listeners$i[2]; // check if the listener functions and capture and passive flags match + + + if (fn === listener && capture === !!options.capture && passive === options.passive) { + // remove the listener from the array of listeners + listeners.splice(i, 1); // if all listeners for this interactable have been removed + // remove the interactable from the delegated arrays + + if (!listeners.length) { + delegated.selectors.splice(index, 1); + delegated.contexts.splice(index, 1); + delegated.listeners.splice(index, 1); // remove delegate function from context + + __remove_51(context, type, delegateListener); + __remove_51(context, type, delegateUseCapture, true); // remove the arrays if they are empty + + if (!delegated.selectors.length) { + delegatedEvents[type] = null; + } + } // only remove one listener + + + matchFound = true; + break; + } + } + + if (matchFound) { + break; + } + } + } +} // bound to the interactable context when a DOM event +// listener is added to a selector interactable + + +function delegateListener(event, optionalArg) { + var options = getOptions(optionalArg); + var fakeEvent = new FakeEvent(event); + var delegated = delegatedEvents[event.type]; + + var _pointerUtils$getEven = pointerUtils.getEventTargets(event), + _pointerUtils$getEven2 = _slicedToArray(_pointerUtils$getEven, 1), + eventTarget = _pointerUtils$getEven2[0]; + + var element = eventTarget; // climb up document tree looking for selector matches + + while (__is_51.element(element)) { + for (var i = 0; i < delegated.selectors.length; i++) { + var selector = delegated.selectors[i]; + var context = delegated.contexts[i]; + + if (__domUtils_51.matchesSelector(element, selector) && __domUtils_51.nodeContains(context, eventTarget) && __domUtils_51.nodeContains(context, element)) { + var listeners = delegated.listeners[i]; + fakeEvent.currentTarget = element; + + for (var _i3 = 0; _i3 < listeners.length; _i3++) { + var _ref2; + + _ref2 = listeners[_i3]; + + var _ref3 = _ref2, + _ref4 = _slicedToArray(_ref3, 3), + fn = _ref4[0], + capture = _ref4[1], + passive = _ref4[2]; + + if (capture === !!options.capture && passive === options.passive) { + fn(fakeEvent); + } + } + } + } + + element = __domUtils_51.parentNode(element); + } +} + +function delegateUseCapture(event) { + return delegateListener.call(this, event, true); +} + +function getOptions(param) { + return __is_51.object(param) ? param : { + capture: param + }; +} + +var FakeEvent = +/*#__PURE__*/ +function () { + function FakeEvent(originalEvent) { + _classCallCheck(this, FakeEvent); + + this.originalEvent = originalEvent; + + _defineProperty(this, "currentTarget", void 0); // duplicate the event so that currentTarget can be changed + + + (0, ___pointerExtend_51["default"])(this, originalEvent); + } + + _createClass(FakeEvent, [{ + key: "preventOriginalDefault", + value: function preventOriginalDefault() { + this.originalEvent.preventDefault(); + } + }, { + key: "stopPropagation", + value: function stopPropagation() { + this.originalEvent.stopPropagation(); + } + }, { + key: "stopImmediatePropagation", + value: function stopImmediatePropagation() { + this.originalEvent.stopImmediatePropagation(); + } + }]); + + return FakeEvent; +}(); + +_$events_51.FakeEvent = FakeEvent; +var events = { + add: add, + remove: __remove_51, + addDelegate: addDelegate, + removeDelegate: removeDelegate, + delegateListener: delegateListener, + delegateUseCapture: delegateUseCapture, + delegatedEvents: delegatedEvents, + documents: documents, + supportsOptions: false, + supportsPassive: false, + _elements: elements, + _targets: targets, + init: function init(window) { + window.document.createElement('div').addEventListener('test', null, { + get capture() { + return events.supportsOptions = true; + }, + + get passive() { + return events.supportsPassive = true; + } + + }); + } +}; +var ___default_51 = events; +_$events_51["default"] = ___default_51; + +var _$getOriginXY_53 = {}; +"use strict"; + +Object.defineProperty(_$getOriginXY_53, "__esModule", { + value: true +}); +_$getOriginXY_53["default"] = ___default_53; + +/* removed: var _$rect_62 = require("./rect.js"); */; + +function ___default_53(target, element, action) { + var actionOptions = target.options[action]; + var actionOrigin = actionOptions && actionOptions.origin; + var origin = actionOrigin || target.options.origin; + var originRect = (0, _$rect_62.resolveRectLike)(origin, target, element, [target && element]); + return (0, _$rect_62.rectToXY)(originRect) || { + x: 0, + y: 0 + }; +} + +var _$normalizeListeners_58 = {}; +"use strict"; + +function ___typeof_58(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_58 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_58 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_58(obj); } + +Object.defineProperty(_$normalizeListeners_58, "__esModule", { + value: true +}); +_$normalizeListeners_58["default"] = normalize; + +var ___extend_58 = ___interopRequireDefault_58(_$extend_52); + +var __is_58 = ___interopRequireWildcard_58(_$is_56); + +function ___getRequireWildcardCache_58() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_58 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_58(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_58(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_58(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_58(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function normalize(type, listeners, result) { + result = result || {}; + + if (__is_58.string(type) && type.search(' ') !== -1) { + type = split(type); + } + + if (__is_58.array(type)) { + return type.reduce(function (acc, t) { + return (0, ___extend_58["default"])(acc, normalize(t, listeners, result)); + }, result); + } // ({ type: fn }) -> ('', { type: fn }) + + + if (__is_58.object(type)) { + listeners = type; + type = ''; + } + + if (__is_58.func(listeners)) { + result[type] = result[type] || []; + result[type].push(listeners); + } else if (__is_58.array(listeners)) { + for (var _i = 0; _i < listeners.length; _i++) { + var _ref; + + _ref = listeners[_i]; + var l = _ref; + normalize(type, l, result); + } + } else if (__is_58.object(listeners)) { + for (var prefix in listeners) { + var combinedTypes = split(prefix).map(function (p) { + return "".concat(type).concat(p); + }); + normalize(combinedTypes, listeners[prefix], result); + } + } + + return result; +} + +function split(type) { + return type.trim().split(/ +/); +} + +var _$raf_61 = {}; +"use strict"; + +Object.defineProperty(_$raf_61, "__esModule", { + value: true +}); +_$raf_61["default"] = void 0; +var lastTime = 0; + +var _request; + +var _cancel; + +function __init_61(window) { + _request = window.requestAnimationFrame; + _cancel = window.cancelAnimationFrame; + + if (!_request) { + var vendors = ['ms', 'moz', 'webkit', 'o']; + + for (var _i = 0; _i < vendors.length; _i++) { + var vendor = vendors[_i]; + _request = window["".concat(vendor, "RequestAnimationFrame")]; + _cancel = window["".concat(vendor, "CancelAnimationFrame")] || window["".concat(vendor, "CancelRequestAnimationFrame")]; + } + } + + if (!_request) { + _request = function request(callback) { + var currTime = Date.now(); + var timeToCall = Math.max(0, 16 - (currTime - lastTime)); // eslint-disable-next-line standard/no-callback-literal + + var token = setTimeout(function () { + callback(currTime + timeToCall); + }, timeToCall); + lastTime = currTime + timeToCall; + return token; + }; + + _cancel = function cancel(token) { + return clearTimeout(token); + }; + } +} + +var ___default_61 = { + request: function request(callback) { + return _request(callback); + }, + cancel: function cancel(token) { + return _cancel(token); + }, + init: __init_61 +}; +_$raf_61["default"] = ___default_61; + +var _$utils_55 = {}; +"use strict"; + +function ___typeof_55(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_55 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_55 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_55(obj); } + +Object.defineProperty(_$utils_55, "__esModule", { + value: true +}); +_$utils_55.warnOnce = warnOnce; +_$utils_55._getQBezierValue = _getQBezierValue; +_$utils_55.getQuadraticCurvePoint = getQuadraticCurvePoint; +_$utils_55.easeOutQuad = easeOutQuad; +_$utils_55.copyAction = copyAction; +Object.defineProperty(_$utils_55, "win", { + enumerable: true, + get: function get() { + return ___window_55["default"]; + } +}); +Object.defineProperty(_$utils_55, "browser", { + enumerable: true, + get: function get() { + return ___browser_55["default"]; + } +}); +Object.defineProperty(_$utils_55, "clone", { + enumerable: true, + get: function get() { + return _clone["default"]; + } +}); +Object.defineProperty(_$utils_55, "events", { + enumerable: true, + get: function get() { + return _events["default"]; + } +}); +Object.defineProperty(_$utils_55, "extend", { + enumerable: true, + get: function get() { + return ___extend_55["default"]; + } +}); +Object.defineProperty(_$utils_55, "getOriginXY", { + enumerable: true, + get: function get() { + return _getOriginXY["default"]; + } +}); +Object.defineProperty(_$utils_55, "hypot", { + enumerable: true, + get: function get() { + return ___hypot_55["default"]; + } +}); +Object.defineProperty(_$utils_55, "normalizeListeners", { + enumerable: true, + get: function get() { + return _normalizeListeners["default"]; + } +}); +Object.defineProperty(_$utils_55, "raf", { + enumerable: true, + get: function get() { + return _raf["default"]; + } +}); +_$utils_55.rect = _$utils_55.pointer = _$utils_55.is = _$utils_55.dom = _$utils_55.arr = void 0; + +var __arr_55 = ___interopRequireWildcard_55(_$arr_46); + +_$utils_55.arr = __arr_55; + +var dom = ___interopRequireWildcard_55(_$domUtils_50); + +_$utils_55.dom = dom; + +var __is_55 = ___interopRequireWildcard_55(_$is_56); + +_$utils_55.is = __is_55; + +var pointer = ___interopRequireWildcard_55(_$pointerUtils_60); + +_$utils_55.pointer = pointer; + +var rect = ___interopRequireWildcard_55(_$rect_62); + +_$utils_55.rect = rect; + +var ___window_55 = ___interopRequireDefault_55(_$window_65); + +var ___browser_55 = ___interopRequireDefault_55(_$browser_47); + +var _clone = ___interopRequireDefault_55(_$clone_48); + +var _events = ___interopRequireDefault_55(_$events_51); + +var ___extend_55 = ___interopRequireDefault_55(_$extend_52); + +var _getOriginXY = ___interopRequireDefault_55(_$getOriginXY_53); + +var ___hypot_55 = ___interopRequireDefault_55(_$hypot_54); + +var _normalizeListeners = ___interopRequireDefault_55(_$normalizeListeners_58); + +var _raf = ___interopRequireDefault_55(_$raf_61); + +function ___interopRequireDefault_55(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_55() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_55 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_55(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_55(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_55(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function warnOnce(method, message) { + var warned = false; // eslint-disable-next-line no-shadow + + return function () { + if (!warned) { + ___window_55["default"].window.console.warn(message); + + warned = true; + } + + return method.apply(this, arguments); + }; +} // http://stackoverflow.com/a/5634528/2280888 + + +function _getQBezierValue(t, p1, p2, p3) { + var iT = 1 - t; + return iT * iT * p1 + 2 * iT * t * p2 + t * t * p3; +} + +function getQuadraticCurvePoint(startX, startY, cpX, cpY, endX, endY, position) { + return { + x: _getQBezierValue(position, startX, cpX, endX), + y: _getQBezierValue(position, startY, cpY, endY) + }; +} // http://gizma.com/easing/ + + +function easeOutQuad(t, b, c, d) { + t /= d; + return -c * t * (t - 2) + b; +} + +function copyAction(dest, src) { + dest.name = src.name; + dest.axis = src.axis; + dest.edges = src.edges; + return dest; +} + +var _$defaultOptions_20 = {}; +"use strict"; + +Object.defineProperty(_$defaultOptions_20, "__esModule", { + value: true +}); +_$defaultOptions_20["default"] = _$defaultOptions_20.defaults = void 0; +// tslint:disable no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-interface +// export interface Options extends BaseDefaults, PerActionDefaults {} +var defaults = { + base: { + preventDefault: 'auto', + deltaSource: 'page' + }, + perAction: { + enabled: false, + origin: { + x: 0, + y: 0 + } + }, + actions: {} +}; +_$defaultOptions_20.defaults = defaults; +var ___default_20 = defaults; +_$defaultOptions_20["default"] = ___default_20; + +var _$Eventable_14 = {}; +"use strict"; + +function ___typeof_14(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_14 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_14 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_14(obj); } + +Object.defineProperty(_$Eventable_14, "__esModule", { + value: true +}); +_$Eventable_14["default"] = void 0; + +var __arr_14 = ___interopRequireWildcard_14(_$arr_46); + +var ___extend_14 = ___interopRequireDefault_14(_$extend_52); + +var ___normalizeListeners_14 = ___interopRequireDefault_14(_$normalizeListeners_58); + +function ___interopRequireDefault_14(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_14() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_14 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_14(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_14(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_14(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___classCallCheck_14(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function ___defineProperties_14(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function ___createClass_14(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_14(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_14(Constructor, staticProps); return Constructor; } + +function ___defineProperty_14(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +function fireUntilImmediateStopped(event, listeners) { + for (var _i = 0; _i < listeners.length; _i++) { + var _ref; + + _ref = listeners[_i]; + var listener = _ref; + + if (event.immediatePropagationStopped) { + break; + } + + listener(event); + } +} + +var Eventable = +/*#__PURE__*/ +function () { + function Eventable(options) { + ___classCallCheck_14(this, Eventable); + + ___defineProperty_14(this, "options", void 0); + + ___defineProperty_14(this, "types", {}); + + ___defineProperty_14(this, "propagationStopped", false); + + ___defineProperty_14(this, "immediatePropagationStopped", false); + + ___defineProperty_14(this, "global", void 0); + + this.options = (0, ___extend_14["default"])({}, options || {}); + } + + ___createClass_14(Eventable, [{ + key: "fire", + value: function fire(event) { + var listeners; + var global = this.global; // Interactable#on() listeners + // tslint:disable no-conditional-assignment + + if (listeners = this.types[event.type]) { + fireUntilImmediateStopped(event, listeners); + } // interact.on() listeners + + + if (!event.propagationStopped && global && (listeners = global[event.type])) { + fireUntilImmediateStopped(event, listeners); + } + } + }, { + key: "on", + value: function on(type, listener) { + var listeners = (0, ___normalizeListeners_14["default"])(type, listener); + + for (type in listeners) { + this.types[type] = __arr_14.merge(this.types[type] || [], listeners[type]); + } + } + }, { + key: "off", + value: function off(type, listener) { + var listeners = (0, ___normalizeListeners_14["default"])(type, listener); + + for (type in listeners) { + var eventList = this.types[type]; + + if (!eventList || !eventList.length) { + continue; + } + + for (var _i2 = 0; _i2 < listeners[type].length; _i2++) { + var _ref2; + + _ref2 = listeners[type][_i2]; + var subListener = _ref2; + var index = eventList.indexOf(subListener); + + if (index !== -1) { + eventList.splice(index, 1); + } + } + } + } + }, { + key: "getRect", + value: function getRect(_element) { + return null; + } + }]); + + return Eventable; +}(); + +var ___default_14 = Eventable; +_$Eventable_14["default"] = ___default_14; + +var _$Interactable_16 = {}; +"use strict"; + +function ___typeof_16(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_16 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_16 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_16(obj); } + +Object.defineProperty(_$Interactable_16, "__esModule", { + value: true +}); +_$Interactable_16["default"] = _$Interactable_16.Interactable = void 0; + +var __arr_16 = ___interopRequireWildcard_16(_$arr_46); + +var ___browser_16 = ___interopRequireDefault_16(_$browser_47); + +var ___clone_16 = ___interopRequireDefault_16(_$clone_48); + +/* removed: var _$domUtils_50 = require("../utils/domUtils.js"); */; + +var ___events_16 = ___interopRequireDefault_16(_$events_51); + +var ___extend_16 = ___interopRequireDefault_16(_$extend_52); + +var __is_16 = ___interopRequireWildcard_16(_$is_56); + +var ___normalizeListeners_16 = ___interopRequireDefault_16(_$normalizeListeners_58); + +/* removed: var _$window_65 = require("../utils/window.js"); */; + +var _Eventable = ___interopRequireDefault_16(_$Eventable_14); + +function ___interopRequireDefault_16(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_16() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_16 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_16(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_16(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_16(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___classCallCheck_16(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function ___defineProperties_16(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function ___createClass_16(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_16(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_16(Constructor, staticProps); return Constructor; } + +function ___defineProperty_16(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +/** */ +var Interactable = +/*#__PURE__*/ +function () { + ___createClass_16(Interactable, [{ + key: "_defaults", + get: function get() { + return { + base: {}, + perAction: {}, + actions: {} + }; + } + /** */ + + }]); + + function Interactable(target, options, defaultContext) { + ___classCallCheck_16(this, Interactable); + + ___defineProperty_16(this, "options", void 0); + + ___defineProperty_16(this, "_actions", void 0); + + ___defineProperty_16(this, "target", void 0); + + ___defineProperty_16(this, "events", new _Eventable["default"]()); + + ___defineProperty_16(this, "_context", void 0); + + ___defineProperty_16(this, "_win", void 0); + + ___defineProperty_16(this, "_doc", void 0); + + this._actions = options.actions; + this.target = target; + this._context = options.context || defaultContext; + this._win = (0, _$window_65.getWindow)((0, _$domUtils_50.trySelector)(target) ? this._context : target); + this._doc = this._win.document; + this.set(options); + } + + ___createClass_16(Interactable, [{ + key: "setOnEvents", + value: function setOnEvents(actionName, phases) { + if (__is_16.func(phases.onstart)) { + this.on("".concat(actionName, "start"), phases.onstart); + } + + if (__is_16.func(phases.onmove)) { + this.on("".concat(actionName, "move"), phases.onmove); + } + + if (__is_16.func(phases.onend)) { + this.on("".concat(actionName, "end"), phases.onend); + } + + if (__is_16.func(phases.oninertiastart)) { + this.on("".concat(actionName, "inertiastart"), phases.oninertiastart); + } + + return this; + } + }, { + key: "updatePerActionListeners", + value: function updatePerActionListeners(actionName, prev, cur) { + if (__is_16.array(prev) || __is_16.object(prev)) { + this.off(actionName, prev); + } + + if (__is_16.array(cur) || __is_16.object(cur)) { + this.on(actionName, cur); + } + } + }, { + key: "setPerAction", + value: function setPerAction(actionName, options) { + var defaults = this._defaults; // for all the default per-action options + + for (var optionName in options) { + var actionOptions = this.options[actionName]; + var optionValue = options[optionName]; + var isArray = __is_16.array(optionValue); // remove old event listeners and add new ones + + if (optionName === 'listeners') { + this.updatePerActionListeners(actionName, actionOptions.listeners, optionValue); + } // if the option value is an array + + + if (isArray) { + actionOptions[optionName] = __arr_16.from(optionValue); + } // if the option value is an object + else if (!isArray && __is_16.plainObject(optionValue)) { + // copy the object + actionOptions[optionName] = (0, ___extend_16["default"])(actionOptions[optionName] || {}, (0, ___clone_16["default"])(optionValue)); // set anabled field to true if it exists in the defaults + + if (__is_16.object(defaults.perAction[optionName]) && 'enabled' in defaults.perAction[optionName]) { + actionOptions[optionName].enabled = optionValue.enabled !== false; + } + } // if the option value is a boolean and the default is an object + else if (__is_16.bool(optionValue) && __is_16.object(defaults.perAction[optionName])) { + actionOptions[optionName].enabled = optionValue; + } // if it's anything else, do a plain assignment + else { + actionOptions[optionName] = optionValue; + } + } + } + /** + * The default function to get an Interactables bounding rect. Can be + * overridden using {@link Interactable.rectChecker}. + * + * @param {Element} [element] The element to measure. + * @return {object} The object's bounding rectangle. + */ + + }, { + key: "getRect", + value: function getRect(element) { + element = element || (__is_16.element(this.target) ? this.target : null); + + if (__is_16.string(this.target)) { + element = element || this._context.querySelector(this.target); + } + + return (0, _$domUtils_50.getElementRect)(element); + } + /** + * Returns or sets the function used to calculate the interactable's + * element's rectangle + * + * @param {function} [checker] A function which returns this Interactable's + * bounding rectangle. See {@link Interactable.getRect} + * @return {function | object} The checker function or this Interactable + */ + + }, { + key: "rectChecker", + value: function rectChecker(checker) { + if (__is_16.func(checker)) { + this.getRect = checker; + return this; + } + + if (checker === null) { + delete this.getRect; + return this; + } + + return this.getRect; + } + }, { + key: "_backCompatOption", + value: function _backCompatOption(optionName, newValue) { + if ((0, _$domUtils_50.trySelector)(newValue) || __is_16.object(newValue)) { + this.options[optionName] = newValue; + + for (var _i = 0; _i < this._actions.names.length; _i++) { + var _ref; + + _ref = this._actions.names[_i]; + var action = _ref; + this.options[action][optionName] = newValue; + } + + return this; + } + + return this.options[optionName]; + } + /** + * Gets or sets the origin of the Interactable's element. The x and y + * of the origin will be subtracted from action event coordinates. + * + * @param {Element | object | string} [origin] An HTML or SVG Element whose + * rect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self' + * or any CSS selector + * + * @return {object} The current origin or this Interactable + */ + + }, { + key: "origin", + value: function origin(newValue) { + return this._backCompatOption('origin', newValue); + } + /** + * Returns or sets the mouse coordinate types used to calculate the + * movement of the pointer. + * + * @param {string} [newValue] Use 'client' if you will be scrolling while + * interacting; Use 'page' if you want autoScroll to work + * @return {string | object} The current deltaSource or this Interactable + */ + + }, { + key: "deltaSource", + value: function deltaSource(newValue) { + if (newValue === 'page' || newValue === 'client') { + this.options.deltaSource = newValue; + return this; + } + + return this.options.deltaSource; + } + /** + * Gets the selector context Node of the Interactable. The default is + * `window.document`. + * + * @return {Node} The context Node of this Interactable + */ + + }, { + key: "context", + value: function context() { + return this._context; + } + }, { + key: "inContext", + value: function inContext(element) { + return this._context === element.ownerDocument || (0, _$domUtils_50.nodeContains)(this._context, element); + } + }, { + key: "testIgnoreAllow", + value: function testIgnoreAllow(options, targetNode, eventTarget) { + return !this.testIgnore(options.ignoreFrom, targetNode, eventTarget) && this.testAllow(options.allowFrom, targetNode, eventTarget); + } + }, { + key: "testAllow", + value: function testAllow(allowFrom, targetNode, element) { + if (!allowFrom) { + return true; + } + + if (!__is_16.element(element)) { + return false; + } + + if (__is_16.string(allowFrom)) { + return (0, _$domUtils_50.matchesUpTo)(element, allowFrom, targetNode); + } else if (__is_16.element(allowFrom)) { + return (0, _$domUtils_50.nodeContains)(allowFrom, element); + } + + return false; + } + }, { + key: "testIgnore", + value: function testIgnore(ignoreFrom, targetNode, element) { + if (!ignoreFrom || !__is_16.element(element)) { + return false; + } + + if (__is_16.string(ignoreFrom)) { + return (0, _$domUtils_50.matchesUpTo)(element, ignoreFrom, targetNode); + } else if (__is_16.element(ignoreFrom)) { + return (0, _$domUtils_50.nodeContains)(ignoreFrom, element); + } + + return false; + } + /** + * Calls listeners for the given InteractEvent type bound globally + * and directly to this Interactable + * + * @param {InteractEvent} iEvent The InteractEvent object to be fired on this + * Interactable + * @return {Interactable} this Interactable + */ + + }, { + key: "fire", + value: function fire(iEvent) { + this.events.fire(iEvent); + return this; + } + }, { + key: "_onOff", + value: function _onOff(method, typeArg, listenerArg, options) { + if (__is_16.object(typeArg) && !__is_16.array(typeArg)) { + options = listenerArg; + listenerArg = null; + } + + var addRemove = method === 'on' ? 'add' : 'remove'; + var listeners = (0, ___normalizeListeners_16["default"])(typeArg, listenerArg); + + for (var type in listeners) { + if (type === 'wheel') { + type = ___browser_16["default"].wheelEvent; + } + + for (var _i2 = 0; _i2 < listeners[type].length; _i2++) { + var _ref2; + + _ref2 = listeners[type][_i2]; + var listener = _ref2; + + // if it is an action event type + if (__arr_16.contains(this._actions.eventTypes, type)) { + this.events[method](type, listener); + } // delegated event + else if (__is_16.string(this.target)) { + ___events_16["default"]["".concat(addRemove, "Delegate")](this.target, this._context, type, listener, options); + } // remove listener from this Interactable's element + else { + ___events_16["default"][addRemove](this.target, type, listener, options); + } + } + } + + return this; + } + /** + * Binds a listener for an InteractEvent, pointerEvent or DOM event. + * + * @param {string | array | object} types The types of events to listen + * for + * @param {function | array | object} [listener] The event listener function(s) + * @param {object | boolean} [options] options object or useCapture flag for + * addEventListener + * @return {Interactable} This Interactable + */ + + }, { + key: "on", + value: function on(types, listener, options) { + return this._onOff('on', types, listener, options); + } + /** + * Removes an InteractEvent, pointerEvent or DOM event listener. + * + * @param {string | array | object} types The types of events that were + * listened for + * @param {function | array | object} [listener] The event listener function(s) + * @param {object | boolean} [options] options object or useCapture flag for + * removeEventListener + * @return {Interactable} This Interactable + */ + + }, { + key: "off", + value: function off(types, listener, options) { + return this._onOff('off', types, listener, options); + } + /** + * Reset the options of this Interactable + * + * @param {object} options The new settings to apply + * @return {object} This Interactable + */ + + }, { + key: "set", + value: function set(options) { + var defaults = this._defaults; + + if (!__is_16.object(options)) { + options = {}; + } + + this.options = (0, ___clone_16["default"])(defaults.base); + + for (var actionName in this._actions.methodDict) { + var methodName = this._actions.methodDict[actionName]; + this.options[actionName] = {}; + this.setPerAction(actionName, (0, ___extend_16["default"])((0, ___extend_16["default"])({}, defaults.perAction), defaults.actions[actionName])); + this[methodName](options[actionName]); + } + + for (var setting in options) { + if (__is_16.func(this[setting])) { + this[setting](options[setting]); + } + } + + return this; + } + /** + * Remove this interactable from the list of interactables and remove it's + * action capabilities and event listeners + * + * @return {interact} + */ + + }, { + key: "unset", + value: function unset() { + ___events_16["default"].remove(this.target, 'all'); + + if (__is_16.string(this.target)) { + // remove delegated events + for (var type in ___events_16["default"].delegatedEvents) { + var delegated = ___events_16["default"].delegatedEvents[type]; + + if (delegated.selectors[0] === this.target && delegated.contexts[0] === this._context) { + delegated.selectors.splice(0, 1); + delegated.contexts.splice(0, 1); + delegated.listeners.splice(0, 1); // remove the arrays if they are empty + + if (!delegated.selectors.length) { + delegated[type] = null; + } + } + + ___events_16["default"].remove(this._context, type, ___events_16["default"].delegateListener); + + ___events_16["default"].remove(this._context, type, ___events_16["default"].delegateUseCapture, true); + } + } else { + ___events_16["default"].remove(this.target, 'all'); + } + } + }]); + + return Interactable; +}(); + +_$Interactable_16.Interactable = Interactable; +var ___default_16 = Interactable; +_$Interactable_16["default"] = ___default_16; + +var _$InteractableSet_17 = {}; +"use strict"; + +function ___typeof_17(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_17 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_17 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_17(obj); } + +Object.defineProperty(_$InteractableSet_17, "__esModule", { + value: true +}); +_$InteractableSet_17["default"] = void 0; + +var __arr_17 = ___interopRequireWildcard_17(_$arr_46); + +var __domUtils_17 = ___interopRequireWildcard_17(_$domUtils_50); + +var ___extend_17 = ___interopRequireDefault_17(_$extend_52); + +var __is_17 = ___interopRequireWildcard_17(_$is_56); + +function ___interopRequireDefault_17(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_17() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_17 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_17(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_17(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_17(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___classCallCheck_17(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function ___defineProperties_17(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function ___createClass_17(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_17(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_17(Constructor, staticProps); return Constructor; } + +function ___defineProperty_17(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +var InteractableSet = +/*#__PURE__*/ +function () { + // all set interactables + function InteractableSet(scope) { + var _this = this; + + ___classCallCheck_17(this, InteractableSet); + + this.scope = scope; + + ___defineProperty_17(this, "list", []); + + ___defineProperty_17(this, "selectorMap", {}); + + scope.addListeners({ + 'interactable:unset': function interactableUnset(_ref) { + var interactable = _ref.interactable; + var target = interactable.target, + context = interactable._context; + var targetMappings = __is_17.string(target) ? _this.selectorMap[target] : target[_this.scope.id]; + var targetIndex = targetMappings.findIndex(function (m) { + return m.context === context; + }); + + if (targetMappings[targetIndex]) { + // Destroying mappingInfo's context and interactable + targetMappings[targetIndex].context = null; + targetMappings[targetIndex].interactable = null; + } + + targetMappings.splice(targetIndex, 1); + } + }); + } + + ___createClass_17(InteractableSet, [{ + key: "new", + value: function _new(target, options) { + options = (0, ___extend_17["default"])(options || {}, { + actions: this.scope.actions + }); + var interactable = new this.scope.Interactable(target, options, this.scope.document); + var mappingInfo = { + context: interactable._context, + interactable: interactable + }; + this.scope.addDocument(interactable._doc); + this.list.push(interactable); + + if (__is_17.string(target)) { + if (!this.selectorMap[target]) { + this.selectorMap[target] = []; + } + + this.selectorMap[target].push(mappingInfo); + } else { + if (!interactable.target[this.scope.id]) { + Object.defineProperty(target, this.scope.id, { + value: [], + configurable: true + }); + } + + target[this.scope.id].push(mappingInfo); + } + + this.scope.fire('interactable:new', { + target: target, + options: options, + interactable: interactable, + win: this.scope._win + }); + return interactable; + } + }, { + key: "get", + value: function get(target, options) { + var context = options && options.context || this.scope.document; + var isSelector = __is_17.string(target); + var targetMappings = isSelector ? this.selectorMap[target] : target[this.scope.id]; + + if (!targetMappings) { + return null; + } + + var found = __arr_17.find(targetMappings, function (m) { + return m.context === context && (isSelector || m.interactable.inContext(target)); + }); + return found && found.interactable; + } + }, { + key: "forEachMatch", + value: function forEachMatch(node, callback) { + for (var _i = 0; _i < this.list.length; _i++) { + var _ref2; + + _ref2 = this.list[_i]; + var interactable = _ref2; + var ret = void 0; + + if ((__is_17.string(interactable.target) // target is a selector and the element matches + ? __is_17.element(node) && __domUtils_17.matchesSelector(node, interactable.target) : // target is the element + node === interactable.target) && // the element is in context + interactable.inContext(node)) { + ret = callback(interactable); + } + + if (ret !== undefined) { + return ret; + } + } + } + }]); + + return InteractableSet; +}(); + +_$InteractableSet_17["default"] = InteractableSet; + +var _$BaseEvent_13 = {}; +"use strict"; + +Object.defineProperty(_$BaseEvent_13, "__esModule", { + value: true +}); +_$BaseEvent_13["default"] = _$BaseEvent_13.BaseEvent = _$BaseEvent_13.EventPhase = void 0; + +function ___classCallCheck_13(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function ___defineProperties_13(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function ___createClass_13(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_13(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_13(Constructor, staticProps); return Constructor; } + +function ___defineProperty_13(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +var EventPhase; +_$BaseEvent_13.EventPhase = EventPhase; + +(function (EventPhase) { + EventPhase["Start"] = "start"; + EventPhase["Move"] = "move"; + EventPhase["End"] = "end"; + EventPhase["_NONE"] = ""; +})(EventPhase || (_$BaseEvent_13.EventPhase = EventPhase = {})); + +var BaseEvent = +/*#__PURE__*/ +function () { + ___createClass_13(BaseEvent, [{ + key: "interaction", + get: function get() { + return this._interaction._proxy; + } + }]); + + function BaseEvent(interaction) { + ___classCallCheck_13(this, BaseEvent); + + ___defineProperty_13(this, "type", void 0); + + ___defineProperty_13(this, "target", void 0); + + ___defineProperty_13(this, "currentTarget", void 0); + + ___defineProperty_13(this, "interactable", void 0); + + ___defineProperty_13(this, "_interaction", void 0); + + ___defineProperty_13(this, "timeStamp", void 0); + + ___defineProperty_13(this, "immediatePropagationStopped", false); + + ___defineProperty_13(this, "propagationStopped", false); + + this._interaction = interaction; + } + + ___createClass_13(BaseEvent, [{ + key: "preventDefault", + value: function preventDefault() {} + /** + * Don't call any other listeners (even on the current target) + */ + + }, { + key: "stopPropagation", + value: function stopPropagation() { + this.propagationStopped = true; + } + /** + * Don't call listeners on the remaining targets + */ + + }, { + key: "stopImmediatePropagation", + value: function stopImmediatePropagation() { + this.immediatePropagationStopped = this.propagationStopped = true; + } + }]); + + return BaseEvent; +}(); + +_$BaseEvent_13.BaseEvent = BaseEvent; +var ___default_13 = BaseEvent; +_$BaseEvent_13["default"] = ___default_13; + +var _$InteractEvent_15 = {}; +"use strict"; + +Object.defineProperty(_$InteractEvent_15, "__esModule", { + value: true +}); +_$InteractEvent_15["default"] = _$InteractEvent_15.InteractEvent = _$InteractEvent_15.EventPhase = void 0; + +var ___extend_15 = ___interopRequireDefault_15(_$extend_52); + +var ___getOriginXY_15 = ___interopRequireDefault_15(_$getOriginXY_53); + +var ___hypot_15 = ___interopRequireDefault_15(_$hypot_54); + +var _BaseEvent2 = ___interopRequireDefault_15(_$BaseEvent_13); + +var _defaultOptions = ___interopRequireDefault_15(_$defaultOptions_20); + +function ___interopRequireDefault_15(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___typeof_15(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_15 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_15 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_15(obj); } + +function ___classCallCheck_15(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function ___defineProperties_15(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function ___createClass_15(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_15(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_15(Constructor, staticProps); return Constructor; } + +function _possibleConstructorReturn(self, call) { if (call && (___typeof_15(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +function ___defineProperty_15(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +var __EventPhase_15; +_$InteractEvent_15.EventPhase = __EventPhase_15; + +(function (EventPhase) { + EventPhase["Start"] = "start"; + EventPhase["Move"] = "move"; + EventPhase["End"] = "end"; + EventPhase["_NONE"] = ""; +})(__EventPhase_15 || (_$InteractEvent_15.EventPhase = __EventPhase_15 = {})); + +var InteractEvent = +/*#__PURE__*/ +function (_BaseEvent) { + _inherits(InteractEvent, _BaseEvent); + + // drag + // resize + + /** */ + function InteractEvent(interaction, event, actionName, phase, element, related, preEnd, type) { + var _this; + + ___classCallCheck_15(this, InteractEvent); + + _this = _possibleConstructorReturn(this, _getPrototypeOf(InteractEvent).call(this, interaction)); + + ___defineProperty_15(_assertThisInitialized(_this), "target", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "currentTarget", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "relatedTarget", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "screenX", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "screenY", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "button", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "buttons", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "ctrlKey", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "shiftKey", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "altKey", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "metaKey", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "page", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "client", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "delta", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "rect", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "x0", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "y0", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "t0", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "dt", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "duration", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "clientX0", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "clientY0", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "velocity", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "speed", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "swipe", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "timeStamp", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "dragEnter", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "dragLeave", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "axes", void 0); + + ___defineProperty_15(_assertThisInitialized(_this), "preEnd", void 0); + + element = element || interaction.element; + var target = interaction.interactable; + var deltaSource = (target && target.options || _defaultOptions["default"]).deltaSource; + var origin = (0, ___getOriginXY_15["default"])(target, element, actionName); + var starting = phase === 'start'; + var ending = phase === 'end'; + var prevEvent = starting ? _assertThisInitialized(_this) : interaction.prevEvent; + var coords = starting ? interaction.coords.start : ending ? { + page: prevEvent.page, + client: prevEvent.client, + timeStamp: interaction.coords.cur.timeStamp + } : interaction.coords.cur; + _this.page = (0, ___extend_15["default"])({}, coords.page); + _this.client = (0, ___extend_15["default"])({}, coords.client); + _this.rect = (0, ___extend_15["default"])({}, interaction.rect); + _this.timeStamp = coords.timeStamp; + + if (!ending) { + _this.page.x -= origin.x; + _this.page.y -= origin.y; + _this.client.x -= origin.x; + _this.client.y -= origin.y; + } + + _this.ctrlKey = event.ctrlKey; + _this.altKey = event.altKey; + _this.shiftKey = event.shiftKey; + _this.metaKey = event.metaKey; + _this.button = event.button; + _this.buttons = event.buttons; + _this.target = element; + _this.currentTarget = element; + _this.relatedTarget = related || null; + _this.preEnd = preEnd; + _this.type = type || actionName + (phase || ''); + _this.interactable = target; + _this.t0 = starting ? interaction.pointers[interaction.pointers.length - 1].downTime : prevEvent.t0; + _this.x0 = interaction.coords.start.page.x - origin.x; + _this.y0 = interaction.coords.start.page.y - origin.y; + _this.clientX0 = interaction.coords.start.client.x - origin.x; + _this.clientY0 = interaction.coords.start.client.y - origin.y; + + if (starting || ending) { + _this.delta = { + x: 0, + y: 0 + }; + } else { + _this.delta = { + x: _this[deltaSource].x - prevEvent[deltaSource].x, + y: _this[deltaSource].y - prevEvent[deltaSource].y + }; + } + + _this.dt = interaction.coords.delta.timeStamp; + _this.duration = _this.timeStamp - _this.t0; // velocity and speed in pixels per second + + _this.velocity = (0, ___extend_15["default"])({}, interaction.coords.velocity[deltaSource]); + _this.speed = (0, ___hypot_15["default"])(_this.velocity.x, _this.velocity.y); + _this.swipe = ending || phase === 'inertiastart' ? _this.getSwipe() : null; + return _this; + } + + ___createClass_15(InteractEvent, [{ + key: "getSwipe", + value: function getSwipe() { + var interaction = this._interaction; + + if (interaction.prevEvent.speed < 600 || this.timeStamp - interaction.prevEvent.timeStamp > 150) { + return null; + } + + var angle = 180 * Math.atan2(interaction.prevEvent.velocityY, interaction.prevEvent.velocityX) / Math.PI; + var overlap = 22.5; + + if (angle < 0) { + angle += 360; + } + + var left = 135 - overlap <= angle && angle < 225 + overlap; + var up = 225 - overlap <= angle && angle < 315 + overlap; + var right = !left && (315 - overlap <= angle || angle < 45 + overlap); + var down = !up && 45 - overlap <= angle && angle < 135 + overlap; + return { + up: up, + down: down, + left: left, + right: right, + angle: angle, + speed: interaction.prevEvent.speed, + velocity: { + x: interaction.prevEvent.velocityX, + y: interaction.prevEvent.velocityY + } + }; + } + }, { + key: "preventDefault", + value: function preventDefault() {} + /** + * Don't call listeners on the remaining targets + */ + + }, { + key: "stopImmediatePropagation", + value: function stopImmediatePropagation() { + this.immediatePropagationStopped = this.propagationStopped = true; + } + /** + * Don't call any other listeners (even on the current target) + */ + + }, { + key: "stopPropagation", + value: function stopPropagation() { + this.propagationStopped = true; + } + }, { + key: "pageX", + get: function get() { + return this.page.x; + }, + set: function set(value) { + this.page.x = value; + } + }, { + key: "pageY", + get: function get() { + return this.page.y; + }, + set: function set(value) { + this.page.y = value; + } + }, { + key: "clientX", + get: function get() { + return this.client.x; + }, + set: function set(value) { + this.client.x = value; + } + }, { + key: "clientY", + get: function get() { + return this.client.y; + }, + set: function set(value) { + this.client.y = value; + } + }, { + key: "dx", + get: function get() { + return this.delta.x; + }, + set: function set(value) { + this.delta.x = value; + } + }, { + key: "dy", + get: function get() { + return this.delta.y; + }, + set: function set(value) { + this.delta.y = value; + } + }, { + key: "velocityX", + get: function get() { + return this.velocity.x; + }, + set: function set(value) { + this.velocity.x = value; + } + }, { + key: "velocityY", + get: function get() { + return this.velocity.y; + }, + set: function set(value) { + this.velocity.y = value; + } + }]); + + return InteractEvent; +}(_BaseEvent2["default"]); + +_$InteractEvent_15.InteractEvent = InteractEvent; +var ___default_15 = InteractEvent; +_$InteractEvent_15["default"] = ___default_15; + +var _$PointerInfo_19 = {}; +"use strict"; + +Object.defineProperty(_$PointerInfo_19, "__esModule", { + value: true +}); +_$PointerInfo_19["default"] = _$PointerInfo_19.PointerInfo = void 0; + +function ___classCallCheck_19(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +/* eslint-disable @typescript-eslint/no-parameter-properties */ +var PointerInfo = function PointerInfo(id, pointer, event, downTime, downTarget) { + ___classCallCheck_19(this, PointerInfo); + + this.id = id; + this.pointer = pointer; + this.event = event; + this.downTime = downTime; + this.downTarget = downTarget; +}; + +_$PointerInfo_19.PointerInfo = PointerInfo; +var ___default_19 = PointerInfo; +_$PointerInfo_19["default"] = ___default_19; + +var _$interactionFinder_22 = {}; +"use strict"; + +function ___typeof_22(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_22 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_22 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_22(obj); } + +Object.defineProperty(_$interactionFinder_22, "__esModule", { + value: true +}); +_$interactionFinder_22["default"] = void 0; + +var __dom_22 = ___interopRequireWildcard_22(_$domUtils_50); + +function ___getRequireWildcardCache_22() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_22 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_22(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_22(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_22(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +var finder = { + methodOrder: ['simulationResume', 'mouseOrPen', 'hasPointer', 'idle'], + search: function search(details) { + for (var _i = 0; _i < finder.methodOrder.length; _i++) { + var _ref; + + _ref = finder.methodOrder[_i]; + var method = _ref; + var interaction = finder[method](details); + + if (interaction) { + return interaction; + } + } + }, + // try to resume simulation with a new pointer + simulationResume: function simulationResume(_ref2) { + var pointerType = _ref2.pointerType, + eventType = _ref2.eventType, + eventTarget = _ref2.eventTarget, + scope = _ref2.scope; + + if (!/down|start/i.test(eventType)) { + return null; + } + + for (var _i2 = 0; _i2 < scope.interactions.list.length; _i2++) { + var _ref3; + + _ref3 = scope.interactions.list[_i2]; + var interaction = _ref3; + var element = eventTarget; + + if (interaction.simulation && interaction.simulation.allowResume && interaction.pointerType === pointerType) { + while (element) { + // if the element is the interaction element + if (element === interaction.element) { + return interaction; + } + + element = __dom_22.parentNode(element); + } + } + } + + return null; + }, + // if it's a mouse or pen interaction + mouseOrPen: function mouseOrPen(_ref4) { + var pointerId = _ref4.pointerId, + pointerType = _ref4.pointerType, + eventType = _ref4.eventType, + scope = _ref4.scope; + + if (pointerType !== 'mouse' && pointerType !== 'pen') { + return null; + } + + var firstNonActive; + + for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { + var _ref5; + + _ref5 = scope.interactions.list[_i3]; + var interaction = _ref5; + + if (interaction.pointerType === pointerType) { + // if it's a down event, skip interactions with running simulations + if (interaction.simulation && !hasPointerId(interaction, pointerId)) { + continue; + } // if the interaction is active, return it immediately + + + if (interaction.interacting()) { + return interaction; + } // otherwise save it and look for another active interaction + else if (!firstNonActive) { + firstNonActive = interaction; + } + } + } // if no active mouse interaction was found use the first inactive mouse + // interaction + + + if (firstNonActive) { + return firstNonActive; + } // find any mouse or pen interaction. + // ignore the interaction if the eventType is a *down, and a simulation + // is active + + + for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) { + var _ref6; + + _ref6 = scope.interactions.list[_i4]; + var _interaction = _ref6; + + if (_interaction.pointerType === pointerType && !(/down/i.test(eventType) && _interaction.simulation)) { + return _interaction; + } + } + + return null; + }, + // get interaction that has this pointer + hasPointer: function hasPointer(_ref7) { + var pointerId = _ref7.pointerId, + scope = _ref7.scope; + + for (var _i5 = 0; _i5 < scope.interactions.list.length; _i5++) { + var _ref8; + + _ref8 = scope.interactions.list[_i5]; + var interaction = _ref8; + + if (hasPointerId(interaction, pointerId)) { + return interaction; + } + } + + return null; + }, + // get first idle interaction with a matching pointerType + idle: function idle(_ref9) { + var pointerType = _ref9.pointerType, + scope = _ref9.scope; + + for (var _i6 = 0; _i6 < scope.interactions.list.length; _i6++) { + var _ref10; + + _ref10 = scope.interactions.list[_i6]; + var interaction = _ref10; + + // if there's already a pointer held down + if (interaction.pointers.length === 1) { + var target = interaction.interactable; // don't add this pointer if there is a target interactable and it + // isn't gesturable + + if (target && !(target.options.gesture && target.options.gesture.enabled)) { + continue; + } + } // maximum of 2 pointers per interaction + else if (interaction.pointers.length >= 2) { + continue; + } + + if (!interaction.interacting() && pointerType === interaction.pointerType) { + return interaction; + } + } + + return null; + } +}; + +function hasPointerId(interaction, pointerId) { + return interaction.pointers.some(function (_ref11) { + var id = _ref11.id; + return id === pointerId; + }); +} + +var ___default_22 = finder; +_$interactionFinder_22["default"] = ___default_22; + +var _$drag_1 = {}; +"use strict"; + +function ___typeof_1(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_1 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_1 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_1(obj); } + +Object.defineProperty(_$drag_1, "__esModule", { + value: true +}); +_$drag_1["default"] = void 0; + +var ___scope_1 = _$scope_24({}); + +var __arr_1 = ___interopRequireWildcard_1(_$arr_46); + +var __is_1 = ___interopRequireWildcard_1(_$is_56); + +function ___getRequireWildcardCache_1() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_1 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_1(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_1(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_1(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +___scope_1.ActionName.Drag = 'drag'; + +function __install_1(scope) { + var actions = scope.actions, + Interactable = scope.Interactable, + defaults = scope.defaults; + scope.addListeners({ + 'interactions:before-action-move': beforeMove, + 'interactions:action-resume': beforeMove, + // dragmove + 'interactions:action-move': move + }); + Interactable.prototype.draggable = drag.draggable; + actions[___scope_1.ActionName.Drag] = drag; + actions.names.push(___scope_1.ActionName.Drag); + __arr_1.merge(actions.eventTypes, ['dragstart', 'dragmove', 'draginertiastart', 'dragresume', 'dragend']); + actions.methodDict.drag = 'draggable'; + defaults.actions.drag = drag.defaults; +} + +function beforeMove(_ref) { + var interaction = _ref.interaction; + + if (interaction.prepared.name !== 'drag') { + return; + } + + var axis = interaction.prepared.axis; + + if (axis === 'x') { + interaction.coords.cur.page.y = interaction.coords.start.page.y; + interaction.coords.cur.client.y = interaction.coords.start.client.y; + interaction.coords.velocity.client.y = 0; + interaction.coords.velocity.page.y = 0; + } else if (axis === 'y') { + interaction.coords.cur.page.x = interaction.coords.start.page.x; + interaction.coords.cur.client.x = interaction.coords.start.client.x; + interaction.coords.velocity.client.x = 0; + interaction.coords.velocity.page.x = 0; + } +} + +function move(_ref2) { + var iEvent = _ref2.iEvent, + interaction = _ref2.interaction; + + if (interaction.prepared.name !== 'drag') { + return; + } + + var axis = interaction.prepared.axis; + + if (axis === 'x' || axis === 'y') { + var opposite = axis === 'x' ? 'y' : 'x'; + iEvent.page[opposite] = interaction.coords.start.page[opposite]; + iEvent.client[opposite] = interaction.coords.start.client[opposite]; + iEvent.delta[opposite] = 0; + } +} +/** + * ```js + * interact(element).draggable({ + * onstart: function (event) {}, + * onmove : function (event) {}, + * onend : function (event) {}, + * + * // the axis in which the first movement must be + * // for the drag sequence to start + * // 'xy' by default - any direction + * startAxis: 'x' || 'y' || 'xy', + * + * // 'xy' by default - don't restrict to one axis (move in any direction) + * // 'x' or 'y' to restrict movement to either axis + * // 'start' to restrict movement to the axis the drag started in + * lockAxis: 'x' || 'y' || 'xy' || 'start', + * + * // max number of drags that can happen concurrently + * // with elements of this Interactable. Infinity by default + * max: Infinity, + * + * // max number of drags that can target the same element+Interactable + * // 1 by default + * maxPerElement: 2 + * }) + * + * var isDraggable = interact('element').draggable(); // true + * ``` + * + * Get or set whether drag actions can be performed on the target + * + * @alias Interactable.prototype.draggable + * + * @param {boolean | object} [options] true/false or An object with event + * listeners to be fired on drag events (object makes the Interactable + * draggable) + * @return {boolean | Interactable} boolean indicating if this can be the + * target of drag events, or this Interctable + */ + + +var draggable = function draggable(options) { + if (__is_1.object(options)) { + this.options.drag.enabled = options.enabled !== false; + this.setPerAction('drag', options); + this.setOnEvents('drag', options); + + if (/^(xy|x|y|start)$/.test(options.lockAxis)) { + this.options.drag.lockAxis = options.lockAxis; + } + + if (/^(xy|x|y)$/.test(options.startAxis)) { + this.options.drag.startAxis = options.startAxis; + } + + return this; + } + + if (__is_1.bool(options)) { + this.options.drag.enabled = options; + return this; + } + + return this.options.drag; +}; + +var drag = { + id: 'actions/drag', + install: __install_1, + draggable: draggable, + beforeMove: beforeMove, + move: move, + defaults: { + startAxis: 'xy', + lockAxis: 'xy' + }, + checker: function checker(_pointer, _event, interactable) { + var dragOptions = interactable.options.drag; + return dragOptions.enabled ? { + name: 'drag', + axis: dragOptions.lockAxis === 'start' ? dragOptions.startAxis : dragOptions.lockAxis + } : null; + }, + getCursor: function getCursor() { + return 'move'; + } +}; +var ___default_1 = drag; +_$drag_1["default"] = ___default_1; + +var _$DropEvent_2 = {}; +"use strict"; + +Object.defineProperty(_$DropEvent_2, "__esModule", { + value: true +}); +_$DropEvent_2["default"] = void 0; + +var ___BaseEvent2_2 = ___interopRequireDefault_2(_$BaseEvent_13); + +var __arr_2 = ___interopRequireWildcard_2(_$arr_46); + +function ___getRequireWildcardCache_2() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_2 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_2(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_2(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_2(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_2(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___typeof_2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_2 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_2 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_2(obj); } + +function ___toConsumableArray_2(arr) { return ___arrayWithoutHoles_2(arr) || ___iterableToArray_2(arr) || ___nonIterableSpread_2(); } + +function ___nonIterableSpread_2() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } + +function ___iterableToArray_2(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } + +function ___arrayWithoutHoles_2(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } + +function ___classCallCheck_2(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function ___defineProperties_2(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function ___createClass_2(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_2(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_2(Constructor, staticProps); return Constructor; } + +function ___possibleConstructorReturn_2(self, call) { if (call && (___typeof_2(call) === "object" || typeof call === "function")) { return call; } return ___assertThisInitialized_2(self); } + +function ___getPrototypeOf_2(o) { ___getPrototypeOf_2 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_2(o); } + +function ___assertThisInitialized_2(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function ___inherits_2(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_2(subClass, superClass); } + +function ___setPrototypeOf_2(o, p) { ___setPrototypeOf_2 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_2(o, p); } + +function ___defineProperty_2(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +var DropEvent = +/*#__PURE__*/ +function (_BaseEvent) { + ___inherits_2(DropEvent, _BaseEvent); + + /** + * Class of events fired on dropzones during drags with acceptable targets. + */ + function DropEvent(dropState, dragEvent, type) { + var _this; + + ___classCallCheck_2(this, DropEvent); + + _this = ___possibleConstructorReturn_2(this, ___getPrototypeOf_2(DropEvent).call(this, dragEvent._interaction)); + + ___defineProperty_2(___assertThisInitialized_2(_this), "target", void 0); + + ___defineProperty_2(___assertThisInitialized_2(_this), "dropzone", void 0); + + ___defineProperty_2(___assertThisInitialized_2(_this), "dragEvent", void 0); + + ___defineProperty_2(___assertThisInitialized_2(_this), "relatedTarget", void 0); + + ___defineProperty_2(___assertThisInitialized_2(_this), "draggable", void 0); + + ___defineProperty_2(___assertThisInitialized_2(_this), "timeStamp", void 0); + + ___defineProperty_2(___assertThisInitialized_2(_this), "propagationStopped", false); + + ___defineProperty_2(___assertThisInitialized_2(_this), "immediatePropagationStopped", false); + + var _ref = type === 'dragleave' ? dropState.prev : dropState.cur, + element = _ref.element, + dropzone = _ref.dropzone; + + _this.type = type; + _this.target = element; + _this.currentTarget = element; + _this.dropzone = dropzone; + _this.dragEvent = dragEvent; + _this.relatedTarget = dragEvent.target; + _this.draggable = dragEvent.interactable; + _this.timeStamp = dragEvent.timeStamp; + return _this; + } + /** + * If this is a `dropactivate` event, the dropzone element will be + * deactivated. + * + * If this is a `dragmove` or `dragenter`, a `dragleave` will be fired on the + * dropzone element and more. + */ + + + ___createClass_2(DropEvent, [{ + key: "reject", + value: function reject() { + var _this2 = this; + + var dropState = this._interaction.dropState; + + if (this.type !== 'dropactivate' && (!this.dropzone || dropState.cur.dropzone !== this.dropzone || dropState.cur.element !== this.target)) { + return; + } + + dropState.prev.dropzone = this.dropzone; + dropState.prev.element = this.target; + dropState.rejected = true; + dropState.events.enter = null; + this.stopImmediatePropagation(); + + if (this.type === 'dropactivate') { + var activeDrops = dropState.activeDrops; + var index = __arr_2.findIndex(activeDrops, function (_ref2) { + var dropzone = _ref2.dropzone, + element = _ref2.element; + return dropzone === _this2.dropzone && element === _this2.target; + }); + dropState.activeDrops = [].concat(___toConsumableArray_2(activeDrops.slice(0, index)), ___toConsumableArray_2(activeDrops.slice(index + 1))); + var deactivateEvent = new DropEvent(dropState, this.dragEvent, 'dropdeactivate'); + deactivateEvent.dropzone = this.dropzone; + deactivateEvent.target = this.target; + this.dropzone.fire(deactivateEvent); + } else { + this.dropzone.fire(new DropEvent(dropState, this.dragEvent, 'dragleave')); + } + } + }, { + key: "preventDefault", + value: function preventDefault() {} + }, { + key: "stopPropagation", + value: function stopPropagation() { + this.propagationStopped = true; + } + }, { + key: "stopImmediatePropagation", + value: function stopImmediatePropagation() { + this.immediatePropagationStopped = this.propagationStopped = true; + } + }]); + + return DropEvent; +}(___BaseEvent2_2["default"]); + +var ___default_2 = DropEvent; +_$DropEvent_2["default"] = ___default_2; + +var _$drop_3 = {}; +"use strict"; + +function ___typeof_3(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_3 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_3 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_3(obj); } + +Object.defineProperty(_$drop_3, "__esModule", { + value: true +}); +_$drop_3["default"] = void 0; + +var __utils_3 = ___interopRequireWildcard_3(_$utils_55); + +var _drag = ___interopRequireDefault_3(_$drag_1); + +var _DropEvent = ___interopRequireDefault_3(_$DropEvent_2); + +function ___interopRequireDefault_3(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_3() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_3 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_3(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_3(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function __install_3(scope) { + var actions = scope.actions, + interact = scope.interact, + Interactable = scope.Interactable, + defaults = scope.defaults; + scope.usePlugin(_drag["default"]); + /** + * + * ```js + * interact('.drop').dropzone({ + * accept: '.can-drop' || document.getElementById('single-drop'), + * overlap: 'pointer' || 'center' || zeroToOne + * } + * ``` + * + * Returns or sets whether draggables can be dropped onto this target to + * trigger drop events + * + * Dropzones can receive the following events: + * - `dropactivate` and `dropdeactivate` when an acceptable drag starts and ends + * - `dragenter` and `dragleave` when a draggable enters and leaves the dropzone + * - `dragmove` when a draggable that has entered the dropzone is moved + * - `drop` when a draggable is dropped into this dropzone + * + * Use the `accept` option to allow only elements that match the given CSS + * selector or element. The value can be: + * + * - **an Element** - only that element can be dropped into this dropzone. + * - **a string**, - the element being dragged must match it as a CSS selector. + * - **`null`** - accept options is cleared - it accepts any element. + * + * Use the `overlap` option to set how drops are checked for. The allowed + * values are: + * + * - `'pointer'`, the pointer must be over the dropzone (default) + * - `'center'`, the draggable element's center must be over the dropzone + * - a number from 0-1 which is the `(intersection area) / (draggable area)`. + * e.g. `0.5` for drop to happen when half of the area of the draggable is + * over the dropzone + * + * Use the `checker` option to specify a function to check if a dragged element + * is over this Interactable. + * + * @param {boolean | object | null} [options] The new options to be set. + * @return {boolean | Interactable} The current setting or this Interactable + */ + + Interactable.prototype.dropzone = function (options) { + return dropzoneMethod(this, options); + }; + /** + * ```js + * interact(target) + * .dropChecker(function(dragEvent, // related dragmove or dragend event + * event, // TouchEvent/PointerEvent/MouseEvent + * dropped, // bool result of the default checker + * dropzone, // dropzone Interactable + * dropElement, // dropzone elemnt + * draggable, // draggable Interactable + * draggableElement) {// draggable element + * + * return dropped && event.target.hasAttribute('allow-drop') + * } + * ``` + */ + + + Interactable.prototype.dropCheck = function (dragEvent, event, draggable, draggableElement, dropElement, rect) { + return dropCheckMethod(this, dragEvent, event, draggable, draggableElement, dropElement, rect); + }; + /** + * Returns or sets whether the dimensions of dropzone elements are calculated + * on every dragmove or only on dragstart for the default dropChecker + * + * @param {boolean} [newValue] True to check on each move. False to check only + * before start + * @return {boolean | interact} The current setting or interact + */ + + + interact.dynamicDrop = function (newValue) { + if (__utils_3.is.bool(newValue)) { + // if (dragging && scope.dynamicDrop !== newValue && !newValue) { + // calcRects(dropzones) + // } + scope.dynamicDrop = newValue; + return interact; + } + + return scope.dynamicDrop; + }; + + __utils_3.arr.merge(actions.eventTypes, ['dragenter', 'dragleave', 'dropactivate', 'dropdeactivate', 'dropmove', 'drop']); + actions.methodDict.drop = 'dropzone'; + scope.dynamicDrop = false; + defaults.actions.drop = drop.defaults; +} + +function collectDrops(_ref, draggableElement) { + var interactables = _ref.interactables; + var drops = []; // collect all dropzones and their elements which qualify for a drop + + for (var _i = 0; _i < interactables.list.length; _i++) { + var _ref2; + + _ref2 = interactables.list[_i]; + var dropzone = _ref2; + + if (!dropzone.options.drop.enabled) { + continue; + } + + var accept = dropzone.options.drop.accept; // test the draggable draggableElement against the dropzone's accept setting + + if (__utils_3.is.element(accept) && accept !== draggableElement || __utils_3.is.string(accept) && !__utils_3.dom.matchesSelector(draggableElement, accept) || __utils_3.is.func(accept) && !accept({ + dropzone: dropzone, + draggableElement: draggableElement + })) { + continue; + } // query for new elements if necessary + + + var dropElements = __utils_3.is.string(dropzone.target) ? dropzone._context.querySelectorAll(dropzone.target) : __utils_3.is.array(dropzone.target) ? dropzone.target : [dropzone.target]; + + for (var _i2 = 0; _i2 < dropElements.length; _i2++) { + var _ref3; + + _ref3 = dropElements[_i2]; + var dropzoneElement = _ref3; + + if (dropzoneElement !== draggableElement) { + drops.push({ + dropzone: dropzone, + element: dropzoneElement + }); + } + } + } + + return drops; +} + +function fireActivationEvents(activeDrops, event) { + // loop through all active dropzones and trigger event + for (var _i3 = 0; _i3 < activeDrops.length; _i3++) { + var _ref4; + + _ref4 = activeDrops[_i3]; + var _ref5 = _ref4, + dropzone = _ref5.dropzone, + element = _ref5.element; + event.dropzone = dropzone; // set current element as event target + + event.target = element; + dropzone.fire(event); + event.propagationStopped = event.immediatePropagationStopped = false; + } +} // return a new array of possible drops. getActiveDrops should always be +// called when a drag has just started or a drag event happens while +// dynamicDrop is true + + +function getActiveDrops(scope, dragElement) { + // get dropzones and their elements that could receive the draggable + var activeDrops = collectDrops(scope, dragElement); + + for (var _i4 = 0; _i4 < activeDrops.length; _i4++) { + var _ref6; + + _ref6 = activeDrops[_i4]; + var activeDrop = _ref6; + activeDrop.rect = activeDrop.dropzone.getRect(activeDrop.element); + } + + return activeDrops; +} + +function getDrop(_ref7, dragEvent, pointerEvent) { + var dropState = _ref7.dropState, + draggable = _ref7.interactable, + dragElement = _ref7.element; + var validDrops = []; // collect all dropzones and their elements which qualify for a drop + + for (var _i5 = 0; _i5 < dropState.activeDrops.length; _i5++) { + var _ref8; + + _ref8 = dropState.activeDrops[_i5]; + var _ref9 = _ref8, + dropzone = _ref9.dropzone, + dropzoneElement = _ref9.element, + rect = _ref9.rect; + validDrops.push(dropzone.dropCheck(dragEvent, pointerEvent, draggable, dragElement, dropzoneElement, rect) ? dropzoneElement : null); + } // get the most appropriate dropzone based on DOM depth and order + + + var dropIndex = __utils_3.dom.indexOfDeepestElement(validDrops); + return dropState.activeDrops[dropIndex] || null; +} + +function getDropEvents(interaction, _pointerEvent, dragEvent) { + var dropState = interaction.dropState; + var dropEvents = { + enter: null, + leave: null, + activate: null, + deactivate: null, + move: null, + drop: null + }; + + if (dragEvent.type === 'dragstart') { + dropEvents.activate = new _DropEvent["default"](dropState, dragEvent, 'dropactivate'); + dropEvents.activate.target = null; + dropEvents.activate.dropzone = null; + } + + if (dragEvent.type === 'dragend') { + dropEvents.deactivate = new _DropEvent["default"](dropState, dragEvent, 'dropdeactivate'); + dropEvents.deactivate.target = null; + dropEvents.deactivate.dropzone = null; + } + + if (dropState.rejected) { + return dropEvents; + } + + if (dropState.cur.element !== dropState.prev.element) { + // if there was a previous dropzone, create a dragleave event + if (dropState.prev.dropzone) { + dropEvents.leave = new _DropEvent["default"](dropState, dragEvent, 'dragleave'); + dragEvent.dragLeave = dropEvents.leave.target = dropState.prev.element; + dragEvent.prevDropzone = dropEvents.leave.dropzone = dropState.prev.dropzone; + } // if dropzone is not null, create a dragenter event + + + if (dropState.cur.dropzone) { + dropEvents.enter = new _DropEvent["default"](dropState, dragEvent, 'dragenter'); + dragEvent.dragEnter = dropState.cur.element; + dragEvent.dropzone = dropState.cur.dropzone; + } + } + + if (dragEvent.type === 'dragend' && dropState.cur.dropzone) { + dropEvents.drop = new _DropEvent["default"](dropState, dragEvent, 'drop'); + dragEvent.dropzone = dropState.cur.dropzone; + dragEvent.relatedTarget = dropState.cur.element; + } + + if (dragEvent.type === 'dragmove' && dropState.cur.dropzone) { + dropEvents.move = new _DropEvent["default"](dropState, dragEvent, 'dropmove'); + dropEvents.move.dragmove = dragEvent; + dragEvent.dropzone = dropState.cur.dropzone; + } + + return dropEvents; +} + +function fireDropEvents(interaction, events) { + var dropState = interaction.dropState; + var activeDrops = dropState.activeDrops, + cur = dropState.cur, + prev = dropState.prev; + + if (events.leave) { + prev.dropzone.fire(events.leave); + } + + if (events.move) { + cur.dropzone.fire(events.move); + } + + if (events.enter) { + cur.dropzone.fire(events.enter); + } + + if (events.drop) { + cur.dropzone.fire(events.drop); + } + + if (events.deactivate) { + fireActivationEvents(activeDrops, events.deactivate); + } + + dropState.prev.dropzone = cur.dropzone; + dropState.prev.element = cur.element; +} + +function onEventCreated(_ref10, scope) { + var interaction = _ref10.interaction, + iEvent = _ref10.iEvent, + event = _ref10.event; + + if (iEvent.type !== 'dragmove' && iEvent.type !== 'dragend') { + return; + } + + var dropState = interaction.dropState; + + if (scope.dynamicDrop) { + dropState.activeDrops = getActiveDrops(scope, interaction.element); + } + + var dragEvent = iEvent; + var dropResult = getDrop(interaction, dragEvent, event); // update rejected status + + dropState.rejected = dropState.rejected && !!dropResult && dropResult.dropzone === dropState.cur.dropzone && dropResult.element === dropState.cur.element; + dropState.cur.dropzone = dropResult && dropResult.dropzone; + dropState.cur.element = dropResult && dropResult.element; + dropState.events = getDropEvents(interaction, event, dragEvent); +} + +function dropzoneMethod(interactable, options) { + if (__utils_3.is.object(options)) { + interactable.options.drop.enabled = options.enabled !== false; + + if (options.listeners) { + var normalized = __utils_3.normalizeListeners(options.listeners); // rename 'drop' to '' as it will be prefixed with 'drop' + + var corrected = Object.keys(normalized).reduce(function (acc, type) { + var correctedType = /^(enter|leave)/.test(type) ? "drag".concat(type) : /^(activate|deactivate|move)/.test(type) ? "drop".concat(type) : type; + acc[correctedType] = normalized[type]; + return acc; + }, {}); + interactable.off(interactable.options.drop.listeners); + interactable.on(corrected); + interactable.options.drop.listeners = corrected; + } + + if (__utils_3.is.func(options.ondrop)) { + interactable.on('drop', options.ondrop); + } + + if (__utils_3.is.func(options.ondropactivate)) { + interactable.on('dropactivate', options.ondropactivate); + } + + if (__utils_3.is.func(options.ondropdeactivate)) { + interactable.on('dropdeactivate', options.ondropdeactivate); + } + + if (__utils_3.is.func(options.ondragenter)) { + interactable.on('dragenter', options.ondragenter); + } + + if (__utils_3.is.func(options.ondragleave)) { + interactable.on('dragleave', options.ondragleave); + } + + if (__utils_3.is.func(options.ondropmove)) { + interactable.on('dropmove', options.ondropmove); + } + + if (/^(pointer|center)$/.test(options.overlap)) { + interactable.options.drop.overlap = options.overlap; + } else if (__utils_3.is.number(options.overlap)) { + interactable.options.drop.overlap = Math.max(Math.min(1, options.overlap), 0); + } + + if ('accept' in options) { + interactable.options.drop.accept = options.accept; + } + + if ('checker' in options) { + interactable.options.drop.checker = options.checker; + } + + return interactable; + } + + if (__utils_3.is.bool(options)) { + interactable.options.drop.enabled = options; + return interactable; + } + + return interactable.options.drop; +} + +function dropCheckMethod(interactable, dragEvent, event, draggable, draggableElement, dropElement, rect) { + var dropped = false; // if the dropzone has no rect (eg. display: none) + // call the custom dropChecker or just return false + + if (!(rect = rect || interactable.getRect(dropElement))) { + return interactable.options.drop.checker ? interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement) : false; + } + + var dropOverlap = interactable.options.drop.overlap; + + if (dropOverlap === 'pointer') { + var origin = __utils_3.getOriginXY(draggable, draggableElement, 'drag'); + var page = __utils_3.pointer.getPageXY(dragEvent); + page.x += origin.x; + page.y += origin.y; + var horizontal = page.x > rect.left && page.x < rect.right; + var vertical = page.y > rect.top && page.y < rect.bottom; + dropped = horizontal && vertical; + } + + var dragRect = draggable.getRect(draggableElement); + + if (dragRect && dropOverlap === 'center') { + var cx = dragRect.left + dragRect.width / 2; + var cy = dragRect.top + dragRect.height / 2; + dropped = cx >= rect.left && cx <= rect.right && cy >= rect.top && cy <= rect.bottom; + } + + if (dragRect && __utils_3.is.number(dropOverlap)) { + var overlapArea = Math.max(0, Math.min(rect.right, dragRect.right) - Math.max(rect.left, dragRect.left)) * Math.max(0, Math.min(rect.bottom, dragRect.bottom) - Math.max(rect.top, dragRect.top)); + var overlapRatio = overlapArea / (dragRect.width * dragRect.height); + dropped = overlapRatio >= dropOverlap; + } + + if (interactable.options.drop.checker) { + dropped = interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement); + } + + return dropped; +} + +var drop = { + id: 'actions/drop', + install: __install_3, + listeners: { + 'interactions:before-action-start': function interactionsBeforeActionStart(_ref11) { + var interaction = _ref11.interaction; + + if (interaction.prepared.name !== 'drag') { + return; + } + + interaction.dropState = { + cur: { + dropzone: null, + element: null + }, + prev: { + dropzone: null, + element: null + }, + rejected: null, + events: null, + activeDrops: null + }; + }, + 'interactions:after-action-start': function interactionsAfterActionStart(_ref12, scope) { + var interaction = _ref12.interaction, + event = _ref12.event, + dragEvent = _ref12.iEvent; + + if (interaction.prepared.name !== 'drag') { + return; + } + + var dropState = interaction.dropState; // reset active dropzones + + dropState.activeDrops = null; + dropState.events = null; + dropState.activeDrops = getActiveDrops(scope, interaction.element); + dropState.events = getDropEvents(interaction, event, dragEvent); + + if (dropState.events.activate) { + fireActivationEvents(dropState.activeDrops, dropState.events.activate); + } + }, + // FIXME proper signal types + 'interactions:action-move': onEventCreated, + 'interactions:action-end': onEventCreated, + 'interactions:after-action-move': function fireDropAfterMove(_ref13) { + var interaction = _ref13.interaction; + + if (interaction.prepared.name !== 'drag') { + return; + } + + fireDropEvents(interaction, interaction.dropState.events); + interaction.dropState.events = {}; + }, + 'interactions:after-action-end': function interactionsAfterActionEnd(_ref14) { + var interaction = _ref14.interaction; + + if (interaction.prepared.name !== 'drag') { + return; + } + + fireDropEvents(interaction, interaction.dropState.events); + }, + 'interactions:stop': function interactionsStop(_ref15) { + var interaction = _ref15.interaction; + + if (interaction.prepared.name !== 'drag') { + return; + } + + var dropState = interaction.dropState; + + if (dropState) { + dropState.activeDrops = null; + dropState.events = null; + dropState.cur.dropzone = null; + dropState.cur.element = null; + dropState.prev.dropzone = null; + dropState.prev.element = null; + dropState.rejected = false; + } + } + }, + getActiveDrops: getActiveDrops, + getDrop: getDrop, + getDropEvents: getDropEvents, + fireDropEvents: fireDropEvents, + defaults: { + enabled: false, + accept: null, + overlap: 'pointer' + } +}; +var ___default_3 = drop; +_$drop_3["default"] = ___default_3; + +var _$gesture_4 = {}; +"use strict"; + +function ___typeof_4(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_4 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_4 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_4(obj); } + +Object.defineProperty(_$gesture_4, "__esModule", { + value: true +}); +_$gesture_4["default"] = void 0; + +var ___InteractEvent_4 = ___interopRequireDefault_4(_$InteractEvent_15); + +var ___scope_4 = _$scope_24({}); + +var __utils_4 = ___interopRequireWildcard_4(_$utils_55); + +function ___getRequireWildcardCache_4() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_4 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_4(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_4(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_4(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_4(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +___scope_4.ActionName.Gesture = 'gesture'; + +function __install_4(scope) { + var actions = scope.actions, + Interactable = scope.Interactable, + defaults = scope.defaults; + /** + * ```js + * interact(element).gesturable({ + * onstart: function (event) {}, + * onmove : function (event) {}, + * onend : function (event) {}, + * + * // limit multiple gestures. + * // See the explanation in {@link Interactable.draggable} example + * max: Infinity, + * maxPerElement: 1, + * }) + * + * var isGestureable = interact(element).gesturable() + * ``` + * + * Gets or sets whether multitouch gestures can be performed on the target + * + * @param {boolean | object} [options] true/false or An object with event + * listeners to be fired on gesture events (makes the Interactable gesturable) + * @return {boolean | Interactable} A boolean indicating if this can be the + * target of gesture events, or this Interactable + */ + + Interactable.prototype.gesturable = function (options) { + if (__utils_4.is.object(options)) { + this.options.gesture.enabled = options.enabled !== false; + this.setPerAction('gesture', options); + this.setOnEvents('gesture', options); + return this; + } + + if (__utils_4.is.bool(options)) { + this.options.gesture.enabled = options; + return this; + } + + return this.options.gesture; + }; + + actions[___scope_4.ActionName.Gesture] = gesture; + actions.names.push(___scope_4.ActionName.Gesture); + __utils_4.arr.merge(actions.eventTypes, ['gesturestart', 'gesturemove', 'gestureend']); + actions.methodDict.gesture = 'gesturable'; + defaults.actions.gesture = gesture.defaults; +} + +var gesture = { + id: 'actions/gesture', + install: __install_4, + listeners: { + 'interactions:action-start': updateGestureProps, + 'interactions:action-move': updateGestureProps, + 'interactions:action-end': updateGestureProps, + 'interactions:new': function interactionsNew(_ref) { + var interaction = _ref.interaction; + interaction.gesture = { + angle: 0, + distance: 0, + scale: 1, + startAngle: 0, + startDistance: 0 + }; + } + }, + defaults: {}, + checker: function checker(_pointer, _event, _interactable, _element, interaction) { + if (interaction.pointers.length >= 2) { + return { + name: 'gesture' + }; + } + + return null; + }, + getCursor: function getCursor() { + return ''; + } +}; + +function updateGestureProps(_ref2) { + var interaction = _ref2.interaction, + iEvent = _ref2.iEvent, + event = _ref2.event, + phase = _ref2.phase; + + if (interaction.prepared.name !== 'gesture') { + return; + } + + var pointers = interaction.pointers.map(function (p) { + return p.pointer; + }); + var starting = phase === 'start'; + var ending = phase === 'end'; + var deltaSource = interaction.interactable.options.deltaSource; + iEvent.touches = [pointers[0], pointers[1]]; + + if (starting) { + iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource); + iEvent.box = __utils_4.pointer.touchBBox(pointers); + iEvent.scale = 1; + iEvent.ds = 0; + iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource); + iEvent.da = 0; + interaction.gesture.startDistance = iEvent.distance; + interaction.gesture.startAngle = iEvent.angle; + } else if (ending || event instanceof ___InteractEvent_4["default"]) { + var prevEvent = interaction.prevEvent; + iEvent.distance = prevEvent.distance; + iEvent.box = prevEvent.box; + iEvent.scale = prevEvent.scale; + iEvent.ds = 0; + iEvent.angle = prevEvent.angle; + iEvent.da = 0; + } else { + iEvent.distance = __utils_4.pointer.touchDistance(pointers, deltaSource); + iEvent.box = __utils_4.pointer.touchBBox(pointers); + iEvent.scale = iEvent.distance / interaction.gesture.startDistance; + iEvent.angle = __utils_4.pointer.touchAngle(pointers, deltaSource); + iEvent.ds = iEvent.scale - interaction.gesture.scale; + iEvent.da = iEvent.angle - interaction.gesture.angle; + } + + interaction.gesture.distance = iEvent.distance; + interaction.gesture.angle = iEvent.angle; + + if (__utils_4.is.number(iEvent.scale) && iEvent.scale !== Infinity && !isNaN(iEvent.scale)) { + interaction.gesture.scale = iEvent.scale; + } +} + +var ___default_4 = gesture; +_$gesture_4["default"] = ___default_4; + +var _$resize_6 = {}; +"use strict"; + +function ___typeof_6(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_6 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_6 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_6(obj); } + +Object.defineProperty(_$resize_6, "__esModule", { + value: true +}); +_$resize_6["default"] = void 0; + +var ___scope_6 = _$scope_24({}); + +var __arr_6 = ___interopRequireWildcard_6(_$arr_46); + +var __dom_6 = ___interopRequireWildcard_6(_$domUtils_50); + +var ___extend_6 = ___interopRequireDefault_6(_$extend_52); + +var __is_6 = ___interopRequireWildcard_6(_$is_56); + +function ___interopRequireDefault_6(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_6() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_6 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_6(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_6(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_6(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +___scope_6.ActionName.Resize = 'resize'; + +function __install_6(scope) { + var actions = scope.actions, + browser = scope.browser, + Interactable = scope.Interactable, + defaults = scope.defaults; // Less Precision with touch input + + resize.cursors = initCursors(browser); + resize.defaultMargin = browser.supportsTouch || browser.supportsPointerEvent ? 20 : 10; + /** + * ```js + * interact(element).resizable({ + * onstart: function (event) {}, + * onmove : function (event) {}, + * onend : function (event) {}, + * + * edges: { + * top : true, // Use pointer coords to check for resize. + * left : false, // Disable resizing from left edge. + * bottom: '.resize-s',// Resize if pointer target matches selector + * right : handleEl // Resize if pointer target is the given Element + * }, + * + * // Width and height can be adjusted independently. When `true`, width and + * // height are adjusted at a 1:1 ratio. + * square: false, + * + * // Width and height can be adjusted independently. When `true`, width and + * // height maintain the aspect ratio they had when resizing started. + * preserveAspectRatio: false, + * + * // a value of 'none' will limit the resize rect to a minimum of 0x0 + * // 'negate' will allow the rect to have negative width/height + * // 'reposition' will keep the width/height positive by swapping + * // the top and bottom edges and/or swapping the left and right edges + * invert: 'none' || 'negate' || 'reposition' + * + * // limit multiple resizes. + * // See the explanation in the {@link Interactable.draggable} example + * max: Infinity, + * maxPerElement: 1, + * }) + * + * var isResizeable = interact(element).resizable() + * ``` + * + * Gets or sets whether resize actions can be performed on the target + * + * @param {boolean | object} [options] true/false or An object with event + * listeners to be fired on resize events (object makes the Interactable + * resizable) + * @return {boolean | Interactable} A boolean indicating if this can be the + * target of resize elements, or this Interactable + */ + + Interactable.prototype.resizable = function (options) { + return resizable(this, options, scope); + }; + + actions[___scope_6.ActionName.Resize] = resize; + actions.names.push(___scope_6.ActionName.Resize); + __arr_6.merge(actions.eventTypes, ['resizestart', 'resizemove', 'resizeinertiastart', 'resizeresume', 'resizeend']); + actions.methodDict.resize = 'resizable'; + defaults.actions.resize = resize.defaults; +} + +var resize = { + id: 'actions/resize', + install: __install_6, + listeners: { + 'interactions:new': function interactionsNew(_ref) { + var interaction = _ref.interaction; + interaction.resizeAxes = 'xy'; + }, + 'interactions:action-start': function interactionsActionStart(arg) { + start(arg); + updateEventAxes(arg); + }, + 'interactions:action-move': function interactionsActionMove(arg) { + __move_6(arg); + updateEventAxes(arg); + }, + 'interactions:action-end': end + }, + defaults: { + square: false, + preserveAspectRatio: false, + axis: 'xy', + // use default margin + margin: NaN, + // object with props left, right, top, bottom which are + // true/false values to resize when the pointer is over that edge, + // CSS selectors to match the handles for each direction + // or the Elements for each handle + edges: null, + // a value of 'none' will limit the resize rect to a minimum of 0x0 + // 'negate' will alow the rect to have negative width/height + // 'reposition' will keep the width/height positive by swapping + // the top and bottom edges and/or swapping the left and right edges + invert: 'none' + }, + checker: function checker(_pointer, _event, interactable, element, interaction, rect) { + if (!rect) { + return null; + } + + var page = (0, ___extend_6["default"])({}, interaction.coords.cur.page); + var options = interactable.options; + + if (options.resize.enabled) { + var resizeOptions = options.resize; + var resizeEdges = { + left: false, + right: false, + top: false, + bottom: false + }; // if using resize.edges + + if (__is_6.object(resizeOptions.edges)) { + for (var edge in resizeEdges) { + resizeEdges[edge] = checkResizeEdge(edge, resizeOptions.edges[edge], page, interaction._latestPointer.eventTarget, element, rect, resizeOptions.margin || this.defaultMargin); + } + + resizeEdges.left = resizeEdges.left && !resizeEdges.right; + resizeEdges.top = resizeEdges.top && !resizeEdges.bottom; + + if (resizeEdges.left || resizeEdges.right || resizeEdges.top || resizeEdges.bottom) { + return { + name: 'resize', + edges: resizeEdges + }; + } + } else { + var right = options.resize.axis !== 'y' && page.x > rect.right - this.defaultMargin; + var bottom = options.resize.axis !== 'x' && page.y > rect.bottom - this.defaultMargin; + + if (right || bottom) { + return { + name: 'resize', + axes: (right ? 'x' : '') + (bottom ? 'y' : '') + }; + } + } + } + + return null; + }, + cursors: null, + getCursor: function getCursor(_ref2) { + var edges = _ref2.edges, + axis = _ref2.axis, + name = _ref2.name; + var cursors = resize.cursors; + var result = null; + + if (axis) { + result = cursors[name + axis]; + } else if (edges) { + var cursorKey = ''; + var _arr = ['top', 'bottom', 'left', 'right']; + + for (var _i = 0; _i < _arr.length; _i++) { + var edge = _arr[_i]; + + if (edges[edge]) { + cursorKey += edge; + } + } + + result = cursors[cursorKey]; + } + + return result; + }, + defaultMargin: null +}; + +function resizable(interactable, options, scope) { + if (__is_6.object(options)) { + interactable.options.resize.enabled = options.enabled !== false; + interactable.setPerAction('resize', options); + interactable.setOnEvents('resize', options); + + if (__is_6.string(options.axis) && /^x$|^y$|^xy$/.test(options.axis)) { + interactable.options.resize.axis = options.axis; + } else if (options.axis === null) { + interactable.options.resize.axis = scope.defaults.actions.resize.axis; + } + + if (__is_6.bool(options.preserveAspectRatio)) { + interactable.options.resize.preserveAspectRatio = options.preserveAspectRatio; + } else if (__is_6.bool(options.square)) { + interactable.options.resize.square = options.square; + } + + return interactable; + } + + if (__is_6.bool(options)) { + interactable.options.resize.enabled = options; + return interactable; + } + + return interactable.options.resize; +} + +function checkResizeEdge(name, value, page, element, interactableElement, rect, margin) { + // false, '', undefined, null + if (!value) { + return false; + } // true value, use pointer coords and element rect + + + if (value === true) { + // if dimensions are negative, "switch" edges + var width = __is_6.number(rect.width) ? rect.width : rect.right - rect.left; + var height = __is_6.number(rect.height) ? rect.height : rect.bottom - rect.top; // don't use margin greater than half the relevent dimension + + margin = Math.min(margin, (name === 'left' || name === 'right' ? width : height) / 2); + + if (width < 0) { + if (name === 'left') { + name = 'right'; + } else if (name === 'right') { + name = 'left'; + } + } + + if (height < 0) { + if (name === 'top') { + name = 'bottom'; + } else if (name === 'bottom') { + name = 'top'; + } + } + + if (name === 'left') { + return page.x < (width >= 0 ? rect.left : rect.right) + margin; + } + + if (name === 'top') { + return page.y < (height >= 0 ? rect.top : rect.bottom) + margin; + } + + if (name === 'right') { + return page.x > (width >= 0 ? rect.right : rect.left) - margin; + } + + if (name === 'bottom') { + return page.y > (height >= 0 ? rect.bottom : rect.top) - margin; + } + } // the remaining checks require an element + + + if (!__is_6.element(element)) { + return false; + } + + return __is_6.element(value) // the value is an element to use as a resize handle + ? value === element // otherwise check if element matches value as selector + : __dom_6.matchesUpTo(element, value, interactableElement); +} + +function initCursors(browser) { + return browser.isIe9 ? { + x: 'e-resize', + y: 's-resize', + xy: 'se-resize', + top: 'n-resize', + left: 'w-resize', + bottom: 's-resize', + right: 'e-resize', + topleft: 'se-resize', + bottomright: 'se-resize', + topright: 'ne-resize', + bottomleft: 'ne-resize' + } : { + x: 'ew-resize', + y: 'ns-resize', + xy: 'nwse-resize', + top: 'ns-resize', + left: 'ew-resize', + bottom: 'ns-resize', + right: 'ew-resize', + topleft: 'nwse-resize', + bottomright: 'nwse-resize', + topright: 'nesw-resize', + bottomleft: 'nesw-resize' + }; +} + +function start(_ref3) { + var iEvent = _ref3.iEvent, + interaction = _ref3.interaction; + + if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { + return; + } + + var startRect = (0, ___extend_6["default"])({}, interaction.rect); + var resizeOptions = interaction.interactable.options.resize; + /* + * When using the `resizable.square` or `resizable.preserveAspectRatio` options, resizing from one edge + * will affect another. E.g. with `resizable.square`, resizing to make the right edge larger will make + * the bottom edge larger by the same amount. We call these 'linked' edges. Any linked edges will depend + * on the active edges and the edge being interacted with. + */ + + if (resizeOptions.square || resizeOptions.preserveAspectRatio) { + var linkedEdges = (0, ___extend_6["default"])({}, interaction.prepared.edges); + linkedEdges.top = linkedEdges.top || linkedEdges.left && !linkedEdges.bottom; + linkedEdges.left = linkedEdges.left || linkedEdges.top && !linkedEdges.right; + linkedEdges.bottom = linkedEdges.bottom || linkedEdges.right && !linkedEdges.top; + linkedEdges.right = linkedEdges.right || linkedEdges.bottom && !linkedEdges.left; + interaction.prepared._linkedEdges = linkedEdges; + } else { + interaction.prepared._linkedEdges = null; + } // if using `resizable.preserveAspectRatio` option, record aspect ratio at the start of the resize + + + if (resizeOptions.preserveAspectRatio) { + interaction.resizeStartAspectRatio = startRect.width / startRect.height; + } + + interaction.resizeRects = { + start: startRect, + current: { + left: startRect.left, + right: startRect.right, + top: startRect.top, + bottom: startRect.bottom + }, + inverted: (0, ___extend_6["default"])({}, startRect), + previous: (0, ___extend_6["default"])({}, startRect), + delta: { + left: 0, + right: 0, + width: 0, + top: 0, + bottom: 0, + height: 0 + } + }; + iEvent.edges = interaction.prepared.edges; + iEvent.rect = interaction.resizeRects.inverted; + iEvent.deltaRect = interaction.resizeRects.delta; +} + +function __move_6(_ref4) { + var iEvent = _ref4.iEvent, + interaction = _ref4.interaction; + + if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { + return; + } + + var resizeOptions = interaction.interactable.options.resize; + var invert = resizeOptions.invert; + var invertible = invert === 'reposition' || invert === 'negate'; + var edges = interaction.prepared.edges; // eslint-disable-next-line no-shadow + + var start = interaction.resizeRects.start; + var current = interaction.resizeRects.current; + var inverted = interaction.resizeRects.inverted; + var deltaRect = interaction.resizeRects.delta; + var previous = (0, ___extend_6["default"])(interaction.resizeRects.previous, inverted); + var originalEdges = edges; + var eventDelta = (0, ___extend_6["default"])({}, iEvent.delta); + + if (resizeOptions.preserveAspectRatio || resizeOptions.square) { + // `resize.preserveAspectRatio` takes precedence over `resize.square` + var startAspectRatio = resizeOptions.preserveAspectRatio ? interaction.resizeStartAspectRatio : 1; + edges = interaction.prepared._linkedEdges; + + if (originalEdges.left && originalEdges.bottom || originalEdges.right && originalEdges.top) { + eventDelta.y = -eventDelta.x / startAspectRatio; + } else if (originalEdges.left || originalEdges.right) { + eventDelta.y = eventDelta.x / startAspectRatio; + } else if (originalEdges.top || originalEdges.bottom) { + eventDelta.x = eventDelta.y * startAspectRatio; + } + } // update the 'current' rect without modifications + + + if (edges.top) { + current.top += eventDelta.y; + } + + if (edges.bottom) { + current.bottom += eventDelta.y; + } + + if (edges.left) { + current.left += eventDelta.x; + } + + if (edges.right) { + current.right += eventDelta.x; + } + + if (invertible) { + // if invertible, copy the current rect + (0, ___extend_6["default"])(inverted, current); + + if (invert === 'reposition') { + // swap edge values if necessary to keep width/height positive + var swap; + + if (inverted.top > inverted.bottom) { + swap = inverted.top; + inverted.top = inverted.bottom; + inverted.bottom = swap; + } + + if (inverted.left > inverted.right) { + swap = inverted.left; + inverted.left = inverted.right; + inverted.right = swap; + } + } + } else { + // if not invertible, restrict to minimum of 0x0 rect + inverted.top = Math.min(current.top, start.bottom); + inverted.bottom = Math.max(current.bottom, start.top); + inverted.left = Math.min(current.left, start.right); + inverted.right = Math.max(current.right, start.left); + } + + inverted.width = inverted.right - inverted.left; + inverted.height = inverted.bottom - inverted.top; + + for (var edge in inverted) { + deltaRect[edge] = inverted[edge] - previous[edge]; + } + + iEvent.edges = interaction.prepared.edges; + iEvent.rect = inverted; + iEvent.deltaRect = deltaRect; +} + +function end(_ref5) { + var iEvent = _ref5.iEvent, + interaction = _ref5.interaction; + + if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { + return; + } + + iEvent.edges = interaction.prepared.edges; + iEvent.rect = interaction.resizeRects.inverted; + iEvent.deltaRect = interaction.resizeRects.delta; +} + +function updateEventAxes(_ref6) { + var iEvent = _ref6.iEvent, + interaction = _ref6.interaction; + + if (interaction.prepared.name !== ___scope_6.ActionName.Resize || !interaction.resizeAxes) { + return; + } + + var options = interaction.interactable.options; + + if (options.resize.square) { + if (interaction.resizeAxes === 'y') { + iEvent.delta.x = iEvent.delta.y; + } else { + iEvent.delta.y = iEvent.delta.x; + } + + iEvent.axes = 'xy'; + } else { + iEvent.axes = interaction.resizeAxes; + + if (interaction.resizeAxes === 'x') { + iEvent.delta.y = 0; + } else if (interaction.resizeAxes === 'y') { + iEvent.delta.x = 0; + } + } +} + +var ___default_6 = resize; +_$resize_6["default"] = ___default_6; + +var _$actions_5 = {}; +"use strict"; + +Object.defineProperty(_$actions_5, "__esModule", { + value: true +}); +_$actions_5.install = __install_5; +Object.defineProperty(_$actions_5, "drag", { + enumerable: true, + get: function get() { + return ___drag_5["default"]; + } +}); +Object.defineProperty(_$actions_5, "drop", { + enumerable: true, + get: function get() { + return _index["default"]; + } +}); +Object.defineProperty(_$actions_5, "gesture", { + enumerable: true, + get: function get() { + return _gesture["default"]; + } +}); +Object.defineProperty(_$actions_5, "resize", { + enumerable: true, + get: function get() { + return _resize["default"]; + } +}); +_$actions_5.id = void 0; + +var ___drag_5 = ___interopRequireDefault_5(_$drag_1); + +var _index = ___interopRequireDefault_5(_$drop_3); + +var _gesture = ___interopRequireDefault_5(_$gesture_4); + +var _resize = ___interopRequireDefault_5(_$resize_6); + +function ___interopRequireDefault_5(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function __install_5(scope) { + scope.usePlugin(_gesture["default"]); + scope.usePlugin(_resize["default"]); + scope.usePlugin(___drag_5["default"]); + scope.usePlugin(_index["default"]); +} + +var id = 'actions'; +_$actions_5.id = id; + +var _$autoScroll_7 = {}; +"use strict"; + +function ___typeof_7(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_7 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_7 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_7(obj); } + +Object.defineProperty(_$autoScroll_7, "__esModule", { + value: true +}); +_$autoScroll_7.getContainer = getContainer; +_$autoScroll_7.getScroll = getScroll; +_$autoScroll_7.getScrollSize = getScrollSize; +_$autoScroll_7.getScrollSizeDelta = getScrollSizeDelta; +_$autoScroll_7["default"] = void 0; + +var __domUtils_7 = ___interopRequireWildcard_7(_$domUtils_50); + +var __is_7 = ___interopRequireWildcard_7(_$is_56); + +var ___raf_7 = ___interopRequireDefault_7(_$raf_61); + +/* removed: var _$rect_62 = require("../utils/rect.js"); */; + +/* removed: var _$window_65 = require("../utils/window.js"); */; + +function ___interopRequireDefault_7(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_7() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_7 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_7(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_7(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_7(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function __install_7(scope) { + var defaults = scope.defaults, + actions = scope.actions; + scope.autoScroll = autoScroll; + + autoScroll.now = function () { + return scope.now(); + }; + + actions.eventTypes.push('autoscroll'); + defaults.perAction.autoScroll = autoScroll.defaults; +} + +var autoScroll = { + defaults: { + enabled: false, + margin: 60, + // the item that is scrolled (Window or HTMLElement) + container: null, + // the scroll speed in pixels per second + speed: 300 + }, + now: Date.now, + interaction: null, + i: null, + // the handle returned by window.setInterval + x: 0, + y: 0, + // Direction each pulse is to scroll in + isScrolling: false, + prevTime: 0, + margin: 0, + speed: 0, + start: function start(interaction) { + autoScroll.isScrolling = true; + + ___raf_7["default"].cancel(autoScroll.i); + + interaction.autoScroll = autoScroll; + autoScroll.interaction = interaction; + autoScroll.prevTime = autoScroll.now(); + autoScroll.i = ___raf_7["default"].request(autoScroll.scroll); + }, + stop: function stop() { + autoScroll.isScrolling = false; + + if (autoScroll.interaction) { + autoScroll.interaction.autoScroll = null; + } + + ___raf_7["default"].cancel(autoScroll.i); + }, + // scroll the window by the values in scroll.x/y + scroll: function scroll() { + var interaction = autoScroll.interaction; + var interactable = interaction.interactable, + element = interaction.element; + var options = interactable.options[autoScroll.interaction.prepared.name].autoScroll; + var container = getContainer(options.container, interactable, element); + var now = autoScroll.now(); // change in time in seconds + + var dt = (now - autoScroll.prevTime) / 1000; // displacement + + var s = options.speed * dt; + + if (s >= 1) { + var scrollBy = { + x: autoScroll.x * s, + y: autoScroll.y * s + }; + + if (scrollBy.x || scrollBy.y) { + var prevScroll = getScroll(container); + + if (__is_7.window(container)) { + container.scrollBy(scrollBy.x, scrollBy.y); + } else if (container) { + container.scrollLeft += scrollBy.x; + container.scrollTop += scrollBy.y; + } + + var curScroll = getScroll(container); + var delta = { + x: curScroll.x - prevScroll.x, + y: curScroll.y - prevScroll.y + }; + + if (delta.x || delta.y) { + interactable.fire({ + type: 'autoscroll', + target: element, + interactable: interactable, + delta: delta, + interaction: interaction, + container: container + }); + } + } + + autoScroll.prevTime = now; + } + + if (autoScroll.isScrolling) { + ___raf_7["default"].cancel(autoScroll.i); + + autoScroll.i = ___raf_7["default"].request(autoScroll.scroll); + } + }, + check: function check(interactable, actionName) { + var options = interactable.options; + return options[actionName].autoScroll && options[actionName].autoScroll.enabled; + }, + onInteractionMove: function onInteractionMove(_ref) { + var interaction = _ref.interaction, + pointer = _ref.pointer; + + if (!(interaction.interacting() && autoScroll.check(interaction.interactable, interaction.prepared.name))) { + return; + } + + if (interaction.simulation) { + autoScroll.x = autoScroll.y = 0; + return; + } + + var top; + var right; + var bottom; + var left; + var interactable = interaction.interactable, + element = interaction.element; + var options = interactable.options[interaction.prepared.name].autoScroll; + var container = getContainer(options.container, interactable, element); + + if (__is_7.window(container)) { + left = pointer.clientX < autoScroll.margin; + top = pointer.clientY < autoScroll.margin; + right = pointer.clientX > container.innerWidth - autoScroll.margin; + bottom = pointer.clientY > container.innerHeight - autoScroll.margin; + } else { + var rect = __domUtils_7.getElementClientRect(container); + left = pointer.clientX < rect.left + autoScroll.margin; + top = pointer.clientY < rect.top + autoScroll.margin; + right = pointer.clientX > rect.right - autoScroll.margin; + bottom = pointer.clientY > rect.bottom - autoScroll.margin; + } + + autoScroll.x = right ? 1 : left ? -1 : 0; + autoScroll.y = bottom ? 1 : top ? -1 : 0; + + if (!autoScroll.isScrolling) { + // set the autoScroll properties to those of the target + autoScroll.margin = options.margin; + autoScroll.speed = options.speed; + autoScroll.start(interaction); + } + } +}; + +function getContainer(value, interactable, element) { + return (__is_7.string(value) ? (0, _$rect_62.getStringOptionResult)(value, interactable, element) : value) || (0, _$window_65.getWindow)(element); +} + +function getScroll(container) { + if (__is_7.window(container)) { + container = window.document.body; + } + + return { + x: container.scrollLeft, + y: container.scrollTop + }; +} + +function getScrollSize(container) { + if (__is_7.window(container)) { + container = window.document.body; + } + + return { + x: container.scrollWidth, + y: container.scrollHeight + }; +} + +function getScrollSizeDelta(_ref2, func) { + var interaction = _ref2.interaction, + element = _ref2.element; + var scrollOptions = interaction && interaction.interactable.options[interaction.prepared.name].autoScroll; + + if (!scrollOptions || !scrollOptions.enabled) { + func(); + return { + x: 0, + y: 0 + }; + } + + var scrollContainer = getContainer(scrollOptions.container, interaction.interactable, element); + var prevSize = getScroll(scrollContainer); + func(); + var curSize = getScroll(scrollContainer); + return { + x: curSize.x - prevSize.x, + y: curSize.y - prevSize.y + }; +} + +var ___default_7 = { + id: 'auto-scroll', + install: __install_7, + listeners: { + 'interactions:new': function interactionsNew(_ref3) { + var interaction = _ref3.interaction; + interaction.autoScroll = null; + }, + 'interactions:destroy': function interactionsDestroy(_ref4) { + var interaction = _ref4.interaction; + interaction.autoScroll = null; + autoScroll.stop(); + + if (autoScroll.interaction) { + autoScroll.interaction = null; + } + }, + 'interactions:stop': autoScroll.stop, + 'interactions:action-move': function interactionsActionMove(arg) { + return autoScroll.onInteractionMove(arg); + } + } +}; +_$autoScroll_7["default"] = ___default_7; + +var _$InteractableMethods_8 = {}; +"use strict"; + +function ___typeof_8(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_8 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_8 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_8(obj); } + +Object.defineProperty(_$InteractableMethods_8, "__esModule", { + value: true +}); +_$InteractableMethods_8["default"] = void 0; + +/* removed: var _$utils_55 = require("../utils/index.js"); */; + +var __is_8 = ___interopRequireWildcard_8(_$is_56); + +function ___getRequireWildcardCache_8() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_8 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_8(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_8(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_8(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +// TODO: there seems to be a @babel/preset-typescript bug causing regular import +// syntax to remain in js output +function __install_8(scope) { + var Interactable = scope.Interactable, + actions = scope.actions; + Interactable.prototype.getAction = getAction; + /** + * ```js + * interact(element, { ignoreFrom: document.getElementById('no-action') }) + * // or + * interact(element).ignoreFrom('input, textarea, a') + * ``` + * @deprecated + * If the target of the `mousedown`, `pointerdown` or `touchstart` event or any + * of it's parents match the given CSS selector or Element, no + * drag/resize/gesture is started. + * + * Don't use this method. Instead set the `ignoreFrom` option for each action + * or for `pointerEvents` + * + * @example + * interact(targett) + * .draggable({ + * ignoreFrom: 'input, textarea, a[href]'', + * }) + * .pointerEvents({ + * ignoreFrom: '[no-pointer]', + * }) + * + * @param {string | Element | null} [newValue] a CSS selector string, an + * Element or `null` to not ignore any elements + * @return {string | Element | object} The current ignoreFrom value or this + * Interactable + */ + + Interactable.prototype.ignoreFrom = (0, _$utils_55.warnOnce)(function (newValue) { + return this._backCompatOption('ignoreFrom', newValue); + }, 'Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue}).'); + /** + * @deprecated + * + * A drag/resize/gesture is started only If the target of the `mousedown`, + * `pointerdown` or `touchstart` event or any of it's parents match the given + * CSS selector or Element. + * + * Don't use this method. Instead set the `allowFrom` option for each action + * or for `pointerEvents` + * + * @example + * interact(targett) + * .resizable({ + * allowFrom: '.resize-handle', + * .pointerEvents({ + * allowFrom: '.handle',, + * }) + * + * @param {string | Element | null} [newValue] a CSS selector string, an + * Element or `null` to allow from any element + * @return {string | Element | object} The current allowFrom value or this + * Interactable + */ + + Interactable.prototype.allowFrom = (0, _$utils_55.warnOnce)(function (newValue) { + return this._backCompatOption('allowFrom', newValue); + }, 'Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue}).'); + /** + * ```js + * interact('.resize-drag') + * .resizable(true) + * .draggable(true) + * .actionChecker(function (pointer, event, action, interactable, element, interaction) { + * + * if (interact.matchesSelector(event.target, '.drag-handle')) { + * // force drag with handle target + * action.name = drag + * } + * else { + * // resize from the top and right edges + * action.name = 'resize' + * action.edges = { top: true, right: true } + * } + * + * return action + * }) + * ``` + * + * Returns or sets the function used to check action to be performed on + * pointerDown + * + * @param {function | null} [checker] A function which takes a pointer event, + * defaultAction string, interactable, element and interaction as parameters + * and returns an object with name property 'drag' 'resize' or 'gesture' and + * optionally an `edges` object with boolean 'top', 'left', 'bottom' and right + * props. + * @return {Function | Interactable} The checker function or this Interactable + */ + + Interactable.prototype.actionChecker = actionChecker; + /** + * Returns or sets whether the the cursor should be changed depending on the + * action that would be performed if the mouse were pressed and dragged. + * + * @param {boolean} [newValue] + * @return {boolean | Interactable} The current setting or this Interactable + */ + + Interactable.prototype.styleCursor = styleCursor; + + Interactable.prototype.defaultActionChecker = function (pointer, event, interaction, element) { + return defaultActionChecker(this, pointer, event, interaction, element, actions); + }; +} + +function getAction(pointer, event, interaction, element) { + var action = this.defaultActionChecker(pointer, event, interaction, element); + + if (this.options.actionChecker) { + return this.options.actionChecker(pointer, event, action, this, element, interaction); + } + + return action; +} + +function defaultActionChecker(interactable, pointer, event, interaction, element, actions) { + var rect = interactable.getRect(element); + var buttons = event.buttons || { + 0: 1, + 1: 4, + 3: 8, + 4: 16 + }[event.button]; + var action = null; + + for (var _i = 0; _i < actions.names.length; _i++) { + var _ref; + + _ref = actions.names[_i]; + var actionName = _ref; + + // check mouseButton setting if the pointer is down + if (interaction.pointerIsDown && /mouse|pointer/.test(interaction.pointerType) && (buttons & interactable.options[actionName].mouseButtons) === 0) { + continue; + } + + action = actions[actionName].checker(pointer, event, interactable, element, interaction, rect); + + if (action) { + return action; + } + } +} + +function styleCursor(newValue) { + if (__is_8.bool(newValue)) { + this.options.styleCursor = newValue; + return this; + } + + if (newValue === null) { + delete this.options.styleCursor; + return this; + } + + return this.options.styleCursor; +} + +function actionChecker(checker) { + if (__is_8.func(checker)) { + this.options.actionChecker = checker; + return this; + } + + if (checker === null) { + delete this.options.actionChecker; + return this; + } + + return this.options.actionChecker; +} + +var ___default_8 = { + id: 'auto-start/interactableMethods', + install: __install_8 +}; +_$InteractableMethods_8["default"] = ___default_8; + +var _$base_9 = {}; +"use strict"; + +function ___typeof_9(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_9 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_9 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_9(obj); } + +Object.defineProperty(_$base_9, "__esModule", { + value: true +}); +_$base_9["default"] = void 0; + +var __utils_9 = ___interopRequireWildcard_9(_$utils_55); + +var _InteractableMethods = ___interopRequireDefault_9(_$InteractableMethods_8); + +function ___interopRequireDefault_9(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_9() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_9 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_9(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_9(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_9(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function __install_9(scope) { + var interact = scope.interact, + defaults = scope.defaults; + scope.usePlugin(_InteractableMethods["default"]); + defaults.base.actionChecker = null; + defaults.base.styleCursor = true; + __utils_9.extend(defaults.perAction, { + manualStart: false, + max: Infinity, + maxPerElement: 1, + allowFrom: null, + ignoreFrom: null, + // only allow left button by default + // see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons#Return_value + mouseButtons: 1 + }); + /** + * Returns or sets the maximum number of concurrent interactions allowed. By + * default only 1 interaction is allowed at a time (for backwards + * compatibility). To allow multiple interactions on the same Interactables and + * elements, you need to enable it in the draggable, resizable and gesturable + * `'max'` and `'maxPerElement'` options. + * + * @alias module:interact.maxInteractions + * + * @param {number} [newValue] Any number. newValue <= 0 means no interactions. + */ + + interact.maxInteractions = function (newValue) { + return maxInteractions(newValue, scope); + }; + + scope.autoStart = { + // Allow this many interactions to happen simultaneously + maxInteractions: Infinity, + withinInteractionLimit: withinInteractionLimit, + cursorElement: null + }; +} + +function prepareOnDown(_ref, scope) { + var interaction = _ref.interaction, + pointer = _ref.pointer, + event = _ref.event, + eventTarget = _ref.eventTarget; + + if (interaction.interacting()) { + return; + } + + var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope); + prepare(interaction, actionInfo, scope); +} + +function prepareOnMove(_ref2, scope) { + var interaction = _ref2.interaction, + pointer = _ref2.pointer, + event = _ref2.event, + eventTarget = _ref2.eventTarget; + + if (interaction.pointerType !== 'mouse' || interaction.pointerIsDown || interaction.interacting()) { + return; + } + + var actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope); + prepare(interaction, actionInfo, scope); +} + +function startOnMove(arg, scope) { + var interaction = arg.interaction; + + if (!interaction.pointerIsDown || interaction.interacting() || !interaction.pointerWasMoved || !interaction.prepared.name) { + return; + } + + scope.fire('autoStart:before-start', arg); + var interactable = interaction.interactable; + + if (interaction.prepared.name && interactable) { + // check manualStart and interaction limit + if (interactable.options[interaction.prepared.name].manualStart || !withinInteractionLimit(interactable, interaction.element, interaction.prepared, scope)) { + interaction.stop(); + } else { + interaction.start(interaction.prepared, interactable, interaction.element); + setInteractionCursor(interaction, scope); + } + } +} + +function clearCursorOnStop(_ref3, scope) { + var interaction = _ref3.interaction; + var interactable = interaction.interactable; + + if (interactable && interactable.options.styleCursor) { + setCursor(interaction.element, '', scope); + } +} // Check if the current interactable supports the action. +// If so, return the validated action. Otherwise, return null + + +function validateAction(action, interactable, element, eventTarget, scope) { + if (interactable.testIgnoreAllow(interactable.options[action.name], element, eventTarget) && interactable.options[action.name].enabled && withinInteractionLimit(interactable, element, action, scope)) { + return action; + } + + return null; +} + +function validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope) { + for (var i = 0, len = matches.length; i < len; i++) { + var match = matches[i]; + var matchElement = matchElements[i]; + var matchAction = match.getAction(pointer, event, interaction, matchElement); + + if (!matchAction) { + continue; + } + + var action = validateAction(matchAction, match, matchElement, eventTarget, scope); + + if (action) { + return { + action: action, + interactable: match, + element: matchElement + }; + } + } + + return { + action: null, + interactable: null, + element: null + }; +} + +function getActionInfo(interaction, pointer, event, eventTarget, scope) { + var matches = []; + var matchElements = []; + var element = eventTarget; + + function pushMatches(interactable) { + matches.push(interactable); + matchElements.push(element); + } + + while (__utils_9.is.element(element)) { + matches = []; + matchElements = []; + scope.interactables.forEachMatch(element, pushMatches); + var actionInfo = validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope); + + if (actionInfo.action && !actionInfo.interactable.options[actionInfo.action.name].manualStart) { + return actionInfo; + } + + element = __utils_9.dom.parentNode(element); + } + + return { + action: null, + interactable: null, + element: null + }; +} + +function prepare(interaction, _ref4, scope) { + var action = _ref4.action, + interactable = _ref4.interactable, + element = _ref4.element; + action = action || { + name: null + }; // clear previous target element cursor + + if (interaction.interactable && interaction.interactable.options.styleCursor) { + setCursor(interaction.element, '', scope); + } + + interaction.interactable = interactable; + interaction.element = element; + __utils_9.copyAction(interaction.prepared, action); + interaction.rect = interactable && action.name ? interactable.getRect(element) : null; + setInteractionCursor(interaction, scope); + scope.fire('autoStart:prepared', { + interaction: interaction + }); +} + +function withinInteractionLimit(interactable, element, action, scope) { + var options = interactable.options; + var maxActions = options[action.name].max; + var maxPerElement = options[action.name].maxPerElement; + var autoStartMax = scope.autoStart.maxInteractions; + var activeInteractions = 0; + var interactableCount = 0; + var elementCount = 0; // no actions if any of these values == 0 + + if (!(maxActions && maxPerElement && autoStartMax)) { + return false; + } + + for (var _i = 0; _i < scope.interactions.list.length; _i++) { + var _ref5; + + _ref5 = scope.interactions.list[_i]; + var interaction = _ref5; + var otherAction = interaction.prepared.name; + + if (!interaction.interacting()) { + continue; + } + + activeInteractions++; + + if (activeInteractions >= autoStartMax) { + return false; + } + + if (interaction.interactable !== interactable) { + continue; + } + + interactableCount += otherAction === action.name ? 1 : 0; + + if (interactableCount >= maxActions) { + return false; + } + + if (interaction.element === element) { + elementCount++; + + if (otherAction === action.name && elementCount >= maxPerElement) { + return false; + } + } + } + + return autoStartMax > 0; +} + +function maxInteractions(newValue, scope) { + if (__utils_9.is.number(newValue)) { + scope.autoStart.maxInteractions = newValue; + return this; + } + + return scope.autoStart.maxInteractions; +} + +function setCursor(element, cursor, scope) { + if (scope.autoStart.cursorElement) { + scope.autoStart.cursorElement.style.cursor = ''; + } + + element.ownerDocument.documentElement.style.cursor = cursor; + element.style.cursor = cursor; + scope.autoStart.cursorElement = cursor ? element : null; +} + +function setInteractionCursor(interaction, scope) { + var interactable = interaction.interactable, + element = interaction.element, + prepared = interaction.prepared; + + if (!(interaction.pointerType === 'mouse' && interactable && interactable.options.styleCursor)) { + return; + } + + var cursor = ''; + + if (prepared.name) { + var cursorChecker = interactable.options[prepared.name].cursorChecker; + + if (__utils_9.is.func(cursorChecker)) { + cursor = cursorChecker(prepared, interactable, element, interaction._interacting); + } else { + cursor = scope.actions[prepared.name].getCursor(prepared); + } + } + + setCursor(interaction.element, cursor || '', scope); +} + +var ___default_9 = { + id: 'auto-start/base', + install: __install_9, + listeners: { + 'interactions:down': prepareOnDown, + 'interactions:move': function interactionsMove(arg, scope) { + prepareOnMove(arg, scope); + startOnMove(arg, scope); + }, + 'interactions:stop': clearCursorOnStop + }, + before: 'ations', + maxInteractions: maxInteractions, + withinInteractionLimit: withinInteractionLimit, + validateAction: validateAction +}; +_$base_9["default"] = ___default_9; + +var _$dragAxis_10 = {}; +"use strict"; + +function ___typeof_10(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_10 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_10 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_10(obj); } + +Object.defineProperty(_$dragAxis_10, "__esModule", { + value: true +}); +_$dragAxis_10["default"] = void 0; + +var ___scope_10 = _$scope_24({}); + +/* removed: var _$domUtils_50 = require("../utils/domUtils.js"); */; + +var __is_10 = ___interopRequireWildcard_10(_$is_56); + +var _base = ___interopRequireDefault_10(_$base_9); + +function ___interopRequireDefault_10(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_10() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_10 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_10(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_10(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_10(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function beforeStart(_ref, scope) { + var interaction = _ref.interaction, + eventTarget = _ref.eventTarget, + dx = _ref.dx, + dy = _ref.dy; + + if (interaction.prepared.name !== 'drag') { + return; + } // check if a drag is in the correct axis + + + var absX = Math.abs(dx); + var absY = Math.abs(dy); + var targetOptions = interaction.interactable.options.drag; + var startAxis = targetOptions.startAxis; + var currentAxis = absX > absY ? 'x' : absX < absY ? 'y' : 'xy'; + interaction.prepared.axis = targetOptions.lockAxis === 'start' ? currentAxis[0] // always lock to one axis even if currentAxis === 'xy' + : targetOptions.lockAxis; // if the movement isn't in the startAxis of the interactable + + if (currentAxis !== 'xy' && startAxis !== 'xy' && startAxis !== currentAxis) { + // cancel the prepared action + interaction.prepared.name = null; // then try to get a drag from another ineractable + + var element = eventTarget; + + var getDraggable = function getDraggable(interactable) { + if (interactable === interaction.interactable) { + return; + } + + var options = interaction.interactable.options.drag; + + if (!options.manualStart && interactable.testIgnoreAllow(options, element, eventTarget)) { + var action = interactable.getAction(interaction.downPointer, interaction.downEvent, interaction, element); + + if (action && action.name === ___scope_10.ActionName.Drag && checkStartAxis(currentAxis, interactable) && _base["default"].validateAction(action, interactable, element, eventTarget, scope)) { + return interactable; + } + } + }; // check all interactables + + + while (__is_10.element(element)) { + var interactable = scope.interactables.forEachMatch(element, getDraggable); + + if (interactable) { + interaction.prepared.name = ___scope_10.ActionName.Drag; + interaction.interactable = interactable; + interaction.element = element; + break; + } + + element = (0, _$domUtils_50.parentNode)(element); + } + } +} + +function checkStartAxis(startAxis, interactable) { + if (!interactable) { + return false; + } + + var thisAxis = interactable.options[___scope_10.ActionName.Drag].startAxis; + return startAxis === 'xy' || thisAxis === 'xy' || thisAxis === startAxis; +} + +var ___default_10 = { + id: 'auto-start/dragAxis', + listeners: { + 'autoStart:before-start': beforeStart + } +}; +_$dragAxis_10["default"] = ___default_10; + +var _$hold_11 = {}; +"use strict"; + +Object.defineProperty(_$hold_11, "__esModule", { + value: true +}); +_$hold_11["default"] = void 0; + +var ___base_11 = ___interopRequireDefault_11(_$base_9); + +function ___interopRequireDefault_11(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function __install_11(scope) { + var defaults = scope.defaults; + scope.usePlugin(___base_11["default"]); + defaults.perAction.hold = 0; + defaults.perAction.delay = 0; +} + +function getHoldDuration(interaction) { + var actionName = interaction.prepared && interaction.prepared.name; + + if (!actionName) { + return null; + } + + var options = interaction.interactable.options; + return options[actionName].hold || options[actionName].delay; +} + +var ___default_11 = { + id: 'auto-start/hold', + install: __install_11, + listeners: { + 'interactions:new': function interactionsNew(_ref) { + var interaction = _ref.interaction; + interaction.autoStartHoldTimer = null; + }, + 'autoStart:prepared': function autoStartPrepared(_ref2) { + var interaction = _ref2.interaction; + var hold = getHoldDuration(interaction); + + if (hold > 0) { + interaction.autoStartHoldTimer = setTimeout(function () { + interaction.start(interaction.prepared, interaction.interactable, interaction.element); + }, hold); + } + }, + 'interactions:move': function interactionsMove(_ref3) { + var interaction = _ref3.interaction, + duplicate = _ref3.duplicate; + + if (interaction.pointerWasMoved && !duplicate) { + clearTimeout(interaction.autoStartHoldTimer); + } + }, + // prevent regular down->move autoStart + 'autoStart:before-start': function autoStartBeforeStart(_ref4) { + var interaction = _ref4.interaction; + var hold = getHoldDuration(interaction); + + if (hold > 0) { + interaction.prepared.name = null; + } + } + }, + getHoldDuration: getHoldDuration +}; +_$hold_11["default"] = ___default_11; + +var _$autoStart_12 = {}; +"use strict"; + +Object.defineProperty(_$autoStart_12, "__esModule", { + value: true +}); +_$autoStart_12.install = __install_12; +Object.defineProperty(_$autoStart_12, "autoStart", { + enumerable: true, + get: function get() { + return ___base_12["default"]; + } +}); +Object.defineProperty(_$autoStart_12, "dragAxis", { + enumerable: true, + get: function get() { + return _dragAxis["default"]; + } +}); +Object.defineProperty(_$autoStart_12, "hold", { + enumerable: true, + get: function get() { + return _hold["default"]; + } +}); +_$autoStart_12.id = void 0; + +var ___base_12 = ___interopRequireDefault_12(_$base_9); + +var _dragAxis = ___interopRequireDefault_12(_$dragAxis_10); + +var _hold = ___interopRequireDefault_12(_$hold_11); + +function ___interopRequireDefault_12(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function __install_12(scope) { + scope.usePlugin(___base_12["default"]); + scope.usePlugin(_hold["default"]); + scope.usePlugin(_dragAxis["default"]); +} + +var __id_12 = 'auto-start'; +_$autoStart_12.id = __id_12; + +var _$interactablePreventDefault_21 = {}; +"use strict"; + +function ___typeof_21(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_21 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_21 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_21(obj); } + +Object.defineProperty(_$interactablePreventDefault_21, "__esModule", { + value: true +}); +_$interactablePreventDefault_21.install = __install_21; +_$interactablePreventDefault_21["default"] = void 0; + +/* removed: var _$domUtils_50 = require("../utils/domUtils.js"); */; + +var ___events_21 = ___interopRequireDefault_21(_$events_51); + +var __is_21 = ___interopRequireWildcard_21(_$is_56); + +/* removed: var _$window_65 = require("../utils/window.js"); */; + +function ___getRequireWildcardCache_21() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_21 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_21(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_21(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_21(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_21(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function preventDefault(newValue) { + if (/^(always|never|auto)$/.test(newValue)) { + this.options.preventDefault = newValue; + return this; + } + + if (__is_21.bool(newValue)) { + this.options.preventDefault = newValue ? 'always' : 'never'; + return this; + } + + return this.options.preventDefault; +} + +function checkAndPreventDefault(interactable, scope, event) { + var setting = interactable.options.preventDefault; + + if (setting === 'never') { + return; + } + + if (setting === 'always') { + event.preventDefault(); + return; + } // setting === 'auto' + // if the browser supports passive event listeners and isn't running on iOS, + // don't preventDefault of touch{start,move} events. CSS touch-action and + // user-select should be used instead of calling event.preventDefault(). + + + if (___events_21["default"].supportsPassive && /^touch(start|move)$/.test(event.type)) { + var doc = (0, _$window_65.getWindow)(event.target).document; + var docOptions = scope.getDocOptions(doc); + + if (!(docOptions && docOptions.events) || docOptions.events.passive !== false) { + return; + } + } // don't preventDefault of pointerdown events + + + if (/^(mouse|pointer|touch)*(down|start)/i.test(event.type)) { + return; + } // don't preventDefault on editable elements + + + if (__is_21.element(event.target) && (0, _$domUtils_50.matchesSelector)(event.target, 'input,select,textarea,[contenteditable=true],[contenteditable=true] *')) { + return; + } + + event.preventDefault(); +} + +function onInteractionEvent(_ref) { + var interaction = _ref.interaction, + event = _ref.event; + + if (interaction.interactable) { + interaction.interactable.checkAndPreventDefault(event); + } +} + +function __install_21(scope) { + /** @lends Interactable */ + var Interactable = scope.Interactable; + /** + * Returns or sets whether to prevent the browser's default behaviour in + * response to pointer events. Can be set to: + * - `'always'` to always prevent + * - `'never'` to never prevent + * - `'auto'` to let interact.js try to determine what would be best + * + * @param {string} [newValue] `'always'`, `'never'` or `'auto'` + * @return {string | Interactable} The current setting or this Interactable + */ + + Interactable.prototype.preventDefault = preventDefault; + + Interactable.prototype.checkAndPreventDefault = function (event) { + return checkAndPreventDefault(this, scope, event); + }; // prevent native HTML5 drag on interact.js target elements + + + scope.interactions.docEvents.push({ + type: 'dragstart', + listener: function listener(event) { + for (var _i = 0; _i < scope.interactions.list.length; _i++) { + var _ref2; + + _ref2 = scope.interactions.list[_i]; + var interaction = _ref2; + + if (interaction.element && (interaction.element === event.target || (0, _$domUtils_50.nodeContains)(interaction.element, event.target))) { + interaction.interactable.checkAndPreventDefault(event); + return; + } + } + } + }); +} + +var ___default_21 = { + id: 'core/interactablePreventDefault', + install: __install_21, + listeners: ['down', 'move', 'up', 'cancel'].reduce(function (acc, eventType) { + acc["interactions:".concat(eventType)] = onInteractionEvent; + return acc; + }, {}) +}; +_$interactablePreventDefault_21["default"] = ___default_21; + +var _$devTools_25 = {}; +"use strict"; + +function ___typeof_25(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_25 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_25 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_25(obj); } + +Object.defineProperty(_$devTools_25, "__esModule", { + value: true +}); +_$devTools_25["default"] = void 0; + +var ___domObjects_25 = ___interopRequireDefault_25(_$domObjects_49); + +/* removed: var _$domUtils_50 = require("../utils/domUtils.js"); */; + +var ___extend_25 = ___interopRequireDefault_25(_$extend_52); + +var __is_25 = ___interopRequireWildcard_25(_$is_56); + +var ___window_25 = ___interopRequireDefault_25(_$window_65); + +function ___getRequireWildcardCache_25() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_25 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_25(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_25(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_25(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_25(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___toConsumableArray_25(arr) { return ___arrayWithoutHoles_25(arr) || ___iterableToArray_25(arr) || ___nonIterableSpread_25(); } + +function ___nonIterableSpread_25() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } + +function ___iterableToArray_25(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } + +function ___arrayWithoutHoles_25(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } + +var CheckName; + +(function (CheckName) { + CheckName["touchAction"] = ""; + CheckName["boxSizing"] = ""; + CheckName["noListeners"] = ""; +})(CheckName || (CheckName = {})); + +var prefix = '[interact.js] '; +var links = { + touchAction: 'https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action', + boxSizing: 'https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing' +}; +var isProduction = undefined === 'production'; // eslint-disable-next-line no-restricted-syntax + +function __install_25(scope) { + var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + logger = _ref.logger; + + var Interactable = scope.Interactable, + defaults = scope.defaults; + scope.logger = logger || console; + defaults.base.devTools = { + ignore: {} + }; + + Interactable.prototype.devTools = function (options) { + if (options) { + (0, ___extend_25["default"])(this.options.devTools, options); + return this; + } + + return this.options.devTools; + }; +} + +var checks = [{ + name: 'touchAction', + perform: function perform(_ref2) { + var element = _ref2.element; + return !parentHasStyle(element, 'touchAction', /pan-|pinch|none/); + }, + getInfo: function getInfo(_ref3) { + var element = _ref3.element; + return [element, links.touchAction]; + }, + text: 'Consider adding CSS "touch-action: none" to this element\n' +}, { + name: 'boxSizing', + perform: function perform(interaction) { + var element = interaction.element; + return interaction.prepared.name === 'resize' && element instanceof ___domObjects_25["default"].HTMLElement && !hasStyle(element, 'boxSizing', /border-box/); + }, + text: 'Consider adding CSS "box-sizing: border-box" to this resizable element', + getInfo: function getInfo(_ref4) { + var element = _ref4.element; + return [element, links.boxSizing]; + } +}, { + name: 'noListeners', + perform: function perform(interaction) { + var actionName = interaction.prepared.name; + var moveListeners = interaction.interactable.events.types["".concat(actionName, "move")] || []; + return !moveListeners.length; + }, + getInfo: function getInfo(interaction) { + return [interaction.prepared.name, interaction.interactable]; + }, + text: 'There are no listeners set for this action' +}]; + +function hasStyle(element, prop, styleRe) { + return styleRe.test(element.style[prop] || ___window_25["default"].window.getComputedStyle(element)[prop]); +} + +function parentHasStyle(element, prop, styleRe) { + var parent = element; + + while (__is_25.element(parent)) { + if (hasStyle(parent, prop, styleRe)) { + return true; + } + + parent = (0, _$domUtils_50.parentNode)(parent); + } + + return false; +} + +var __id_25 = 'dev-tools'; +var defaultExport = isProduction ? { + id: __id_25, + install: function install() {} +} : { + id: __id_25, + install: __install_25, + listeners: { + 'interactions:action-start': function interactionsActionStart(_ref5, scope) { + var interaction = _ref5.interaction; + + for (var _i = 0; _i < checks.length; _i++) { + var _ref6; + + _ref6 = checks[_i]; + var check = _ref6; + var options = interaction.interactable && interaction.interactable.options[interaction.prepared.name]; + + if (!(options && options.devTools && options.devTools.ignore[check.name]) && check.perform(interaction)) { + var _scope$logger; + + (_scope$logger = scope.logger).warn.apply(_scope$logger, [prefix + check.text].concat(___toConsumableArray_25(check.getInfo(interaction)))); + } + } + } + }, + checks: checks, + CheckName: CheckName, + links: links, + prefix: prefix +}; +var ___default_25 = defaultExport; +_$devTools_25["default"] = ___default_25; + +var _$base_30 = {}; +"use strict"; + +Object.defineProperty(_$base_30, "__esModule", { + value: true +}); +_$base_30.startAll = startAll; +_$base_30.setAll = setAll; +_$base_30.prepareStates = prepareStates; +_$base_30.setCoords = __setCoords_30; +_$base_30.restoreCoords = restoreCoords; +_$base_30.makeModifier = makeModifier; +_$base_30["default"] = void 0; + +var ___extend_30 = ___interopRequireDefault_30(_$extend_52); + +function ___interopRequireDefault_30(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___slicedToArray_30(arr, i) { return ___arrayWithHoles_30(arr) || ___iterableToArrayLimit_30(arr, i) || ___nonIterableRest_30(); } + +function ___nonIterableRest_30() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } + +function ___iterableToArrayLimit_30(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } + +function ___arrayWithHoles_30(arr) { if (Array.isArray(arr)) return arr; } + +function __start_30(_ref, pageCoords, prevCoords) { + var interaction = _ref.interaction, + phase = _ref.phase; + var interactable = interaction.interactable, + element = interaction.element; + var modifierList = getModifierList(interaction); + var states = prepareStates(modifierList); + var rect = (0, ___extend_30["default"])({}, interaction.rect); + + if (!('width' in rect)) { + rect.width = rect.right - rect.left; + } + + if (!('height' in rect)) { + rect.height = rect.bottom - rect.top; + } + + var startOffset = getRectOffset(rect, pageCoords); + interaction.modifiers.startOffset = startOffset; + interaction.modifiers.startDelta = { + x: 0, + y: 0 + }; + var arg = { + interaction: interaction, + interactable: interactable, + element: element, + pageCoords: pageCoords, + phase: phase, + rect: rect, + startOffset: startOffset, + states: states, + preEnd: false, + requireEndOnly: false, + prevCoords: prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page) + }; + interaction.modifiers.states = states; + interaction.modifiers.result = null; + startAll(arg); + var result = interaction.modifiers.result = setAll(arg); + return result; +} + +function startAll(arg) { + var states = arg.states; + + for (var _i = 0; _i < states.length; _i++) { + var _ref2; + + _ref2 = states[_i]; + var state = _ref2; + + if (state.methods.start) { + arg.state = state; + state.methods.start(arg); + } + } +} + +function setAll(arg) { + var prevCoords = arg.prevCoords, + phase = arg.phase, + preEnd = arg.preEnd, + requireEndOnly = arg.requireEndOnly, + rect = arg.rect, + states = arg.states; + arg.coords = (0, ___extend_30["default"])({}, arg.pageCoords); + arg.rect = (0, ___extend_30["default"])({}, rect); + var result = { + delta: { + x: 0, + y: 0 + }, + rectDelta: { + left: 0, + right: 0, + top: 0, + bottom: 0 + }, + coords: arg.coords, + changed: true + }; + + for (var _i2 = 0; _i2 < states.length; _i2++) { + var _ref3; + + _ref3 = states[_i2]; + var state = _ref3; + var options = state.options; + + if (!state.methods.set || !shouldDo(options, preEnd, requireEndOnly, phase)) { + continue; + } + + arg.state = state; + state.methods.set(arg); + } + + result.delta.x = arg.coords.x - arg.pageCoords.x; + result.delta.y = arg.coords.y - arg.pageCoords.y; + var rectChanged = false; + + if (rect) { + result.rectDelta.left = arg.rect.left - rect.left; + result.rectDelta.right = arg.rect.right - rect.right; + result.rectDelta.top = arg.rect.top - rect.top; + result.rectDelta.bottom = arg.rect.bottom - rect.bottom; + rectChanged = result.rectDelta.left !== 0 || result.rectDelta.right !== 0 || result.rectDelta.top !== 0 || result.rectDelta.bottom !== 0; + } + + result.changed = !prevCoords || prevCoords.x !== result.coords.x || prevCoords.y !== result.coords.y || rectChanged; + return result; +} + +function __beforeMove_30(arg) { + var interaction = arg.interaction, + phase = arg.phase, + preEnd = arg.preEnd, + skipModifiers = arg.skipModifiers; + var interactable = interaction.interactable, + element = interaction.element; + var states = skipModifiers ? interaction.modifiers.states.slice(skipModifiers) : interaction.modifiers.states; + var prevCoords = arg.prevCoords || (interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.coords.prev.page); + var modifierResult = setAll({ + interaction: interaction, + interactable: interactable, + element: element, + preEnd: preEnd, + phase: phase, + pageCoords: arg.modifiedCoords || interaction.coords.cur.page, + prevCoords: prevCoords, + rect: interaction.rect, + states: states, + requireEndOnly: false + }); + interaction.modifiers.result = modifierResult; // don't fire an action move if a modifier would keep the event in the same + // cordinates as before + + if (!modifierResult.changed && interaction.interacting()) { + return false; + } + + if (arg.modifiedCoords) { + var page = interaction.coords.cur.page; + var adjustment = { + x: arg.modifiedCoords.x - page.x, + y: arg.modifiedCoords.y - page.y + }; + modifierResult.coords.x += adjustment.x; + modifierResult.coords.y += adjustment.y; + modifierResult.delta.x += adjustment.x; + modifierResult.delta.y += adjustment.y; + } + + __setCoords_30(arg); +} + +function beforeEnd(arg) { + var interaction = arg.interaction, + event = arg.event, + noPreEnd = arg.noPreEnd; + var states = interaction.modifiers.states; + + if (noPreEnd || !states || !states.length) { + return; + } + + var didPreEnd = false; + + for (var _i3 = 0; _i3 < states.length; _i3++) { + var _ref4; + + _ref4 = states[_i3]; + var state = _ref4; + arg.state = state; + var options = state.options, + methods = state.methods; + var endResult = methods.beforeEnd && methods.beforeEnd(arg); + + if (endResult === false) { + interaction.modifiers.endPrevented = true; + return false; + } // if the endOnly option is true for any modifier + + + if (!didPreEnd && shouldDo(options, true, true)) { + // fire a move event at the modified coordinates + interaction.move({ + event: event, + preEnd: true + }); + didPreEnd = true; + } + } +} + +function stop(arg) { + var interaction = arg.interaction; + var states = interaction.modifiers.states; + + if (!states || !states.length) { + return; + } + + var modifierArg = (0, ___extend_30["default"])({ + states: states, + interactable: interaction.interactable, + element: interaction.element, + rect: null + }, arg); + + for (var _i4 = 0; _i4 < states.length; _i4++) { + var _ref5; + + _ref5 = states[_i4]; + var state = _ref5; + modifierArg.state = state; + + if (state.methods.stop) { + state.methods.stop(modifierArg); + } + } + + arg.interaction.modifiers.states = null; + arg.interaction.modifiers.endPrevented = null; +} + +function getModifierList(interaction) { + var actionOptions = interaction.interactable.options[interaction.prepared.name]; + var actionModifiers = actionOptions.modifiers; + + if (actionModifiers && actionModifiers.length) { + return actionModifiers.filter(function (modifier) { + return !modifier.options || modifier.options.enabled !== false; + }); + } + + return ['snap', 'snapSize', 'snapEdges', 'restrict', 'restrictEdges', 'restrictSize'].map(function (type) { + var options = actionOptions[type]; + return options && options.enabled && { + options: options, + methods: options._methods + }; + }).filter(function (m) { + return !!m; + }); +} + +function prepareStates(modifierList) { + var states = []; + + for (var index = 0; index < modifierList.length; index++) { + var _modifierList$index = modifierList[index], + options = _modifierList$index.options, + methods = _modifierList$index.methods, + name = _modifierList$index.name; + + if (options && options.enabled === false) { + continue; + } + + states.push({ + options: options, + methods: methods, + index: index, + name: name + }); + } + + return states; +} + +function __setCoords_30(arg) { + var interaction = arg.interaction, + phase = arg.phase; + var curCoords = interaction.coords.cur; + var startCoords = interaction.coords.start; + var _interaction$modifier = interaction.modifiers, + result = _interaction$modifier.result, + startDelta = _interaction$modifier.startDelta; + var curDelta = result.delta; + + if (phase === 'start') { + (0, ___extend_30["default"])(interaction.modifiers.startDelta, result.delta); + } + + var _arr = [[startCoords, startDelta], [curCoords, curDelta]]; + + for (var _i5 = 0; _i5 < _arr.length; _i5++) { + var _arr$_i = ___slicedToArray_30(_arr[_i5], 2), + coordsSet = _arr$_i[0], + delta = _arr$_i[1]; + + coordsSet.page.x += delta.x; + coordsSet.page.y += delta.y; + coordsSet.client.x += delta.x; + coordsSet.client.y += delta.y; + } + + var rectDelta = interaction.modifiers.result.rectDelta; + var rect = arg.rect || interaction.rect; + rect.left += rectDelta.left; + rect.right += rectDelta.right; + rect.top += rectDelta.top; + rect.bottom += rectDelta.bottom; + rect.width = rect.right - rect.left; + rect.height = rect.bottom - rect.top; +} + +function restoreCoords(_ref6) { + var _ref6$interaction = _ref6.interaction, + coords = _ref6$interaction.coords, + rect = _ref6$interaction.rect, + modifiers = _ref6$interaction.modifiers; + + if (!modifiers.result) { + return; + } + + var startDelta = modifiers.startDelta; + var _modifiers$result = modifiers.result, + curDelta = _modifiers$result.delta, + rectDelta = _modifiers$result.rectDelta; + var coordsAndDeltas = [[coords.start, startDelta], [coords.cur, curDelta]]; + + for (var _i6 = 0; _i6 < coordsAndDeltas.length; _i6++) { + var _coordsAndDeltas$_i = ___slicedToArray_30(coordsAndDeltas[_i6], 2), + coordsSet = _coordsAndDeltas$_i[0], + delta = _coordsAndDeltas$_i[1]; + + coordsSet.page.x -= delta.x; + coordsSet.page.y -= delta.y; + coordsSet.client.x -= delta.x; + coordsSet.client.y -= delta.y; + } + + rect.left -= rectDelta.left; + rect.right -= rectDelta.right; + rect.top -= rectDelta.top; + rect.bottom -= rectDelta.bottom; +} + +function shouldDo(options, preEnd, requireEndOnly, phase) { + return options ? options.enabled !== false && (preEnd || !options.endOnly) && (!requireEndOnly || options.endOnly || options.alwaysOnEnd) && (options.setStart || phase !== 'start') : !requireEndOnly; +} + +function getRectOffset(rect, coords) { + return rect ? { + left: coords.x - rect.left, + top: coords.y - rect.top, + right: rect.right - coords.x, + bottom: rect.bottom - coords.y + } : { + left: 0, + top: 0, + right: 0, + bottom: 0 + }; +} + +function makeModifier(module, name) { + var defaults = module.defaults; + var methods = { + start: module.start, + set: module.set, + beforeEnd: module.beforeEnd, + stop: module.stop + }; + + var modifier = function modifier(_options) { + var options = _options || {}; + options.enabled = options.enabled !== false; // add missing defaults to options + + for (var prop in defaults) { + if (!(prop in options)) { + options[prop] = defaults[prop]; + } + } + + var m = { + options: options, + methods: methods, + name: name + }; + return m; + }; + + if (name && typeof name === 'string') { + // for backwrads compatibility + modifier._defaults = defaults; + modifier._methods = methods; + } + + return modifier; +} + +var ___default_30 = { + id: 'modifiers/base', + install: function install(scope) { + scope.defaults.perAction.modifiers = []; + }, + listeners: { + 'interactions:new': function interactionsNew(_ref7) { + var interaction = _ref7.interaction; + interaction.modifiers = { + startOffset: { + left: 0, + right: 0, + top: 0, + bottom: 0 + }, + offsets: {}, + states: null, + result: null, + endPrevented: false, + startDelta: null + }; + }, + 'interactions:before-action-start': function interactionsBeforeActionStart(arg) { + __start_30(arg, arg.interaction.coords.start.page, arg.interaction.coords.prev.page); + __setCoords_30(arg); + }, + 'interactions:action-resume': function interactionsActionResume(arg) { + stop(arg); + __start_30(arg, arg.interaction.coords.cur.page, arg.interaction.modifiers.result.coords); + __beforeMove_30(arg); + }, + 'interactions:after-action-move': restoreCoords, + 'interactions:before-action-move': __beforeMove_30, + 'interactions:after-action-start': restoreCoords, + 'interactions:before-action-end': beforeEnd, + 'interactions:stop': stop + }, + before: 'ations', + startAll: startAll, + setAll: setAll, + prepareStates: prepareStates, + start: __start_30, + beforeMove: __beforeMove_30, + beforeEnd: beforeEnd, + stop: stop, + shouldDo: shouldDo, + getModifierList: getModifierList, + getRectOffset: getRectOffset, + makeModifier: makeModifier +}; +_$base_30["default"] = ___default_30; + +var _$inertia_26 = {}; +"use strict"; + +function ___typeof_26(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_26 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_26 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_26(obj); } + +Object.defineProperty(_$inertia_26, "__esModule", { + value: true +}); +_$inertia_26["default"] = void 0; + +/* removed: var _$InteractEvent_15 = require("../core/InteractEvent.js"); */; + +var ___base_26 = ___interopRequireWildcard_26(_$base_30); + +var __utils_26 = ___interopRequireWildcard_26(_$utils_55); + +var ___raf_26 = ___interopRequireDefault_26(_$raf_61); + +function ___interopRequireDefault_26(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_26() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_26 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_26(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_26(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_26(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +_$InteractEvent_15.EventPhase.Resume = 'resume'; +_$InteractEvent_15.EventPhase.InertiaStart = 'inertiastart'; + +function __install_26(scope) { + var defaults = scope.defaults; + scope.usePlugin(___base_26["default"]); + defaults.perAction.inertia = { + enabled: false, + resistance: 10, + // the lambda in exponential decay + minSpeed: 100, + // target speed must be above this for inertia to start + endSpeed: 10, + // the speed at which inertia is slow enough to stop + allowResume: true, + // allow resuming an action in inertia phase + smoothEndDuration: 300 // animate to snap/restrict endOnly if there's no inertia + + }; +} + +function resume(_ref, scope) { + var interaction = _ref.interaction, + event = _ref.event, + pointer = _ref.pointer, + eventTarget = _ref.eventTarget; + var state = interaction.inertia; // Check if the down event hits the current inertia target + + if (state.active) { + var element = eventTarget; // climb up the DOM tree from the event target + + while (__utils_26.is.element(element)) { + // if interaction element is the current inertia target element + if (element === interaction.element) { + // stop inertia + ___raf_26["default"].cancel(state.timeout); + + state.active = false; + interaction.simulation = null; // update pointers to the down event's coordinates + + interaction.updatePointer(pointer, event, eventTarget, true); + __utils_26.pointer.setCoords(interaction.coords.cur, interaction.pointers.map(function (p) { + return p.pointer; + }), interaction._now()); // fire appropriate signals + + var signalArg = { + interaction: interaction, + phase: _$InteractEvent_15.EventPhase.Resume + }; + scope.fire('interactions:action-resume', signalArg); // fire a reume event + + var resumeEvent = new scope.InteractEvent(interaction, event, interaction.prepared.name, _$InteractEvent_15.EventPhase.Resume, interaction.element); + + interaction._fireEvent(resumeEvent); + + __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur); + break; + } + + element = __utils_26.dom.parentNode(element); + } + } +} + +function release(_ref2, scope) { + var interaction = _ref2.interaction, + event = _ref2.event, + noPreEnd = _ref2.noPreEnd; + var state = interaction.inertia; + + if (!interaction.interacting() || interaction.simulation && interaction.simulation.active || noPreEnd) { + return null; + } + + var options = __getOptions_26(interaction); + + var now = interaction._now(); + + var velocityClient = interaction.coords.velocity.client; + var pointerSpeed = __utils_26.hypot(velocityClient.x, velocityClient.y); + var smoothEnd = false; + var modifierResult; // check if inertia should be started + + var inertiaPossible = options && options.enabled && interaction.prepared.name !== 'gesture' && event !== state.startEvent; + var inertia = inertiaPossible && now - interaction.coords.cur.timeStamp < 50 && pointerSpeed > options.minSpeed && pointerSpeed > options.endSpeed; + var modifierArg = { + interaction: interaction, + interactable: interaction.interactable, + element: interaction.element, + rect: interaction.rect, + pageCoords: interaction.coords.cur.page, + states: inertiaPossible && interaction.modifiers.states.map(function (modifierStatus) { + return __utils_26.extend({}, modifierStatus); + }), + preEnd: true, + prevCoords: null, + requireEndOnly: null, + phase: _$InteractEvent_15.EventPhase.InertiaStart + }; // smoothEnd + + if (inertiaPossible && !inertia) { + modifierArg.prevCoords = interaction.modifiers.result ? interaction.modifiers.result.coords : interaction.prevEvent.page; + modifierArg.requireEndOnly = false; + modifierResult = ___base_26["default"].setAll(modifierArg); + + if (modifierResult.changed) { + smoothEnd = true; + } + } + + if (!(inertia || smoothEnd)) { + return null; + } + + __utils_26.pointer.copyCoords(state.upCoords, interaction.coords.cur); + (0, ___base_26.setCoords)(modifierArg); + interaction.pointers[0].pointer = state.startEvent = new scope.InteractEvent(interaction, event, // FIXME add proper typing Action.name + interaction.prepared.name, _$InteractEvent_15.EventPhase.InertiaStart, interaction.element); + (0, ___base_26.restoreCoords)(modifierArg); + state.t0 = now; + state.active = true; + state.allowResume = options.allowResume; + interaction.simulation = state; + interaction.interactable.fire(state.startEvent); + + if (inertia) { + state.vx0 = interaction.coords.velocity.client.x; + state.vy0 = interaction.coords.velocity.client.y; + state.v0 = pointerSpeed; + calcInertia(interaction, state); + __utils_26.extend(modifierArg.pageCoords, interaction.coords.cur.page); + modifierArg.pageCoords.x += state.xe; + modifierArg.pageCoords.y += state.ye; + modifierArg.prevCoords = null; + modifierArg.requireEndOnly = true; + modifierResult = ___base_26["default"].setAll(modifierArg); + state.modifiedXe += modifierResult.delta.x; + state.modifiedYe += modifierResult.delta.y; + state.timeout = ___raf_26["default"].request(function () { + return inertiaTick(interaction); + }); + } else { + state.smoothEnd = true; + state.xe = modifierResult.delta.x; + state.ye = modifierResult.delta.y; + state.sx = state.sy = 0; + state.timeout = ___raf_26["default"].request(function () { + return smothEndTick(interaction); + }); + } + + return false; +} + +function __stop_26(_ref3) { + var interaction = _ref3.interaction; + var state = interaction.inertia; + + if (state.active) { + ___raf_26["default"].cancel(state.timeout); + + state.active = false; + interaction.simulation = null; + } +} + +function calcInertia(interaction, state) { + var options = __getOptions_26(interaction); + var lambda = options.resistance; + var inertiaDur = -Math.log(options.endSpeed / state.v0) / lambda; + state.x0 = interaction.prevEvent.page.x; + state.y0 = interaction.prevEvent.page.y; + state.t0 = state.startEvent.timeStamp / 1000; + state.sx = state.sy = 0; + state.modifiedXe = state.xe = (state.vx0 - inertiaDur) / lambda; + state.modifiedYe = state.ye = (state.vy0 - inertiaDur) / lambda; + state.te = inertiaDur; + state.lambda_v0 = lambda / state.v0; + state.one_ve_v0 = 1 - options.endSpeed / state.v0; +} + +function inertiaTick(interaction) { + updateInertiaCoords(interaction); + __utils_26.pointer.setCoordDeltas(interaction.coords.delta, interaction.coords.prev, interaction.coords.cur); + __utils_26.pointer.setCoordVelocity(interaction.coords.velocity, interaction.coords.delta); + var state = interaction.inertia; + var options = __getOptions_26(interaction); + var lambda = options.resistance; + var t = interaction._now() / 1000 - state.t0; + + if (t < state.te) { + var progress = 1 - (Math.exp(-lambda * t) - state.lambda_v0) / state.one_ve_v0; + + if (state.modifiedXe === state.xe && state.modifiedYe === state.ye) { + state.sx = state.xe * progress; + state.sy = state.ye * progress; + } else { + var quadPoint = __utils_26.getQuadraticCurvePoint(0, 0, state.xe, state.ye, state.modifiedXe, state.modifiedYe, progress); + state.sx = quadPoint.x; + state.sy = quadPoint.y; + } + + interaction.move(); + state.timeout = ___raf_26["default"].request(function () { + return inertiaTick(interaction); + }); + } else { + state.sx = state.modifiedXe; + state.sy = state.modifiedYe; + interaction.move(); + interaction.end(state.startEvent); + state.active = false; + interaction.simulation = null; + } + + __utils_26.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur); +} + +function smothEndTick(interaction) { + updateInertiaCoords(interaction); + var state = interaction.inertia; + var t = interaction._now() - state.t0; + + var _getOptions = __getOptions_26(interaction), + duration = _getOptions.smoothEndDuration; + + if (t < duration) { + state.sx = __utils_26.easeOutQuad(t, 0, state.xe, duration); + state.sy = __utils_26.easeOutQuad(t, 0, state.ye, duration); + interaction.move(); + state.timeout = ___raf_26["default"].request(function () { + return smothEndTick(interaction); + }); + } else { + state.sx = state.xe; + state.sy = state.ye; + interaction.move(); + interaction.end(state.startEvent); + state.smoothEnd = state.active = false; + interaction.simulation = null; + } +} + +function updateInertiaCoords(interaction) { + var state = interaction.inertia; // return if inertia isn't running + + if (!state.active) { + return; + } + + var pageUp = state.upCoords.page; + var clientUp = state.upCoords.client; + __utils_26.pointer.setCoords(interaction.coords.cur, [{ + pageX: pageUp.x + state.sx, + pageY: pageUp.y + state.sy, + clientX: clientUp.x + state.sx, + clientY: clientUp.y + state.sy + }], interaction._now()); +} + +function __getOptions_26(_ref4) { + var interactable = _ref4.interactable, + prepared = _ref4.prepared; + return interactable && interactable.options && prepared.name && interactable.options[prepared.name].inertia; +} + +var ___default_26 = { + id: 'inertia', + install: __install_26, + listeners: { + 'interactions:new': function interactionsNew(_ref5) { + var interaction = _ref5.interaction; + interaction.inertia = { + active: false, + smoothEnd: false, + allowResume: false, + upCoords: {}, + timeout: null + }; + }, + 'interactions:before-action-end': release, + 'interactions:down': resume, + 'interactions:stop': __stop_26 + }, + before: 'modifiers/base', + calcInertia: calcInertia, + inertiaTick: inertiaTick, + smothEndTick: smothEndTick, + updateInertiaCoords: updateInertiaCoords +}; +_$inertia_26["default"] = ___default_26; + +var _$pointer_33 = {}; +"use strict"; + +function ___typeof_33(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_33 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_33 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_33(obj); } + +Object.defineProperty(_$pointer_33, "__esModule", { + value: true +}); +_$pointer_33.getRestrictionRect = getRestrictionRect; +_$pointer_33["default"] = void 0; + +var ___extend_33 = ___interopRequireDefault_33(_$extend_52); + +var __is_33 = ___interopRequireWildcard_33(_$is_56); + +var rectUtils = ___interopRequireWildcard_33(_$rect_62); + +function ___getRequireWildcardCache_33() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_33 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_33(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_33(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_33(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_33(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function __start_33(_ref) { + var rect = _ref.rect, + startOffset = _ref.startOffset, + state = _ref.state, + interaction = _ref.interaction, + pageCoords = _ref.pageCoords; + var options = state.options; + var elementRect = options.elementRect; + var offset = (0, ___extend_33["default"])({ + left: 0, + top: 0, + right: 0, + bottom: 0 + }, options.offset || {}); + + if (rect && elementRect) { + var restriction = getRestrictionRect(options.restriction, interaction, pageCoords); + + if (restriction) { + var widthDiff = restriction.right - restriction.left - rect.width; + var heightDiff = restriction.bottom - restriction.top - rect.height; + + if (widthDiff < 0) { + offset.left += widthDiff; + offset.right += widthDiff; + } + + if (heightDiff < 0) { + offset.top += heightDiff; + offset.bottom += heightDiff; + } + } + + offset.left += startOffset.left - rect.width * elementRect.left; + offset.top += startOffset.top - rect.height * elementRect.top; + offset.right += startOffset.right - rect.width * (1 - elementRect.right); + offset.bottom += startOffset.bottom - rect.height * (1 - elementRect.bottom); + } + + state.offset = offset; +} + +function set(_ref2) { + var coords = _ref2.coords, + interaction = _ref2.interaction, + state = _ref2.state; + var options = state.options, + offset = state.offset; + var restriction = getRestrictionRect(options.restriction, interaction, coords); + + if (!restriction) { + return; + } + + var rect = rectUtils.xywhToTlbr(restriction); + coords.x = Math.max(Math.min(rect.right - offset.right, coords.x), rect.left + offset.left); + coords.y = Math.max(Math.min(rect.bottom - offset.bottom, coords.y), rect.top + offset.top); +} + +function getRestrictionRect(value, interaction, coords) { + if (__is_33.func(value)) { + return rectUtils.resolveRectLike(value, interaction.interactable, interaction.element, [coords.x, coords.y, interaction]); + } else { + return rectUtils.resolveRectLike(value, interaction.interactable, interaction.element); + } +} + +var __defaults_33 = { + restriction: null, + elementRect: null, + offset: null, + endOnly: false, + enabled: false +}; +var restrict = { + start: __start_33, + set: set, + defaults: __defaults_33 +}; +var ___default_33 = restrict; +_$pointer_33["default"] = ___default_33; + +var _$edges_32 = {}; +"use strict"; + +function ___typeof_32(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_32 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_32 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_32(obj); } + +Object.defineProperty(_$edges_32, "__esModule", { + value: true +}); +_$edges_32["default"] = void 0; + +var ___extend_32 = ___interopRequireDefault_32(_$extend_52); + +var __rectUtils_32 = ___interopRequireWildcard_32(_$rect_62); + +/* removed: var _$pointer_33 = require("./pointer.js"); */; + +function ___getRequireWildcardCache_32() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_32 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_32(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_32(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_32(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_32(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +// This module adds the options.resize.restrictEdges setting which sets min and +// max for the top, left, bottom and right edges of the target being resized. +// +// interact(target).resize({ +// edges: { top: true, left: true }, +// restrictEdges: { +// inner: { top: 200, left: 200, right: 400, bottom: 400 }, +// outer: { top: 0, left: 0, right: 600, bottom: 600 }, +// }, +// }) +var noInner = { + top: +Infinity, + left: +Infinity, + bottom: -Infinity, + right: -Infinity +}; +var noOuter = { + top: -Infinity, + left: -Infinity, + bottom: +Infinity, + right: +Infinity +}; + +function __start_32(_ref) { + var interaction = _ref.interaction, + state = _ref.state; + var options = state.options; + var startOffset = interaction.modifiers.startOffset; + var offset; + + if (options) { + var offsetRect = (0, _$pointer_33.getRestrictionRect)(options.offset, interaction, interaction.coords.start.page); + offset = __rectUtils_32.rectToXY(offsetRect); + } + + offset = offset || { + x: 0, + y: 0 + }; + state.offset = { + top: offset.y + startOffset.top, + left: offset.x + startOffset.left, + bottom: offset.y - startOffset.bottom, + right: offset.x - startOffset.right + }; +} + +function __set_32(_ref2) { + var coords = _ref2.coords, + interaction = _ref2.interaction, + state = _ref2.state; + var offset = state.offset, + options = state.options; + var edges = interaction.prepared._linkedEdges || interaction.prepared.edges; + + if (!edges) { + return; + } + + var page = (0, ___extend_32["default"])({}, coords); + var inner = (0, _$pointer_33.getRestrictionRect)(options.inner, interaction, page) || {}; + var outer = (0, _$pointer_33.getRestrictionRect)(options.outer, interaction, page) || {}; + fixRect(inner, noInner); + fixRect(outer, noOuter); + + if (edges.top) { + coords.y = Math.min(Math.max(outer.top + offset.top, page.y), inner.top + offset.top); + } else if (edges.bottom) { + coords.y = Math.max(Math.min(outer.bottom + offset.bottom, page.y), inner.bottom + offset.bottom); + } + + if (edges.left) { + coords.x = Math.min(Math.max(outer.left + offset.left, page.x), inner.left + offset.left); + } else if (edges.right) { + coords.x = Math.max(Math.min(outer.right + offset.right, page.x), inner.right + offset.right); + } +} + +function fixRect(rect, defaults) { + var _arr = ['top', 'left', 'bottom', 'right']; + + for (var _i = 0; _i < _arr.length; _i++) { + var edge = _arr[_i]; + + if (!(edge in rect)) { + rect[edge] = defaults[edge]; + } + } + + return rect; +} + +var __defaults_32 = { + inner: null, + outer: null, + offset: null, + endOnly: false, + enabled: false +}; +var restrictEdges = { + noInner: noInner, + noOuter: noOuter, + start: __start_32, + set: __set_32, + defaults: __defaults_32 +}; +var ___default_32 = restrictEdges; +_$edges_32["default"] = ___default_32; + +var _$rect_34 = {}; +"use strict"; + +Object.defineProperty(_$rect_34, "__esModule", { + value: true +}); +_$rect_34["default"] = void 0; + +var ___extend_34 = ___interopRequireDefault_34(_$extend_52); + +var ___pointer_34 = ___interopRequireDefault_34(_$pointer_33); + +function ___interopRequireDefault_34(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +var __defaults_34 = (0, ___extend_34["default"])({ + get elementRect() { + return { + top: 0, + left: 0, + bottom: 1, + right: 1 + }; + }, + + set elementRect(_) {} + +}, ___pointer_34["default"].defaults); +var restrictRect = { + start: ___pointer_34["default"].start, + set: ___pointer_34["default"].set, + defaults: __defaults_34 +}; +var ___default_34 = restrictRect; +_$rect_34["default"] = ___default_34; + +var _$size_35 = {}; +"use strict"; + +function ___typeof_35(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_35 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_35 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_35(obj); } + +Object.defineProperty(_$size_35, "__esModule", { + value: true +}); +_$size_35["default"] = void 0; + +var ___extend_35 = ___interopRequireDefault_35(_$extend_52); + +var __rectUtils_35 = ___interopRequireWildcard_35(_$rect_62); + +var _edges = ___interopRequireDefault_35(_$edges_32); + +/* removed: var _$pointer_33 = require("./pointer.js"); */; + +function ___getRequireWildcardCache_35() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_35 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_35(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_35(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_35(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_35(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +var noMin = { + width: -Infinity, + height: -Infinity +}; +var noMax = { + width: +Infinity, + height: +Infinity +}; + +function __start_35(arg) { + return _edges["default"].start(arg); +} + +function __set_35(arg) { + var interaction = arg.interaction, + state = arg.state; + var options = state.options; + var edges = interaction.prepared._linkedEdges || interaction.prepared.edges; + + if (!edges) { + return; + } + + var rect = __rectUtils_35.xywhToTlbr(interaction.resizeRects.inverted); + var minSize = __rectUtils_35.tlbrToXywh((0, _$pointer_33.getRestrictionRect)(options.min, interaction, arg.coords)) || noMin; + var maxSize = __rectUtils_35.tlbrToXywh((0, _$pointer_33.getRestrictionRect)(options.max, interaction, arg.coords)) || noMax; + state.options = { + endOnly: options.endOnly, + inner: (0, ___extend_35["default"])({}, _edges["default"].noInner), + outer: (0, ___extend_35["default"])({}, _edges["default"].noOuter) + }; + + if (edges.top) { + state.options.inner.top = rect.bottom - minSize.height; + state.options.outer.top = rect.bottom - maxSize.height; + } else if (edges.bottom) { + state.options.inner.bottom = rect.top + minSize.height; + state.options.outer.bottom = rect.top + maxSize.height; + } + + if (edges.left) { + state.options.inner.left = rect.right - minSize.width; + state.options.outer.left = rect.right - maxSize.width; + } else if (edges.right) { + state.options.inner.right = rect.left + minSize.width; + state.options.outer.right = rect.left + maxSize.width; + } + + _edges["default"].set(arg); + + state.options = options; +} + +var __defaults_35 = { + min: null, + max: null, + endOnly: false, + enabled: false +}; +var restrictSize = { + start: __start_35, + set: __set_35, + defaults: __defaults_35 +}; +var ___default_35 = restrictSize; +_$size_35["default"] = ___default_35; + +var _$pointer_37 = {}; +"use strict"; + +function ___typeof_37(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_37 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_37 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_37(obj); } + +Object.defineProperty(_$pointer_37, "__esModule", { + value: true +}); +_$pointer_37["default"] = void 0; + +var __utils_37 = ___interopRequireWildcard_37(_$utils_55); + +function ___getRequireWildcardCache_37() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_37 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_37(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_37(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_37(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function __start_37(arg) { + var interaction = arg.interaction, + interactable = arg.interactable, + element = arg.element, + rect = arg.rect, + state = arg.state, + startOffset = arg.startOffset; + var options = state.options; + var offsets = []; + var origin = options.offsetWithOrigin ? getOrigin(arg) : { + x: 0, + y: 0 + }; + var snapOffset; + + if (options.offset === 'startCoords') { + snapOffset = { + x: interaction.coords.start.page.x, + y: interaction.coords.start.page.y + }; + } else { + var offsetRect = __utils_37.rect.resolveRectLike(options.offset, interactable, element, [interaction]); + snapOffset = __utils_37.rect.rectToXY(offsetRect) || { + x: 0, + y: 0 + }; + snapOffset.x += origin.x; + snapOffset.y += origin.y; + } + + var relativePoints = options.relativePoints || []; + + if (rect && options.relativePoints && options.relativePoints.length) { + for (var index = 0; index < relativePoints.length; index++) { + var relativePoint = relativePoints[index]; + offsets.push({ + index: index, + relativePoint: relativePoint, + x: startOffset.left - rect.width * relativePoint.x + snapOffset.x, + y: startOffset.top - rect.height * relativePoint.y + snapOffset.y + }); + } + } else { + offsets.push(__utils_37.extend({ + index: 0, + relativePoint: null + }, snapOffset)); + } + + state.offsets = offsets; +} + +function __set_37(arg) { + var interaction = arg.interaction, + coords = arg.coords, + state = arg.state; + var options = state.options, + offsets = state.offsets; + var origin = __utils_37.getOriginXY(interaction.interactable, interaction.element, interaction.prepared.name); + var page = __utils_37.extend({}, coords); + var targets = []; + var target; + + if (!options.offsetWithOrigin) { + page.x -= origin.x; + page.y -= origin.y; + } + + state.realX = page.x; + state.realY = page.y; + + for (var _i = 0; _i < offsets.length; _i++) { + var _ref; + + _ref = offsets[_i]; + var offset = _ref; + var relativeX = page.x - offset.x; + var relativeY = page.y - offset.y; + + for (var index = 0, _len = options.targets.length; index < _len; index++) { + var snapTarget = options.targets[index]; + + if (__utils_37.is.func(snapTarget)) { + target = snapTarget(relativeX, relativeY, interaction, offset, index); + } else { + target = snapTarget; + } + + if (!target) { + continue; + } + + targets.push({ + x: (__utils_37.is.number(target.x) ? target.x : relativeX) + offset.x, + y: (__utils_37.is.number(target.y) ? target.y : relativeY) + offset.y, + range: __utils_37.is.number(target.range) ? target.range : options.range + }); + } + } + + var closest = { + target: null, + inRange: false, + distance: 0, + range: 0, + dx: 0, + dy: 0 + }; + + for (var i = 0, len = targets.length; i < len; i++) { + target = targets[i]; + var range = target.range; + var dx = target.x - page.x; + var dy = target.y - page.y; + var distance = __utils_37.hypot(dx, dy); + var inRange = distance <= range; // Infinite targets count as being out of range + // compared to non infinite ones that are in range + + if (range === Infinity && closest.inRange && closest.range !== Infinity) { + inRange = false; + } + + if (!closest.target || (inRange // is the closest target in range? + ? closest.inRange && range !== Infinity // the pointer is relatively deeper in this target + ? distance / range < closest.distance / closest.range // this target has Infinite range and the closest doesn't + : range === Infinity && closest.range !== Infinity || // OR this target is closer that the previous closest + distance < closest.distance : // The other is not in range and the pointer is closer to this target + !closest.inRange && distance < closest.distance)) { + closest.target = target; + closest.distance = distance; + closest.range = range; + closest.inRange = inRange; + closest.dx = dx; + closest.dy = dy; + state.range = range; + } + } + + if (closest.inRange) { + coords.x = closest.target.x; + coords.y = closest.target.y; + } + + state.closest = closest; +} + +function getOrigin(arg) { + var element = arg.interaction.element; + var optionsOrigin = __utils_37.rect.rectToXY(__utils_37.rect.resolveRectLike(arg.state.options.origin, null, null, [element])); + var origin = optionsOrigin || __utils_37.getOriginXY(arg.interactable, element, arg.interaction.prepared.name); + return origin; +} + +var __defaults_37 = { + range: Infinity, + targets: null, + offset: null, + offsetWithOrigin: true, + origin: null, + relativePoints: null, + endOnly: false, + enabled: false +}; +var snap = { + start: __start_37, + set: __set_37, + defaults: __defaults_37 +}; +var ___default_37 = snap; +_$pointer_37["default"] = ___default_37; + +var _$size_38 = {}; +"use strict"; + +function ___typeof_38(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_38 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_38 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_38(obj); } + +Object.defineProperty(_$size_38, "__esModule", { + value: true +}); +_$size_38["default"] = void 0; + +var ___extend_38 = ___interopRequireDefault_38(_$extend_52); + +var __is_38 = ___interopRequireWildcard_38(_$is_56); + +var ___pointer_38 = ___interopRequireDefault_38(_$pointer_37); + +function ___getRequireWildcardCache_38() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_38 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_38(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_38(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_38(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_38(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___slicedToArray_38(arr, i) { return ___arrayWithHoles_38(arr) || ___iterableToArrayLimit_38(arr, i) || ___nonIterableRest_38(); } + +function ___nonIterableRest_38() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } + +function ___iterableToArrayLimit_38(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } + +function ___arrayWithHoles_38(arr) { if (Array.isArray(arr)) return arr; } + +function __start_38(arg) { + var interaction = arg.interaction, + state = arg.state; + var options = state.options; + var edges = interaction.prepared.edges; + + if (!edges) { + return null; + } + + arg.state = { + options: { + targets: null, + relativePoints: [{ + x: edges.left ? 0 : 1, + y: edges.top ? 0 : 1 + }], + offset: options.offset || 'self', + origin: { + x: 0, + y: 0 + }, + range: options.range + } + }; + state.targetFields = state.targetFields || [['width', 'height'], ['x', 'y']]; + + ___pointer_38["default"].start(arg); + + state.offsets = arg.state.offsets; + arg.state = state; +} + +function __set_38(arg) { + var interaction = arg.interaction, + state = arg.state, + coords = arg.coords; + var options = state.options, + offsets = state.offsets; + var relative = { + x: coords.x - offsets[0].x, + y: coords.y - offsets[0].y + }; + state.options = (0, ___extend_38["default"])({}, options); + state.options.targets = []; + + for (var _i = 0; _i < (options.targets || []).length; _i++) { + var _ref; + + _ref = (options.targets || [])[_i]; + var snapTarget = _ref; + var target = void 0; + + if (__is_38.func(snapTarget)) { + target = snapTarget(relative.x, relative.y, interaction); + } else { + target = snapTarget; + } + + if (!target) { + continue; + } + + for (var _i2 = 0; _i2 < state.targetFields.length; _i2++) { + var _ref2; + + _ref2 = state.targetFields[_i2]; + + var _ref3 = _ref2, + _ref4 = ___slicedToArray_38(_ref3, 2), + xField = _ref4[0], + yField = _ref4[1]; + + if (xField in target || yField in target) { + target.x = target[xField]; + target.y = target[yField]; + break; + } + } + + state.options.targets.push(target); + } + + ___pointer_38["default"].set(arg); + + state.options = options; +} + +var __defaults_38 = { + range: Infinity, + targets: null, + offset: null, + endOnly: false, + enabled: false +}; +var snapSize = { + start: __start_38, + set: __set_38, + defaults: __defaults_38 +}; +var ___default_38 = snapSize; +_$size_38["default"] = ___default_38; + +var _$edges_36 = {}; +"use strict"; + +Object.defineProperty(_$edges_36, "__esModule", { + value: true +}); +_$edges_36["default"] = void 0; + +var ___clone_36 = ___interopRequireDefault_36(_$clone_48); + +var ___extend_36 = ___interopRequireDefault_36(_$extend_52); + +var _size = ___interopRequireDefault_36(_$size_38); + +function ___interopRequireDefault_36(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +/** + * @module modifiers/snapEdges + * + * @description + * This module allows snapping of the edges of targets during resize + * interactions. + * + * @example + * interact(target).resizable({ + * snapEdges: { + * targets: [interact.snappers.grid({ x: 100, y: 50 })], + * }, + * }) + * + * interact(target).resizable({ + * snapEdges: { + * targets: [ + * interact.snappers.grid({ + * top: 50, + * left: 50, + * bottom: 100, + * right: 100, + * }), + * ], + * }, + * }) + */ +function __start_36(arg) { + var edges = arg.interaction.prepared.edges; + + if (!edges) { + return null; + } + + arg.state.targetFields = arg.state.targetFields || [[edges.left ? 'left' : 'right', edges.top ? 'top' : 'bottom']]; + return _size["default"].start(arg); +} + +function __set_36(arg) { + return _size["default"].set(arg); +} + +var snapEdges = { + start: __start_36, + set: __set_36, + defaults: (0, ___extend_36["default"])((0, ___clone_36["default"])(_size["default"].defaults), { + offset: { + x: 0, + y: 0 + } + }) +}; +var ___default_36 = snapEdges; +_$edges_36["default"] = ___default_36; + +var _$modifiers_31 = {}; +"use strict"; + +Object.defineProperty(_$modifiers_31, "__esModule", { + value: true +}); +_$modifiers_31.restrictSize = _$modifiers_31.restrictEdges = _$modifiers_31.restrictRect = _$modifiers_31.restrict = _$modifiers_31.snapEdges = _$modifiers_31.snapSize = _$modifiers_31.snap = void 0; + +var ___base_31 = ___interopRequireDefault_31(_$base_30); + +var ___edges_31 = ___interopRequireDefault_31(_$edges_32); + +var ___pointer_31 = ___interopRequireDefault_31(_$pointer_33); + +var ___rect_31 = ___interopRequireDefault_31(_$rect_34); + +var ___size_31 = ___interopRequireDefault_31(_$size_35); + +var _edges2 = ___interopRequireDefault_31(_$edges_36); + +var _pointer2 = ___interopRequireDefault_31(_$pointer_37); + +var _size2 = ___interopRequireDefault_31(_$size_38); + +function ___interopRequireDefault_31(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +var __makeModifier_31 = ___base_31["default"].makeModifier; +var __snap_31 = __makeModifier_31(_pointer2["default"], 'snap'); +_$modifiers_31.snap = __snap_31; +var __snapSize_31 = __makeModifier_31(_size2["default"], 'snapSize'); +_$modifiers_31.snapSize = __snapSize_31; +var __snapEdges_31 = __makeModifier_31(_edges2["default"], 'snapEdges'); +_$modifiers_31.snapEdges = __snapEdges_31; +var __restrict_31 = __makeModifier_31(___pointer_31["default"], 'restrict'); +_$modifiers_31.restrict = __restrict_31; +var __restrictRect_31 = __makeModifier_31(___rect_31["default"], 'restrictRect'); +_$modifiers_31.restrictRect = __restrictRect_31; +var __restrictEdges_31 = __makeModifier_31(___edges_31["default"], 'restrictEdges'); +_$modifiers_31.restrictEdges = __restrictEdges_31; +var __restrictSize_31 = __makeModifier_31(___size_31["default"], 'restrictSize'); +_$modifiers_31.restrictSize = __restrictSize_31; + +var _$PointerEvent_39 = {}; +"use strict"; + +Object.defineProperty(_$PointerEvent_39, "__esModule", { + value: true +}); +_$PointerEvent_39["default"] = void 0; + +var ___BaseEvent2_39 = ___interopRequireDefault_39(_$BaseEvent_13); + +var __pointerUtils_39 = ___interopRequireWildcard_39(_$pointerUtils_60); + +function ___getRequireWildcardCache_39() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_39 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_39(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_39(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_39(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_39(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___typeof_39(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_39 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_39 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_39(obj); } + +function ___classCallCheck_39(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function ___defineProperties_39(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function ___createClass_39(Constructor, protoProps, staticProps) { if (protoProps) ___defineProperties_39(Constructor.prototype, protoProps); if (staticProps) ___defineProperties_39(Constructor, staticProps); return Constructor; } + +function ___possibleConstructorReturn_39(self, call) { if (call && (___typeof_39(call) === "object" || typeof call === "function")) { return call; } return ___assertThisInitialized_39(self); } + +function ___getPrototypeOf_39(o) { ___getPrototypeOf_39 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return ___getPrototypeOf_39(o); } + +function ___assertThisInitialized_39(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function ___inherits_39(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) ___setPrototypeOf_39(subClass, superClass); } + +function ___setPrototypeOf_39(o, p) { ___setPrototypeOf_39 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return ___setPrototypeOf_39(o, p); } + +function ___defineProperty_39(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +} + +/** */ +var PointerEvent = +/*#__PURE__*/ +function (_BaseEvent) { + ___inherits_39(PointerEvent, _BaseEvent); + + /** */ + function PointerEvent(type, pointer, event, eventTarget, interaction, timeStamp) { + var _this; + + ___classCallCheck_39(this, PointerEvent); + + _this = ___possibleConstructorReturn_39(this, ___getPrototypeOf_39(PointerEvent).call(this, interaction)); + + ___defineProperty_39(___assertThisInitialized_39(_this), "type", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "originalEvent", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "pointerId", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "pointerType", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "double", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "pageX", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "pageY", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "clientX", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "clientY", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "dt", void 0); + + ___defineProperty_39(___assertThisInitialized_39(_this), "eventable", void 0); + + __pointerUtils_39.pointerExtend(___assertThisInitialized_39(_this), event); + + if (event !== pointer) { + __pointerUtils_39.pointerExtend(___assertThisInitialized_39(_this), pointer); + } + + _this.timeStamp = timeStamp; + _this.originalEvent = event; + _this.type = type; + _this.pointerId = __pointerUtils_39.getPointerId(pointer); + _this.pointerType = __pointerUtils_39.getPointerType(pointer); + _this.target = eventTarget; + _this.currentTarget = null; + + if (type === 'tap') { + var pointerIndex = interaction.getPointerIndex(pointer); + _this.dt = _this.timeStamp - interaction.pointers[pointerIndex].downTime; + var interval = _this.timeStamp - interaction.tapTime; + _this["double"] = !!(interaction.prevTap && interaction.prevTap.type !== 'doubletap' && interaction.prevTap.target === _this.target && interval < 500); + } else if (type === 'doubletap') { + _this.dt = pointer.timeStamp - interaction.tapTime; + } + + return _this; + } + + ___createClass_39(PointerEvent, [{ + key: "_subtractOrigin", + value: function _subtractOrigin(_ref) { + var originX = _ref.x, + originY = _ref.y; + this.pageX -= originX; + this.pageY -= originY; + this.clientX -= originX; + this.clientY -= originY; + return this; + } + }, { + key: "_addOrigin", + value: function _addOrigin(_ref2) { + var originX = _ref2.x, + originY = _ref2.y; + this.pageX += originX; + this.pageY += originY; + this.clientX += originX; + this.clientY += originY; + return this; + } + /** + * Prevent the default behaviour of the original Event + */ + + }, { + key: "preventDefault", + value: function preventDefault() { + this.originalEvent.preventDefault(); + } + }]); + + return PointerEvent; +}(___BaseEvent2_39["default"]); + +_$PointerEvent_39["default"] = PointerEvent; + +var _$base_40 = {}; +"use strict"; + +function ___typeof_40(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_40 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_40 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_40(obj); } + +Object.defineProperty(_$base_40, "__esModule", { + value: true +}); +_$base_40["default"] = void 0; + +var __utils_40 = ___interopRequireWildcard_40(_$utils_55); + +var _PointerEvent = ___interopRequireDefault_40(_$PointerEvent_39); + +function ___interopRequireDefault_40(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_40() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_40 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_40(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_40(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_40(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +var __defaults_40 = { + holdDuration: 600, + ignoreFrom: null, + allowFrom: null, + origin: { + x: 0, + y: 0 + } +}; +var pointerEvents = { + id: 'pointer-events/base', + install: __install_40, + listeners: { + 'interactions:new': addInteractionProps, + 'interactions:update-pointer': addHoldInfo, + 'interactions:move': moveAndClearHold, + 'interactions:down': function interactionsDown(arg, scope) { + downAndStartHold(arg, scope); + fire(arg, scope); + }, + 'interactions:up': function interactionsUp(arg, scope) { + clearHold(arg); + fire(arg, scope); + tapAfterUp(arg, scope); + }, + 'interactions:cancel': function interactionsCancel(arg, scope) { + clearHold(arg); + fire(arg, scope); + } + }, + PointerEvent: _PointerEvent["default"], + fire: fire, + collectEventTargets: collectEventTargets, + defaults: __defaults_40, + types: ['down', 'move', 'up', 'cancel', 'tap', 'doubletap', 'hold'] +}; + +function fire(arg, scope) { + var interaction = arg.interaction, + pointer = arg.pointer, + event = arg.event, + eventTarget = arg.eventTarget, + type = arg.type, + _arg$targets = arg.targets, + targets = _arg$targets === void 0 ? collectEventTargets(arg, scope) : _arg$targets; + var pointerEvent = new _PointerEvent["default"](type, pointer, event, eventTarget, interaction, scope.now()); + scope.fire('pointerEvents:new', { + pointerEvent: pointerEvent + }); + var signalArg = { + interaction: interaction, + pointer: pointer, + event: event, + eventTarget: eventTarget, + targets: targets, + type: type, + pointerEvent: pointerEvent + }; + + for (var i = 0; i < targets.length; i++) { + var target = targets[i]; + + for (var prop in target.props || {}) { + pointerEvent[prop] = target.props[prop]; + } + + var origin = __utils_40.getOriginXY(target.eventable, target.node); + + pointerEvent._subtractOrigin(origin); + + pointerEvent.eventable = target.eventable; + pointerEvent.currentTarget = target.node; + target.eventable.fire(pointerEvent); + + pointerEvent._addOrigin(origin); + + if (pointerEvent.immediatePropagationStopped || pointerEvent.propagationStopped && i + 1 < targets.length && targets[i + 1].node !== pointerEvent.currentTarget) { + break; + } + } + + scope.fire('pointerEvents:fired', signalArg); + + if (type === 'tap') { + // if pointerEvent should make a double tap, create and fire a doubletap + // PointerEvent and use that as the prevTap + var prevTap = pointerEvent["double"] ? fire({ + interaction: interaction, + pointer: pointer, + event: event, + eventTarget: eventTarget, + type: 'doubletap' + }, scope) : pointerEvent; + interaction.prevTap = prevTap; + interaction.tapTime = prevTap.timeStamp; + } + + return pointerEvent; +} + +function collectEventTargets(_ref, scope) { + var interaction = _ref.interaction, + pointer = _ref.pointer, + event = _ref.event, + eventTarget = _ref.eventTarget, + type = _ref.type; + var pointerIndex = interaction.getPointerIndex(pointer); + var pointerInfo = interaction.pointers[pointerIndex]; // do not fire a tap event if the pointer was moved before being lifted + + if (type === 'tap' && (interaction.pointerWasMoved || // or if the pointerup target is different to the pointerdown target + !(pointerInfo && pointerInfo.downTarget === eventTarget))) { + return []; + } + + var path = __utils_40.dom.getPath(eventTarget); + var signalArg = { + interaction: interaction, + pointer: pointer, + event: event, + eventTarget: eventTarget, + type: type, + path: path, + targets: [], + node: null + }; + + for (var _i = 0; _i < path.length; _i++) { + var _ref2; + + _ref2 = path[_i]; + var node = _ref2; + signalArg.node = node; + scope.fire('pointerEvents:collect-targets', signalArg); + } + + if (type === 'hold') { + signalArg.targets = signalArg.targets.filter(function (target) { + return target.eventable.options.holdDuration === interaction.pointers[pointerIndex].hold.duration; + }); + } + + return signalArg.targets; +} + +function addInteractionProps(_ref3) { + var interaction = _ref3.interaction; + interaction.prevTap = null; // the most recent tap event on this interaction + + interaction.tapTime = 0; // time of the most recent tap event +} + +function addHoldInfo(_ref4) { + var down = _ref4.down, + pointerInfo = _ref4.pointerInfo; + + if (!down && pointerInfo.hold) { + return; + } + + pointerInfo.hold = { + duration: Infinity, + timeout: null + }; +} + +function clearHold(_ref5) { + var interaction = _ref5.interaction, + pointerIndex = _ref5.pointerIndex; + + if (interaction.pointers[pointerIndex].hold) { + clearTimeout(interaction.pointers[pointerIndex].hold.timeout); + } +} + +function moveAndClearHold(_ref6, scope) { + var interaction = _ref6.interaction, + pointer = _ref6.pointer, + event = _ref6.event, + eventTarget = _ref6.eventTarget, + duplicate = _ref6.duplicate; + var pointerIndex = interaction.getPointerIndex(pointer); + + if (!duplicate && (!interaction.pointerIsDown || interaction.pointerWasMoved)) { + if (interaction.pointerIsDown) { + clearTimeout(interaction.pointers[pointerIndex].hold.timeout); + } + + fire({ + interaction: interaction, + pointer: pointer, + event: event, + eventTarget: eventTarget, + type: 'move' + }, scope); + } +} + +function downAndStartHold(_ref7, scope) { + var interaction = _ref7.interaction, + pointer = _ref7.pointer, + event = _ref7.event, + eventTarget = _ref7.eventTarget, + pointerIndex = _ref7.pointerIndex; + var timer = interaction.pointers[pointerIndex].hold; + var path = __utils_40.dom.getPath(eventTarget); + var signalArg = { + interaction: interaction, + pointer: pointer, + event: event, + eventTarget: eventTarget, + type: 'hold', + targets: [], + path: path, + node: null + }; + + for (var _i2 = 0; _i2 < path.length; _i2++) { + var _ref8; + + _ref8 = path[_i2]; + var node = _ref8; + signalArg.node = node; + scope.fire('pointerEvents:collect-targets', signalArg); + } + + if (!signalArg.targets.length) { + return; + } + + var minDuration = Infinity; + + for (var _i3 = 0; _i3 < signalArg.targets.length; _i3++) { + var _ref9; + + _ref9 = signalArg.targets[_i3]; + var target = _ref9; + var holdDuration = target.eventable.options.holdDuration; + + if (holdDuration < minDuration) { + minDuration = holdDuration; + } + } + + timer.duration = minDuration; + timer.timeout = setTimeout(function () { + fire({ + interaction: interaction, + eventTarget: eventTarget, + pointer: pointer, + event: event, + type: 'hold' + }, scope); + }, minDuration); +} + +function tapAfterUp(_ref10, scope) { + var interaction = _ref10.interaction, + pointer = _ref10.pointer, + event = _ref10.event, + eventTarget = _ref10.eventTarget; + + if (!interaction.pointerWasMoved) { + fire({ + interaction: interaction, + eventTarget: eventTarget, + pointer: pointer, + event: event, + type: 'tap' + }, scope); + } +} + +function __install_40(scope) { + scope.pointerEvents = pointerEvents; + scope.defaults.actions.pointerEvents = pointerEvents.defaults; +} + +var ___default_40 = pointerEvents; +_$base_40["default"] = ___default_40; + +var _$holdRepeat_41 = {}; +"use strict"; + +Object.defineProperty(_$holdRepeat_41, "__esModule", { + value: true +}); +_$holdRepeat_41["default"] = void 0; + +var ___base_41 = ___interopRequireDefault_41(_$base_40); + +function ___interopRequireDefault_41(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function __install_41(scope) { + scope.usePlugin(___base_41["default"]); + var pointerEvents = scope.pointerEvents; // don't repeat by default + + pointerEvents.defaults.holdRepeatInterval = 0; + pointerEvents.types.push('holdrepeat'); +} + +function onNew(_ref) { + var pointerEvent = _ref.pointerEvent; + + if (pointerEvent.type !== 'hold') { + return; + } + + pointerEvent.count = (pointerEvent.count || 0) + 1; +} + +function onFired(_ref2, scope) { + var interaction = _ref2.interaction, + pointerEvent = _ref2.pointerEvent, + eventTarget = _ref2.eventTarget, + targets = _ref2.targets; + + if (pointerEvent.type !== 'hold' || !targets.length) { + return; + } // get the repeat interval from the first eventable + + + var interval = targets[0].eventable.options.holdRepeatInterval; // don't repeat if the interval is 0 or less + + if (interval <= 0) { + return; + } // set a timeout to fire the holdrepeat event + + + interaction.holdIntervalHandle = setTimeout(function () { + scope.pointerEvents.fire({ + interaction: interaction, + eventTarget: eventTarget, + type: 'hold', + pointer: pointerEvent, + event: pointerEvent + }, scope); + }, interval); +} + +function endHoldRepeat(_ref3) { + var interaction = _ref3.interaction; + + // set the interaction's holdStopTime property + // to stop further holdRepeat events + if (interaction.holdIntervalHandle) { + clearInterval(interaction.holdIntervalHandle); + interaction.holdIntervalHandle = null; + } +} + +var ___default_41 = { + id: 'pointer-events/holdRepeat', + install: __install_41, + listeners: ['move', 'up', 'cancel', 'endall'].reduce(function (acc, enderTypes) { + acc["pointerEvents:".concat(enderTypes)] = endHoldRepeat; + return acc; + }, { + 'pointerEvents:new': onNew, + 'pointerEvents:fired': onFired + }) +}; +_$holdRepeat_41["default"] = ___default_41; + +var _$interactableTargets_43 = {}; +"use strict"; + +Object.defineProperty(_$interactableTargets_43, "__esModule", { + value: true +}); +_$interactableTargets_43["default"] = void 0; + +/* removed: var _$arr_46 = require("../utils/arr.js"); */; + +var ___extend_43 = ___interopRequireDefault_43(_$extend_52); + +function ___interopRequireDefault_43(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function __install_43(scope) { + var pointerEvents = scope.pointerEvents, + actions = scope.actions, + Interactable = scope.Interactable; + (0, _$arr_46.merge)(actions.eventTypes, pointerEvents.types); + Interactable.prototype.pointerEvents = pointerEventsMethod; + var __backCompatOption = Interactable.prototype._backCompatOption; + + Interactable.prototype._backCompatOption = function (optionName, newValue) { + var ret = __backCompatOption.call(this, optionName, newValue); + + if (ret === this) { + this.events.options[optionName] = newValue; + } + + return ret; + }; +} + +function pointerEventsMethod(options) { + (0, ___extend_43["default"])(this.events.options, options); + return this; +} + +var plugin = { + id: 'pointer-events/interactableTargets', + install: __install_43, + listeners: { + 'pointerEvents:collect-targets': function pointerEventsCollectTargets(_ref, scope) { + var targets = _ref.targets, + node = _ref.node, + type = _ref.type, + eventTarget = _ref.eventTarget; + scope.interactables.forEachMatch(node, function (interactable) { + var eventable = interactable.events; + var options = eventable.options; + + if (eventable.types[type] && eventable.types[type].length && interactable.testIgnoreAllow(options, node, eventTarget)) { + targets.push({ + node: node, + eventable: eventable, + props: { + interactable: interactable + } + }); + } + }); + }, + 'interactable:new': function interactableNew(_ref2) { + var interactable = _ref2.interactable; + + interactable.events.getRect = function (element) { + return interactable.getRect(element); + }; + }, + 'interactable:set': function interactableSet(_ref3, scope) { + var interactable = _ref3.interactable, + options = _ref3.options; + (0, ___extend_43["default"])(interactable.events.options, scope.pointerEvents.defaults); + (0, ___extend_43["default"])(interactable.events.options, options.pointerEvents || {}); + } + } +}; +var ___default_43 = plugin; +_$interactableTargets_43["default"] = ___default_43; + +var _$pointerEvents_42 = {}; +"use strict"; + +function ___typeof_42(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_42 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_42 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_42(obj); } + +Object.defineProperty(_$pointerEvents_42, "__esModule", { + value: true +}); +_$pointerEvents_42.install = __install_42; +Object.defineProperty(_$pointerEvents_42, "holdRepeat", { + enumerable: true, + get: function get() { + return _holdRepeat["default"]; + } +}); +Object.defineProperty(_$pointerEvents_42, "interactableTargets", { + enumerable: true, + get: function get() { + return _interactableTargets["default"]; + } +}); +_$pointerEvents_42.pointerEvents = _$pointerEvents_42.id = void 0; + +var __pointerEvents_42 = ___interopRequireWildcard_42(_$base_40); + +_$pointerEvents_42.pointerEvents = __pointerEvents_42; + +var _holdRepeat = ___interopRequireDefault_42(_$holdRepeat_41); + +var _interactableTargets = ___interopRequireDefault_42(_$interactableTargets_43); + +function ___interopRequireDefault_42(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_42() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_42 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_42(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_42(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_42(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function __install_42(scope) { + scope.usePlugin(__pointerEvents_42); + scope.usePlugin(_holdRepeat["default"]); + scope.usePlugin(_interactableTargets["default"]); +} + +var __id_42 = 'pointer-events'; +_$pointerEvents_42.id = __id_42; + +var _$reflow_44 = {}; +"use strict"; + +Object.defineProperty(_$reflow_44, "__esModule", { + value: true +}); +_$reflow_44.install = __install_44; +_$reflow_44["default"] = void 0; + +/* removed: var _$InteractEvent_15 = require("../core/InteractEvent.js"); */; + +/* removed: var _$utils_55 = require("../utils/index.js"); */; + +_$InteractEvent_15.EventPhase.Reflow = 'reflow'; + +function __install_44(scope) { + var actions = scope.actions, + Interactable = scope.Interactable; // add action reflow event types + + for (var _i = 0; _i < actions.names.length; _i++) { + var _ref; + + _ref = actions.names[_i]; + var actionName = _ref; + actions.eventTypes.push("".concat(actionName, "reflow")); + } + /** + * ```js + * const interactable = interact(target) + * const drag = { name: drag, axis: 'x' } + * const resize = { name: resize, edges: { left: true, bottom: true } + * + * interactable.reflow(drag) + * interactable.reflow(resize) + * ``` + * + * Start an action sequence to re-apply modifiers, check drops, etc. + * + * @param { Object } action The action to begin + * @param { string } action.name The name of the action + * @returns { Promise } A promise that resolves to the `Interactable` when actions on all targets have ended + */ + + + Interactable.prototype.reflow = function (action) { + return reflow(this, action, scope); + }; +} + +function reflow(interactable, action, scope) { + var elements = _$utils_55.is.string(interactable.target) ? _$utils_55.arr.from(interactable._context.querySelectorAll(interactable.target)) : [interactable.target]; // tslint:disable-next-line variable-name + + var Promise = _$utils_55.win.window.Promise; + var promises = Promise ? [] : null; + + var _loop = function _loop() { + _ref2 = elements[_i2]; + var element = _ref2; + var rect = interactable.getRect(element); + + if (!rect) { + return "break"; + } + + var runningInteraction = _$utils_55.arr.find(scope.interactions.list, function (interaction) { + return interaction.interacting() && interaction.interactable === interactable && interaction.element === element && interaction.prepared.name === action.name; + }); + + var reflowPromise = void 0; + + if (runningInteraction) { + runningInteraction.move(); + + if (promises) { + reflowPromise = runningInteraction._reflowPromise || new Promise(function (resolve) { + runningInteraction._reflowResolve = resolve; + }); + } + } else { + var xywh = _$utils_55.rect.tlbrToXywh(rect); + + var coords = { + page: { + x: xywh.x, + y: xywh.y + }, + client: { + x: xywh.x, + y: xywh.y + }, + timeStamp: scope.now() + }; + + var event = _$utils_55.pointer.coordsToEvent(coords); + + reflowPromise = startReflow(scope, interactable, element, action, event); + } + + if (promises) { + promises.push(reflowPromise); + } + }; + + for (var _i2 = 0; _i2 < elements.length; _i2++) { + var _ref2; + + var _ret = _loop(); + + if (_ret === "break") break; + } + + return promises && Promise.all(promises).then(function () { + return interactable; + }); +} + +function startReflow(scope, interactable, element, action, event) { + var interaction = scope.interactions["new"]({ + pointerType: 'reflow' + }); + var signalArg = { + interaction: interaction, + event: event, + pointer: event, + eventTarget: element, + phase: _$InteractEvent_15.EventPhase.Reflow + }; + interaction.interactable = interactable; + interaction.element = element; + interaction.prepared = (0, _$utils_55.extend)({}, action); + interaction.prevEvent = event; + interaction.updatePointer(event, event, element, true); + + interaction._doPhase(signalArg); + + var reflowPromise = _$utils_55.win.window.Promise ? new _$utils_55.win.window.Promise(function (resolve) { + interaction._reflowResolve = resolve; + }) : null; + interaction._reflowPromise = reflowPromise; + interaction.start(action, interactable, element); + + if (interaction._interacting) { + interaction.move(signalArg); + interaction.end(event); + } else { + interaction.stop(); + } + + interaction.removePointer(event, event); + interaction.pointerIsDown = false; + return reflowPromise; +} + +var ___default_44 = { + id: 'reflow', + install: __install_44, + listeners: { + // remove completed reflow interactions + 'interactions:stop': function interactionsStop(_ref3, scope) { + var interaction = _ref3.interaction; + + if (interaction.pointerType === _$InteractEvent_15.EventPhase.Reflow) { + if (interaction._reflowResolve) { + interaction._reflowResolve(); + } + + _$utils_55.arr.remove(scope.interactions.list, interaction); + } + } + } +}; +_$reflow_44["default"] = ___default_44; + +var _$interact_28 = {}; +"use strict"; + +function ___typeof_28(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_28 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_28 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_28(obj); } + +Object.defineProperty(_$interact_28, "__esModule", { + value: true +}); +_$interact_28["default"] = _$interact_28.scope = _$interact_28.interact = void 0; + +var ___scope_28 = _$scope_24({}); + +var ___browser_28 = ___interopRequireDefault_28(_$browser_47); + +var ___events_28 = ___interopRequireDefault_28(_$events_51); + +var __utils_28 = ___interopRequireWildcard_28(_$utils_55); + +function ___getRequireWildcardCache_28() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_28 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_28(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_28(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_28(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___interopRequireDefault_28(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +/** @module interact */ +var globalEvents = {}; +var scope = new ___scope_28.Scope(); +/** + * ```js + * interact('#draggable').draggable(true) + * + * var rectables = interact('rect') + * rectables + * .gesturable(true) + * .on('gesturemove', function (event) { + * // ... + * }) + * ``` + * + * The methods of this variable can be used to set elements as interactables + * and also to change various default settings. + * + * Calling it as a function and passing an element or a valid CSS selector + * string returns an Interactable object which has various methods to configure + * it. + * + * @global + * + * @param {Element | string} target The HTML or SVG Element to interact with + * or CSS selector + * @return {Interactable} + */ + +_$interact_28.scope = scope; + +var interact = function interact(target, options) { + var interactable = scope.interactables.get(target, options); + + if (!interactable) { + interactable = scope.interactables["new"](target, options); + interactable.events.global = globalEvents; + } + + return interactable; +}; +/** + * Use a plugin + * + * @alias module:interact.use + * + * @param {Object} plugin + * @param {function} plugin.install + * @return {interact} + */ + + +_$interact_28.interact = interact; +interact.use = use; + +function use(plugin, options) { + scope.usePlugin(plugin, options); + return interact; +} +/** + * Check if an element or selector has been set with the {@link interact} + * function + * + * @alias module:interact.isSet + * + * @param {Element} element The Element being searched for + * @return {boolean} Indicates if the element or CSS selector was previously + * passed to interact + */ + + +interact.isSet = isSet; + +function isSet(target, options) { + return !!scope.interactables.get(target, options && options.context); +} +/** + * Add a global listener for an InteractEvent or adds a DOM event to `document` + * + * @alias module:interact.on + * + * @param {string | array | object} type The types of events to listen for + * @param {function} listener The function event (s) + * @param {object | boolean} [options] object or useCapture flag for + * addEventListener + * @return {object} interact + */ + + +interact.on = on; + +function on(type, listener, options) { + if (__utils_28.is.string(type) && type.search(' ') !== -1) { + type = type.trim().split(/ +/); + } + + if (__utils_28.is.array(type)) { + for (var _i = 0; _i < type.length; _i++) { + var _ref; + + _ref = type[_i]; + var eventType = _ref; + interact.on(eventType, listener, options); + } + + return interact; + } + + if (__utils_28.is.object(type)) { + for (var prop in type) { + interact.on(prop, type[prop], listener); + } + + return interact; + } // if it is an InteractEvent type, add listener to globalEvents + + + if (__utils_28.arr.contains(scope.actions.eventTypes, type)) { + // if this type of event was never bound + if (!globalEvents[type]) { + globalEvents[type] = [listener]; + } else { + globalEvents[type].push(listener); + } + } // If non InteractEvent type, addEventListener to document + else { + ___events_28["default"].add(scope.document, type, listener, { + options: options + }); + } + + return interact; +} +/** + * Removes a global InteractEvent listener or DOM event from `document` + * + * @alias module:interact.off + * + * @param {string | array | object} type The types of events that were listened + * for + * @param {function} listener The listener function to be removed + * @param {object | boolean} options [options] object or useCapture flag for + * removeEventListener + * @return {object} interact + */ + + +interact.off = off; + +function off(type, listener, options) { + if (__utils_28.is.string(type) && type.search(' ') !== -1) { + type = type.trim().split(/ +/); + } + + if (__utils_28.is.array(type)) { + for (var _i2 = 0; _i2 < type.length; _i2++) { + var _ref2; + + _ref2 = type[_i2]; + var eventType = _ref2; + interact.off(eventType, listener, options); + } + + return interact; + } + + if (__utils_28.is.object(type)) { + for (var prop in type) { + interact.off(prop, type[prop], listener); + } + + return interact; + } + + if (!__utils_28.arr.contains(scope.actions.eventTypes, type)) { + ___events_28["default"].remove(scope.document, type, listener, options); + } else { + var index; + + if (type in globalEvents && (index = globalEvents[type].indexOf(listener)) !== -1) { + globalEvents[type].splice(index, 1); + } + } + + return interact; +} + +interact.debug = debug; + +function debug() { + return scope; +} // expose the functions used to calculate multi-touch properties + + +interact.getPointerAverage = __utils_28.pointer.pointerAverage; +interact.getTouchBBox = __utils_28.pointer.touchBBox; +interact.getTouchDistance = __utils_28.pointer.touchDistance; +interact.getTouchAngle = __utils_28.pointer.touchAngle; +interact.getElementRect = __utils_28.dom.getElementRect; +interact.getElementClientRect = __utils_28.dom.getElementClientRect; +interact.matchesSelector = __utils_28.dom.matchesSelector; +interact.closest = __utils_28.dom.closest; +/** + * @alias module:interact.supportsTouch + * + * @return {boolean} Whether or not the browser supports touch input + */ + +interact.supportsTouch = supportsTouch; + +function supportsTouch() { + return ___browser_28["default"].supportsTouch; +} +/** + * @alias module:interact.supportsPointerEvent + * + * @return {boolean} Whether or not the browser supports PointerEvents + */ + + +interact.supportsPointerEvent = supportsPointerEvent; + +function supportsPointerEvent() { + return ___browser_28["default"].supportsPointerEvent; +} +/** + * Cancels all interactions (end events are not fired) + * + * @alias module:interact.stop + * + * @return {object} interact + */ + + +interact.stop = __stop_28; + +function __stop_28() { + for (var _i3 = 0; _i3 < scope.interactions.list.length; _i3++) { + var _ref3; + + _ref3 = scope.interactions.list[_i3]; + var interaction = _ref3; + interaction.stop(); + } + + return interact; +} +/** + * Returns or sets the distance the pointer must be moved before an action + * sequence occurs. This also affects tolerance for tap events. + * + * @alias module:interact.pointerMoveTolerance + * + * @param {number} [newValue] The movement from the start position must be greater than this value + * @return {interact | number} + */ + + +interact.pointerMoveTolerance = pointerMoveTolerance; + +function pointerMoveTolerance(newValue) { + if (__utils_28.is.number(newValue)) { + scope.interactions.pointerMoveTolerance = newValue; + return interact; + } + + return scope.interactions.pointerMoveTolerance; +} + +scope.addListeners({ + 'interactable:unset': function interactableUnset(_ref4) { + var interactable = _ref4.interactable; + scope.interactables.list.splice(scope.interactables.list.indexOf(interactable), 1); // Stop related interactions when an Interactable is unset + + for (var _i4 = 0; _i4 < scope.interactions.list.length; _i4++) { + var _ref5; + + _ref5 = scope.interactions.list[_i4]; + var interaction = _ref5; + + if (interaction.interactable === interactable && interaction.interacting() && !interaction._ending) { + interaction.stop(); + } + } + } +}); + +interact.addDocument = function (doc, options) { + return scope.addDocument(doc, options); +}; + +interact.removeDocument = function (doc) { + return scope.removeDocument(doc); +}; + +scope.interact = interact; +var ___default_28 = interact; +_$interact_28["default"] = ___default_28; + +var _$interact_27 = {}; +"use strict"; + +function ___typeof_27(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_27 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_27 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_27(obj); } + +Object.defineProperty(_$interact_27, "__esModule", { + value: true +}); +_$interact_27.init = __init_27; +Object.defineProperty(_$interact_27, "autoScroll", { + enumerable: true, + get: function get() { + return _index2["default"]; + } +}); +Object.defineProperty(_$interact_27, "interactablePreventDefault", { + enumerable: true, + get: function get() { + return _interactablePreventDefault["default"]; + } +}); +Object.defineProperty(_$interact_27, "inertia", { + enumerable: true, + get: function get() { + return _index5["default"]; + } +}); +Object.defineProperty(_$interact_27, "modifiers", { + enumerable: true, + get: function get() { + return ___base_27["default"]; + } +}); +Object.defineProperty(_$interact_27, "reflow", { + enumerable: true, + get: function get() { + return _index8["default"]; + } +}); +Object.defineProperty(_$interact_27, "interact", { + enumerable: true, + get: function get() { + return _interact["default"]; + } +}); +_$interact_27.pointerEvents = _$interact_27.actions = _$interact_27["default"] = void 0; + +var actions = ___interopRequireWildcard_27(_$actions_5); + +_$interact_27.actions = actions; + +var _index2 = ___interopRequireDefault_27(_$autoScroll_7); + +var autoStart = ___interopRequireWildcard_27(_$autoStart_12); + +var _interactablePreventDefault = ___interopRequireDefault_27(_$interactablePreventDefault_21); + +var _index4 = ___interopRequireDefault_27(_$devTools_25); + +var _index5 = ___interopRequireDefault_27(_$inertia_26); + +var ___base_27 = ___interopRequireDefault_27(_$base_30); + +var modifiers = ___interopRequireWildcard_27(_$modifiers_31); + +var __pointerEvents_27 = ___interopRequireWildcard_27(_$pointerEvents_42); + +_$interact_27.pointerEvents = __pointerEvents_27; + +var _index8 = ___interopRequireDefault_27(_$reflow_44); + +var _interact = ___interopRequireWildcard_27(_$interact_28); + +function ___interopRequireDefault_27(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_27() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_27 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_27(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_27(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_27(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function __init_27(window) { + _interact.scope.init(window); + + _interact["default"].use(_interactablePreventDefault["default"]); // pointerEvents + + + _interact["default"].use(__pointerEvents_27); // inertia + + + _interact["default"].use(_index5["default"]); // snap, resize, etc. + + + _interact["default"].use(___base_27["default"]); // autoStart, hold + + + _interact["default"].use(autoStart); // drag and drop, resize, gesture + + + _interact["default"].use(actions); // for backwrads compatibility + + + for (var type in modifiers) { + var _modifiers$type = modifiers[type], + _defaults = _modifiers$type._defaults, + _methods = _modifiers$type._methods; + _defaults._methods = _methods; + _interact.scope.defaults.perAction[type] = _defaults; + } // autoScroll + + + _interact["default"].use(_index2["default"]); // reflow + + + _interact["default"].use(_index8["default"]); // eslint-disable-next-line no-undef + + + if (undefined !== 'production') { + _interact["default"].use(_index4["default"]); + } + + return _interact["default"]; +} // eslint-disable-next-line no-undef + + +_interact["default"].version = "1.7.3"; +var ___default_27 = _interact["default"]; +_$interact_27["default"] = ___default_27; + +var _$types_45 = {}; +/// <reference path="./types.d.ts" /> +"use strict"; + +var _$grid_63 = {}; +"use strict"; + +Object.defineProperty(_$grid_63, "__esModule", { + value: true +}); +_$grid_63["default"] = void 0; + +function ___slicedToArray_63(arr, i) { return ___arrayWithHoles_63(arr) || ___iterableToArrayLimit_63(arr, i) || ___nonIterableRest_63(); } + +function ___nonIterableRest_63() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } + +function ___iterableToArrayLimit_63(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } + +function ___arrayWithHoles_63(arr) { if (Array.isArray(arr)) return arr; } + +function createGrid(grid) { + var coordFields = [['x', 'y'], ['left', 'top'], ['right', 'bottom'], ['width', 'height']].filter(function (_ref) { + var _ref2 = ___slicedToArray_63(_ref, 2), + xField = _ref2[0], + yField = _ref2[1]; + + return xField in grid || yField in grid; + }); + + var gridFunc = function snapGrid(x, y) { + var range = grid.range, + _grid$limits = grid.limits, + limits = _grid$limits === void 0 ? { + left: -Infinity, + right: Infinity, + top: -Infinity, + bottom: Infinity + } : _grid$limits, + _grid$offset = grid.offset, + offset = _grid$offset === void 0 ? { + x: 0, + y: 0 + } : _grid$offset; + var result = { + range: range + }; + + for (var _i2 = 0; _i2 < coordFields.length; _i2++) { + var _ref3; + + _ref3 = coordFields[_i2]; + + var _ref4 = _ref3, + _ref5 = ___slicedToArray_63(_ref4, 2), + xField = _ref5[0], + yField = _ref5[1]; + + var gridx = Math.round((x - offset.x) / grid[xField]); + var gridy = Math.round((y - offset.y) / grid[yField]); + result[xField] = Math.max(limits.left, Math.min(limits.right, gridx * grid[xField] + offset.x)); + result[yField] = Math.max(limits.top, Math.min(limits.bottom, gridy * grid[yField] + offset.y)); + } + + return result; + }; + + gridFunc._isSnapGrid = true; + gridFunc.grid = grid; + gridFunc.coordFields = coordFields; + return gridFunc; +} + +var ___default_63 = createGrid; +_$grid_63["default"] = ___default_63; + +var _$snappers_64 = {}; +"use strict"; + +Object.defineProperty(_$snappers_64, "__esModule", { + value: true +}); +Object.defineProperty(_$snappers_64, "grid", { + enumerable: true, + get: function get() { + return _grid["default"]; + } +}); + +var _grid = ___interopRequireDefault_64(_$grid_63); + +function ___interopRequireDefault_64(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +var _$interactjs_29 = {}; +"use strict"; + +Object.defineProperty(_$interactjs_29, "__esModule", { + value: true +}); +_$interactjs_29.init = __init_29; +_$interactjs_29["default"] = void 0; + +var ___index_29 = ___interopRequireWildcard_29(_$interact_27); + +var __modifiers_29 = ___interopRequireWildcard_29(_$modifiers_31); + +_$types_45; + +var ___extend_29 = ___interopRequireDefault_29(_$extend_52); + +var snappers = ___interopRequireWildcard_29(_$snappers_64); + +function ___interopRequireDefault_29(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } + +function ___getRequireWildcardCache_29() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_29 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_29(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_29(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_29(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___typeof_29(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_29 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_29 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_29(obj); } + +if ((typeof window === "undefined" ? "undefined" : ___typeof_29(window)) === 'object' && !!window) { + __init_29(window); +} + +function __init_29(win) { + (0, ___index_29.init)(win); + return ___index_29["default"].use({ + id: 'interactjs', + install: function install() { + ___index_29["default"].modifiers = (0, ___extend_29["default"])({}, __modifiers_29); + ___index_29["default"].snappers = snappers; + ___index_29["default"].createSnapGrid = ___index_29["default"].snappers.grid; + } + }); +} + +var ___default_29 = ___index_29["default"]; +_$interactjs_29["default"] = ___default_29; + +var _$index_66 = { exports: {} }; +"use strict"; + +Object.defineProperty(_$index_66.exports, "__esModule", { + value: true +}); +var _exportNames = {}; +_$index_66.exports["default"] = void 0; + +var ___index_66 = ___interopRequireWildcard_66(_$interactjs_29); + +Object.keys(___index_66).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; + Object.defineProperty(_$index_66.exports, key, { + enumerable: true, + get: function get() { + return ___index_66[key]; + } + }); +}); + +function ___getRequireWildcardCache_66() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); ___getRequireWildcardCache_66 = function _getRequireWildcardCache() { return cache; }; return cache; } + +function ___interopRequireWildcard_66(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || ___typeof_66(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = ___getRequireWildcardCache_66(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ___typeof_66(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { ___typeof_66 = function _typeof(obj) { return typeof obj; }; } else { ___typeof_66 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return ___typeof_66(obj); } + +if (("object" === "undefined" ? "undefined" : ___typeof_66(_$index_66)) === 'object' && !!_$index_66) { + _$index_66.exports = ___index_66["default"]; +} + +___index_66["default"]["default"] = ___index_66["default"] // tslint:disable-line no-string-literal +; +___index_66["default"].init = ___index_66.init; // tslint:disable-line no-string-literal + +var ___default_66 = ___index_66["default"]; +_$index_66.exports["default"] = ___default_66; + +_$index_66 = _$index_66.exports +return _$index_66; + +}); + + +//# sourceMappingURL=interact.js.map diff --git a/src/main/webapp/static/js/interactjs/interact.js.map b/src/main/webapp/static/js/interactjs/interact.js.map new file mode 100644 index 0000000000000000000000000000000000000000..b24550023512cf5c94ff8b7c210b2683e54b493e --- /dev/null +++ b/src/main/webapp/static/js/interactjs/interact.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["../scripts/header.js","../node_modules/browser-pack-flat/_prelude","../@interactjs/core/scope.ts","../@interactjs/core/interactions.ts","../@interactjs/core/Interaction.ts","../@interactjs/utils/domObjects.ts","../@interactjs/utils/arr.ts","../@interactjs/utils/isWindow.ts","../@interactjs/utils/window.ts","../@interactjs/utils/is.ts","../@interactjs/utils/browser.ts","../@interactjs/utils/domUtils.ts","../@interactjs/utils/hypot.ts","../@interactjs/utils/pointerExtend.ts","../@interactjs/utils/pointerUtils.ts","../@interactjs/utils/extend.ts","../@interactjs/utils/rect.ts","../@interactjs/utils/clone.ts","../@interactjs/utils/events.ts","../@interactjs/utils/getOriginXY.ts","../@interactjs/utils/normalizeListeners.ts","../@interactjs/utils/raf.ts","../@interactjs/utils/index.ts","../@interactjs/core/defaultOptions.ts","../@interactjs/core/Eventable.ts","../@interactjs/core/Interactable.ts","../@interactjs/core/InteractableSet.ts","../@interactjs/core/BaseEvent.ts","../@interactjs/core/InteractEvent.ts","../@interactjs/core/PointerInfo.ts","../@interactjs/core/interactionFinder.ts","../@interactjs/actions/drag.ts","../@interactjs/actions/drop/DropEvent.ts","../@interactjs/actions/drop/index.ts","../@interactjs/actions/gesture.ts","../@interactjs/actions/resize.ts","../@interactjs/actions/index.ts","../@interactjs/auto-scroll/index.ts","../@interactjs/auto-start/InteractableMethods.ts","../@interactjs/auto-start/base.ts","../@interactjs/auto-start/dragAxis.ts","../@interactjs/auto-start/hold.ts","../@interactjs/auto-start/index.ts","../@interactjs/core/interactablePreventDefault.ts","../@interactjs/dev-tools/index.ts","../@interactjs/modifiers/base.ts","../@interactjs/inertia/index.ts","../@interactjs/modifiers/aspectRatio.ts","../@interactjs/modifiers/restrict/pointer.ts","../@interactjs/modifiers/restrict/edges.ts","../@interactjs/modifiers/restrict/rect.ts","../@interactjs/modifiers/restrict/size.ts","../@interactjs/modifiers/snap/pointer.ts","../@interactjs/modifiers/snap/size.ts","../@interactjs/modifiers/snap/edges.ts","../@interactjs/modifiers/index.ts","../@interactjs/pointer-events/PointerEvent.ts","../@interactjs/pointer-events/base.ts","../@interactjs/pointer-events/holdRepeat.ts","../@interactjs/pointer-events/interactableTargets.ts","../@interactjs/pointer-events/index.ts","../@interactjs/reflow/index.ts","../@interactjs/interact/interact.ts","../@interactjs/interact/index.ts","../@interactjs/types/index.ts","../@interactjs/utils/snappers/grid.ts","../@interactjs/utils/snappers/index.ts","../@interactjs/interactjs/index.ts","index.ts","../node_modules/browser-pack-flat/_postlude"],"names":[],"mappings":"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","file":"interact.js","sourceRoot":"","sourcesContent":["/**\n * interact.js 1.8.1\n *\n * Copyright (c) 2012-2020 Taye Adeyemi <dev@taye.me>\n * Released under the MIT License.\n * https://raw.github.com/taye/interact.js/master/LICENSE\n */\n","(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.interact = f()}})(function(){var define,module,exports;\nvar createModuleFactory = function createModuleFactory(t){var e;return function(r){return e||t(e={exports:{},parent:r},e.exports),e.exports}};\n","import domObjects from '@interactjs/utils/domObjects'\nimport * as utils from '@interactjs/utils/index'\nimport defaults from './defaultOptions'\nimport Eventable from './Eventable'\nimport InteractableBase from './Interactable'\nimport InteractableSet from './InteractableSet'\nimport InteractEvent from './InteractEvent'\nimport interactions from './interactions'\n\nexport interface SignalArgs {\n 'scope:add-document': DocSignalArg\n 'scope:remove-document': DocSignalArg\n 'interactable:unset': { interactable: InteractableBase }\n 'interactable:set': { interactable: InteractableBase, options: Interact.Options }\n 'interactions:destroy': { interaction: Interact.Interaction }\n}\n\nexport type ListenerName = keyof SignalArgs\n\nexport type ListenerMap = {\n [P in ListenerName]?: (arg: SignalArgs[P], scope: Scope, signalName: P) => void | boolean\n}\n\ninterface DocSignalArg {\n doc: Document\n window: Window\n scope: Scope\n options?: { [index: string]: any }\n}\n\nconst {\n win,\n browser,\n raf,\n events,\n} = utils\n\nexport enum ActionName {\n}\n\nexport interface Actions {\n names: ActionName[]\n methodDict: { [key: string]: string }\n eventTypes: string[]\n}\n\nexport function createScope () {\n return new Scope()\n}\n\nexport type Defaults = typeof defaults\n\nexport interface Plugin {\n [key: string]: any\n id?: string\n listeners?: ListenerMap\n before?: string[]\n install? (scope: Scope, options?: any): void\n}\n\nexport class Scope {\n id = `__interact_scope_${Math.floor(Math.random() * 100)}`\n listenerMaps: Array<{\n map: ListenerMap\n id: string\n }> = []\n\n browser = browser\n events = events\n utils = utils\n defaults: Defaults = utils.clone(defaults) as Defaults\n Eventable = Eventable\n actions: Actions = {\n names: [],\n methodDict: {},\n eventTypes: [],\n }\n\n InteractEvent = InteractEvent\n Interactable!: typeof InteractableBase\n interactables = new InteractableSet(this)\n\n // main window\n _win!: Window\n\n // main document\n document!: Document\n\n // main window\n window!: Window\n\n // all documents being listened to\n documents: Array<{ doc: Document, options: any }> = []\n\n _plugins: {\n list: Plugin[]\n map: { [id: string]: Plugin }\n } = {\n list: [],\n map: {},\n }\n\n constructor () {\n const scope = this as Scope\n\n ;(this as { Interactable: typeof InteractableBase }).Interactable = class Interactable extends InteractableBase implements InteractableBase {\n get _defaults () { return scope.defaults }\n\n set (options: Interact.Options) {\n super.set(options)\n\n scope.fire('interactable:set', {\n options,\n interactable: this,\n })\n\n return this\n }\n\n unset () {\n super.unset()\n for (let i = scope.interactions.list.length - 1; i >= 0; i--) {\n const interaction = scope.interactions.list[i]\n\n if (interaction.interactable === this) {\n interaction.stop()\n scope.fire('interactions:destroy', { interaction })\n interaction.destroy()\n\n if (scope.interactions.list.length > 2) {\n scope.interactions.list.splice(i, 1)\n }\n }\n }\n\n scope.fire('interactable:unset', { interactable: this })\n }\n }\n }\n\n addListeners (map: ListenerMap, id?: string) {\n this.listenerMaps.push({ id, map })\n }\n\n fire<T extends ListenerName> (name: T, arg: SignalArgs[T]): void | false {\n for (const { map: { [name]: listener } } of this.listenerMaps) {\n if (!!listener && listener(arg as any, this, name as never) === false) {\n return false\n }\n }\n }\n\n onWindowUnload = (event: BeforeUnloadEvent) => this.removeDocument(event.target as Document)\n\n init (window: Window) {\n return initScope(this, window)\n }\n\n pluginIsInstalled (plugin: Plugin) {\n return this._plugins.map[plugin.id] || this._plugins.list.indexOf(plugin) !== -1\n }\n\n usePlugin (plugin: Plugin, options?: { [key: string]: any }) {\n if (this.pluginIsInstalled(plugin)) {\n return this\n }\n\n if (plugin.id) { this._plugins.map[plugin.id] = plugin }\n this._plugins.list.push(plugin)\n\n if (plugin.install) {\n plugin.install(this, options)\n }\n\n if (plugin.listeners && plugin.before) {\n let index = 0\n const len = this.listenerMaps.length\n const before = plugin.before.reduce((acc, id) => {\n acc[id] = true\n return acc\n }, {})\n\n for (; index < len; index++) {\n const otherId = this.listenerMaps[index].id\n\n if (before[otherId]) { break }\n }\n\n this.listenerMaps.splice(index, 0, { id: plugin.id, map: plugin.listeners })\n }\n else if (plugin.listeners) {\n this.listenerMaps.push({ id: plugin.id, map: plugin.listeners })\n }\n\n return this\n }\n\n addDocument (doc: Document, options?: any): void | false {\n // do nothing if document is already known\n if (this.getDocIndex(doc) !== -1) { return false }\n\n const window = win.getWindow(doc)\n\n options = options ? utils.extend({}, options) : {}\n\n this.documents.push({ doc, options })\n events.documents.push(doc)\n\n // don't add an unload event for the main document\n // so that the page may be cached in browser history\n if (doc !== this.document) {\n events.add(window, 'unload', this.onWindowUnload)\n }\n\n this.fire('scope:add-document', { doc, window, scope: this, options })\n }\n\n removeDocument (doc: Document) {\n const index = this.getDocIndex(doc)\n\n const window = win.getWindow(doc)\n const options = this.documents[index].options\n\n events.remove(window, 'unload', this.onWindowUnload)\n\n this.documents.splice(index, 1)\n events.documents.splice(index, 1)\n\n this.fire('scope:remove-document', { doc, window, scope: this, options })\n }\n\n getDocIndex (doc: Document) {\n for (let i = 0; i < this.documents.length; i++) {\n if (this.documents[i].doc === doc) {\n return i\n }\n }\n\n return -1\n }\n\n getDocOptions (doc: Document) {\n const docIndex = this.getDocIndex(doc)\n\n return docIndex === -1 ? null : this.documents[docIndex].options\n }\n\n now () {\n return ((this.window as any).Date as typeof Date || Date).now()\n }\n}\n\nexport function initScope (scope: Scope, window: Window) {\n win.init(window)\n domObjects.init(window)\n browser.init(window)\n raf.init(window)\n events.init(window)\n\n scope.usePlugin(interactions)\n scope.document = window.document\n scope.window = window\n\n return scope\n}\n","import browser from '@interactjs/utils/browser'\nimport domObjects from '@interactjs/utils/domObjects'\nimport { nodeContains } from '@interactjs/utils/domUtils'\nimport events from '@interactjs/utils/events'\nimport * as pointerUtils from '@interactjs/utils/pointerUtils'\nimport InteractionBase from './Interaction'\nimport finder, { SearchDetails } from './interactionFinder'\nimport { Scope } from './scope'\n\ndeclare module '@interactjs/core/scope' {\n interface Scope {\n Interaction: typeof InteractionBase\n interactions: {\n new: (options: any) => InteractionBase\n list: InteractionBase[]\n listeners: { [type: string]: Interact.Listener }\n docEvents: Array<{ type: string, listener: Interact.Listener }>\n pointerMoveTolerance: number\n }\n prevTouchTime: number\n }\n}\n\ndeclare module '@interactjs/core/scope' {\n interface SignalArgs {\n 'interactions:find': {\n interaction: InteractionBase\n searchDetails: SearchDetails\n }\n }\n}\n\nconst methodNames = [\n 'pointerDown', 'pointerMove', 'pointerUp',\n 'updatePointer', 'removePointer', 'windowBlur',\n]\n\nfunction install (scope: Scope) {\n const listeners = {} as any\n\n for (const method of methodNames) {\n listeners[method] = doOnInteractions(method, scope)\n }\n\n const pEventTypes = browser.pEventTypes\n let docEvents: typeof scope.interactions.docEvents\n\n if (domObjects.PointerEvent) {\n docEvents = [\n { type: pEventTypes.down, listener: releasePointersOnRemovedEls },\n { type: pEventTypes.down, listener: listeners.pointerDown },\n { type: pEventTypes.move, listener: listeners.pointerMove },\n { type: pEventTypes.up, listener: listeners.pointerUp },\n { type: pEventTypes.cancel, listener: listeners.pointerUp },\n ]\n }\n else {\n docEvents = [\n { type: 'mousedown', listener: listeners.pointerDown },\n { type: 'mousemove', listener: listeners.pointerMove },\n { type: 'mouseup', listener: listeners.pointerUp },\n\n { type: 'touchstart', listener: releasePointersOnRemovedEls },\n { type: 'touchstart', listener: listeners.pointerDown },\n { type: 'touchmove', listener: listeners.pointerMove },\n { type: 'touchend', listener: listeners.pointerUp },\n { type: 'touchcancel', listener: listeners.pointerUp },\n ]\n }\n\n docEvents.push({\n type: 'blur',\n listener (event) {\n for (const interaction of scope.interactions.list) {\n interaction.documentBlur(event)\n }\n },\n })\n\n // for ignoring browser's simulated mouse events\n scope.prevTouchTime = 0\n\n scope.Interaction = class Interaction extends InteractionBase {\n get pointerMoveTolerance () {\n return scope.interactions.pointerMoveTolerance\n }\n\n set pointerMoveTolerance (value) {\n scope.interactions.pointerMoveTolerance = value\n }\n\n _now () { return scope.now() }\n }\n\n scope.interactions = {\n // all active and idle interactions\n list: [],\n new (options: { pointerType?: string, scopeFire?: Scope['fire'] }) {\n options.scopeFire = (name, arg) => scope.fire(name, arg)\n\n const interaction = new scope.Interaction(options as Required<typeof options>)\n\n scope.interactions.list.push(interaction)\n return interaction\n },\n listeners,\n docEvents,\n pointerMoveTolerance: 1,\n }\n\n function releasePointersOnRemovedEls () {\n // for all inactive touch interactions with pointers down\n for (const interaction of scope.interactions.list) {\n if (!interaction.pointerIsDown ||\n interaction.pointerType !== 'touch' ||\n interaction._interacting) {\n continue\n }\n\n // if a pointer is down on an element that is no longer in the DOM tree\n for (const pointer of interaction.pointers) {\n if (!scope.documents.some(({ doc }) => nodeContains(doc, pointer.downTarget))) {\n // remove the pointer from the interaction\n interaction.removePointer(pointer.pointer, pointer.event)\n }\n }\n }\n }\n}\n\nfunction doOnInteractions (method, scope) {\n return function (event) {\n const interactions = scope.interactions.list\n\n const pointerType = pointerUtils.getPointerType(event)\n const [eventTarget, curEventTarget] = pointerUtils.getEventTargets(event)\n const matches = [] // [ [pointer, interaction], ...]\n\n if (/^touch/.test(event.type)) {\n scope.prevTouchTime = scope.now()\n\n for (const changedTouch of event.changedTouches) {\n const pointer = changedTouch\n const pointerId = pointerUtils.getPointerId(pointer)\n const searchDetails: SearchDetails = {\n pointer,\n pointerId,\n pointerType,\n eventType: event.type,\n eventTarget,\n curEventTarget,\n scope,\n }\n const interaction = getInteraction(searchDetails)\n\n matches.push([\n searchDetails.pointer,\n searchDetails.eventTarget,\n searchDetails.curEventTarget,\n interaction,\n ])\n }\n }\n else {\n let invalidPointer = false\n\n if (!browser.supportsPointerEvent && /mouse/.test(event.type)) {\n // ignore mouse events while touch interactions are active\n for (let i = 0; i < interactions.length && !invalidPointer; i++) {\n invalidPointer = interactions[i].pointerType !== 'mouse' && interactions[i].pointerIsDown\n }\n\n // try to ignore mouse events that are simulated by the browser\n // after a touch event\n invalidPointer = invalidPointer ||\n (scope.now() - scope.prevTouchTime < 500) ||\n // on iOS and Firefox Mobile, MouseEvent.timeStamp is zero if simulated\n event.timeStamp === 0\n }\n\n if (!invalidPointer) {\n const searchDetails = {\n pointer: event,\n pointerId: pointerUtils.getPointerId(event),\n pointerType,\n eventType: event.type,\n curEventTarget,\n eventTarget,\n scope,\n }\n\n const interaction = getInteraction(searchDetails)\n\n matches.push([\n searchDetails.pointer,\n searchDetails.eventTarget,\n searchDetails.curEventTarget,\n interaction,\n ])\n }\n }\n\n // eslint-disable-next-line no-shadow\n for (const [pointer, eventTarget, curEventTarget, interaction] of matches) {\n interaction[method](pointer, event, eventTarget, curEventTarget)\n }\n }\n}\n\nfunction getInteraction (searchDetails: SearchDetails) {\n const { pointerType, scope } = searchDetails\n\n const foundInteraction = finder.search(searchDetails)\n const signalArg = { interaction: foundInteraction, searchDetails }\n\n scope.fire('interactions:find', signalArg)\n\n return signalArg.interaction || scope.interactions.new({ pointerType })\n}\n\nfunction onDocSignal<T extends 'scope:add-document' | 'scope:remove-document'> ({ doc, scope, options }: Interact.SignalArgs[T], eventMethodName: 'add' | 'remove') {\n const { docEvents } = scope.interactions\n const eventMethod = events[eventMethodName]\n\n if (scope.browser.isIOS && !options.events) {\n options.events = { passive: false }\n }\n\n // delegate event listener\n for (const eventType in events.delegatedEvents) {\n eventMethod(doc, eventType, events.delegateListener)\n eventMethod(doc, eventType, events.delegateUseCapture, true)\n }\n\n const eventOptions = options && options.events\n\n for (const { type, listener } of docEvents) {\n eventMethod(doc, type, listener, eventOptions)\n }\n}\n\nexport default {\n id: 'core/interactions',\n install,\n listeners: {\n 'scope:add-document': arg => onDocSignal(arg, 'add'),\n 'scope:remove-document': arg => onDocSignal(arg, 'remove'),\n },\n onDocSignal,\n doOnInteractions,\n methodNames,\n}\n","import * as utils from '@interactjs/utils/index'\nimport Interactable from './Interactable'\nimport InteractEvent, { EventPhase } from './InteractEvent'\nimport PointerInfo from './PointerInfo'\nimport { ActionName } from './scope'\n\nexport interface ActionProps<T extends ActionName = any> {\n name: T\n axis?: 'x' | 'y' | 'xy'\n edges?: Interact.EdgeOptions\n}\n\nexport interface StartAction extends ActionProps {\n name: ActionName | string\n}\n\nexport enum _ProxyValues {\n interactable = '',\n element = '',\n prepared = '',\n pointerIsDown = '',\n pointerWasMoved = '',\n _proxy = ''\n}\n\nexport enum _ProxyMethods {\n start = '',\n move = '',\n end = '',\n stop = '',\n interacting = ''\n}\n\nexport type PointerArgProps<T extends {} = {}> = {\n pointer: Interact.PointerType\n event: Interact.PointerEventType\n eventTarget: Interact.EventTarget\n pointerIndex: number\n interaction: Interaction\n} & T\n\nexport interface DoPhaseArg {\n event: Interact.PointerEventType\n phase: EventPhase\n interaction: Interaction\n iEvent: InteractEvent\n preEnd?: boolean\n type?: string\n}\n\ndeclare module '@interactjs/core/scope' {\n interface SignalArgs {\n 'interactions:new': { interaction: Interaction }\n 'interactions:down': PointerArgProps<{\n type: 'down'\n }>\n 'interactions:move': PointerArgProps<{\n type: 'move'\n dx: number\n dy: number\n duplicate: boolean\n }>\n 'interactions:up': PointerArgProps<{\n type: 'up'\n curEventTarget: EventTarget\n }>\n 'interactions:cancel': SignalArgs['interactions:up'] & {\n type: 'cancel'\n curEventTarget: EventTarget\n }\n 'interactions:update-pointer': PointerArgProps<{\n pointerInfo: PointerInfo\n down: boolean\n }>\n 'interactions:remove-pointer': PointerArgProps<{\n pointerInfo: PointerInfo\n }>\n 'interactions:blur'\n 'interactions:before-action-start': Omit<DoPhaseArg, 'iEvent'>\n 'interactions:action-start': DoPhaseArg\n 'interactions:after-action-start': DoPhaseArg\n 'interactions:before-action-move': Omit<DoPhaseArg, 'iEvent'>\n 'interactions:action-move': DoPhaseArg\n 'interactions:after-action-move': DoPhaseArg\n 'interactions:before-action-end': Omit<DoPhaseArg, 'iEvent'>\n 'interactions:action-end': DoPhaseArg\n 'interactions:after-action-end': DoPhaseArg\n 'interactions:stop': { interaction: Interaction }\n }\n}\n\nexport type _InteractionProxy = Pick<\nInteraction,\nkeyof typeof _ProxyValues | keyof typeof _ProxyMethods\n>\n\nlet idCounter = 0\n\nexport class Interaction<T extends ActionName = any> {\n // current interactable being interacted with\n interactable: Interactable = null\n\n // the target element of the interactable\n element: Interact.Element = null\n rect: Interact.FullRect\n _rects?: {\n start: Interact.FullRect\n corrected: Interact.FullRect\n previous: Interact.FullRect\n delta: Interact.FullRect\n }\n edges: Interact.EdgeOptions\n\n _scopeFire: Interact.Scope['fire']\n\n // action that's ready to be fired on next move event\n prepared: ActionProps<T> = {\n name : null,\n axis : null,\n edges: null,\n }\n\n pointerType: string\n\n // keep track of added pointers\n pointers: PointerInfo[] = []\n\n // pointerdown/mousedown/touchstart event\n downEvent: Interact.PointerEventType = null\n\n downPointer: Interact.PointerType = {} as Interact.PointerType\n\n _latestPointer: {\n pointer: Interact.EventTarget\n event: Interact.PointerEventType\n eventTarget: Node\n } = {\n pointer: null,\n event: null,\n eventTarget: null,\n }\n\n // previous action event\n prevEvent: InteractEvent<T> = null\n\n pointerIsDown = false\n pointerWasMoved = false\n _interacting = false\n _ending = false\n _stopped = true\n _proxy: _InteractionProxy = null\n\n simulation = null\n\n get pointerMoveTolerance () {\n return 1\n }\n\n /**\n * @alias Interaction.prototype.move\n */\n doMove = utils.warnOnce(\n function (this: Interaction, signalArg: any) {\n this.move(signalArg)\n },\n 'The interaction.doMove() method has been renamed to interaction.move()')\n\n coords: Interact.CoordsSet = {\n // Starting InteractEvent pointer coordinates\n start: utils.pointer.newCoords(),\n // Previous native pointer move event coordinates\n prev: utils.pointer.newCoords(),\n // current native pointer move event coordinates\n cur: utils.pointer.newCoords(),\n // Change in coordinates and time of the pointer\n delta: utils.pointer.newCoords(),\n // pointer velocity\n velocity: utils.pointer.newCoords(),\n }\n\n readonly _id: number = idCounter++\n\n /** */\n constructor ({ pointerType, scopeFire }: {\n pointerType?: string\n scopeFire: Interact.Scope['fire']\n }) {\n this._scopeFire = scopeFire\n this.pointerType = pointerType\n\n const that = this\n\n this._proxy = {} as _InteractionProxy\n\n for (const key in _ProxyValues) {\n Object.defineProperty(this._proxy, key, {\n get () { return that[key] },\n })\n }\n\n for (const key in _ProxyMethods) {\n Object.defineProperty(this._proxy, key, {\n value: (...args) => that[key](...args),\n })\n }\n\n this._scopeFire('interactions:new', { interaction: this })\n }\n\n pointerDown (pointer: Interact.PointerType, event: Interact.PointerEventType, eventTarget: Interact.EventTarget) {\n const pointerIndex = this.updatePointer(pointer, event, eventTarget, true)\n\n this._scopeFire('interactions:down', {\n pointer,\n event,\n eventTarget,\n pointerIndex,\n type: 'down',\n interaction: this,\n })\n }\n\n /**\n * ```js\n * interact(target)\n * .draggable({\n * // disable the default drag start by down->move\n * manualStart: true\n * })\n * // start dragging after the user holds the pointer down\n * .on('hold', function (event) {\n * var interaction = event.interaction\n *\n * if (!interaction.interacting()) {\n * interaction.start({ name: 'drag' },\n * event.interactable,\n * event.currentTarget)\n * }\n * })\n * ```\n *\n * Start an action with the given Interactable and Element as tartgets. The\n * action must be enabled for the target Interactable and an appropriate\n * number of pointers must be held down - 1 for drag/resize, 2 for gesture.\n *\n * Use it with `interactable.<action>able({ manualStart: false })` to always\n * [start actions manually](https://github.com/taye/interact.js/issues/114)\n *\n * @param {object} action The action to be performed - drag, resize, etc.\n * @param {Interactable} target The Interactable to target\n * @param {Element} element The DOM Element to target\n * @return {object} interact\n */\n start (action: StartAction, interactable: Interactable, element: Interact.Element) {\n if (this.interacting() ||\n !this.pointerIsDown ||\n this.pointers.length < (action.name === ActionName.Gesture ? 2 : 1) ||\n !interactable.options[action.name].enabled) {\n return false\n }\n\n utils.copyAction(this.prepared, action)\n\n this.interactable = interactable\n this.element = element\n this.rect = interactable.getRect(element)\n this.edges = utils.extend({}, this.prepared.edges)\n this._stopped = false\n this._interacting = this._doPhase({\n interaction: this,\n event: this.downEvent,\n phase: EventPhase.Start,\n }) && !this._stopped\n\n return this._interacting\n }\n\n pointerMove (pointer: Interact.PointerType, event: Interact.PointerEventType, eventTarget: Interact.EventTarget) {\n if (!this.simulation && !(this.modifiers && this.modifiers.endResult)) {\n this.updatePointer(pointer, event, eventTarget, false)\n utils.pointer.setCoords(this.coords.cur, this.pointers.map(p => p.pointer), this._now())\n }\n\n const duplicateMove = (this.coords.cur.page.x === this.coords.prev.page.x &&\n this.coords.cur.page.y === this.coords.prev.page.y &&\n this.coords.cur.client.x === this.coords.prev.client.x &&\n this.coords.cur.client.y === this.coords.prev.client.y)\n\n let dx\n let dy\n\n // register movement greater than pointerMoveTolerance\n if (this.pointerIsDown && !this.pointerWasMoved) {\n dx = this.coords.cur.client.x - this.coords.start.client.x\n dy = this.coords.cur.client.y - this.coords.start.client.y\n\n this.pointerWasMoved = utils.hypot(dx, dy) > this.pointerMoveTolerance\n }\n\n const signalArg = {\n pointer,\n pointerIndex: this.getPointerIndex(pointer),\n event,\n type: 'move' as const,\n eventTarget,\n dx,\n dy,\n duplicate: duplicateMove,\n interaction: this,\n }\n\n if (!duplicateMove) {\n // set pointer coordinate, time changes and velocity\n utils.pointer.setCoordDeltas(this.coords.delta, this.coords.prev, this.coords.cur)\n utils.pointer.setCoordVelocity(this.coords.velocity, this.coords.delta)\n }\n\n this._scopeFire('interactions:move', signalArg)\n\n if (!duplicateMove) {\n // if interacting, fire an 'action-move' signal etc\n if (this.interacting()) {\n signalArg.type = null\n this.move(signalArg)\n }\n\n if (this.pointerWasMoved) {\n utils.pointer.copyCoords(this.coords.prev, this.coords.cur)\n }\n }\n }\n\n /**\n * ```js\n * interact(target)\n * .draggable(true)\n * .on('dragmove', function (event) {\n * if (someCondition) {\n * // change the snap settings\n * event.interactable.draggable({ snap: { targets: [] }})\n * // fire another move event with re-calculated snap\n * event.interaction.move()\n * }\n * })\n * ```\n *\n * Force a move of the current action at the same coordinates. Useful if\n * snap/restrict has been changed and you want a movement with the new\n * settings.\n */\n move (signalArg?) {\n if (!signalArg || !signalArg.event) {\n utils.pointer.setZeroCoords(this.coords.delta)\n }\n\n signalArg = utils.extend({\n pointer: this._latestPointer.pointer,\n event: this._latestPointer.event,\n eventTarget: this._latestPointer.eventTarget,\n interaction: this,\n }, signalArg || {})\n\n signalArg.phase = EventPhase.Move\n\n this._doPhase(signalArg)\n }\n\n // End interact move events and stop auto-scroll unless simulation is running\n pointerUp (pointer: Interact.PointerType, event: Interact.PointerEventType, eventTarget: Interact.EventTarget, curEventTarget: Interact.EventTarget) {\n let pointerIndex = this.getPointerIndex(pointer)\n\n if (pointerIndex === -1) {\n pointerIndex = this.updatePointer(pointer, event, eventTarget, false)\n }\n\n const type = /cancel$/i.test(event.type) ? 'cancel' : 'up'\n\n this._scopeFire(`interactions:${type}` as 'interactions:up' | 'interactions:cancel', {\n pointer,\n pointerIndex,\n event,\n eventTarget,\n type: type as any,\n curEventTarget,\n interaction: this,\n })\n\n if (!this.simulation) {\n this.end(event)\n }\n\n this.pointerIsDown = false\n this.removePointer(pointer, event)\n }\n\n documentBlur (event) {\n this.end(event)\n this._scopeFire('interactions:blur', { event, type: 'blur', interaction: this })\n }\n\n /**\n * ```js\n * interact(target)\n * .draggable(true)\n * .on('move', function (event) {\n * if (event.pageX > 1000) {\n * // end the current action\n * event.interaction.end()\n * // stop all further listeners from being called\n * event.stopImmediatePropagation()\n * }\n * })\n * ```\n *\n * @param {PointerEvent} [event]\n */\n end (event?: Interact.PointerEventType) {\n this._ending = true\n event = event || this._latestPointer.event\n let endPhaseResult\n\n if (this.interacting()) {\n endPhaseResult = this._doPhase({\n event,\n interaction: this,\n phase: EventPhase.End,\n })\n }\n\n this._ending = false\n\n if (endPhaseResult === true) {\n this.stop()\n }\n }\n\n currentAction () {\n return this._interacting ? this.prepared.name : null\n }\n\n interacting () {\n return this._interacting\n }\n\n /** */\n stop () {\n this._scopeFire('interactions:stop', { interaction: this })\n\n this.interactable = this.element = null\n\n this._interacting = false\n this._stopped = true\n this.prepared.name = this.prevEvent = null\n }\n\n getPointerIndex (pointer) {\n const pointerId = utils.pointer.getPointerId(pointer)\n\n // mouse and pen interactions may have only one pointer\n return (this.pointerType === 'mouse' || this.pointerType === 'pen')\n ? this.pointers.length - 1\n : utils.arr.findIndex(this.pointers, curPointer => curPointer.id === pointerId)\n }\n\n getPointerInfo (pointer) {\n return this.pointers[this.getPointerIndex(pointer)]\n }\n\n updatePointer (pointer: Interact.PointerType, event: Interact.PointerEventType, eventTarget: Interact.EventTarget, down?: boolean) {\n const id = utils.pointer.getPointerId(pointer)\n let pointerIndex = this.getPointerIndex(pointer)\n let pointerInfo = this.pointers[pointerIndex]\n\n down = down === false\n ? false\n : down || /(down|start)$/i.test(event.type)\n\n if (!pointerInfo) {\n pointerInfo = new PointerInfo(\n id,\n pointer,\n event,\n null,\n null,\n )\n\n pointerIndex = this.pointers.length\n this.pointers.push(pointerInfo)\n }\n else {\n pointerInfo.pointer = pointer\n }\n\n if (down) {\n this.pointerIsDown = true\n\n if (!this.interacting()) {\n utils.pointer.setCoords(this.coords.start, this.pointers.map(p => p.pointer), this._now())\n\n utils.pointer.copyCoords(this.coords.cur, this.coords.start)\n utils.pointer.copyCoords(this.coords.prev, this.coords.start)\n utils.pointer.pointerExtend(this.downPointer, pointer)\n\n this.downEvent = event\n pointerInfo.downTime = this.coords.cur.timeStamp\n pointerInfo.downTarget = eventTarget\n\n this.pointerWasMoved = false\n }\n }\n\n this._updateLatestPointer(pointer, event, eventTarget)\n\n this._scopeFire('interactions:update-pointer', {\n pointer,\n event,\n eventTarget,\n down,\n pointerInfo,\n pointerIndex,\n interaction: this,\n })\n\n return pointerIndex\n }\n\n removePointer (pointer: Interact.PointerType, event: Interact.PointerEventType) {\n const pointerIndex = this.getPointerIndex(pointer)\n\n if (pointerIndex === -1) { return }\n\n const pointerInfo = this.pointers[pointerIndex]\n\n this._scopeFire('interactions:remove-pointer', {\n pointer,\n event,\n eventTarget: null,\n pointerIndex,\n pointerInfo,\n interaction: this,\n })\n\n this.pointers.splice(pointerIndex, 1)\n }\n\n _updateLatestPointer (pointer, event, eventTarget) {\n this._latestPointer.pointer = pointer\n this._latestPointer.event = event\n this._latestPointer.eventTarget = eventTarget\n }\n\n destroy () {\n this._latestPointer.pointer = null\n this._latestPointer.event = null\n this._latestPointer.eventTarget = null\n }\n\n _createPreparedEvent (event: Interact.PointerEventType, phase: EventPhase, preEnd?: boolean, type?: string) {\n const actionName = this.prepared.name\n\n return new InteractEvent(this, event, actionName, phase, this.element, null, preEnd, type)\n }\n\n _fireEvent (iEvent) {\n this.interactable.fire(iEvent)\n\n if (!this.prevEvent || iEvent.timeStamp >= this.prevEvent.timeStamp) {\n this.prevEvent = iEvent\n }\n }\n\n _doPhase (signalArg: Omit<DoPhaseArg, 'iEvent'> & { iEvent?: InteractEvent<T> }) {\n const { event, phase, preEnd, type } = signalArg\n const { rect, coords: { delta } } = this\n\n if (rect && phase === EventPhase.Move) {\n // update the rect modifications\n const edges = this.edges || this.prepared.edges || { left: true, right: true, top: true, bottom: true }\n utils.rect.addEdges(edges, rect, delta[this.interactable.options.deltaSource])\n\n rect.width = rect.right - rect.left\n rect.height = rect.bottom - rect.top\n }\n\n const beforeResult = this._scopeFire(`interactions:before-action-${phase}` as any, signalArg)\n\n if (beforeResult === false) {\n return false\n }\n\n const iEvent = signalArg.iEvent = this._createPreparedEvent(event, phase, preEnd, type)\n\n this._scopeFire(`interactions:action-${phase}` as any, signalArg)\n\n this._fireEvent(iEvent)\n\n this._scopeFire(`interactions:after-action-${phase}` as any, signalArg)\n\n return true\n }\n\n _now () { return Date.now() }\n}\n\nexport default Interaction\nexport { PointerInfo }\n","const domObjects: {\n init: any\n document: Document\n DocumentFragment: typeof DocumentFragment\n SVGElement: typeof SVGElement\n SVGSVGElement: typeof SVGSVGElement\n SVGElementInstance: any\n Element: typeof Element\n HTMLElement: typeof HTMLElement\n Event: typeof Event\n Touch: typeof Touch\n PointerEvent: typeof PointerEvent\n} =\n{\n init,\n document: null,\n DocumentFragment: null,\n SVGElement: null,\n SVGSVGElement: null,\n SVGElementInstance: null,\n Element: null,\n HTMLElement: null,\n Event: null,\n Touch: null,\n PointerEvent: null,\n}\n\nfunction blank () {}\n\nexport default domObjects\n\nfunction init (window: Window) {\n const win = window as any\n\n domObjects.document = win.document\n domObjects.DocumentFragment = win.DocumentFragment || blank\n domObjects.SVGElement = win.SVGElement || blank\n domObjects.SVGSVGElement = win.SVGSVGElement || blank\n domObjects.SVGElementInstance = win.SVGElementInstance || blank\n domObjects.Element = win.Element || blank\n domObjects.HTMLElement = win.HTMLElement || domObjects.Element\n\n domObjects.Event = win.Event\n domObjects.Touch = win.Touch || blank\n domObjects.PointerEvent = (win.PointerEvent || win.MSPointerEvent)\n}\n","type Filter<T> = (element: T, index: number, array: T[]) => boolean\n\nexport function contains<T> (array: T[], target: T) {\n return array.indexOf(target) !== -1\n}\n\nexport function remove<T> (array: T[], target: T) {\n return array.splice(array.indexOf(target), 1)\n}\n\nexport function merge<T, U> (target: Array<T | U>, source: U[]) {\n for (const item of source) {\n target.push(item)\n }\n\n return target\n}\n\nexport function from<T = any> (source: ArrayLike<T>) {\n return merge([] as T[], source as T[])\n}\n\nexport function findIndex<T> (array: T[], func: Filter<T>) {\n for (let i = 0; i < array.length; i++) {\n if (func(array[i], i, array)) {\n return i\n }\n }\n\n return -1\n}\n\nexport function find<T = any> (array: T[], func: Filter<T>) {\n return array[findIndex(array, func)]\n}\n","export default (thing: any) => !!(thing && thing.Window) && (thing instanceof thing.Window)\n","import isWindow from './isWindow'\n\nconst win = {\n realWindow: undefined as Window,\n window: undefined as Window,\n getWindow,\n init,\n}\n\nexport function init (window: Window & { wrap?: (...args: any) => any }) {\n // get wrapped window if using Shadow DOM polyfill\n\n win.realWindow = window\n\n // create a TextNode\n const el = window.document.createTextNode('')\n\n // check if it's wrapped by a polyfill\n if (el.ownerDocument !== window.document &&\n typeof window.wrap === 'function' &&\n window.wrap(el) === el) {\n // use wrapped window\n window = window.wrap(window)\n }\n\n win.window = window\n}\n\nif (typeof window === 'undefined') {\n win.window = undefined\n win.realWindow = undefined\n}\nelse {\n init(window)\n}\n\nexport function getWindow (node: any) {\n if (isWindow(node)) {\n return node\n }\n\n const rootNode = (node.ownerDocument || node)\n\n return rootNode.defaultView || win.window\n}\n\nwin.init = init\n\nexport default win\n","// tslint:disable variable-name\n\nimport isWindow from './isWindow'\nimport win from './window'\n\nexport const window = (thing: any): thing is Window =>\n thing === win.window || isWindow(thing)\n\nexport const docFrag = (thing: any): thing is DocumentFragment =>\n object(thing) && thing.nodeType === 11\n\nexport const object = (thing: any): thing is { [index: string]: any } =>\n !!thing && (typeof thing === 'object')\n\nexport const func = (thing: any): thing is (...args: any) => any =>\n typeof thing === 'function'\n\nexport const number = (thing: any): thing is number =>\n typeof thing === 'number'\n\nexport const bool = (thing: any): thing is boolean =>\n typeof thing === 'boolean'\n\nexport const string = (thing: any): thing is string =>\n typeof thing === 'string'\n\nexport const element = (thing: any): thing is Interact.Element => {\n if (!thing || (typeof thing !== 'object')) { return false }\n\n const _window = win.getWindow(thing) || win.window\n\n return (/object|function/.test(typeof _window.Element)\n ? thing instanceof _window.Element // DOM2\n : thing.nodeType === 1 && typeof thing.nodeName === 'string')\n}\n\nexport const plainObject: typeof object = (thing: any): thing is { [index: string]: any } =>\n object(thing) &&\n !!thing.constructor &&\n /function Object\\b/.test(thing.constructor.toString())\n\nexport const array = <T extends unknown>(thing: any): thing is T[] =>\n (object(thing) &&\n (typeof thing.length !== 'undefined') &&\n func(thing.splice))\n","import domObjects from './domObjects'\nimport * as is from './is'\nimport win from './window'\n\nconst browser = {\n init,\n supportsTouch: null as boolean,\n supportsPointerEvent: null as boolean,\n isIOS7: null as boolean,\n isIOS: null as boolean,\n isIe9: null as boolean,\n isOperaMobile: null as boolean,\n prefixedMatchesSelector: null as string,\n pEventTypes: null as {\n up: string\n down: string\n over: string\n out: string\n move: string\n cancel: string\n },\n wheelEvent: null as string,\n}\n\nfunction init (window: any) {\n const Element = domObjects.Element\n const navigator = win.window.navigator\n\n // Does the browser support touch input?\n browser.supportsTouch = ('ontouchstart' in window) ||\n (is.func(window.DocumentTouch) && domObjects.document instanceof window.DocumentTouch)\n\n // Does the browser support PointerEvents\n browser.supportsPointerEvent = navigator.pointerEnabled !== false && !!domObjects.PointerEvent\n\n browser.isIOS = (/iP(hone|od|ad)/.test(navigator.platform))\n\n // scrolling doesn't change the result of getClientRects on iOS 7\n browser.isIOS7 = (/iP(hone|od|ad)/.test(navigator.platform) &&\n /OS 7[^\\d]/.test(navigator.appVersion))\n\n browser.isIe9 = /MSIE 9/.test(navigator.userAgent)\n\n // Opera Mobile must be handled differently\n browser.isOperaMobile = (navigator.appName === 'Opera' &&\n browser.supportsTouch &&\n /Presto/.test(navigator.userAgent))\n\n // prefix matchesSelector\n browser.prefixedMatchesSelector = 'matches' in Element.prototype\n ? 'matches'\n : 'webkitMatchesSelector' in Element.prototype\n ? 'webkitMatchesSelector'\n : 'mozMatchesSelector' in Element.prototype\n ? 'mozMatchesSelector'\n : 'oMatchesSelector' in Element.prototype\n ? 'oMatchesSelector'\n : 'msMatchesSelector'\n\n browser.pEventTypes = (browser.supportsPointerEvent\n ? (domObjects.PointerEvent === window.MSPointerEvent\n ? {\n up: 'MSPointerUp',\n down: 'MSPointerDown',\n over: 'mouseover',\n out: 'mouseout',\n move: 'MSPointerMove',\n cancel: 'MSPointerCancel',\n }\n : {\n up: 'pointerup',\n down: 'pointerdown',\n over: 'pointerover',\n out: 'pointerout',\n move: 'pointermove',\n cancel: 'pointercancel',\n })\n : null)\n\n // because Webkit and Opera still use 'mousewheel' event type\n browser.wheelEvent = 'onmousewheel' in domObjects.document ? 'mousewheel' : 'wheel'\n}\n\nexport default browser\n","import browser from './browser'\nimport domObjects from './domObjects'\nimport * as is from './is'\nimport win, { getWindow } from './window'\n\nexport function nodeContains (parent: Node | Interact.EventTarget, child: Node | Interact.EventTarget) {\n while (child) {\n if (child === parent) {\n return true\n }\n\n child = (child as Node).parentNode\n }\n\n return false\n}\n\nexport function closest (element: Node, selector: string) {\n while (is.element(element)) {\n if (matchesSelector(element, selector)) { return element }\n\n element = parentNode(element)\n }\n\n return null\n}\n\nexport function parentNode (node: Node | Document) {\n let parent = node.parentNode\n\n if (is.docFrag(parent)) {\n // skip past #shado-root fragments\n // tslint:disable-next-line\n while ((parent = (parent as any).host) && is.docFrag(parent)) {\n continue\n }\n\n return parent\n }\n\n return parent\n}\n\nexport function matchesSelector (element: Interact.Element, selector: string) {\n // remove /deep/ from selectors if shadowDOM polyfill is used\n if (win.window !== win.realWindow) {\n selector = selector.replace(/\\/deep\\//g, ' ')\n }\n\n return element[browser.prefixedMatchesSelector](selector)\n}\n\nconst getParent = el => el.parentNode ? el.parentNode : el.host\n\n// Test for the element that's \"above\" all other qualifiers\nexport function indexOfDeepestElement (elements: Interact.Element[] | NodeListOf<Element>) {\n let deepestZoneParents = []\n let deepestZone = elements[0]\n let index = deepestZone ? 0 : -1\n let i\n let n\n\n for (i = 1; i < elements.length; i++) {\n const dropzone = elements[i]\n\n // an element might belong to multiple selector dropzones\n if (!dropzone || dropzone === deepestZone) {\n continue\n }\n\n if (!deepestZone) {\n deepestZone = dropzone\n index = i\n continue\n }\n\n // check if the deepest or current are document.documentElement or document.rootElement\n // - if the current dropzone is, do nothing and continue\n if (dropzone.parentNode === dropzone.ownerDocument) {\n continue\n }\n // - if deepest is, update with the current dropzone and continue to next\n else if (deepestZone.parentNode === dropzone.ownerDocument) {\n deepestZone = dropzone\n index = i\n continue\n }\n\n // compare zIndex of siblings\n if (dropzone.parentNode === deepestZone.parentNode) {\n const deepestZIndex = parseInt(getWindow(deepestZone).getComputedStyle(deepestZone).zIndex, 10) || 0\n const dropzoneZIndex = parseInt(getWindow(dropzone).getComputedStyle(dropzone).zIndex, 10) || 0\n\n if (dropzoneZIndex >= deepestZIndex) {\n deepestZone = dropzone\n index = i\n }\n\n continue\n }\n\n // populate the ancestry array for the latest deepest dropzone\n if (!deepestZoneParents.length) {\n let parent = deepestZone\n let parentParent\n\n while ((parentParent = getParent(parent)) && parentParent !== parent.ownerDocument) {\n deepestZoneParents.unshift(parent)\n parent = parentParent\n }\n }\n\n let parent\n\n // if this element is an svg element and the current deepest is an\n // HTMLElement\n if (deepestZone instanceof domObjects.HTMLElement &&\n dropzone instanceof domObjects.SVGElement &&\n !(dropzone instanceof domObjects.SVGSVGElement)) {\n if (dropzone === deepestZone.parentNode) {\n continue\n }\n\n parent = dropzone.ownerSVGElement\n }\n else {\n parent = dropzone\n }\n\n const dropzoneParents = []\n\n while (parent.parentNode !== parent.ownerDocument) {\n dropzoneParents.unshift(parent)\n parent = getParent(parent)\n }\n\n n = 0\n\n // get (position of last common ancestor) + 1\n while (dropzoneParents[n] && dropzoneParents[n] === deepestZoneParents[n]) {\n n++\n }\n\n const parents = [\n dropzoneParents[n - 1],\n dropzoneParents[n],\n deepestZoneParents[n],\n ]\n\n let child = parents[0].lastChild\n\n while (child) {\n if (child === parents[1]) {\n deepestZone = dropzone\n index = i\n deepestZoneParents = dropzoneParents\n\n break\n }\n else if (child === parents[2]) {\n break\n }\n\n child = child.previousSibling\n }\n }\n\n return index\n}\n\nexport function matchesUpTo (element: Interact.Element, selector: string, limit: Node) {\n while (is.element(element)) {\n if (matchesSelector(element, selector)) {\n return true\n }\n\n element = parentNode(element) as Interact.Element\n\n if (element === limit) {\n return matchesSelector(element, selector)\n }\n }\n\n return false\n}\n\nexport function getActualElement (element: Interact.Element) {\n return (element instanceof domObjects.SVGElementInstance\n ? (element as SVGElement).correspondingUseElement\n : element)\n}\n\nexport function getScrollXY (relevantWindow) {\n relevantWindow = relevantWindow || win.window\n return {\n x: relevantWindow.scrollX || relevantWindow.document.documentElement.scrollLeft,\n y: relevantWindow.scrollY || relevantWindow.document.documentElement.scrollTop,\n }\n}\n\nexport function getElementClientRect (element: Interact.Element) {\n const clientRect = (element instanceof domObjects.SVGElement\n ? element.getBoundingClientRect()\n : element.getClientRects()[0])\n\n return clientRect && {\n left : clientRect.left,\n right : clientRect.right,\n top : clientRect.top,\n bottom: clientRect.bottom,\n width : clientRect.width || clientRect.right - clientRect.left,\n height: clientRect.height || clientRect.bottom - clientRect.top,\n }\n}\n\nexport function getElementRect (element: Interact.Element) {\n const clientRect = getElementClientRect(element)\n\n if (!browser.isIOS7 && clientRect) {\n const scroll = getScrollXY(win.getWindow(element))\n\n clientRect.left += scroll.x\n clientRect.right += scroll.x\n clientRect.top += scroll.y\n clientRect.bottom += scroll.y\n }\n\n return clientRect\n}\n\nexport function getPath (node: Node | Document) {\n const path = []\n\n while (node) {\n path.push(node)\n node = parentNode(node)\n }\n\n return path\n}\n\nexport function trySelector (value) {\n if (!is.string(value)) { return false }\n\n // an exception will be raised if it is invalid\n domObjects.document.querySelector(value)\n return true\n}\n","export default (x: number, y: number) => Math.sqrt(x * x + y * y)\n","export interface PointerExtend {\n webkit: RegExp\n [prefix: string]: RegExp\n}\n\nfunction pointerExtend (dest, source) {\n for (const prop in source) {\n const prefixedPropREs = pointerExtend.prefixedPropREs\n let deprecated = false\n\n // skip deprecated prefixed properties\n for (const vendor in prefixedPropREs) {\n if (prop.indexOf(vendor) === 0 && prefixedPropREs[vendor].test(prop)) {\n deprecated = true\n break\n }\n }\n\n if (!deprecated && typeof source[prop] !== 'function') {\n dest[prop] = source[prop]\n }\n }\n return dest\n}\n\npointerExtend.prefixedPropREs = {\n webkit: /(Movement[XY]|Radius[XY]|RotationAngle|Force)$/,\n moz: /(Pressure)$/,\n}\n\nexport default pointerExtend\n","import browser from './browser'\nimport dom from './domObjects'\nimport * as domUtils from './domUtils'\nimport hypot from './hypot'\nimport * as is from './is'\nimport pointerExtend from './pointerExtend'\n\nexport function copyCoords (dest: Interact.CoordsSetMember, src: Interact.CoordsSetMember) {\n dest.page = dest.page || {} as any\n dest.page.x = src.page.x\n dest.page.y = src.page.y\n\n dest.client = dest.client || {} as any\n dest.client.x = src.client.x\n dest.client.y = src.client.y\n\n dest.timeStamp = src.timeStamp\n}\n\nexport function setCoordDeltas (targetObj: Interact.CoordsSetMember, prev: Interact.CoordsSetMember, cur: Interact.CoordsSetMember) {\n targetObj.page.x = cur.page.x - prev.page.x\n targetObj.page.y = cur.page.y - prev.page.y\n targetObj.client.x = cur.client.x - prev.client.x\n targetObj.client.y = cur.client.y - prev.client.y\n targetObj.timeStamp = cur.timeStamp - prev.timeStamp\n}\n\nexport function setCoordVelocity (targetObj: Interact.CoordsSetMember, delta: Interact.CoordsSetMember) {\n const dt = Math.max(delta.timeStamp / 1000, 0.001)\n\n targetObj.page.x = delta.page.x / dt\n targetObj.page.y = delta.page.y / dt\n targetObj.client.x = delta.client.x / dt\n targetObj.client.y = delta.client.y / dt\n targetObj.timeStamp = dt\n}\n\nexport function setZeroCoords (targetObj: Interact.CoordsSetMember) {\n targetObj.page.x = 0\n targetObj.page.y = 0\n targetObj.client.x = 0\n targetObj.client.y = 0\n}\n\nexport function isNativePointer (pointer: any) {\n return (pointer instanceof dom.Event || pointer instanceof dom.Touch)\n}\n\n// Get specified X/Y coords for mouse or event.touches[0]\nexport function getXY (type, pointer, xy) {\n xy = xy || {}\n type = type || 'page'\n\n xy.x = pointer[type + 'X']\n xy.y = pointer[type + 'Y']\n\n return xy\n}\n\nexport function getPageXY (pointer: Interact.PointerType | Interact.InteractEvent, page?: Interact.Point) {\n page = page || { x: 0, y: 0 }\n\n // Opera Mobile handles the viewport and scrolling oddly\n if (browser.isOperaMobile && isNativePointer(pointer)) {\n getXY('screen', pointer, page)\n\n page.x += window.scrollX\n page.y += window.scrollY\n }\n else {\n getXY('page', pointer, page)\n }\n\n return page\n}\n\nexport function getClientXY (pointer, client) {\n client = client || {}\n\n if (browser.isOperaMobile && isNativePointer(pointer)) {\n // Opera Mobile handles the viewport and scrolling oddly\n getXY('screen', pointer, client)\n }\n else {\n getXY('client', pointer, client)\n }\n\n return client\n}\n\nexport function getPointerId (pointer) {\n return is.number(pointer.pointerId) ? pointer.pointerId : pointer.identifier\n}\n\nexport function setCoords (targetObj, pointers: any[], timeStamp: number) {\n const pointer = (pointers.length > 1\n ? pointerAverage(pointers)\n : pointers[0])\n\n const tmpXY = {} as { x: number, y: number }\n\n getPageXY(pointer, tmpXY)\n targetObj.page.x = tmpXY.x\n targetObj.page.y = tmpXY.y\n\n getClientXY(pointer, tmpXY)\n targetObj.client.x = tmpXY.x\n targetObj.client.y = tmpXY.y\n\n targetObj.timeStamp = timeStamp\n}\n\nexport function getTouchPair (event) {\n const touches = []\n\n // array of touches is supplied\n if (is.array(event)) {\n touches[0] = event[0]\n touches[1] = event[1]\n }\n // an event\n else {\n if (event.type === 'touchend') {\n if (event.touches.length === 1) {\n touches[0] = event.touches[0]\n touches[1] = event.changedTouches[0]\n }\n else if (event.touches.length === 0) {\n touches[0] = event.changedTouches[0]\n touches[1] = event.changedTouches[1]\n }\n }\n else {\n touches[0] = event.touches[0]\n touches[1] = event.touches[1]\n }\n }\n\n return touches\n}\n\nexport function pointerAverage (pointers: PointerEvent[] | Event[]) {\n const average = {\n pageX : 0,\n pageY : 0,\n clientX: 0,\n clientY: 0,\n screenX: 0,\n screenY: 0,\n }\n\n for (const pointer of pointers) {\n for (const prop in average) {\n average[prop] += pointer[prop]\n }\n }\n for (const prop in average) {\n average[prop] /= pointers.length\n }\n\n return average\n}\n\nexport function touchBBox (event: Event | Array<(Interact.PointerType) | TouchEvent>) {\n if (!(event as any).length &&\n !((event as TouchEvent).touches &&\n (event as TouchEvent).touches.length > 1)) {\n return null\n }\n\n const touches = getTouchPair(event)\n const minX = Math.min(touches[0].pageX, touches[1].pageX)\n const minY = Math.min(touches[0].pageY, touches[1].pageY)\n const maxX = Math.max(touches[0].pageX, touches[1].pageX)\n const maxY = Math.max(touches[0].pageY, touches[1].pageY)\n\n return {\n x: minX,\n y: minY,\n left: minX,\n top: minY,\n right: maxX,\n bottom: maxY,\n width: maxX - minX,\n height: maxY - minY,\n }\n}\n\nexport function touchDistance (event, deltaSource) {\n const sourceX = deltaSource + 'X'\n const sourceY = deltaSource + 'Y'\n const touches = getTouchPair(event)\n\n const dx = touches[0][sourceX] - touches[1][sourceX]\n const dy = touches[0][sourceY] - touches[1][sourceY]\n\n return hypot(dx, dy)\n}\n\nexport function touchAngle (event, deltaSource) {\n const sourceX = deltaSource + 'X'\n const sourceY = deltaSource + 'Y'\n const touches = getTouchPair(event)\n const dx = touches[1][sourceX] - touches[0][sourceX]\n const dy = touches[1][sourceY] - touches[0][sourceY]\n const angle = 180 * Math.atan2(dy, dx) / Math.PI\n\n return angle\n}\n\nexport function getPointerType (pointer) {\n return is.string(pointer.pointerType)\n ? pointer.pointerType\n : is.number(pointer.pointerType)\n ? [undefined, undefined, 'touch', 'pen', 'mouse'][pointer.pointerType]\n // if the PointerEvent API isn't available, then the \"pointer\" must\n // be either a MouseEvent, TouchEvent, or Touch object\n : /touch/.test(pointer.type) || pointer instanceof dom.Touch\n ? 'touch'\n : 'mouse'\n}\n\n// [ event.target, event.currentTarget ]\nexport function getEventTargets (event) {\n const path = is.func(event.composedPath) ? event.composedPath() : event.path\n\n return [\n domUtils.getActualElement(path ? path[0] : event.target),\n domUtils.getActualElement(event.currentTarget),\n ]\n}\n\nexport function newCoords (): Interact.CoordsSetMember {\n return {\n page : { x: 0, y: 0 },\n client : { x: 0, y: 0 },\n timeStamp: 0,\n }\n}\n\nexport function coordsToEvent (coords: MockCoords) {\n const event = {\n coords,\n get page () { return this.coords.page },\n get client () { return this.coords.client },\n get timeStamp () { return this.coords.timeStamp },\n get pageX () { return this.coords.page.x },\n get pageY () { return this.coords.page.y },\n get clientX () { return this.coords.client.x },\n get clientY () { return this.coords.client.y },\n get pointerId () { return this.coords.pointerId },\n get target () { return this.coords.target },\n get type () { return this.coords.type },\n get pointerType () { return this.coords.pointerType },\n get buttons () { return this.coords.buttons },\n }\n\n return event as typeof event & Interact.PointerType & Interact.PointerEventType\n}\n\nexport interface MockCoords {\n page: Interact.Point\n client: Interact.Point\n timeStamp?: number\n pointerId?: any\n target?: any\n type?: string\n pointerType?: string\n buttons?: number\n}\n\nexport { pointerExtend }\n","export default function extend<T, U extends object> (dest: U, source: T): T & U {\n for (const prop in source) {\n (dest as unknown as T)[prop] = source[prop]\n }\n\n const ret = dest as T & U\n\n return ret\n}\n","import { closest, getElementRect, parentNode } from './domUtils'\nimport extend from './extend'\nimport * as is from './is'\n\nexport function getStringOptionResult (value: any, target: Interact.HasGetRect, element) {\n if (value === 'parent') { return parentNode(element) }\n\n if (value === 'self') { return target.getRect(element) }\n\n return closest(element, value)\n}\n\nexport function resolveRectLike<T extends any[]> (\n value: Interact.RectResolvable<T>,\n target?: Interact.HasGetRect,\n element?: Node,\n functionArgs?: T,\n) {\n let returnValue: any = value\n if (is.string(returnValue)) {\n returnValue = getStringOptionResult(returnValue, target, element)\n }\n else if (is.func(returnValue)) {\n returnValue = returnValue(...functionArgs)\n }\n\n if (is.element(returnValue)) {\n returnValue = getElementRect(returnValue)\n }\n\n return returnValue as Interact.Rect\n}\n\nexport function rectToXY (rect) {\n return rect && {\n x: 'x' in rect ? rect.x : rect.left,\n y: 'y' in rect ? rect.y : rect.top,\n }\n}\n\nexport function xywhToTlbr (rect) {\n if (rect && !('left' in rect && 'top' in rect)) {\n rect = extend({}, rect)\n\n rect.left = rect.x || 0\n rect.top = rect.y || 0\n rect.right = rect.right || (rect.left + rect.width)\n rect.bottom = rect.bottom || (rect.top + rect.height)\n }\n\n return rect\n}\n\nexport function tlbrToXywh (rect) {\n if (rect && !('x' in rect && 'y' in rect)) {\n rect = extend({}, rect)\n\n rect.x = rect.left || 0\n rect.y = rect.top || 0\n rect.width = rect.width || (rect.right || 0 - rect.x)\n rect.height = rect.height || (rect.bottom || 0 - rect.y)\n }\n\n return rect\n}\n\nexport function addEdges (edges: Interact.EdgeOptions, rect: Interact.Rect, delta: Interact.Point) {\n if (edges.left) { rect.left += delta.x }\n if (edges.right) { rect.right += delta.x }\n if (edges.top) { rect.top += delta.y }\n if (edges.bottom) { rect.bottom += delta.y }\n\n rect.width = rect.right - rect.left\n rect.height = rect.bottom - rect.top\n}\n","import * as arr from './arr'\nimport * as is from './is'\n\nexport default function clone<T extends { [key: string]: any }> (source: T): Partial<T> {\n const dest = {} as Partial<T>\n\n for (const prop in source) {\n const value = source[prop]\n\n if (is.plainObject(value)) {\n dest[prop] = clone(value) as any\n }\n else if (is.array(value)) {\n dest[prop] = arr.from(value) as typeof value\n }\n else {\n dest[prop] = value\n }\n }\n\n return dest\n}\n","import { contains } from './arr'\nimport * as domUtils from './domUtils'\nimport * as is from './is'\nimport pExtend from './pointerExtend'\nimport * as pointerUtils from './pointerUtils'\n\ntype Listener = (event: Event | FakeEvent) => any\n\nconst elements: EventTarget[] = []\nconst targets: Array<{\n events: { [type: string]: Listener[] }\n typeCount: number\n}> = []\n\nconst delegatedEvents: {\n [type: string]: {\n selectors: string[]\n contexts: Node[]\n listeners: Array<Array<[Listener, boolean, boolean]>>\n }\n} = {}\nconst documents: Document[] = []\n\nfunction add (element: EventTarget, type: string, listener: Listener, optionalArg?: boolean | any) {\n const options = getOptions(optionalArg)\n let elementIndex = elements.indexOf(element)\n let target = targets[elementIndex]\n\n if (!target) {\n target = {\n events: {},\n typeCount: 0,\n }\n\n elementIndex = elements.push(element) - 1\n targets.push(target)\n }\n\n if (!target.events[type]) {\n target.events[type] = []\n target.typeCount++\n }\n\n if (element.removeEventListener && !contains(target.events[type], listener)) {\n element.addEventListener(type, listener as any, events.supportsOptions ? options : !!options.capture)\n target.events[type].push(listener)\n }\n}\n\nfunction remove (element: EventTarget, type: string, listener?: 'all' | Listener, optionalArg?: boolean | any) {\n const options = getOptions(optionalArg)\n const elementIndex = elements.indexOf(element)\n const target = targets[elementIndex]\n\n if (!target || !target.events) {\n return\n }\n\n if (type === 'all') {\n for (type in target.events) {\n if (target.events.hasOwnProperty(type)) {\n remove(element, type, 'all')\n }\n }\n return\n }\n\n if (target.events[type]) {\n const len = target.events[type].length\n\n if (listener === 'all') {\n for (let i = 0; i < len; i++) {\n remove(element, type, target.events[type][i], options)\n }\n return\n }\n else {\n for (let i = 0; i < len; i++) {\n if (element.removeEventListener && target.events[type][i] === listener) {\n element.removeEventListener(type, listener as any, events.supportsOptions ? options : !!options.capture)\n target.events[type].splice(i, 1)\n\n break\n }\n }\n }\n\n if (target.events[type] && target.events[type].length === 0) {\n (target.events[type] as any) = null\n target.typeCount--\n }\n }\n\n if (!target.typeCount) {\n targets.splice(elementIndex, 1)\n elements.splice(elementIndex, 1)\n }\n}\n\nfunction addDelegate (selector: string, context: Node, type: string, listener: Listener, optionalArg?: any) {\n const options = getOptions(optionalArg)\n if (!delegatedEvents[type]) {\n delegatedEvents[type] = {\n contexts : [],\n listeners: [],\n selectors: [],\n }\n\n // add delegate listener functions\n for (const doc of documents) {\n add(doc, type, delegateListener)\n add(doc, type, delegateUseCapture, true)\n }\n }\n\n const delegated = delegatedEvents[type]\n let index\n\n for (index = delegated.selectors.length - 1; index >= 0; index--) {\n if (delegated.selectors[index] === selector &&\n delegated.contexts[index] === context) {\n break\n }\n }\n\n if (index === -1) {\n index = delegated.selectors.length\n\n delegated.selectors.push(selector)\n delegated.contexts.push(context)\n delegated.listeners.push([])\n }\n\n // keep listener and capture and passive flags\n delegated.listeners[index].push([listener, !!options.capture, options.passive])\n}\n\nfunction removeDelegate (\n selector: string,\n context: Document | Interact.Element,\n type: string,\n listener?: Listener,\n optionalArg?: any,\n) {\n const options = getOptions(optionalArg)\n const delegated = delegatedEvents[type]\n let matchFound = false\n let index\n\n if (!delegated) { return }\n\n // count from last index of delegated to 0\n for (index = delegated.selectors.length - 1; index >= 0; index--) {\n // look for matching selector and context Node\n if (delegated.selectors[index] === selector &&\n delegated.contexts[index] === context) {\n const listeners = delegated.listeners[index]\n\n // each item of the listeners array is an array: [function, capture, passive]\n for (let i = listeners.length - 1; i >= 0; i--) {\n const [fn, capture, passive] = listeners[i]\n\n // check if the listener functions and capture and passive flags match\n if (fn === listener && capture === !!options.capture && passive === options.passive) {\n // remove the listener from the array of listeners\n listeners.splice(i, 1)\n\n // if all listeners for this interactable have been removed\n // remove the interactable from the delegated arrays\n if (!listeners.length) {\n delegated.selectors.splice(index, 1)\n delegated.contexts.splice(index, 1)\n delegated.listeners.splice(index, 1)\n\n // remove delegate function from context\n remove(context, type, delegateListener)\n remove(context, type, delegateUseCapture, true)\n\n // remove the arrays if they are empty\n if (!delegated.selectors.length) {\n delegatedEvents[type] = null\n }\n }\n\n // only remove one listener\n matchFound = true\n break\n }\n }\n\n if (matchFound) { break }\n }\n }\n}\n\n// bound to the interactable context when a DOM event\n// listener is added to a selector interactable\nfunction delegateListener (event: Event, optionalArg?: any) {\n const options = getOptions(optionalArg)\n const fakeEvent = new FakeEvent(event)\n const delegated = delegatedEvents[event.type]\n const [eventTarget] = (pointerUtils.getEventTargets(event))\n let element: Node = eventTarget\n\n // climb up document tree looking for selector matches\n while (is.element(element)) {\n for (let i = 0; i < delegated.selectors.length; i++) {\n const selector = delegated.selectors[i]\n const context = delegated.contexts[i]\n\n if (domUtils.matchesSelector(element, selector) &&\n domUtils.nodeContains(context, eventTarget) &&\n domUtils.nodeContains(context, element)) {\n const listeners = delegated.listeners[i]\n\n fakeEvent.currentTarget = element\n\n for (const [fn, capture, passive] of listeners) {\n if (capture === !!options.capture && passive === options.passive) {\n fn(fakeEvent)\n }\n }\n }\n }\n\n element = domUtils.parentNode(element)\n }\n}\n\nfunction delegateUseCapture (event: Event) {\n return delegateListener.call(this, event, true)\n}\n\nfunction getOptions (param: object) {\n return is.object(param) ? param : { capture: param }\n}\n\nexport class FakeEvent implements Partial<Event> {\n currentTarget: EventTarget\n\n constructor (public originalEvent: Event) {\n // duplicate the event so that currentTarget can be changed\n pExtend(this, originalEvent)\n }\n\n preventOriginalDefault () {\n this.originalEvent.preventDefault()\n }\n\n stopPropagation () {\n this.originalEvent.stopPropagation()\n }\n\n stopImmediatePropagation () {\n this.originalEvent.stopImmediatePropagation()\n }\n}\n\nconst events = {\n add,\n remove,\n\n addDelegate,\n removeDelegate,\n\n delegateListener,\n delegateUseCapture,\n delegatedEvents,\n documents,\n\n supportsOptions: false,\n supportsPassive: false,\n\n _elements: elements,\n _targets: targets,\n\n init (window: Window) {\n window.document.createElement('div').addEventListener('test', null, {\n get capture () { return (events.supportsOptions = true) },\n get passive () { return (events.supportsPassive = true) },\n })\n },\n}\n\nexport default events\n","import { rectToXY, resolveRectLike } from './rect'\n\nexport default function (\n target: Interact.HasGetRect & { options: Interact.PerActionDefaults },\n element: Node,\n actionName?: Interact.ActionName,\n) {\n const actionOptions = (target.options as any)[actionName]\n const actionOrigin = actionOptions && actionOptions.origin\n const origin = actionOrigin || target.options.origin\n\n const originRect = resolveRectLike(origin, target, element, [target && element])\n\n return rectToXY(originRect) || { x: 0, y: 0 }\n}\n","import extend from './extend'\nimport * as is from './is'\n\nexport interface NormalizedListeners {\n [type: string]: Interact.Listener[]\n}\n\nexport default function normalize (\n type: Interact.EventTypes,\n listeners?: Interact.ListenersArg | Interact.ListenersArg[],\n result?: NormalizedListeners,\n): NormalizedListeners {\n result = result || {}\n\n if (is.string(type) && type.search(' ') !== -1) {\n type = split(type)\n }\n\n if (is.array(type)) {\n return type.reduce<NormalizedListeners>(\n (acc, t) => extend(acc, normalize(t, listeners, result)),\n result,\n )\n }\n\n // ({ type: fn }) -> ('', { type: fn })\n if (is.object(type)) {\n listeners = type\n type = ''\n }\n\n if (is.func(listeners)) {\n result[type] = result[type] || []\n result[type].push(listeners)\n }\n else if (is.array(listeners)) {\n for (const l of listeners) {\n normalize(type, l, result)\n }\n }\n else if (is.object(listeners)) {\n for (const prefix in listeners) {\n const combinedTypes = split(prefix).map(p => `${type}${p}`)\n\n normalize(combinedTypes, listeners[prefix], result)\n }\n }\n\n return result as NormalizedListeners\n}\n\nfunction split (type: string) {\n return type.trim().split(/ +/)\n}\n","let lastTime = 0\nlet request\nlet cancel\n\nfunction init (window) {\n request = window.requestAnimationFrame\n cancel = window.cancelAnimationFrame\n\n if (!request) {\n const vendors = ['ms', 'moz', 'webkit', 'o']\n\n for (const vendor of vendors) {\n request = window[`${vendor}RequestAnimationFrame`]\n cancel = window[`${vendor}CancelAnimationFrame`] || window[`${vendor}CancelRequestAnimationFrame`]\n }\n }\n\n if (!request) {\n request = callback => {\n const currTime = Date.now()\n const timeToCall = Math.max(0, 16 - (currTime - lastTime))\n // eslint-disable-next-line standard/no-callback-literal\n const token = setTimeout(() => { callback(currTime + timeToCall) },\n timeToCall)\n\n lastTime = currTime + timeToCall\n return token\n }\n\n cancel = token => clearTimeout(token)\n }\n}\n\nexport default {\n request: callback => request(callback),\n cancel: token => cancel(token),\n init,\n}\n","import * as arr from './arr'\nimport * as dom from './domUtils'\nimport * as is from './is'\nimport * as pointer from './pointerUtils'\nimport * as rect from './rect'\nimport win from './window'\n\nexport function warnOnce<T> (this: T, method: (...args: any) => any, message: string) {\n let warned = false\n\n // eslint-disable-next-line no-shadow\n return function (this: T) {\n if (!warned) {\n (win as any).window.console.warn(message)\n warned = true\n }\n\n return method.apply(this, arguments)\n }\n}\n\n// http://stackoverflow.com/a/5634528/2280888\nexport function _getQBezierValue (t: number, p1: number, p2: number, p3: number) {\n const iT = 1 - t\n return iT * iT * p1 + 2 * iT * t * p2 + t * t * p3\n}\n\nexport function getQuadraticCurvePoint (\n startX: number, startY: number, cpX: number, cpY: number, endX: number, endY: number, position: number) {\n return {\n x: _getQBezierValue(position, startX, cpX, endX),\n y: _getQBezierValue(position, startY, cpY, endY),\n }\n}\n\n// http://gizma.com/easing/\nexport function easeOutQuad (t: number, b: number, c: number, d: number) {\n t /= d\n return -c * t * (t - 2) + b\n}\n\nexport function copyAction (dest: Interact.ActionProps, src: Interact.ActionProps) {\n dest.name = src.name\n dest.axis = src.axis\n dest.edges = src.edges\n\n return dest\n}\n\nexport { default as browser } from './browser'\nexport { default as clone } from './clone'\nexport { default as events } from './events'\nexport { default as extend } from './extend'\nexport { default as getOriginXY } from './getOriginXY'\nexport { default as hypot } from './hypot'\nexport { default as normalizeListeners } from './normalizeListeners'\nexport { default as raf } from './raf'\nexport { win, arr, dom, is, pointer, rect }\n","// tslint:disable no-empty-interface\n\nexport interface Defaults {\n base: BaseDefaults\n perAction: PerActionDefaults\n actions: ActionDefaults\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface ActionDefaults {\n}\n\nexport interface BaseDefaults {\n preventDefault?: 'auto' | 'never' | string\n deltaSource?: 'page' | 'client'\n context?: Interact.EventTarget\n}\n\nexport interface PerActionDefaults {\n enabled?: boolean\n origin?: Interact.Point | string | Interact.Element\n listeners?: Interact.Listeners\n allowFrom?: string | Interact.Element\n ignoreFrom?: string | Interact.Element\n}\n\nexport type Options = Partial<BaseDefaults> & Partial<PerActionDefaults> & {\n [P in keyof ActionDefaults]?: Partial<ActionDefaults[P]>\n}\n\n// export interface Options extends BaseDefaults, PerActionDefaults {}\n\nexport interface OptionsArg extends BaseDefaults, Interact.OrBoolean<Partial<ActionDefaults>> {}\n\nexport const defaults: Defaults = {\n base: {\n preventDefault: 'auto',\n deltaSource: 'page',\n },\n\n perAction: {\n enabled: false,\n origin: { x: 0, y: 0 },\n },\n\n actions: {} as ActionDefaults,\n}\n\nexport default defaults\n","import * as arr from '@interactjs/utils/arr'\nimport extend from '@interactjs/utils/extend'\nimport normalize, { NormalizedListeners } from '@interactjs/utils/normalizeListeners'\nimport { EventPhase, InteractEvent } from './InteractEvent'\nimport { ActionName } from './scope'\n\nfunction fireUntilImmediateStopped<\n T extends ActionName,\n P extends EventPhase,\n> (event: InteractEvent<T, P>, listeners: Interact.Listener[]) {\n for (const listener of listeners) {\n if (event.immediatePropagationStopped) { break }\n\n listener(event)\n }\n}\n\nclass Eventable {\n options: any\n types: NormalizedListeners = {}\n propagationStopped = false\n immediatePropagationStopped = false\n global: any\n\n constructor (options?: { [index: string]: any }) {\n this.options = extend({}, options || {})\n }\n\n fire (event: any) {\n let listeners\n const global = this.global\n\n // Interactable#on() listeners\n // tslint:disable no-conditional-assignment\n if ((listeners = this.types[event.type])) {\n fireUntilImmediateStopped(event, listeners)\n }\n\n // interact.on() listeners\n if (!event.propagationStopped && global && (listeners = global[event.type])) {\n fireUntilImmediateStopped(event, listeners)\n }\n }\n\n on (type: string, listener: Interact.ListenersArg) {\n const listeners = normalize(type, listener)\n\n for (type in listeners) {\n this.types[type] = arr.merge(this.types[type] || [], listeners[type])\n }\n }\n\n off (type: string, listener: Interact.ListenersArg) {\n const listeners = normalize(type, listener)\n\n for (type in listeners) {\n const eventList = this.types[type]\n\n if (!eventList || !eventList.length) { continue }\n\n for (const subListener of listeners[type]) {\n const index = eventList.indexOf(subListener)\n\n if (index !== -1) {\n eventList.splice(index, 1)\n }\n }\n }\n }\n\n getRect (_element: Interact.Element): Interact.Rect {\n return null\n }\n}\n\nexport default Eventable\n","import * as arr from '@interactjs/utils/arr'\nimport browser from '@interactjs/utils/browser'\nimport clone from '@interactjs/utils/clone'\nimport { getElementRect, matchesUpTo, nodeContains, trySelector } from '@interactjs/utils/domUtils'\nimport events from '@interactjs/utils/events'\nimport extend from '@interactjs/utils/extend'\nimport * as is from '@interactjs/utils/is'\nimport normalizeListeners from '@interactjs/utils/normalizeListeners'\nimport { getWindow } from '@interactjs/utils/window'\nimport { ActionDefaults, Defaults, Options } from './defaultOptions'\nimport Eventable from './Eventable'\nimport { Actions } from './scope'\n\ntype IgnoreValue = string | Interact.Element | boolean\n\n/** */\nexport class Interactable implements Partial<Eventable> {\n protected get _defaults (): Defaults {\n return {\n base: {},\n perAction: {},\n actions: {} as ActionDefaults,\n }\n }\n\n readonly options!: Required<Options>\n readonly _actions: Actions\n readonly target: Interact.Target\n readonly events = new Eventable()\n readonly _context: Document | Interact.Element\n readonly _win: Window\n readonly _doc: Document\n\n /** */\n constructor (target: Interact.Target, options: any, defaultContext: Document | Interact.Element) {\n this._actions = options.actions\n this.target = target\n this._context = options.context || defaultContext\n this._win = getWindow(trySelector(target) ? this._context : target)\n this._doc = this._win.document\n\n this.set(options)\n }\n\n setOnEvents (actionName: Interact.ActionName, phases: NonNullable<any>) {\n if (is.func(phases.onstart)) { this.on(`${actionName}start`, phases.onstart) }\n if (is.func(phases.onmove)) { this.on(`${actionName}move`, phases.onmove) }\n if (is.func(phases.onend)) { this.on(`${actionName}end`, phases.onend) }\n if (is.func(phases.oninertiastart)) { this.on(`${actionName}inertiastart`, phases.oninertiastart) }\n\n return this\n }\n\n updatePerActionListeners (actionName: Interact.ActionName, prev: Interact.Listeners, cur: Interact.Listeners) {\n if (is.array(prev) || is.object(prev)) {\n this.off(actionName, prev)\n }\n\n if (is.array(cur) || is.object(cur)) {\n this.on(actionName, cur)\n }\n }\n\n setPerAction (actionName: Interact.ActionName, options: Interact.OrBoolean<Options>) {\n const defaults = this._defaults\n\n // for all the default per-action options\n for (const optionName_ in options) {\n const optionName = optionName_ as keyof Interact.PerActionDefaults\n const actionOptions = this.options[actionName]\n const optionValue: any = options[optionName]\n\n // remove old event listeners and add new ones\n if (optionName === 'listeners') {\n this.updatePerActionListeners(actionName, actionOptions.listeners, optionValue as Interact.Listeners)\n }\n\n // if the option value is an array\n if (is.array<any>(optionValue)) {\n (actionOptions[optionName] as any) = arr.from(optionValue)\n }\n // if the option value is an object\n else if (is.plainObject(optionValue)) {\n // copy the object\n (actionOptions[optionName] as any) = extend(\n actionOptions[optionName] || {} as any,\n clone(optionValue))\n\n // set anabled field to true if it exists in the defaults\n if (is.object(defaults.perAction[optionName]) && 'enabled' in (defaults.perAction[optionName] as any)) {\n (actionOptions[optionName] as any).enabled = optionValue.enabled !== false\n }\n }\n // if the option value is a boolean and the default is an object\n else if (is.bool(optionValue) && is.object(defaults.perAction[optionName])) {\n (actionOptions[optionName] as any).enabled = optionValue\n }\n // if it's anything else, do a plain assignment\n else {\n (actionOptions[optionName] as any) = optionValue\n }\n }\n }\n\n /**\n * The default function to get an Interactables bounding rect. Can be\n * overridden using {@link Interactable.rectChecker}.\n *\n * @param {Element} [element] The element to measure.\n * @return {object} The object's bounding rectangle.\n */\n getRect (element: Interact.Element) {\n element = element || (is.element(this.target)\n ? this.target\n : null)\n\n if (is.string(this.target)) {\n element = element || this._context.querySelector(this.target)\n }\n\n return getElementRect(element)\n }\n\n /**\n * Returns or sets the function used to calculate the interactable's\n * element's rectangle\n *\n * @param {function} [checker] A function which returns this Interactable's\n * bounding rectangle. See {@link Interactable.getRect}\n * @return {function | object} The checker function or this Interactable\n */\n rectChecker (checker: (element: Interact.Element) => any) {\n if (is.func(checker)) {\n this.getRect = checker\n\n return this\n }\n\n if (checker === null) {\n delete this.getRect\n\n return this\n }\n\n return this.getRect\n }\n\n _backCompatOption (optionName: keyof Interact.Options, newValue: any) {\n if (trySelector(newValue) || is.object(newValue)) {\n (this.options[optionName] as any) = newValue\n\n for (const action of this._actions.names) {\n (this.options[action][optionName] as any) = newValue\n }\n\n return this\n }\n\n return this.options[optionName]\n }\n\n /**\n * Gets or sets the origin of the Interactable's element. The x and y\n * of the origin will be subtracted from action event coordinates.\n *\n * @param {Element | object | string} [origin] An HTML or SVG Element whose\n * rect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self'\n * or any CSS selector\n *\n * @return {object} The current origin or this Interactable\n */\n origin (newValue: any) {\n return this._backCompatOption('origin', newValue)\n }\n\n /**\n * Returns or sets the mouse coordinate types used to calculate the\n * movement of the pointer.\n *\n * @param {string} [newValue] Use 'client' if you will be scrolling while\n * interacting; Use 'page' if you want autoScroll to work\n * @return {string | object} The current deltaSource or this Interactable\n */\n deltaSource (newValue?: string) {\n if (newValue === 'page' || newValue === 'client') {\n this.options.deltaSource = newValue\n\n return this\n }\n\n return this.options.deltaSource\n }\n\n /**\n * Gets the selector context Node of the Interactable. The default is\n * `window.document`.\n *\n * @return {Node} The context Node of this Interactable\n */\n context () {\n return this._context\n }\n\n inContext (element: Document | Node) {\n return (this._context === element.ownerDocument ||\n nodeContains(this._context, element))\n }\n\n testIgnoreAllow (\n this: Interactable,\n options: { ignoreFrom?: IgnoreValue, allowFrom?: IgnoreValue },\n targetNode: Node,\n eventTarget: Interact.EventTarget,\n ) {\n return (!this.testIgnore(options.ignoreFrom, targetNode, eventTarget) &&\n this.testAllow(options.allowFrom, targetNode, eventTarget))\n }\n\n testAllow (\n this: Interactable,\n allowFrom: IgnoreValue,\n targetNode: Node,\n element: Interact.EventTarget,\n ) {\n if (!allowFrom) { return true }\n\n if (!is.element(element)) { return false }\n\n if (is.string(allowFrom)) {\n return matchesUpTo(element, allowFrom, targetNode)\n }\n else if (is.element(allowFrom)) {\n return nodeContains(allowFrom, element)\n }\n\n return false\n }\n\n testIgnore (\n this: Interactable,\n ignoreFrom: IgnoreValue,\n targetNode: Node,\n element: Interact.EventTarget,\n ) {\n if (!ignoreFrom || !is.element(element)) { return false }\n\n if (is.string(ignoreFrom)) {\n return matchesUpTo(element, ignoreFrom, targetNode)\n }\n else if (is.element(ignoreFrom)) {\n return nodeContains(ignoreFrom, element)\n }\n\n return false\n }\n\n /**\n * Calls listeners for the given InteractEvent type bound globally\n * and directly to this Interactable\n *\n * @param {InteractEvent} iEvent The InteractEvent object to be fired on this\n * Interactable\n * @return {Interactable} this Interactable\n */\n fire (iEvent: object) {\n this.events.fire(iEvent)\n\n return this\n }\n\n _onOff (method: 'on' | 'off', typeArg: Interact.EventTypes, listenerArg?: Interact.ListenersArg | null, options?: any) {\n if (is.object(typeArg) && !is.array(typeArg)) {\n options = listenerArg\n listenerArg = null\n }\n\n const addRemove = method === 'on' ? 'add' : 'remove'\n const listeners = normalizeListeners(typeArg, listenerArg)\n\n for (let type in listeners) {\n if (type === 'wheel') { type = browser.wheelEvent }\n\n for (const listener of listeners[type]) {\n // if it is an action event type\n if (arr.contains(this._actions.eventTypes, type)) {\n this.events[method](type, listener)\n }\n // delegated event\n else if (is.string(this.target)) {\n events[`${addRemove}Delegate` as 'addDelegate' | 'removeDelegate'](this.target, this._context, type, listener, options)\n }\n // remove listener from this Interactable's element\n else {\n (events[addRemove] as typeof events.remove)(this.target, type, listener, options)\n }\n }\n }\n\n return this\n }\n\n /**\n * Binds a listener for an InteractEvent, pointerEvent or DOM event.\n *\n * @param {string | array | object} types The types of events to listen\n * for\n * @param {function | array | object} [listener] The event listener function(s)\n * @param {object | boolean} [options] options object or useCapture flag for\n * addEventListener\n * @return {Interactable} This Interactable\n */\n on (types: Interact.EventTypes, listener?: Interact.ListenersArg, options?: any) {\n return this._onOff('on', types, listener, options)\n }\n\n /**\n * Removes an InteractEvent, pointerEvent or DOM event listener.\n *\n * @param {string | array | object} types The types of events that were\n * listened for\n * @param {function | array | object} [listener] The event listener function(s)\n * @param {object | boolean} [options] options object or useCapture flag for\n * removeEventListener\n * @return {Interactable} This Interactable\n */\n off (types: string | string[] | Interact.EventTypes, listener?: Interact.ListenersArg, options?: any) {\n return this._onOff('off', types, listener, options)\n }\n\n /**\n * Reset the options of this Interactable\n *\n * @param {object} options The new settings to apply\n * @return {object} This Interactable\n */\n set (options: Interact.OptionsArg) {\n const defaults = this._defaults\n\n if (!is.object(options)) {\n options = {}\n }\n\n (this.options as Required<Options>) = clone(defaults.base) as Required<Options>\n\n for (const actionName_ in this._actions.methodDict) {\n const actionName = actionName_ as Interact.ActionName\n const methodName: any = this._actions.methodDict[actionName]\n\n this.options[actionName] = {}\n this.setPerAction(actionName, extend(extend({}, defaults.perAction), defaults.actions[actionName]))\n\n this[methodName](options[actionName])\n }\n\n for (const setting in options) {\n if (is.func(this[setting])) {\n this[setting](options[setting])\n }\n }\n\n return this\n }\n\n /**\n * Remove this interactable from the list of interactables and remove it's\n * action capabilities and event listeners\n *\n * @return {interact}\n */\n unset () {\n events.remove(this.target as Node, 'all')\n\n if (is.string(this.target)) {\n // remove delegated events\n for (const type in events.delegatedEvents) {\n const delegated = events.delegatedEvents[type]\n\n if (delegated.selectors[0] === this.target &&\n delegated.contexts[0] === this._context) {\n delegated.selectors.splice(0, 1)\n delegated.contexts.splice(0, 1)\n delegated.listeners.splice(0, 1)\n }\n\n events.remove(this._context, type, events.delegateListener)\n events.remove(this._context, type, events.delegateUseCapture, true)\n }\n }\n else {\n events.remove(this.target as Node, 'all')\n }\n }\n}\n\nexport default Interactable\n","import * as arr from '@interactjs/utils/arr'\nimport * as domUtils from '@interactjs/utils/domUtils'\nimport extend from '@interactjs/utils/extend'\nimport * as is from '@interactjs/utils/is'\n\ndeclare module '@interactjs/core/scope' {\n interface SignalArgs {\n 'interactable:new': {\n interactable: Interact.Interactable\n target: Interact.Target\n options: Interact.OptionsArg\n win: Window\n }\n }\n}\n\ninterface InteractableScopeProp {\n context: Document | Interact.Element\n interactable: Interact.Interactable\n}\n\nexport default class InteractableSet {\n // all set interactables\n list: Interact.Interactable[] = []\n\n selectorMap: {\n [selector: string]: InteractableScopeProp[]\n } = {}\n\n constructor (protected scope: Interact.Scope) {\n scope.addListeners({\n 'interactable:unset': ({ interactable }) => {\n const { target, _context: context } = interactable\n const targetMappings: InteractableScopeProp[] = is.string(target)\n ? this.selectorMap[target]\n : (target as any)[this.scope.id]\n\n const targetIndex = targetMappings.findIndex(m => m.context === context)\n if (targetMappings[targetIndex]) {\n // Destroying mappingInfo's context and interactable\n targetMappings[targetIndex].context = null\n targetMappings[targetIndex].interactable = null\n }\n targetMappings.splice(targetIndex, 1)\n },\n })\n }\n\n new (target: Interact.Target, options?: any): Interact.Interactable {\n options = extend(options || {}, {\n actions: this.scope.actions,\n })\n const interactable = new this.scope.Interactable(target, options, this.scope.document)\n const mappingInfo = { context: interactable._context, interactable }\n\n this.scope.addDocument(interactable._doc)\n this.list.push(interactable)\n\n if (is.string(target)) {\n if (!this.selectorMap[target]) { this.selectorMap[target] = [] }\n this.selectorMap[target].push(mappingInfo)\n } else {\n if (!((interactable.target as any)[this.scope.id])) {\n Object.defineProperty(target, this.scope.id, {\n value: [],\n configurable: true,\n })\n }\n\n (target as any)[this.scope.id].push(mappingInfo)\n }\n\n this.scope.fire('interactable:new', {\n target,\n options,\n interactable,\n win: this.scope._win,\n })\n\n return interactable\n }\n\n get (target: Interact.Target, options?: Interact.Options) {\n const context = (options && options.context) || this.scope.document\n const isSelector = is.string(target)\n const targetMappings: InteractableScopeProp[] = isSelector\n ? this.selectorMap[target as string]\n : (target as any)[this.scope.id]\n\n if (!targetMappings) { return null }\n\n const found = arr.find(\n targetMappings,\n m => m.context === context &&\n (isSelector || m.interactable.inContext(target as any)))\n\n return found && found.interactable\n }\n\n forEachMatch<T> (node: Node, callback: (interactable: Interact.Interactable) => T): T | void {\n for (const interactable of this.list) {\n let ret\n\n if ((is.string(interactable.target)\n // target is a selector and the element matches\n ? (is.element(node) && domUtils.matchesSelector(node, interactable.target))\n // target is the element\n : node === interactable.target) &&\n // the element is in context\n (interactable.inContext(node))) {\n ret = callback(interactable)\n }\n\n if (ret !== undefined) {\n return ret\n }\n }\n }\n}\n","import Interactable from './Interactable'\nimport { ActionName } from './scope'\n\nexport enum EventPhase {\n Start = 'start',\n Move = 'move',\n End = 'end',\n _NONE = '',\n}\n\nexport class BaseEvent<T extends ActionName = any> {\n type: string\n target: EventTarget\n currentTarget: EventTarget\n interactable: Interactable\n _interaction: Interact.Interaction<T>\n timeStamp: any\n immediatePropagationStopped = false\n propagationStopped = false\n\n get interaction () {\n return this._interaction._proxy\n }\n\n constructor (interaction: Interact.Interaction) {\n this._interaction = interaction\n }\n\n preventDefault () {}\n\n /**\n * Don't call any other listeners (even on the current target)\n */\n stopPropagation () {\n this.propagationStopped = true\n }\n\n /**\n * Don't call listeners on the remaining targets\n */\n stopImmediatePropagation () {\n this.immediatePropagationStopped = this.propagationStopped = true\n }\n}\n\nexport default BaseEvent\n","import extend from '@interactjs/utils/extend'\nimport getOriginXY from '@interactjs/utils/getOriginXY'\nimport hypot from '@interactjs/utils/hypot'\nimport BaseEvent from './BaseEvent'\nimport defaults from './defaultOptions'\nimport Interaction from './Interaction'\nimport { ActionName } from './scope'\n\nexport enum EventPhase {\n Start = 'start',\n Move = 'move',\n End = 'end',\n _NONE = '',\n}\n\nexport class InteractEvent<\n T extends ActionName = any,\n P extends EventPhase = EventPhase._NONE,\n> extends BaseEvent<T> {\n target: Interact.Element\n currentTarget: Interact.Element\n relatedTarget: Interact.Element\n screenX?: number\n screenY?: number\n button: number\n buttons: number\n ctrlKey: boolean\n shiftKey: boolean\n altKey: boolean\n metaKey: boolean\n page: Interact.Point\n client: Interact.Point\n delta: Interact.Point\n rect: Interact.FullRect\n x0: number\n y0: number\n t0: number\n dt: number\n duration: number\n clientX0: number\n clientY0: number\n velocity: Interact.Point\n speed: number\n swipe: ReturnType<InteractEvent<T>['getSwipe']>\n timeStamp: any\n // drag\n dragEnter?: Interact.Element\n dragLeave?: Interact.Element\n // resize\n axes?: 'x' | 'y' | 'xy'\n preEnd?: boolean\n\n /** */\n constructor (\n interaction: Interaction,\n event: Interact.PointerEventType,\n actionName: T,\n phase: P,\n element: Interact.Element,\n related?: Interact.Element,\n preEnd?: boolean,\n type?: string,\n ) {\n super(interaction)\n\n element = element || interaction.element\n\n const target = interaction.interactable\n const deltaSource = (((target && target.options) || defaults) as any).deltaSource as 'page' | 'client'\n const origin = getOriginXY(target, element, actionName)\n const starting = phase === 'start'\n const ending = phase === 'end'\n const prevEvent = starting ? this : interaction.prevEvent\n const coords = starting\n ? interaction.coords.start\n : ending\n ? { page: prevEvent.page, client: prevEvent.client, timeStamp: interaction.coords.cur.timeStamp }\n : interaction.coords.cur\n\n this.page = extend({}, coords.page)\n this.client = extend({}, coords.client)\n this.rect = extend({}, interaction.rect)\n this.timeStamp = coords.timeStamp\n\n if (!ending) {\n this.page.x -= origin.x\n this.page.y -= origin.y\n\n this.client.x -= origin.x\n this.client.y -= origin.y\n }\n\n this.ctrlKey = event.ctrlKey\n this.altKey = event.altKey\n this.shiftKey = event.shiftKey\n this.metaKey = event.metaKey\n this.button = (event as MouseEvent).button\n this.buttons = (event as MouseEvent).buttons\n this.target = element\n this.currentTarget = element\n this.relatedTarget = related || null\n this.preEnd = preEnd\n this.type = type || (actionName + (phase || ''))\n this.interactable = target\n\n this.t0 = starting\n ? interaction.pointers[interaction.pointers.length - 1].downTime\n : prevEvent.t0\n\n this.x0 = interaction.coords.start.page.x - origin.x\n this.y0 = interaction.coords.start.page.y - origin.y\n this.clientX0 = interaction.coords.start.client.x - origin.x\n this.clientY0 = interaction.coords.start.client.y - origin.y\n\n if (starting || ending) {\n this.delta = { x: 0, y: 0 }\n }\n else {\n this.delta = {\n x: this[deltaSource].x - prevEvent[deltaSource].x,\n y: this[deltaSource].y - prevEvent[deltaSource].y,\n }\n }\n\n this.dt = interaction.coords.delta.timeStamp\n this.duration = this.timeStamp - this.t0\n\n // velocity and speed in pixels per second\n this.velocity = extend({}, interaction.coords.velocity[deltaSource])\n this.speed = hypot(this.velocity.x, this.velocity.y)\n\n this.swipe = (ending || phase === 'inertiastart') ? this.getSwipe() : null\n }\n\n get pageX () { return this.page.x }\n set pageX (value) { this.page.x = value }\n get pageY () { return this.page.y }\n set pageY (value) { this.page.y = value }\n\n get clientX () { return this.client.x }\n set clientX (value) { this.client.x = value }\n get clientY () { return this.client.y }\n set clientY (value) { this.client.y = value }\n\n get dx () { return this.delta.x }\n set dx (value) { this.delta.x = value }\n get dy () { return this.delta.y }\n set dy (value) { this.delta.y = value }\n\n get velocityX () { return this.velocity.x }\n set velocityX (value) { this.velocity.x = value }\n get velocityY () { return this.velocity.y }\n set velocityY (value) { this.velocity.y = value }\n\n getSwipe () {\n const interaction = this._interaction\n\n if (interaction.prevEvent.speed < 600 ||\n this.timeStamp - interaction.prevEvent.timeStamp > 150) {\n return null\n }\n\n let angle = 180 * Math.atan2(interaction.prevEvent.velocityY, interaction.prevEvent.velocityX) / Math.PI\n const overlap = 22.5\n\n if (angle < 0) {\n angle += 360\n }\n\n const left = 135 - overlap <= angle && angle < 225 + overlap\n const up = 225 - overlap <= angle && angle < 315 + overlap\n\n const right = !left && (315 - overlap <= angle || angle < 45 + overlap)\n const down = !up && 45 - overlap <= angle && angle < 135 + overlap\n\n return {\n up,\n down,\n left,\n right,\n angle,\n speed: interaction.prevEvent.speed,\n velocity: {\n x: interaction.prevEvent.velocityX,\n y: interaction.prevEvent.velocityY,\n },\n }\n }\n\n preventDefault () {}\n\n /**\n * Don't call listeners on the remaining targets\n */\n stopImmediatePropagation () {\n this.immediatePropagationStopped = this.propagationStopped = true\n }\n\n /**\n * Don't call any other listeners (even on the current target)\n */\n stopPropagation () {\n this.propagationStopped = true\n }\n}\n\nexport default InteractEvent\n","/* eslint-disable @typescript-eslint/no-parameter-properties */\nexport class PointerInfo {\n constructor (\n public id: number,\n public pointer: Interact.PointerType,\n public event: Interact.PointerEventType,\n public downTime: number,\n public downTarget: Interact.EventTarget,\n ) {}\n}\n\nexport default PointerInfo\n","import * as dom from '@interactjs/utils/domUtils'\n\nexport interface SearchDetails {\n pointer: Interact.PointerType\n pointerId: number\n pointerType: string\n eventType: string\n eventTarget: Interact.EventTarget\n curEventTarget: Interact.EventTarget\n scope: Interact.Scope\n}\n\nconst finder = {\n methodOrder: ['simulationResume', 'mouseOrPen', 'hasPointer', 'idle'] as const,\n\n search (details: SearchDetails) {\n for (const method of finder.methodOrder) {\n const interaction = finder[method](details)\n\n if (interaction) {\n return interaction\n }\n }\n\n return null\n },\n\n // try to resume simulation with a new pointer\n simulationResume ({ pointerType, eventType, eventTarget, scope }: SearchDetails) {\n if (!/down|start/i.test(eventType)) {\n return null\n }\n\n for (const interaction of scope.interactions.list) {\n let element = eventTarget as Node\n\n if (interaction.simulation && interaction.simulation.allowResume &&\n (interaction.pointerType === pointerType)) {\n while (element) {\n // if the element is the interaction element\n if (element === interaction.element) {\n return interaction\n }\n element = dom.parentNode(element)\n }\n }\n }\n\n return null\n },\n\n // if it's a mouse or pen interaction\n mouseOrPen ({ pointerId, pointerType, eventType, scope }: SearchDetails) {\n if (pointerType !== 'mouse' && pointerType !== 'pen') {\n return null\n }\n\n let firstNonActive\n\n for (const interaction of scope.interactions.list) {\n if (interaction.pointerType === pointerType) {\n // if it's a down event, skip interactions with running simulations\n if (interaction.simulation && !hasPointerId(interaction, pointerId)) { continue }\n\n // if the interaction is active, return it immediately\n if (interaction.interacting()) {\n return interaction\n }\n // otherwise save it and look for another active interaction\n else if (!firstNonActive) {\n firstNonActive = interaction\n }\n }\n }\n\n // if no active mouse interaction was found use the first inactive mouse\n // interaction\n if (firstNonActive) {\n return firstNonActive\n }\n\n // find any mouse or pen interaction.\n // ignore the interaction if the eventType is a *down, and a simulation\n // is active\n for (const interaction of scope.interactions.list) {\n if (interaction.pointerType === pointerType && !(/down/i.test(eventType) && interaction.simulation)) {\n return interaction\n }\n }\n\n return null\n },\n\n // get interaction that has this pointer\n hasPointer ({ pointerId, scope }: SearchDetails) {\n for (const interaction of scope.interactions.list) {\n if (hasPointerId(interaction, pointerId)) {\n return interaction\n }\n }\n\n return null\n },\n\n // get first idle interaction with a matching pointerType\n idle ({ pointerType, scope }: SearchDetails) {\n for (const interaction of scope.interactions.list) {\n // if there's already a pointer held down\n if (interaction.pointers.length === 1) {\n const target = interaction.interactable\n // don't add this pointer if there is a target interactable and it\n // isn't gesturable\n if (target && !(target.options.gesture && target.options.gesture.enabled)) {\n continue\n }\n }\n // maximum of 2 pointers per interaction\n else if (interaction.pointers.length >= 2) {\n continue\n }\n\n if (!interaction.interacting() && (pointerType === interaction.pointerType)) {\n return interaction\n }\n }\n\n return null\n },\n}\n\nfunction hasPointerId (interaction: Interact.Interaction, pointerId: number) {\n return interaction.pointers.some(({ id }) => id === pointerId)\n}\n\nexport default finder\n","import { ActionName, Scope } from '@interactjs/core/scope'\nimport * as arr from '@interactjs/utils/arr'\nimport * as is from '@interactjs/utils/is'\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n draggable: DraggableMethod\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface ActionDefaults {\n drag: Interact.DraggableOptions\n }\n}\n\ndeclare module '@interactjs/core/scope' {\n interface Actions {\n [ActionName.Drag]?: typeof drag\n }\n\n // eslint-disable-next-line no-shadow\n enum ActionName {\n Drag = 'drag'\n }\n}\n\n(ActionName as any).Drag = 'drag'\n\nexport type DragEvent = Interact.InteractEvent<ActionName.Drag>\n\nexport type DraggableMethod = Interact.ActionMethod<Interact.DraggableOptions>\n\nfunction install (scope: Scope) {\n const {\n actions,\n Interactable,\n defaults,\n } = scope\n\n Interactable.prototype.draggable = drag.draggable\n\n actions[ActionName.Drag] = drag\n actions.names.push(ActionName.Drag)\n arr.merge(actions.eventTypes, [\n 'dragstart',\n 'dragmove',\n 'draginertiastart',\n 'dragresume',\n 'dragend',\n ])\n actions.methodDict.drag = 'draggable'\n\n defaults.actions.drag = drag.defaults\n}\n\nfunction beforeMove ({ interaction }) {\n if (interaction.prepared.name !== 'drag') { return }\n\n const axis = interaction.prepared.axis\n\n if (axis === 'x') {\n interaction.coords.cur.page.y = interaction.coords.start.page.y\n interaction.coords.cur.client.y = interaction.coords.start.client.y\n\n interaction.coords.velocity.client.y = 0\n interaction.coords.velocity.page.y = 0\n }\n else if (axis === 'y') {\n interaction.coords.cur.page.x = interaction.coords.start.page.x\n interaction.coords.cur.client.x = interaction.coords.start.client.x\n\n interaction.coords.velocity.client.x = 0\n interaction.coords.velocity.page.x = 0\n }\n}\n\nfunction move ({ iEvent, interaction }) {\n if (interaction.prepared.name !== 'drag') { return }\n\n const axis = interaction.prepared.axis\n\n if (axis === 'x' || axis === 'y') {\n const opposite = axis === 'x' ? 'y' : 'x'\n\n iEvent.page[opposite] = interaction.coords.start.page[opposite]\n iEvent.client[opposite] = interaction.coords.start.client[opposite]\n iEvent.delta[opposite] = 0\n }\n}\n\n/**\n * ```js\n * interact(element).draggable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * // the axis in which the first movement must be\n * // for the drag sequence to start\n * // 'xy' by default - any direction\n * startAxis: 'x' || 'y' || 'xy',\n *\n * // 'xy' by default - don't restrict to one axis (move in any direction)\n * // 'x' or 'y' to restrict movement to either axis\n * // 'start' to restrict movement to the axis the drag started in\n * lockAxis: 'x' || 'y' || 'xy' || 'start',\n *\n * // max number of drags that can happen concurrently\n * // with elements of this Interactable. Infinity by default\n * max: Infinity,\n *\n * // max number of drags that can target the same element+Interactable\n * // 1 by default\n * maxPerElement: 2\n * })\n *\n * var isDraggable = interact('element').draggable(); // true\n * ```\n *\n * Get or set whether drag actions can be performed on the target\n *\n * @alias Interactable.prototype.draggable\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on drag events (object makes the Interactable\n * draggable)\n * @return {boolean | Interactable} boolean indicating if this can be the\n * target of drag events, or this Interctable\n */\nconst draggable: DraggableMethod = function draggable (this: Interact.Interactable, options?: Interact.DraggableOptions | boolean): any {\n if (is.object(options)) {\n this.options.drag.enabled = options.enabled !== false\n this.setPerAction(ActionName.Drag, options)\n this.setOnEvents(ActionName.Drag, options)\n\n if (/^(xy|x|y|start)$/.test(options.lockAxis)) {\n this.options.drag.lockAxis = options.lockAxis\n }\n if (/^(xy|x|y)$/.test(options.startAxis)) {\n this.options.drag.startAxis = options.startAxis\n }\n\n return this\n }\n\n if (is.bool(options)) {\n this.options.drag.enabled = options\n\n return this\n }\n\n return this.options.drag\n}\n\nconst drag: Interact.Plugin = {\n id: 'actions/drag',\n install,\n listeners: {\n 'interactions:before-action-move': beforeMove,\n 'interactions:action-resume': beforeMove,\n\n // dragmove\n 'interactions:action-move': move,\n 'auto-start:check': arg => {\n const { interaction, interactable, buttons } = arg\n const dragOptions = interactable.options.drag\n\n if (\n !(dragOptions && dragOptions.enabled) ||\n // check mouseButton setting if the pointer is down\n (interaction.pointerIsDown &&\n /mouse|pointer/.test(interaction.pointerType) &&\n (buttons & interactable.options.drag.mouseButtons) === 0)\n ) {\n return undefined\n }\n\n arg.action = {\n name: ActionName.Drag,\n axis: (dragOptions.lockAxis === 'start'\n ? dragOptions.startAxis\n : dragOptions.lockAxis),\n }\n\n return false\n },\n },\n draggable,\n beforeMove,\n move,\n defaults: {\n startAxis : 'xy',\n lockAxis : 'xy',\n } as Interact.DropzoneOptions,\n\n getCursor () {\n return 'move'\n },\n}\n\nexport default drag\n","import BaseEvent from '@interactjs/core/BaseEvent'\nimport Interactable from '@interactjs/core/Interactable'\nimport InteractEvent from '@interactjs/core/InteractEvent'\nimport Interaction from '@interactjs/core/Interaction'\nimport { ActionName } from '@interactjs/core/scope'\nimport * as arr from '@interactjs/utils/arr'\n\nclass DropEvent extends BaseEvent {\n target: Interact.Element\n dropzone: Interactable\n dragEvent: InteractEvent<ActionName.Drag>\n relatedTarget: Interact.Element\n draggable: Interactable\n timeStamp: number\n propagationStopped = false\n immediatePropagationStopped = false\n\n /**\n * Class of events fired on dropzones during drags with acceptable targets.\n */\n constructor (dropState: Interaction['dropState'], dragEvent: InteractEvent, type: string) {\n super(dragEvent._interaction)\n\n const { element, dropzone } = type === 'dragleave'\n ? dropState.prev\n : dropState.cur\n\n this.type = type\n this.target = element\n this.currentTarget = element\n this.dropzone = dropzone\n this.dragEvent = dragEvent\n this.relatedTarget = dragEvent.target\n this.draggable = dragEvent.interactable\n this.timeStamp = dragEvent.timeStamp\n }\n\n /**\n * If this is a `dropactivate` event, the dropzone element will be\n * deactivated.\n *\n * If this is a `dragmove` or `dragenter`, a `dragleave` will be fired on the\n * dropzone element and more.\n */\n reject () {\n const { dropState } = this._interaction\n\n if (\n (this.type !== 'dropactivate') && (\n !this.dropzone ||\n dropState.cur.dropzone !== this.dropzone ||\n dropState.cur.element !== this.target)) {\n return\n }\n\n dropState.prev.dropzone = this.dropzone\n dropState.prev.element = this.target\n\n dropState.rejected = true\n dropState.events.enter = null\n\n this.stopImmediatePropagation()\n\n if (this.type === 'dropactivate') {\n const activeDrops = dropState.activeDrops\n const index = arr.findIndex(activeDrops, ({ dropzone, element }) =>\n dropzone === this.dropzone && element === this.target)\n\n dropState.activeDrops.splice(index, 1)\n\n const deactivateEvent = new DropEvent(dropState, this.dragEvent, 'dropdeactivate')\n\n deactivateEvent.dropzone = this.dropzone\n deactivateEvent.target = this.target\n\n this.dropzone.fire(deactivateEvent)\n }\n else {\n this.dropzone.fire(new DropEvent(dropState, this.dragEvent, 'dragleave'))\n }\n }\n\n preventDefault () {}\n\n stopPropagation () {\n this.propagationStopped = true\n }\n\n stopImmediatePropagation () {\n this.immediatePropagationStopped = this.propagationStopped = true\n }\n}\n\nexport default DropEvent\n","import Interactable from '@interactjs/core/Interactable'\nimport InteractEvent from '@interactjs/core/InteractEvent'\nimport { ActionName, Scope } from '@interactjs/core/scope'\nimport * as utils from '@interactjs/utils/index'\nimport drag from '../drag'\nimport DropEvent from './DropEvent'\n\nexport interface DropzoneMethod {\n (options: Interact.DropzoneOptions | boolean): Interact.Interactable\n (): Interact.DropzoneOptions\n}\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n dropzone: DropzoneMethod\n dropCheck: (\n dragEvent: InteractEvent,\n event: Interact.PointerEventType,\n draggable: Interactable,\n draggableElement: Interact.Element,\n dropElemen: Interact.Element,\n rect: any\n ) => boolean\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n dropState?: {\n cur: {\n dropzone: Interactable // the dropzone a drag target might be dropped into\n element: Interact.Element // the element at the time of checking\n }\n prev: {\n dropzone: Interactable // the dropzone that was recently dragged away from\n element: Interact.Element // the element at the time of checking\n }\n rejected: boolean // wheather the potential drop was rejected from a listener\n events: any // the drop events related to the current drag event\n activeDrops: Array<{\n dropzone: Interactable\n element: Interact.Element\n rect: Interact.Rect\n }>\n }\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface ActionDefaults {\n drop: Interact.DropzoneOptions\n }\n}\n\ninterface DropSignalArg {\n interaction: Interact.Interaction\n dragEvent: Interact.DragEvent\n}\n\ndeclare module '@interactjs/core/scope' {\n interface Scope {\n dynamicDrop?: boolean\n }\n\n interface SignalArgs {\n 'actions/drop:start': DropSignalArg\n 'actions/drop:move': DropSignalArg\n 'actions/drop:end': DropSignalArg\n }\n}\n\nfunction install (scope: Scope) {\n const {\n actions,\n /** @lends module:interact */\n interact,\n /** @lends Interactable */\n Interactable, // eslint-disable-line no-shadow\n defaults,\n } = scope\n\n scope.usePlugin(drag)\n\n /**\n *\n * ```js\n * interact('.drop').dropzone({\n * accept: '.can-drop' || document.getElementById('single-drop'),\n * overlap: 'pointer' || 'center' || zeroToOne\n * }\n * ```\n *\n * Returns or sets whether draggables can be dropped onto this target to\n * trigger drop events\n *\n * Dropzones can receive the following events:\n * - `dropactivate` and `dropdeactivate` when an acceptable drag starts and ends\n * - `dragenter` and `dragleave` when a draggable enters and leaves the dropzone\n * - `dragmove` when a draggable that has entered the dropzone is moved\n * - `drop` when a draggable is dropped into this dropzone\n *\n * Use the `accept` option to allow only elements that match the given CSS\n * selector or element. The value can be:\n *\n * - **an Element** - only that element can be dropped into this dropzone.\n * - **a string**, - the element being dragged must match it as a CSS selector.\n * - **`null`** - accept options is cleared - it accepts any element.\n *\n * Use the `overlap` option to set how drops are checked for. The allowed\n * values are:\n *\n * - `'pointer'`, the pointer must be over the dropzone (default)\n * - `'center'`, the draggable element's center must be over the dropzone\n * - a number from 0-1 which is the `(intersection area) / (draggable area)`.\n * e.g. `0.5` for drop to happen when half of the area of the draggable is\n * over the dropzone\n *\n * Use the `checker` option to specify a function to check if a dragged element\n * is over this Interactable.\n *\n * @param {boolean | object | null} [options] The new options to be set.\n * @return {boolean | Interactable} The current setting or this Interactable\n */\n Interactable.prototype.dropzone = function (this: Interact.Interactable, options?: Interact.DropzoneOptions | boolean) {\n return dropzoneMethod(this, options)\n }\n\n /**\n * ```js\n * interact(target)\n * .dropChecker(function(dragEvent, // related dragmove or dragend event\n * event, // TouchEvent/PointerEvent/MouseEvent\n * dropped, // bool result of the default checker\n * dropzone, // dropzone Interactable\n * dropElement, // dropzone elemnt\n * draggable, // draggable Interactable\n * draggableElement) {// draggable element\n *\n * return dropped && event.target.hasAttribute('allow-drop')\n * }\n * ```\n */\n Interactable.prototype.dropCheck = function (this: Interact.Interactable, dragEvent, event, draggable, draggableElement, dropElement, rect) {\n return dropCheckMethod(this, dragEvent, event, draggable, draggableElement, dropElement, rect)\n }\n\n /**\n * Returns or sets whether the dimensions of dropzone elements are calculated\n * on every dragmove or only on dragstart for the default dropChecker\n *\n * @param {boolean} [newValue] True to check on each move. False to check only\n * before start\n * @return {boolean | interact} The current setting or interact\n */\n interact.dynamicDrop = function (newValue?: boolean) {\n if (utils.is.bool(newValue)) {\n // if (dragging && scope.dynamicDrop !== newValue && !newValue) {\n // calcRects(dropzones)\n // }\n\n scope.dynamicDrop = newValue\n\n return interact\n }\n return scope.dynamicDrop\n }\n\n utils.arr.merge(actions.eventTypes, [\n 'dragenter',\n 'dragleave',\n 'dropactivate',\n 'dropdeactivate',\n 'dropmove',\n 'drop',\n ])\n actions.methodDict.drop = 'dropzone'\n\n scope.dynamicDrop = false\n\n defaults.actions.drop = drop.defaults\n}\n\nfunction collectDrops ({ interactables }, draggableElement) {\n const drops = []\n\n // collect all dropzones and their elements which qualify for a drop\n for (const dropzone of interactables.list) {\n if (!dropzone.options.drop.enabled) { continue }\n\n const accept = dropzone.options.drop.accept\n\n // test the draggable draggableElement against the dropzone's accept setting\n if ((utils.is.element(accept) && accept !== draggableElement) ||\n (utils.is.string(accept) &&\n !utils.dom.matchesSelector(draggableElement, accept)) ||\n (utils.is.func(accept) && !accept({ dropzone, draggableElement }))) {\n continue\n }\n\n // query for new elements if necessary\n const dropElements = utils.is.string(dropzone.target)\n ? dropzone._context.querySelectorAll(dropzone.target)\n : utils.is.array(dropzone.target) ? dropzone.target : [dropzone.target]\n\n for (const dropzoneElement of dropElements) {\n if (dropzoneElement !== draggableElement) {\n drops.push({\n dropzone,\n element: dropzoneElement,\n })\n }\n }\n }\n\n return drops\n}\n\nfunction fireActivationEvents (activeDrops, event) {\n // loop through all active dropzones and trigger event\n for (const { dropzone, element } of activeDrops.slice()) {\n event.dropzone = dropzone\n\n // set current element as event target\n event.target = element\n dropzone.fire(event)\n event.propagationStopped = event.immediatePropagationStopped = false\n }\n}\n\n// return a new array of possible drops. getActiveDrops should always be\n// called when a drag has just started or a drag event happens while\n// dynamicDrop is true\nfunction getActiveDrops (scope: Scope, dragElement: Interact.Element) {\n // get dropzones and their elements that could receive the draggable\n const activeDrops = collectDrops(scope, dragElement)\n\n for (const activeDrop of activeDrops) {\n activeDrop.rect = activeDrop.dropzone.getRect(activeDrop.element)\n }\n\n return activeDrops\n}\n\nfunction getDrop ({ dropState, interactable: draggable, element: dragElement }: Partial<Interact.Interaction>, dragEvent, pointerEvent) {\n const validDrops = []\n\n // collect all dropzones and their elements which qualify for a drop\n for (const { dropzone, element: dropzoneElement, rect } of dropState.activeDrops) {\n validDrops.push(dropzone.dropCheck(dragEvent, pointerEvent, draggable, dragElement, dropzoneElement, rect)\n ? dropzoneElement\n : null)\n }\n\n // get the most appropriate dropzone based on DOM depth and order\n const dropIndex = utils.dom.indexOfDeepestElement(validDrops)\n\n return dropState.activeDrops[dropIndex] || null\n}\n\nfunction getDropEvents (interaction: Interact.Interaction, _pointerEvent, dragEvent) {\n const { dropState } = interaction\n const dropEvents = {\n enter : null,\n leave : null,\n activate : null,\n deactivate: null,\n move : null,\n drop : null,\n }\n\n if (dragEvent.type === 'dragstart') {\n dropEvents.activate = new DropEvent(dropState, dragEvent, 'dropactivate')\n\n dropEvents.activate.target = null\n dropEvents.activate.dropzone = null\n }\n if (dragEvent.type === 'dragend') {\n dropEvents.deactivate = new DropEvent(dropState, dragEvent, 'dropdeactivate')\n\n dropEvents.deactivate.target = null\n dropEvents.deactivate.dropzone = null\n }\n\n if (dropState.rejected) {\n return dropEvents\n }\n\n if (dropState.cur.element !== dropState.prev.element) {\n // if there was a previous dropzone, create a dragleave event\n if (dropState.prev.dropzone) {\n dropEvents.leave = new DropEvent(dropState, dragEvent, 'dragleave')\n\n dragEvent.dragLeave = dropEvents.leave.target = dropState.prev.element\n dragEvent.prevDropzone = dropEvents.leave.dropzone = dropState.prev.dropzone\n }\n // if dropzone is not null, create a dragenter event\n if (dropState.cur.dropzone) {\n dropEvents.enter = new DropEvent(dropState, dragEvent, 'dragenter')\n\n dragEvent.dragEnter = dropState.cur.element\n dragEvent.dropzone = dropState.cur.dropzone\n }\n }\n\n if (dragEvent.type === 'dragend' && dropState.cur.dropzone) {\n dropEvents.drop = new DropEvent(dropState, dragEvent, 'drop')\n\n dragEvent.dropzone = dropState.cur.dropzone\n dragEvent.relatedTarget = dropState.cur.element\n }\n if (dragEvent.type === 'dragmove' && dropState.cur.dropzone) {\n dropEvents.move = new DropEvent(dropState, dragEvent, 'dropmove')\n\n dropEvents.move.dragmove = dragEvent\n dragEvent.dropzone = dropState.cur.dropzone\n }\n\n return dropEvents\n}\n\nfunction fireDropEvents (interaction: Interact.Interaction, events) {\n const { dropState } = interaction\n const {\n activeDrops,\n cur,\n prev,\n } = dropState\n\n if (events.leave) { prev.dropzone.fire(events.leave) }\n if (events.move) { cur.dropzone.fire(events.move) }\n if (events.enter) { cur.dropzone.fire(events.enter) }\n if (events.drop) { cur.dropzone.fire(events.drop) }\n\n if (events.deactivate) {\n fireActivationEvents(activeDrops, events.deactivate)\n }\n\n dropState.prev.dropzone = cur.dropzone\n dropState.prev.element = cur.element\n}\n\nfunction onEventCreated ({ interaction, iEvent, event }: Interact.DoPhaseArg, scope) {\n if (iEvent.type !== 'dragmove' && iEvent.type !== 'dragend') { return }\n\n const { dropState } = interaction\n\n if (scope.dynamicDrop) {\n dropState.activeDrops = getActiveDrops(scope, interaction.element)\n }\n\n const dragEvent = iEvent\n const dropResult = getDrop(interaction, dragEvent, event)\n\n // update rejected status\n dropState.rejected = dropState.rejected &&\n !!dropResult &&\n dropResult.dropzone === dropState.cur.dropzone &&\n dropResult.element === dropState.cur.element\n\n dropState.cur.dropzone = dropResult && dropResult.dropzone\n dropState.cur.element = dropResult && dropResult.element\n\n dropState.events = getDropEvents(interaction, event, dragEvent)\n}\n\nfunction dropzoneMethod (interactable: Interact.Interactable): Interact.DropzoneOptions\nfunction dropzoneMethod (interactable: Interact.Interactable, options: Interact.DropzoneOptions | boolean)\nfunction dropzoneMethod (interactable: Interact.Interactable, options?: Interact.DropzoneOptions | boolean) {\n if (utils.is.object(options)) {\n interactable.options.drop.enabled = options.enabled !== false\n\n if (options.listeners) {\n const normalized = utils.normalizeListeners(options.listeners)\n // rename 'drop' to '' as it will be prefixed with 'drop'\n const corrected = Object.keys(normalized).reduce((acc, type) => {\n const correctedType = /^(enter|leave)/.test(type)\n ? `drag${type}`\n : /^(activate|deactivate|move)/.test(type)\n ? `drop${type}`\n : type\n\n acc[correctedType] = normalized[type]\n\n return acc\n }, {})\n\n interactable.off(interactable.options.drop.listeners)\n interactable.on(corrected)\n interactable.options.drop.listeners = corrected\n }\n\n if (utils.is.func(options.ondrop)) { interactable.on('drop', options.ondrop) }\n if (utils.is.func(options.ondropactivate)) { interactable.on('dropactivate', options.ondropactivate) }\n if (utils.is.func(options.ondropdeactivate)) { interactable.on('dropdeactivate', options.ondropdeactivate) }\n if (utils.is.func(options.ondragenter)) { interactable.on('dragenter', options.ondragenter) }\n if (utils.is.func(options.ondragleave)) { interactable.on('dragleave', options.ondragleave) }\n if (utils.is.func(options.ondropmove)) { interactable.on('dropmove', options.ondropmove) }\n\n if (/^(pointer|center)$/.test(options.overlap as string)) {\n interactable.options.drop.overlap = options.overlap\n }\n else if (utils.is.number(options.overlap)) {\n interactable.options.drop.overlap = Math.max(Math.min(1, options.overlap), 0)\n }\n if ('accept' in options) {\n interactable.options.drop.accept = options.accept\n }\n if ('checker' in options) {\n interactable.options.drop.checker = options.checker\n }\n\n return interactable\n }\n\n if (utils.is.bool(options)) {\n interactable.options.drop.enabled = options\n\n return interactable\n }\n\n return interactable.options.drop\n}\n\nfunction dropCheckMethod (\n interactable: Interact.Interactable,\n dragEvent: InteractEvent,\n event: Interact.PointerEventType,\n draggable: Interact.Interactable,\n draggableElement: Interact.Element,\n dropElement: Interact.Element,\n rect: any,\n) {\n let dropped = false\n\n // if the dropzone has no rect (eg. display: none)\n // call the custom dropChecker or just return false\n if (!(rect = rect || interactable.getRect(dropElement))) {\n return (interactable.options.drop.checker\n ? interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement)\n : false)\n }\n\n const dropOverlap = interactable.options.drop.overlap\n\n if (dropOverlap === 'pointer') {\n const origin = utils.getOriginXY(draggable, draggableElement, ActionName.Drag)\n const page = utils.pointer.getPageXY(dragEvent)\n\n page.x += origin.x\n page.y += origin.y\n\n const horizontal = (page.x > rect.left) && (page.x < rect.right)\n const vertical = (page.y > rect.top) && (page.y < rect.bottom)\n\n dropped = horizontal && vertical\n }\n\n const dragRect = draggable.getRect(draggableElement)\n\n if (dragRect && dropOverlap === 'center') {\n const cx = dragRect.left + dragRect.width / 2\n const cy = dragRect.top + dragRect.height / 2\n\n dropped = cx >= rect.left && cx <= rect.right && cy >= rect.top && cy <= rect.bottom\n }\n\n if (dragRect && utils.is.number(dropOverlap)) {\n const overlapArea = (Math.max(0, Math.min(rect.right, dragRect.right) - Math.max(rect.left, dragRect.left)) *\n Math.max(0, Math.min(rect.bottom, dragRect.bottom) - Math.max(rect.top, dragRect.top)))\n\n const overlapRatio = overlapArea / (dragRect.width * dragRect.height)\n\n dropped = overlapRatio >= dropOverlap\n }\n\n if (interactable.options.drop.checker) {\n dropped = interactable.options.drop.checker(dragEvent, event, dropped, interactable, dropElement, draggable, draggableElement)\n }\n\n return dropped\n}\n\nconst drop: Interact.Plugin = {\n id: 'actions/drop',\n install,\n listeners: {\n 'interactions:before-action-start': ({ interaction }) => {\n if (interaction.prepared.name !== 'drag') { return }\n\n interaction.dropState = {\n cur: {\n dropzone: null,\n element: null,\n },\n prev: {\n dropzone: null,\n element: null,\n },\n rejected: null,\n events: null,\n activeDrops: null,\n }\n },\n\n 'interactions:after-action-start': ({ interaction, event, iEvent: dragEvent }, scope) => {\n if (interaction.prepared.name !== 'drag') { return }\n\n const { dropState } = interaction\n\n // reset active dropzones\n dropState.activeDrops = null\n dropState.events = null\n dropState.activeDrops = getActiveDrops(scope, interaction.element)\n dropState.events = getDropEvents(interaction, event, dragEvent)\n\n if (dropState.events.activate) {\n fireActivationEvents(dropState.activeDrops, dropState.events.activate)\n scope.fire('actions/drop:start', { interaction, dragEvent })\n }\n },\n\n // FIXME proper signal types\n 'interactions:action-move': onEventCreated,\n 'interactions:action-end': onEventCreated,\n\n 'interactions:after-action-move': function fireDropAfterMove ({ interaction, iEvent: dragEvent }, scope) {\n if (interaction.prepared.name !== 'drag') { return }\n\n fireDropEvents(interaction, interaction.dropState.events)\n\n scope.fire('actions/drop:move', { interaction, dragEvent })\n interaction.dropState.events = {}\n },\n\n 'interactions:after-action-end': ({ interaction, iEvent: dragEvent }, scope) => {\n if (interaction.prepared.name !== 'drag') { return }\n\n fireDropEvents(interaction, interaction.dropState.events)\n scope.fire('actions/drop:end', { interaction, dragEvent })\n },\n\n 'interactions:stop': ({ interaction }) => {\n if (interaction.prepared.name !== 'drag') { return }\n\n const { dropState } = interaction\n\n if (dropState) {\n dropState.activeDrops = null\n dropState.events = null\n dropState.cur.dropzone = null\n dropState.cur.element = null\n dropState.prev.dropzone = null\n dropState.prev.element = null\n dropState.rejected = false\n }\n },\n },\n getActiveDrops,\n getDrop,\n getDropEvents,\n fireDropEvents,\n defaults: {\n enabled: false,\n accept : null,\n overlap: 'pointer',\n } as Interact.DropzoneOptions,\n}\n\nexport default drop\n","import InteractEvent from '@interactjs/core/InteractEvent'\nimport { ActionName, Scope } from '@interactjs/core/scope'\nimport * as utils from '@interactjs/utils/index'\n\nexport type GesturableMethod = Interact.ActionMethod<Interact.GesturableOptions>\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n gesture?: {\n angle: number // angle from first to second touch\n distance: number\n scale: number // gesture.distance / gesture.startDistance\n startAngle: number // angle of line joining two touches\n startDistance: number // distance between two touches of touchStart\n }\n }\n}\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n gesturable: GesturableMethod\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface ActionDefaults {\n gesture: Interact.GesturableOptions\n }\n}\n\ndeclare module '@interactjs/core/scope' {\n interface Actions {\n [ActionName.Gesture]?: typeof gesture\n }\n\n // eslint-disable-next-line no-shadow\n enum ActionName {\n Gesture = 'gesture'\n }\n}\n\n(ActionName as any).Gesture = 'gesture'\n\nexport interface GestureEvent extends Interact.InteractEvent<ActionName.Gesture> {\n distance: number\n angle: number\n da: number // angle change\n scale: number // ratio of distance start to current event\n ds: number // scale change\n box: Interact.Rect // enclosing box of all points\n touches: Interact.PointerType[]\n}\n\nexport interface GestureSignalArg extends Interact.DoPhaseArg {\n iEvent: GestureEvent\n interaction: Interact.Interaction<ActionName.Gesture>\n event: Interact.PointerEventType | GestureEvent\n}\n\nfunction install (scope: Scope) {\n const {\n actions,\n Interactable,\n defaults,\n } = scope\n\n /**\n * ```js\n * interact(element).gesturable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * // limit multiple gestures.\n * // See the explanation in {@link Interactable.draggable} example\n * max: Infinity,\n * maxPerElement: 1,\n * })\n *\n * var isGestureable = interact(element).gesturable()\n * ```\n *\n * Gets or sets whether multitouch gestures can be performed on the target\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on gesture events (makes the Interactable gesturable)\n * @return {boolean | Interactable} A boolean indicating if this can be the\n * target of gesture events, or this Interactable\n */\n Interactable.prototype.gesturable = function (this: Interact.Interactable, options: Interact.GesturableOptions | boolean) {\n if (utils.is.object(options)) {\n this.options.gesture.enabled = options.enabled !== false\n this.setPerAction(ActionName.Gesture, options)\n this.setOnEvents(ActionName.Gesture, options)\n\n return this\n }\n\n if (utils.is.bool(options)) {\n this.options.gesture.enabled = options\n\n return this\n }\n\n return this.options.gesture as Interact.Options\n } as GesturableMethod\n\n actions[ActionName.Gesture] = gesture\n actions.names.push(ActionName.Gesture)\n utils.arr.merge(actions.eventTypes, [\n 'gesturestart',\n 'gesturemove',\n 'gestureend',\n ])\n actions.methodDict.gesture = 'gesturable'\n\n defaults.actions.gesture = gesture.defaults\n}\n\nfunction updateGestureProps ({ interaction, iEvent, event, phase }: GestureSignalArg) {\n if (interaction.prepared.name !== 'gesture') { return }\n\n const pointers = interaction.pointers.map(p => p.pointer)\n const starting = phase === 'start'\n const ending = phase === 'end'\n const deltaSource = interaction.interactable.options.deltaSource\n\n iEvent.touches = [pointers[0], pointers[1]]\n\n if (starting) {\n iEvent.distance = utils.pointer.touchDistance(pointers, deltaSource)\n iEvent.box = utils.pointer.touchBBox(pointers)\n iEvent.scale = 1\n iEvent.ds = 0\n iEvent.angle = utils.pointer.touchAngle(pointers, deltaSource)\n iEvent.da = 0\n\n interaction.gesture.startDistance = iEvent.distance\n interaction.gesture.startAngle = iEvent.angle\n }\n else if (ending || event instanceof InteractEvent) {\n const prevEvent = interaction.prevEvent as GestureEvent\n\n iEvent.distance = prevEvent.distance\n iEvent.box = prevEvent.box\n iEvent.scale = prevEvent.scale\n iEvent.ds = 0\n iEvent.angle = prevEvent.angle\n iEvent.da = 0\n }\n else {\n iEvent.distance = utils.pointer.touchDistance(pointers, deltaSource)\n iEvent.box = utils.pointer.touchBBox(pointers)\n iEvent.scale = iEvent.distance / interaction.gesture.startDistance\n iEvent.angle = utils.pointer.touchAngle(pointers, deltaSource)\n\n iEvent.ds = iEvent.scale - interaction.gesture.scale\n iEvent.da = iEvent.angle - interaction.gesture.angle\n }\n\n interaction.gesture.distance = iEvent.distance\n interaction.gesture.angle = iEvent.angle\n\n if (utils.is.number(iEvent.scale) &&\n iEvent.scale !== Infinity &&\n !isNaN(iEvent.scale)) {\n interaction.gesture.scale = iEvent.scale\n }\n}\n\nconst gesture: Interact.Plugin = {\n id: 'actions/gesture',\n before: ['actions/drag', 'actions/resize'],\n install,\n listeners: {\n 'interactions:action-start': updateGestureProps,\n 'interactions:action-move': updateGestureProps,\n 'interactions:action-end': updateGestureProps,\n\n 'interactions:new': ({ interaction }) => {\n interaction.gesture = {\n angle: 0,\n distance: 0,\n scale: 1,\n startAngle: 0,\n startDistance: 0,\n }\n },\n\n 'auto-start:check': arg => {\n if (arg.interaction.pointers.length < 2) {\n return undefined\n }\n\n const gestureOptions = arg.interactable.options.gesture\n\n if (!(gestureOptions && gestureOptions.enabled)) {\n return undefined\n }\n\n arg.action = { name: ActionName.Gesture }\n\n return false\n },\n },\n\n defaults: {\n },\n\n getCursor () {\n return ''\n },\n}\n\nexport default gesture\n","import { Interaction } from '@interactjs/core/Interaction'\nimport { ActionName, Scope } from '@interactjs/core/scope'\nimport * as arr from '@interactjs/utils/arr'\nimport * as dom from '@interactjs/utils/domUtils'\nimport extend from '@interactjs/utils/extend'\nimport * as is from '@interactjs/utils/is'\n\nexport type EdgeName = 'top' | 'left' | 'bottom' | 'right'\n\nexport type ResizableMethod = Interact.ActionMethod<Interact.ResizableOptions>\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n resizable: ResizableMethod\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n resizeAxes: 'x' | 'y' | 'xy'\n resizeStartAspectRatio: number\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface ActionDefaults {\n resize: Interact.ResizableOptions\n }\n}\n\ndeclare module '@interactjs/core/scope' {\n interface Actions {\n [ActionName.Resize]?: typeof resize\n }\n\n // eslint-disable-next-line no-shadow\n enum ActionName {\n Resize = 'resize'\n }\n}\n\n(ActionName as any).Resize = 'resize'\n\nexport interface ResizeEvent extends Interact.InteractEvent<ActionName.Resize> {\n deltaRect?: Interact.FullRect\n edges?: Interact.ActionProps['edges']\n}\n\nfunction install (scope: Scope) {\n const {\n actions,\n browser,\n /** @lends Interactable */\n Interactable, // tslint:disable-line no-shadowed-variable\n defaults,\n } = scope\n\n // Less Precision with touch input\n\n resize.cursors = initCursors(browser)\n resize.defaultMargin = browser.supportsTouch || browser.supportsPointerEvent ? 20 : 10\n\n /**\n * ```js\n * interact(element).resizable({\n * onstart: function (event) {},\n * onmove : function (event) {},\n * onend : function (event) {},\n *\n * edges: {\n * top : true, // Use pointer coords to check for resize.\n * left : false, // Disable resizing from left edge.\n * bottom: '.resize-s',// Resize if pointer target matches selector\n * right : handleEl // Resize if pointer target is the given Element\n * },\n *\n * // Width and height can be adjusted independently. When `true`, width and\n * // height are adjusted at a 1:1 ratio.\n * square: false,\n *\n * // Width and height can be adjusted independently. When `true`, width and\n * // height maintain the aspect ratio they had when resizing started.\n * preserveAspectRatio: false,\n *\n * // a value of 'none' will limit the resize rect to a minimum of 0x0\n * // 'negate' will allow the rect to have negative width/height\n * // 'reposition' will keep the width/height positive by swapping\n * // the top and bottom edges and/or swapping the left and right edges\n * invert: 'none' || 'negate' || 'reposition'\n *\n * // limit multiple resizes.\n * // See the explanation in the {@link Interactable.draggable} example\n * max: Infinity,\n * maxPerElement: 1,\n * })\n *\n * var isResizeable = interact(element).resizable()\n * ```\n *\n * Gets or sets whether resize actions can be performed on the target\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on resize events (object makes the Interactable\n * resizable)\n * @return {boolean | Interactable} A boolean indicating if this can be the\n * target of resize elements, or this Interactable\n */\n Interactable.prototype.resizable = function (this: Interact.Interactable, options: Interact.ResizableOptions | boolean) {\n return resizable(this, options, scope)\n } as ResizableMethod\n\n actions[ActionName.Resize] = resize\n actions.names.push(ActionName.Resize)\n arr.merge(actions.eventTypes, [\n 'resizestart',\n 'resizemove',\n 'resizeinertiastart',\n 'resizeresume',\n 'resizeend',\n ])\n actions.methodDict.resize = 'resizable'\n\n defaults.actions.resize = resize.defaults\n}\n\nfunction resizeChecker (arg) {\n const { interaction, interactable, element, rect, buttons } = arg\n\n if (!rect) { return undefined }\n\n const page = extend({}, interaction.coords.cur.page)\n const resizeOptions = interactable.options.resize\n\n if (\n !(resizeOptions && resizeOptions.enabled) ||\n // check mouseButton setting if the pointer is down\n (interaction.pointerIsDown &&\n /mouse|pointer/.test(interaction.pointerType) &&\n (buttons & resizeOptions.mouseButtons) === 0)\n ) {\n return undefined\n }\n\n // if using resize.edges\n if (is.object(resizeOptions.edges)) {\n const resizeEdges = {\n left: false,\n right: false,\n top: false,\n bottom: false,\n }\n\n for (const edge in resizeEdges) {\n resizeEdges[edge] = checkResizeEdge(edge,\n resizeOptions.edges[edge],\n page,\n interaction._latestPointer.eventTarget,\n element,\n rect,\n resizeOptions.margin || resize.defaultMargin)\n }\n\n resizeEdges.left = resizeEdges.left && !resizeEdges.right\n resizeEdges.top = resizeEdges.top && !resizeEdges.bottom\n\n if (resizeEdges.left || resizeEdges.right || resizeEdges.top || resizeEdges.bottom) {\n arg.action = {\n name: ActionName.Resize,\n edges: resizeEdges,\n }\n }\n }\n else {\n const right = resizeOptions.axis !== 'y' && page.x > (rect.right - resize.defaultMargin)\n const bottom = resizeOptions.axis !== 'x' && page.y > (rect.bottom - resize.defaultMargin)\n\n if (right || bottom) {\n arg.action = {\n name: 'resize',\n axes: (right ? 'x' : '') + (bottom ? 'y' : ''),\n }\n }\n }\n\n return arg.action ? false : undefined\n}\n\nfunction resizable (interactable: Interact.Interactable, options: Interact.OrBoolean<Interact.ResizableOptions> | boolean, scope: Scope) {\n if (is.object(options)) {\n interactable.options.resize.enabled = options.enabled !== false\n interactable.setPerAction(ActionName.Resize, options)\n interactable.setOnEvents(ActionName.Resize, options)\n\n if (is.string(options.axis) && /^x$|^y$|^xy$/.test(options.axis)) {\n interactable.options.resize.axis = options.axis\n }\n else if (options.axis === null) {\n interactable.options.resize.axis = scope.defaults.actions.resize.axis\n }\n\n if (is.bool(options.preserveAspectRatio)) {\n interactable.options.resize.preserveAspectRatio = options.preserveAspectRatio\n }\n else if (is.bool(options.square)) {\n interactable.options.resize.square = options.square\n }\n\n return interactable\n }\n if (is.bool(options)) {\n interactable.options.resize.enabled = options\n\n return interactable\n }\n return interactable.options.resize\n}\n\nfunction checkResizeEdge (\n name: string,\n value: any,\n page: Interact.Point,\n element: Node,\n interactableElement: Interact.Element,\n rect: Interact.Rect,\n margin: number,\n) {\n // false, '', undefined, null\n if (!value) { return false }\n\n // true value, use pointer coords and element rect\n if (value === true) {\n // if dimensions are negative, \"switch\" edges\n const width = is.number(rect.width) ? rect.width : rect.right - rect.left\n const height = is.number(rect.height) ? rect.height : rect.bottom - rect.top\n\n // don't use margin greater than half the relevent dimension\n margin = Math.min(margin, (name === 'left' || name === 'right' ? width : height) / 2)\n\n if (width < 0) {\n if (name === 'left') { name = 'right' }\n else if (name === 'right') { name = 'left' }\n }\n if (height < 0) {\n if (name === 'top') { name = 'bottom' }\n else if (name === 'bottom') { name = 'top' }\n }\n\n if (name === 'left') { return page.x < ((width >= 0 ? rect.left : rect.right) + margin) }\n if (name === 'top') { return page.y < ((height >= 0 ? rect.top : rect.bottom) + margin) }\n\n if (name === 'right') { return page.x > ((width >= 0 ? rect.right : rect.left) - margin) }\n if (name === 'bottom') { return page.y > ((height >= 0 ? rect.bottom : rect.top) - margin) }\n }\n\n // the remaining checks require an element\n if (!is.element(element)) { return false }\n\n return is.element(value)\n // the value is an element to use as a resize handle\n ? value === element\n // otherwise check if element matches value as selector\n : dom.matchesUpTo(element, value, interactableElement)\n}\n\nfunction initCursors (browser: typeof import ('@interactjs/utils/browser').default) {\n return (browser.isIe9 ? {\n x : 'e-resize',\n y : 's-resize',\n xy: 'se-resize',\n\n top : 'n-resize',\n left : 'w-resize',\n bottom : 's-resize',\n right : 'e-resize',\n topleft : 'se-resize',\n bottomright: 'se-resize',\n topright : 'ne-resize',\n bottomleft : 'ne-resize',\n } : {\n x : 'ew-resize',\n y : 'ns-resize',\n xy: 'nwse-resize',\n\n top : 'ns-resize',\n left : 'ew-resize',\n bottom : 'ns-resize',\n right : 'ew-resize',\n topleft : 'nwse-resize',\n bottomright: 'nwse-resize',\n topright : 'nesw-resize',\n bottomleft : 'nesw-resize',\n })\n}\n\nfunction start ({ iEvent, interaction }: { iEvent: ResizeEvent, interaction: Interaction }) {\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) {\n return\n }\n\n const rect = interaction.rect\n\n interaction._rects = {\n start: extend({}, rect),\n corrected: extend({}, rect),\n previous: extend({}, rect),\n delta: {\n left: 0,\n right : 0,\n width : 0,\n top : 0,\n bottom: 0,\n height: 0,\n },\n }\n\n iEvent.edges = interaction.prepared.edges\n iEvent.rect = interaction._rects.corrected\n iEvent.deltaRect = interaction._rects.delta\n}\n\nfunction move ({ iEvent, interaction }: { iEvent: ResizeEvent, interaction: Interaction }) {\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { return }\n\n const resizeOptions = interaction.interactable.options.resize\n const invert = resizeOptions.invert\n const invertible = invert === 'reposition' || invert === 'negate'\n\n // eslint-disable-next-line no-shadow\n const current = interaction.rect\n const { start: startRect, corrected, delta: deltaRect, previous } = interaction._rects\n\n extend(previous, corrected)\n\n if (invertible) {\n // if invertible, copy the current rect\n extend(corrected, current)\n\n if (invert === 'reposition') {\n // swap edge values if necessary to keep width/height positive\n if (corrected.top > corrected.bottom) {\n const swap = corrected.top\n\n corrected.top = corrected.bottom\n corrected.bottom = swap\n }\n if (corrected.left > corrected.right) {\n const swap = corrected.left\n\n corrected.left = corrected.right\n corrected.right = swap\n }\n }\n }\n else {\n // if not invertible, restrict to minimum of 0x0 rect\n corrected.top = Math.min(current.top, startRect.bottom)\n corrected.bottom = Math.max(current.bottom, startRect.top)\n corrected.left = Math.min(current.left, startRect.right)\n corrected.right = Math.max(current.right, startRect.left)\n }\n\n corrected.width = corrected.right - corrected.left\n corrected.height = corrected.bottom - corrected.top\n\n for (const edge in corrected) {\n deltaRect[edge] = corrected[edge] - previous[edge]\n }\n\n iEvent.edges = interaction.prepared.edges\n iEvent.rect = corrected\n iEvent.deltaRect = deltaRect\n}\n\nfunction end ({ iEvent, interaction }: { iEvent: ResizeEvent, interaction: Interaction }) {\n if (interaction.prepared.name !== 'resize' || !interaction.prepared.edges) { return }\n\n iEvent.edges = interaction.prepared.edges\n iEvent.rect = interaction._rects.corrected\n iEvent.deltaRect = interaction._rects.delta\n}\n\nfunction updateEventAxes ({ iEvent, interaction }: { iEvent: ResizeEvent, interaction: Interaction }) {\n if (interaction.prepared.name !== ActionName.Resize || !interaction.resizeAxes) { return }\n\n const options = interaction.interactable.options\n\n if (options.resize.square) {\n if (interaction.resizeAxes === 'y') {\n iEvent.delta.x = iEvent.delta.y\n }\n else {\n iEvent.delta.y = iEvent.delta.x\n }\n iEvent.axes = 'xy'\n }\n else {\n iEvent.axes = interaction.resizeAxes\n\n if (interaction.resizeAxes === 'x') {\n iEvent.delta.y = 0\n }\n else if (interaction.resizeAxes === 'y') {\n iEvent.delta.x = 0\n }\n }\n}\n\nconst resize: Interact.Plugin = {\n id: 'actions/resize',\n before: ['actions/drag'],\n install,\n listeners: {\n 'interactions:new': ({ interaction }) => {\n interaction.resizeAxes = 'xy'\n },\n\n 'interactions:action-start': arg => {\n start(arg)\n updateEventAxes(arg)\n },\n 'interactions:action-move': arg => {\n move(arg)\n updateEventAxes(arg)\n },\n 'interactions:action-end': end,\n 'auto-start:check': resizeChecker,\n },\n\n defaults: {\n square: false,\n preserveAspectRatio: false,\n axis: 'xy',\n\n // use default margin\n margin: NaN,\n\n // object with props left, right, top, bottom which are\n // true/false values to resize when the pointer is over that edge,\n // CSS selectors to match the handles for each direction\n // or the Elements for each handle\n edges: null,\n\n // a value of 'none' will limit the resize rect to a minimum of 0x0\n // 'negate' will alow the rect to have negative width/height\n // 'reposition' will keep the width/height positive by swapping\n // the top and bottom edges and/or swapping the left and right edges\n invert: 'none',\n } as Interact.ResizableOptions,\n\n cursors: null as ReturnType<typeof initCursors>,\n\n getCursor ({ edges, axis, name }: Interact.ActionProps) {\n const cursors = resize.cursors\n let result: string = null\n\n if (axis) {\n result = cursors[name + axis]\n }\n else if (edges) {\n let cursorKey = ''\n\n for (const edge of ['top', 'bottom', 'left', 'right']) {\n if (edges[edge]) {\n cursorKey += edge\n }\n }\n\n result = cursors[cursorKey]\n }\n\n return result\n },\n\n defaultMargin: null as number,\n}\n\nexport default resize\n","import { Scope } from '@interactjs/core/scope'\nimport drag from './drag'\nimport drop from './drop/index'\nimport gesture from './gesture'\nimport resize from './resize'\n\nfunction install (scope: Scope) {\n scope.usePlugin(gesture)\n scope.usePlugin(resize)\n scope.usePlugin(drag)\n scope.usePlugin(drop)\n}\n\nconst id = 'actions'\n\nexport {\n id,\n install,\n gesture,\n resize,\n drag,\n drop,\n}\n","import * as domUtils from '@interactjs/utils/domUtils'\nimport * as is from '@interactjs/utils/is'\nimport raf from '@interactjs/utils/raf'\nimport { getStringOptionResult } from '@interactjs/utils/rect'\nimport { getWindow } from '@interactjs/utils/window'\n\ntype Scope = import ('@interactjs/core/scope').Scope\n\ndeclare module '@interactjs/core/scope' {\n interface Scope {\n autoScroll: typeof autoScroll\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n autoScroll?: typeof autoScroll\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface PerActionDefaults {\n autoScroll?: AutoScrollOptions\n }\n}\n\nexport interface AutoScrollOptions {\n container?: Window | HTMLElement\n margin?: number\n distance?: number\n interval?: number\n speed?: number\n enabled?: boolean\n}\n\nfunction install (scope: Scope) {\n const {\n defaults,\n actions,\n } = scope\n\n scope.autoScroll = autoScroll\n autoScroll.now = () => scope.now()\n\n actions.eventTypes.push('autoscroll')\n defaults.perAction.autoScroll = autoScroll.defaults\n}\n\nconst autoScroll = {\n defaults: {\n enabled : false,\n margin : 60,\n\n // the item that is scrolled (Window or HTMLElement)\n container: null as AutoScrollOptions['container'],\n\n // the scroll speed in pixels per second\n speed : 300,\n } as AutoScrollOptions,\n\n now: Date.now,\n\n interaction: null as Interact.Interaction,\n i: 0, // the handle returned by window.setInterval\n x: 0,\n y: 0, // Direction each pulse is to scroll in\n\n isScrolling: false,\n prevTime: 0,\n margin: 0,\n speed: 0,\n\n start (interaction: Interact.Interaction) {\n autoScroll.isScrolling = true\n raf.cancel(autoScroll.i)\n\n interaction.autoScroll = autoScroll\n autoScroll.interaction = interaction\n autoScroll.prevTime = autoScroll.now()\n autoScroll.i = raf.request(autoScroll.scroll)\n },\n\n stop () {\n autoScroll.isScrolling = false\n if (autoScroll.interaction) {\n autoScroll.interaction.autoScroll = null\n }\n raf.cancel(autoScroll.i)\n },\n\n // scroll the window by the values in scroll.x/y\n scroll () {\n const { interaction } = autoScroll\n const { interactable, element } = interaction\n const actionName: Interact.ActionName = interaction.prepared.name\n const options = interactable.options[actionName].autoScroll\n const container = getContainer(options.container, interactable, element)\n const now = autoScroll.now()\n // change in time in seconds\n const dt = (now - autoScroll.prevTime) / 1000\n // displacement\n const s = options.speed * dt\n\n if (s >= 1) {\n const scrollBy = {\n x: autoScroll.x * s,\n y: autoScroll.y * s,\n }\n\n if (scrollBy.x || scrollBy.y) {\n const prevScroll = getScroll(container)\n\n if (is.window(container)) {\n container.scrollBy(scrollBy.x, scrollBy.y)\n }\n else if (container) {\n container.scrollLeft += scrollBy.x\n container.scrollTop += scrollBy.y\n }\n\n const curScroll = getScroll(container)\n const delta = {\n x: curScroll.x - prevScroll.x,\n y: curScroll.y - prevScroll.y,\n }\n\n if (delta.x || delta.y) {\n interactable.fire({\n type: 'autoscroll',\n target: element,\n interactable,\n delta,\n interaction,\n container,\n })\n }\n }\n\n autoScroll.prevTime = now\n }\n\n if (autoScroll.isScrolling) {\n raf.cancel(autoScroll.i)\n autoScroll.i = raf.request(autoScroll.scroll)\n }\n },\n check (interactable: Interact.Interactable, actionName: Interact.ActionName) {\n const options = interactable.options\n\n return options[actionName].autoScroll && options[actionName].autoScroll.enabled\n },\n onInteractionMove<T extends Interact.ActionName> ({ interaction, pointer }: { interaction: Interact.Interaction<T>, pointer: Interact.PointerType }) {\n if (!(interaction.interacting() &&\n autoScroll.check(interaction.interactable, interaction.prepared.name))) {\n return\n }\n\n if (interaction.simulation) {\n autoScroll.x = autoScroll.y = 0\n return\n }\n\n let top\n let right\n let bottom\n let left\n\n const { interactable, element } = interaction\n const actionName = interaction.prepared.name\n const options = interactable.options[actionName].autoScroll\n const container = getContainer(options.container, interactable, element)\n\n if (is.window(container)) {\n left = pointer.clientX < autoScroll.margin\n top = pointer.clientY < autoScroll.margin\n right = pointer.clientX > container.innerWidth - autoScroll.margin\n bottom = pointer.clientY > container.innerHeight - autoScroll.margin\n }\n else {\n const rect = domUtils.getElementClientRect(container)\n\n left = pointer.clientX < rect.left + autoScroll.margin\n top = pointer.clientY < rect.top + autoScroll.margin\n right = pointer.clientX > rect.right - autoScroll.margin\n bottom = pointer.clientY > rect.bottom - autoScroll.margin\n }\n\n autoScroll.x = (right ? 1 : left ? -1 : 0)\n autoScroll.y = (bottom ? 1 : top ? -1 : 0)\n\n if (!autoScroll.isScrolling) {\n // set the autoScroll properties to those of the target\n autoScroll.margin = options.margin\n autoScroll.speed = options.speed\n\n autoScroll.start(interaction)\n }\n },\n}\n\nexport function getContainer (value: any, interactable: Interact.Interactable, element: Interact.Element) {\n return (is.string(value) ? getStringOptionResult(value, interactable, element) : value) || getWindow(element)\n}\n\nexport function getScroll (container: any) {\n if (is.window(container)) { container = window.document.body }\n\n return { x: container.scrollLeft, y: container.scrollTop }\n}\n\nexport function getScrollSize (container: any) {\n if (is.window(container)) { container = window.document.body }\n\n return { x: container.scrollWidth, y: container.scrollHeight }\n}\n\nexport function getScrollSizeDelta<T extends Interact.ActionName> ({ interaction, element }: {\n interaction: Partial<Interact.Interaction<T>>\n element: Interact.Element\n}, func: any) {\n const scrollOptions = interaction && interaction.interactable.options[interaction.prepared.name].autoScroll\n\n if (!scrollOptions || !scrollOptions.enabled) {\n func()\n return { x: 0, y: 0 }\n }\n\n const scrollContainer = getContainer(\n scrollOptions.container,\n interaction.interactable,\n element,\n )\n\n const prevSize = getScroll(scrollContainer)\n func()\n const curSize = getScroll(scrollContainer)\n\n return {\n x: curSize.x - prevSize.x,\n y: curSize.y - prevSize.y,\n }\n}\n\nconst autoScrollPlugin: Interact.Plugin = {\n id: 'auto-scroll',\n install,\n listeners: {\n 'interactions:new': ({ interaction }) => {\n interaction.autoScroll = null\n },\n\n 'interactions:destroy': ({ interaction }) => {\n interaction.autoScroll = null\n autoScroll.stop()\n if (autoScroll.interaction) {\n autoScroll.interaction = null\n }\n },\n\n 'interactions:stop': autoScroll.stop,\n\n 'interactions:action-move': (arg: any) => autoScroll.onInteractionMove(arg),\n },\n}\n\nexport default autoScrollPlugin\n","import { warnOnce } from '@interactjs/utils/index'\nimport * as is from '@interactjs/utils/is'\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n getAction: (\n this: Interact.Interactable,\n pointer: Interact.PointerType,\n event: Interact.PointerEventType,\n interaction: Interact.Interaction,\n element: Interact.Element,\n ) => Interact.ActionProps | null\n styleCursor: typeof styleCursor\n actionChecker: typeof actionChecker\n ignoreFrom: (...args: any) => boolean\n allowFrom: (...args: any) => boolean\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n pointerIsDown: boolean\n }\n}\n\nfunction install (scope: Interact.Scope) {\n const {\n /** @lends Interactable */\n Interactable, // tslint:disable-line no-shadowed-variable\n } = scope\n\n Interactable.prototype.getAction = function getAction (\n this: Interact.Interactable,\n pointer: Interact.PointerType,\n event: Interact.PointerEventType,\n interaction: Interact.Interaction,\n element: Interact.Element,\n ): Interact.ActionProps {\n const action = defaultActionChecker(this, event, interaction, element, scope)\n\n if (this.options.actionChecker) {\n return this.options.actionChecker(pointer, event, action, this, element, interaction)\n }\n\n return action\n }\n\n /**\n * ```js\n * interact(element, { ignoreFrom: document.getElementById('no-action') })\n * // or\n * interact(element).ignoreFrom('input, textarea, a')\n * ```\n * @deprecated\n * If the target of the `mousedown`, `pointerdown` or `touchstart` event or any\n * of it's parents match the given CSS selector or Element, no\n * drag/resize/gesture is started.\n *\n * Don't use this method. Instead set the `ignoreFrom` option for each action\n * or for `pointerEvents`\n *\n * @example\n * interact(targett)\n * .draggable({\n * ignoreFrom: 'input, textarea, a[href]'',\n * })\n * .pointerEvents({\n * ignoreFrom: '[no-pointer]',\n * })\n *\n * @param {string | Element | null} [newValue] a CSS selector string, an\n * Element or `null` to not ignore any elements\n * @return {string | Element | object} The current ignoreFrom value or this\n * Interactable\n */\n Interactable.prototype.ignoreFrom = warnOnce(function (this: Interact.Interactable, newValue) {\n return this._backCompatOption('ignoreFrom', newValue)\n }, 'Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue}).')\n\n /**\n * @deprecated\n *\n * A drag/resize/gesture is started only If the target of the `mousedown`,\n * `pointerdown` or `touchstart` event or any of it's parents match the given\n * CSS selector or Element.\n *\n * Don't use this method. Instead set the `allowFrom` option for each action\n * or for `pointerEvents`\n *\n * @example\n * interact(targett)\n * .resizable({\n * allowFrom: '.resize-handle',\n * .pointerEvents({\n * allowFrom: '.handle',,\n * })\n *\n * @param {string | Element | null} [newValue] a CSS selector string, an\n * Element or `null` to allow from any element\n * @return {string | Element | object} The current allowFrom value or this\n * Interactable\n */\n Interactable.prototype.allowFrom = warnOnce(function (this: Interact.Interactable, newValue) {\n return this._backCompatOption('allowFrom', newValue)\n }, 'Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue}).')\n\n /**\n * ```js\n * interact('.resize-drag')\n * .resizable(true)\n * .draggable(true)\n * .actionChecker(function (pointer, event, action, interactable, element, interaction) {\n *\n * if (interact.matchesSelector(event.target, '.drag-handle')) {\n * // force drag with handle target\n * action.name = drag\n * }\n * else {\n * // resize from the top and right edges\n * action.name = 'resize'\n * action.edges = { top: true, right: true }\n * }\n *\n * return action\n * })\n * ```\n *\n * Returns or sets the function used to check action to be performed on\n * pointerDown\n *\n * @param {function | null} [checker] A function which takes a pointer event,\n * defaultAction string, interactable, element and interaction as parameters\n * and returns an object with name property 'drag' 'resize' or 'gesture' and\n * optionally an `edges` object with boolean 'top', 'left', 'bottom' and right\n * props.\n * @return {Function | Interactable} The checker function or this Interactable\n */\n Interactable.prototype.actionChecker = actionChecker\n\n /**\n * Returns or sets whether the the cursor should be changed depending on the\n * action that would be performed if the mouse were pressed and dragged.\n *\n * @param {boolean} [newValue]\n * @return {boolean | Interactable} The current setting or this Interactable\n */\n Interactable.prototype.styleCursor = styleCursor\n}\n\nfunction defaultActionChecker (\n interactable: Interact.Interactable,\n event: Interact.PointerEventType,\n interaction: Interact.Interaction,\n element: Interact.Element,\n scope: Interact.Scope,\n) {\n const rect = interactable.getRect(element)\n const buttons = (event as MouseEvent).buttons || ({\n 0: 1,\n 1: 4,\n 3: 8,\n 4: 16,\n })[(event as MouseEvent).button as 0 | 1 | 3 | 4]\n const arg = {\n action: null,\n interactable,\n interaction,\n element,\n rect,\n buttons,\n }\n\n scope.fire('auto-start:check', arg)\n\n return arg.action\n}\n\nfunction styleCursor (this: Interact.Interactable, newValue?: boolean) {\n if (is.bool(newValue)) {\n this.options.styleCursor = newValue\n\n return this\n }\n\n if (newValue === null) {\n delete this.options.styleCursor\n\n return this\n }\n\n return this.options.styleCursor\n}\n\nfunction actionChecker (this: Interact.Interactable, checker: any) {\n if (is.func(checker)) {\n this.options.actionChecker = checker\n\n return this\n }\n\n if (checker === null) {\n delete this.options.actionChecker\n\n return this\n }\n\n return this.options.actionChecker\n}\n\nexport default {\n id: 'auto-start/interactableMethods',\n install,\n}\n","import * as utils from '@interactjs/utils/index'\nimport InteractableMethods from './InteractableMethods'\n\ndeclare module '@interactjs/interact/interact' {\n interface InteractStatic {\n maxInteractions: (newValue: any) => any\n }\n}\n\ndeclare module '@interactjs/core/scope' {\n interface Scope {\n autoStart: AutoStart\n maxInteractions: (...args: any) => any\n }\n\n interface SignalArgs {\n 'autoStart:before-start': Interact.SignalArgs['interactions:move']\n 'autoStart:prepared': { interaction: Interact.Interaction }\n 'auto-start:check': CheckSignalArg\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface BaseDefaults {\n actionChecker?: any\n cursorChecker?: any\n styleCursor?: any\n }\n\n interface PerActionDefaults {\n manualStart?: boolean\n max?: number\n maxPerElement?: number\n allowFrom?: string | Interact.Element\n ignoreFrom?: string | Interact.Element\n cursorChecker?: Interact.CursorChecker\n\n // only allow left button by default\n // see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons#Return_value\n mouseButtons?: 0 | 1 | 2 | 4 | 16\n }\n}\n\ninterface CheckSignalArg {\n interactable: Interact.Interactable\n interaction: Interact.Interaction\n element: Interact.Element\n action: Interact.ActionProps\n buttons: number\n}\n\nexport interface AutoStart {\n // Allow this many interactions to happen simultaneously\n maxInteractions: number\n withinInteractionLimit: typeof withinInteractionLimit\n cursorElement: Interact.Element\n}\n\nfunction install (scope: Interact.Scope) {\n const {\n interact,\n defaults,\n } = scope\n\n scope.usePlugin(InteractableMethods)\n\n defaults.base.actionChecker = null\n defaults.base.styleCursor = true\n\n utils.extend(defaults.perAction, {\n manualStart: false,\n max: Infinity,\n maxPerElement: 1,\n allowFrom: null,\n ignoreFrom: null,\n\n // only allow left button by default\n // see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons#Return_value\n mouseButtons: 1,\n })\n\n /**\n * Returns or sets the maximum number of concurrent interactions allowed. By\n * default only 1 interaction is allowed at a time (for backwards\n * compatibility). To allow multiple interactions on the same Interactables and\n * elements, you need to enable it in the draggable, resizable and gesturable\n * `'max'` and `'maxPerElement'` options.\n *\n * @alias module:interact.maxInteractions\n *\n * @param {number} [newValue] Any number. newValue <= 0 means no interactions.\n */\n interact.maxInteractions = newValue => maxInteractions(newValue, scope)\n\n scope.autoStart = {\n // Allow this many interactions to happen simultaneously\n maxInteractions: Infinity,\n withinInteractionLimit,\n cursorElement: null,\n }\n}\n\nfunction prepareOnDown ({ interaction, pointer, event, eventTarget }: Interact.SignalArgs['interactions:down'], scope: Interact.Scope) {\n if (interaction.interacting()) { return }\n\n const actionInfo = getActionInfo(interaction, pointer, event, eventTarget, scope)\n prepare(interaction, actionInfo, scope)\n}\n\nfunction prepareOnMove ({ interaction, pointer, event, eventTarget }: Interact.SignalArgs['interactions:move'], scope: Interact.Scope) {\n if (interaction.pointerType !== 'mouse' ||\n interaction.pointerIsDown ||\n interaction.interacting()) { return }\n\n const actionInfo = getActionInfo(interaction, pointer, event, eventTarget as Interact.Element, scope)\n prepare(interaction, actionInfo, scope)\n}\n\nfunction startOnMove (arg: Interact.SignalArgs['interactions:move'], scope: Interact.Scope) {\n const { interaction } = arg\n\n if (!interaction.pointerIsDown ||\n interaction.interacting() ||\n !interaction.pointerWasMoved ||\n !interaction.prepared.name) {\n return\n }\n\n scope.fire('autoStart:before-start', arg)\n\n const { interactable } = interaction\n const actionName: Interact.ActionName = interaction.prepared.name\n\n if (actionName && interactable) {\n // check manualStart and interaction limit\n if (interactable.options[actionName].manualStart ||\n !withinInteractionLimit(interactable, interaction.element, interaction.prepared, scope)) {\n interaction.stop()\n }\n else {\n interaction.start(interaction.prepared, interactable, interaction.element)\n setInteractionCursor(interaction, scope)\n }\n }\n}\n\nfunction clearCursorOnStop ({ interaction }: { interaction: Interact.Interaction }, scope: Interact.Scope) {\n const { interactable } = interaction\n\n if (interactable && interactable.options.styleCursor) {\n setCursor(interaction.element, '', scope)\n }\n}\n\n// Check if the current interactable supports the action.\n// If so, return the validated action. Otherwise, return null\nfunction validateAction<T extends Interact.ActionName> (\n action: Interact.ActionProps<T>,\n interactable: Interact.Interactable,\n element: Interact.Element,\n eventTarget: Interact.EventTarget,\n scope: Interact.Scope,\n) {\n if (interactable.testIgnoreAllow(interactable.options[action.name], element, eventTarget) &&\n interactable.options[action.name].enabled &&\n withinInteractionLimit(interactable, element, action, scope)) {\n return action\n }\n\n return null\n}\n\nfunction validateMatches (\n interaction: Interact.Interaction,\n pointer: Interact.PointerType,\n event: Interact.PointerEventType,\n matches: Interact.Interactable[],\n matchElements: Interact.Element[],\n eventTarget: Interact.EventTarget,\n scope: Interact.Scope,\n) {\n for (let i = 0, len = matches.length; i < len; i++) {\n const match = matches[i]\n const matchElement = matchElements[i]\n const matchAction = match.getAction(pointer, event, interaction, matchElement)\n\n if (!matchAction) { continue }\n\n const action = validateAction(\n matchAction,\n match,\n matchElement,\n eventTarget,\n scope)\n\n if (action) {\n return {\n action,\n interactable: match,\n element: matchElement,\n }\n }\n }\n\n return { action: null, interactable: null, element: null }\n}\n\nfunction getActionInfo (\n interaction: Interact.Interaction,\n pointer: Interact.PointerType,\n event: Interact.PointerEventType,\n eventTarget: Interact.EventTarget,\n scope: Interact.Scope,\n) {\n let matches: Interact.Interactable[] = []\n let matchElements: Interact.Element[] = []\n\n let element = eventTarget as Interact.Element\n\n function pushMatches (interactable: Interact.Interactable) {\n matches.push(interactable)\n matchElements.push(element)\n }\n\n while (utils.is.element(element)) {\n matches = []\n matchElements = []\n\n scope.interactables.forEachMatch(element, pushMatches)\n\n const actionInfo = validateMatches(interaction, pointer, event, matches, matchElements, eventTarget, scope)\n\n if (actionInfo.action &&\n !actionInfo.interactable.options[actionInfo.action.name].manualStart) {\n return actionInfo\n }\n\n element = utils.dom.parentNode(element) as Interact.Element\n }\n\n return { action: null, interactable: null, element: null }\n}\n\nfunction prepare (\n interaction: Interact.Interaction,\n { action, interactable, element }: {\n action: Interact.ActionProps\n interactable: Interact.Interactable\n element: Interact.Element\n },\n scope: Interact.Scope,\n) {\n action = action || { name: null }\n\n interaction.interactable = interactable\n interaction.element = element\n utils.copyAction(interaction.prepared, action)\n\n interaction.rect = interactable && action.name\n ? interactable.getRect(element)\n : null\n\n setInteractionCursor(interaction, scope)\n\n scope.fire('autoStart:prepared', { interaction })\n}\n\nfunction withinInteractionLimit<T extends Interact.ActionName> (\n interactable: Interact.Interactable,\n element: Interact.Element,\n action: Interact.ActionProps<T>,\n scope: Interact.Scope,\n) {\n const options = interactable.options\n const maxActions = options[action.name].max\n const maxPerElement = options[action.name].maxPerElement\n const autoStartMax = scope.autoStart.maxInteractions\n let activeInteractions = 0\n let interactableCount = 0\n let elementCount = 0\n\n // no actions if any of these values == 0\n if (!(maxActions && maxPerElement && autoStartMax)) { return false }\n\n for (const interaction of scope.interactions.list) {\n const otherAction = interaction.prepared.name\n\n if (!interaction.interacting()) { continue }\n\n activeInteractions++\n\n if (activeInteractions >= autoStartMax) {\n return false\n }\n\n if (interaction.interactable !== interactable) { continue }\n\n interactableCount += otherAction === action.name ? 1 : 0\n\n if (interactableCount >= maxActions) {\n return false\n }\n\n if (interaction.element === element) {\n elementCount++\n\n if (otherAction === action.name && elementCount >= maxPerElement) {\n return false\n }\n }\n }\n\n return autoStartMax > 0\n}\n\nfunction maxInteractions (newValue: any, scope: Interact.Scope) {\n if (utils.is.number(newValue)) {\n scope.autoStart.maxInteractions = newValue\n\n return this\n }\n\n return scope.autoStart.maxInteractions\n}\n\nfunction setCursor (element: Interact.Element, cursor: string, scope: Interact.Scope) {\n const { cursorElement: prevCursorElement } = scope.autoStart\n\n if (prevCursorElement && prevCursorElement !== element) {\n prevCursorElement.style.cursor = ''\n }\n\n element.ownerDocument.documentElement.style.cursor = cursor\n element.style.cursor = cursor\n scope.autoStart.cursorElement = cursor ? element : null\n}\n\nfunction setInteractionCursor<T extends Interact.ActionName> (interaction: Interact.Interaction<T>, scope: Interact.Scope) {\n const { interactable, element, prepared } = interaction\n\n if (!(interaction.pointerType === 'mouse' && interactable && interactable.options.styleCursor)) {\n // clear previous target element cursor\n if (scope.autoStart.cursorElement) {\n setCursor(scope.autoStart.cursorElement, '', scope)\n }\n\n return\n }\n\n let cursor = ''\n\n if (prepared.name) {\n const cursorChecker: Interact.CursorChecker = interactable.options[prepared.name].cursorChecker\n\n if (utils.is.func(cursorChecker)) {\n cursor = cursorChecker(prepared, interactable, element, interaction._interacting)\n }\n else {\n cursor = scope.actions[prepared.name].getCursor(prepared)\n }\n }\n\n setCursor(interaction.element, cursor || '', scope)\n}\n\nconst autoStart: Interact.Plugin = {\n id: 'auto-start/base',\n before: ['actions', 'action/drag', 'actions/resize', 'actions/gesture'],\n install,\n listeners: {\n 'interactions:down': prepareOnDown,\n 'interactions:move': (arg, scope) => {\n prepareOnMove(arg, scope)\n startOnMove(arg, scope)\n },\n 'interactions:stop': clearCursorOnStop,\n },\n maxInteractions,\n withinInteractionLimit,\n validateAction,\n} as Interact.Plugin\n\nexport default autoStart\n","import { ActionName } from '@interactjs/core/scope'\nimport { parentNode } from '@interactjs/utils/domUtils'\nimport * as is from '@interactjs/utils/is'\nimport autoStart from './base'\n\nfunction beforeStart ({ interaction, eventTarget, dx, dy }: Interact.SignalArgs['interactions:move'], scope: Interact.Scope) {\n if (interaction.prepared.name !== 'drag') { return }\n\n // check if a drag is in the correct axis\n const absX = Math.abs(dx)\n const absY = Math.abs(dy)\n const targetOptions = interaction.interactable.options.drag\n const startAxis = targetOptions.startAxis\n const currentAxis = (absX > absY ? 'x' : absX < absY ? 'y' : 'xy')\n\n interaction.prepared.axis = targetOptions.lockAxis === 'start'\n ? currentAxis[0] as 'x' | 'y' // always lock to one axis even if currentAxis === 'xy'\n : targetOptions.lockAxis\n\n // if the movement isn't in the startAxis of the interactable\n if (currentAxis !== 'xy' && startAxis !== 'xy' && startAxis !== currentAxis) {\n // cancel the prepared action\n interaction.prepared.name = null\n\n // then try to get a drag from another ineractable\n let element = eventTarget as Interact.Element\n\n const getDraggable = function (interactable: Interact.Interactable): Interact.Interactable | void {\n if (interactable === interaction.interactable) { return }\n\n const options = interaction.interactable.options.drag\n\n if (!options.manualStart &&\n interactable.testIgnoreAllow(options, element, eventTarget)) {\n const action = interactable.getAction(\n interaction.downPointer, interaction.downEvent, interaction, element)\n\n if (action &&\n action.name === ActionName.Drag &&\n checkStartAxis(currentAxis, interactable) &&\n autoStart.validateAction(action, interactable, element, eventTarget, scope)) {\n return interactable\n }\n }\n }\n\n // check all interactables\n while (is.element(element)) {\n const interactable = scope.interactables.forEachMatch(element, getDraggable)\n\n if (interactable) {\n interaction.prepared.name = ActionName.Drag\n interaction.interactable = interactable\n interaction.element = element\n break\n }\n\n element = parentNode(element) as Interact.Element\n }\n }\n}\n\nfunction checkStartAxis (startAxis: string, interactable: Interact.Interactable) {\n if (!interactable) { return false }\n\n const thisAxis = interactable.options[ActionName.Drag].startAxis\n\n return (startAxis === 'xy' || thisAxis === 'xy' || thisAxis === startAxis)\n}\n\nexport default {\n id: 'auto-start/dragAxis',\n listeners: { 'autoStart:before-start': beforeStart },\n}\n","import basePlugin from './base'\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface PerActionDefaults {\n hold?: number\n delay?: number\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n autoStartHoldTimer?: any\n }\n}\n\nfunction install (scope: Interact.Scope) {\n const {\n defaults,\n } = scope\n\n scope.usePlugin(basePlugin)\n\n defaults.perAction.hold = 0\n defaults.perAction.delay = 0\n}\n\nfunction getHoldDuration (interaction) {\n const actionName = interaction.prepared && interaction.prepared.name\n\n if (!actionName) { return null }\n\n const options = interaction.interactable.options\n\n return options[actionName].hold || options[actionName].delay\n}\n\nexport default {\n id: 'auto-start/hold',\n install,\n listeners: {\n 'interactions:new': ({ interaction }) => {\n interaction.autoStartHoldTimer = null\n },\n\n 'autoStart:prepared': ({ interaction }) => {\n const hold = getHoldDuration(interaction)\n\n if (hold > 0) {\n interaction.autoStartHoldTimer = setTimeout(() => {\n interaction.start(interaction.prepared, interaction.interactable, interaction.element)\n }, hold)\n }\n },\n\n 'interactions:move': ({ interaction, duplicate }) => {\n if (interaction.pointerWasMoved && !duplicate) {\n clearTimeout(interaction.autoStartHoldTimer)\n }\n },\n\n // prevent regular down->move autoStart\n 'autoStart:before-start': ({ interaction }) => {\n const hold = getHoldDuration(interaction)\n\n if (hold > 0) {\n interaction.prepared.name = null\n }\n },\n },\n getHoldDuration,\n}\n","import autoStart from './base'\nimport dragAxis from './dragAxis'\nimport hold from './hold'\n\nfunction install (scope) {\n scope.usePlugin(autoStart)\n scope.usePlugin(hold)\n scope.usePlugin(dragAxis)\n}\n\nconst id = 'auto-start'\n\nexport {\n id,\n install,\n autoStart,\n hold,\n dragAxis,\n}\n","import { matchesSelector, nodeContains } from '@interactjs/utils/domUtils'\nimport events from '@interactjs/utils/events'\nimport * as is from '@interactjs/utils/is'\nimport { getWindow } from '@interactjs/utils/window'\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n preventDefault: typeof preventDefault\n checkAndPreventDefault: (event: Event) => void\n }\n}\n\nfunction preventDefault (this: Interact.Interactable, newValue?: 'always' | 'never' | 'auto') {\n if (/^(always|never|auto)$/.test(newValue)) {\n this.options.preventDefault = newValue\n return this\n }\n\n if (is.bool(newValue)) {\n this.options.preventDefault = newValue ? 'always' : 'never'\n return this\n }\n\n return this.options.preventDefault\n}\n\nfunction checkAndPreventDefault (interactable: Interact.Interactable, scope: Interact.Scope, event: Event) {\n const setting = interactable.options.preventDefault\n\n if (setting === 'never') { return }\n\n if (setting === 'always') {\n event.preventDefault()\n return\n }\n\n // setting === 'auto'\n\n // if the browser supports passive event listeners and isn't running on iOS,\n // don't preventDefault of touch{start,move} events. CSS touch-action and\n // user-select should be used instead of calling event.preventDefault().\n if (events.supportsPassive && /^touch(start|move)$/.test(event.type)) {\n const doc = getWindow(event.target).document\n const docOptions = scope.getDocOptions(doc)\n\n if (!(docOptions && docOptions.events) || docOptions.events.passive !== false) {\n return\n }\n }\n\n // don't preventDefault of pointerdown events\n if (/^(mouse|pointer|touch)*(down|start)/i.test(event.type)) {\n return\n }\n\n // don't preventDefault on editable elements\n if (is.element(event.target) &&\n matchesSelector(event.target, 'input,select,textarea,[contenteditable=true],[contenteditable=true] *')) {\n return\n }\n\n event.preventDefault()\n}\n\nfunction onInteractionEvent ({ interaction, event }: { interaction: Interact.Interaction, event: Interact.PointerEventType }) {\n if (interaction.interactable) {\n interaction.interactable.checkAndPreventDefault(event as Event)\n }\n}\n\nexport function install (scope: Interact.Scope) {\n /** @lends Interactable */\n const { Interactable } = scope\n\n /**\n * Returns or sets whether to prevent the browser's default behaviour in\n * response to pointer events. Can be set to:\n * - `'always'` to always prevent\n * - `'never'` to never prevent\n * - `'auto'` to let interact.js try to determine what would be best\n *\n * @param {string} [newValue] `'always'`, `'never'` or `'auto'`\n * @return {string | Interactable} The current setting or this Interactable\n */\n Interactable.prototype.preventDefault = preventDefault\n\n Interactable.prototype.checkAndPreventDefault = function (event) {\n return checkAndPreventDefault(this, scope, event)\n }\n\n // prevent native HTML5 drag on interact.js target elements\n scope.interactions.docEvents.push({\n type: 'dragstart',\n listener (event) {\n for (const interaction of scope.interactions.list) {\n if (interaction.element &&\n (interaction.element === event.target ||\n nodeContains(interaction.element, event.target))) {\n interaction.interactable.checkAndPreventDefault(event)\n return\n }\n }\n },\n })\n}\n\nexport default {\n id: 'core/interactablePreventDefault',\n install,\n listeners: ['down', 'move', 'up', 'cancel'].reduce((acc, eventType) => {\n acc[`interactions:${eventType}`] = onInteractionEvent\n return acc\n }, {} as any),\n}\n","/* eslint-disable no-console */\n/* global process */\nimport domObjects from '@interactjs/utils/domObjects'\nimport { parentNode } from '@interactjs/utils/domUtils'\nimport extend from '@interactjs/utils/extend'\nimport * as is from '@interactjs/utils/is'\nimport win from '@interactjs/utils/window'\n\ndeclare module '@interactjs/core/scope' {\n interface Scope {\n logger: Logger\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface BaseDefaults {\n devTools?: DevToolsOptions\n }\n}\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n devTools?: Interact.OptionMethod<DevToolsOptions>\n }\n}\n\nexport interface DevToolsOptions {\n ignore: { [P in keyof typeof CheckName]?: boolean }\n}\n\nexport interface Logger {\n warn: (...args: any[]) => void\n error: (...args: any[]) => void\n log: (...args: any[]) => void\n}\n\nexport interface Check {\n name: CheckName\n text: string\n perform: (interaction: Interact.Interaction) => boolean\n getInfo: (interaction: Interact.Interaction) => any[]\n}\n\nenum CheckName {\n touchAction = 'touchAction',\n boxSizing = 'boxSizing',\n noListeners = 'noListeners',\n}\n\nconst prefix = '[interact.js] '\nconst links = {\n touchAction: 'https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action',\n boxSizing: 'https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing',\n}\n\nconst isProduction = process.env.NODE_ENV === 'production'\n\n// eslint-disable-next-line no-restricted-syntax\nfunction install (scope: Interact.Scope, { logger }: { logger?: Logger } = {}) {\n const {\n Interactable,\n defaults,\n } = scope\n\n scope.logger = logger || console\n\n defaults.base.devTools = {\n ignore: {},\n }\n\n Interactable.prototype.devTools = function (options?: object) {\n if (options) {\n extend(this.options.devTools, options)\n return this\n }\n\n return this.options.devTools\n }\n}\n\nconst checks: Check[] = [\n {\n name: CheckName.touchAction,\n perform ({ element }) {\n return !parentHasStyle(element, 'touchAction', /pan-|pinch|none/)\n },\n getInfo ({ element }) {\n return [\n element,\n links.touchAction,\n ]\n },\n text: 'Consider adding CSS \"touch-action: none\" to this element\\n',\n },\n\n {\n name: CheckName.boxSizing,\n perform (interaction) {\n const { element } = interaction\n\n return interaction.prepared.name === 'resize' &&\n element instanceof domObjects.HTMLElement &&\n !hasStyle(element, 'boxSizing', /border-box/)\n },\n text: 'Consider adding CSS \"box-sizing: border-box\" to this resizable element',\n getInfo ({ element }) {\n return [\n element,\n links.boxSizing,\n ]\n },\n },\n\n {\n name: CheckName.noListeners,\n perform (interaction) {\n const actionName = interaction.prepared.name\n const moveListeners = interaction.interactable.events.types[`${actionName}move`] || []\n\n return !moveListeners.length\n },\n getInfo (interaction) {\n return [\n interaction.prepared.name,\n interaction.interactable,\n ]\n },\n text: 'There are no listeners set for this action',\n },\n]\n\nfunction hasStyle (element: HTMLElement, prop: keyof CSSStyleDeclaration, styleRe: RegExp) {\n return styleRe.test(element.style[prop] || win.window.getComputedStyle(element)[prop])\n}\n\nfunction parentHasStyle (element: Interact.Element, prop: keyof CSSStyleDeclaration, styleRe: RegExp) {\n let parent = element as HTMLElement\n\n while (is.element(parent)) {\n if (hasStyle(parent, prop, styleRe)) {\n return true\n }\n\n parent = parentNode(parent) as HTMLElement\n }\n\n return false\n}\n\nconst id = 'dev-tools'\nconst defaultExport: Interact.Plugin = isProduction\n ? { id, install: () => {} }\n : {\n id,\n install,\n listeners: {\n 'interactions:action-start': ({ interaction }, scope) => {\n for (const check of checks) {\n const options = interaction.interactable && interaction.interactable.options\n\n if (\n !(options && options.devTools && options.devTools.ignore[check.name]) &&\n check.perform(interaction)\n ) {\n scope.logger.warn(prefix + check.text, ...check.getInfo(interaction))\n }\n }\n },\n },\n checks,\n CheckName,\n links,\n prefix,\n }\n\nexport default defaultExport\n","import extend from '@interactjs/utils/extend'\nimport * as rectUtils from '@interactjs/utils/rect'\n\ndeclare module '@interactjs/core/scope' {\n interface Scope {\n modifiers?: any\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n modifiers?: {\n states: ModifierState[]\n startOffset: Interact.Rect\n startDelta: Interact.Point\n result?: ModifiersResult\n endResult: Interact.Point | void\n }\n }\n}\n\ndeclare module '@interactjs/core/InteractEvent' {\n interface InteractEvent {\n modifiers?: Array<{\n name: string\n [key: string]: any\n }>\n }\n}\ndeclare module '@interactjs/core/defaultOptions' {\n interface PerActionDefaults {\n modifiers?: Modifier[]\n }\n}\n\nexport interface Modifier<\n Defaults = any,\n State extends ModifierState = any,\n Name extends string = any\n> {\n options?: Defaults\n methods: {\n start?: (arg: ModifierArg<State>) => void\n set: (arg: ModifierArg<State>) => void\n beforeEnd?: (arg: ModifierArg<State>) => Interact.Point | void\n stop?: (arg: ModifierArg<State>) => void\n }\n name?: Name\n}\n\nexport type ModifierState<\n Defaults = {},\n StateProps extends { [prop: string]: any } = {},\n Name extends string = any\n> = {\n options: Defaults\n methods?: Modifier<Defaults>['methods']\n index?: number\n name?: Name\n result?: object\n} & StateProps\n\nexport interface ModifierArg<State extends ModifierState = ModifierState> {\n interaction: Interact.Interaction\n interactable: Interact.Interactable\n phase: Interact.EventPhase\n rect: Interact.FullRect\n edges: Interact.EdgeOptions\n states?: State[]\n state?: State\n element: Interact.Element\n pageCoords?: Interact.Point\n prevCoords?: Interact.Point\n prevRect?: Interact.FullRect\n coords?: Interact.Point\n startOffset?: Interact.Rect\n preEnd?: boolean\n requireEndOnly?: boolean\n}\n\nexport interface ModifierModule<\n Defaults extends { enabled?: boolean },\n State extends ModifierState,\n> {\n defaults?: Defaults\n start? (arg: ModifierArg<State>): void\n set? (arg: ModifierArg<State>): any\n beforeEnd? (arg: ModifierArg<State>): Interact.Point | void\n stop? (arg: ModifierArg<State>): void\n}\n\nexport interface ModifiersResult {\n delta: {\n x: number\n y: number\n }\n rectDelta: {\n left: number\n right: number\n top: number\n bottom: number\n }\n coords: Interact.Point\n rect: Interact.FullRect\n eventProps: any[]\n changed: boolean\n}\n\nfunction start (\n { interaction, phase }: { interaction: Interact.Interaction, phase: Interact.EventPhase },\n pageCoords: Interact.Point,\n prevCoords: Interact.Point,\n prevRect: Interact.FullRect,\n) {\n const { interactable, element, edges } = interaction\n const modifierList = getModifierList(interaction)\n const states = prepareStates(modifierList)\n\n const rect = extend({} as { [key: string]: any }, interaction.rect)\n const startOffset = getRectOffset(rect, pageCoords)\n\n interaction.modifiers.startOffset = startOffset\n interaction.modifiers.startDelta = { x: 0, y: 0 }\n\n const arg: ModifierArg<any> = {\n interaction,\n interactable,\n element,\n pageCoords,\n phase,\n rect,\n edges,\n startOffset,\n states,\n preEnd: false,\n requireEndOnly: false,\n prevCoords,\n prevRect,\n }\n\n interaction.modifiers.states = states\n interaction.modifiers.result = null\n startAll(arg)\n\n const result = interaction.modifiers.result = setAll(arg)\n\n return result\n}\n\nexport function startAll (arg: ModifierArg<any>) {\n const states: ModifierState[] = arg.states\n\n for (const state of states) {\n if (state.methods.start) {\n arg.state = state\n state.methods.start(arg)\n }\n }\n\n arg.interaction.edges = arg.edges\n}\n\nexport function setAll (arg: ModifierArg): ModifiersResult {\n const {\n prevCoords,\n prevRect,\n phase,\n preEnd,\n requireEndOnly,\n states,\n rect,\n } = arg\n\n arg.coords = extend({}, arg.pageCoords)\n arg.rect = extend({}, rect)\n\n const result = {\n delta: { x: 0, y: 0 },\n rectDelta: {\n left : 0,\n right : 0,\n top : 0,\n bottom: 0,\n },\n coords: arg.coords,\n rect: arg.rect,\n eventProps: [],\n changed: true,\n }\n\n const edges = arg.edges || { left: true, right: true, top: true, bottom: true }\n\n for (const state of states) {\n const { options } = state\n const lastModifierCoords = extend({}, arg.coords)\n let returnValue = null\n\n if (state.methods.set && shouldDo(options, preEnd, requireEndOnly, phase)) {\n arg.state = state\n returnValue = state.methods.set(arg)\n\n rectUtils.addEdges(edges, arg.rect, { x: arg.coords.x - lastModifierCoords.x, y: arg.coords.y - lastModifierCoords.y })\n }\n\n result.eventProps.push(returnValue)\n }\n\n result.delta.x = arg.coords.x - arg.pageCoords.x\n result.delta.y = arg.coords.y - arg.pageCoords.y\n\n result.rectDelta.left = arg.rect.left - rect.left\n result.rectDelta.right = arg.rect.right - rect.right\n result.rectDelta.top = arg.rect.top - rect.top\n result.rectDelta.bottom = arg.rect.bottom - rect.bottom\n\n const rectChanged = !prevRect || result.rect.left !== prevRect.left ||\n result.rect.right !== prevRect.right ||\n result.rect.top !== prevRect.top ||\n result.rect.bottom !== prevRect.bottom\n\n result.changed = !prevCoords || prevCoords.x !== result.coords.x ||\n prevCoords.y !== result.coords.y ||\n rectChanged\n\n return result\n}\n\nfunction beforeMove (arg: Partial<Interact.DoPhaseArg> & {\n interaction: Interact.Interaction\n phase: Interact.EventPhase\n preEnd?: boolean\n skipModifiers?: number\n prevCoords?: Interact.Point\n prevRect?: Interact.FullRect\n modifiedCoords?: Interact.Point\n}): void | false {\n const { interaction, phase, preEnd, skipModifiers } = arg\n const { interactable, element } = interaction\n\n const states = skipModifiers\n ? interaction.modifiers.states.slice(skipModifiers)\n : interaction.modifiers.states\n const prevCoords = arg.prevCoords || (interaction.modifiers.result\n ? interaction.modifiers.result.coords\n : null)\n const prevRect = arg.prevRect || (interaction.modifiers.result\n ? interaction.modifiers.result.rect\n : null)\n\n const modifierResult = setAll({\n interaction,\n interactable,\n element,\n preEnd,\n phase,\n pageCoords: arg.modifiedCoords || interaction.coords.cur.page,\n prevCoords,\n rect: interaction.rect,\n edges: interaction.edges,\n prevRect,\n states,\n requireEndOnly: false,\n })\n\n interaction.modifiers.result = modifierResult\n\n // don't fire an action move if a modifier would keep the event in the same\n // cordinates as before\n if (!modifierResult.changed && interaction.interacting()) {\n return false\n }\n\n if (arg.modifiedCoords) {\n const { page } = interaction.coords.cur\n const adjustment = {\n x: arg.modifiedCoords.x - page.x,\n y: arg.modifiedCoords.y - page.y,\n }\n\n modifierResult.coords.x += adjustment.x\n modifierResult.coords.y += adjustment.y\n modifierResult.delta.x += adjustment.x\n modifierResult.delta.y += adjustment.y\n }\n setCoords(arg)\n}\n\nfunction beforeEnd (arg: Interact.DoPhaseArg & { noPreEnd?: boolean, state?: ModifierState }): void | false {\n const { interaction, event, noPreEnd } = arg\n const states = interaction.modifiers.states\n\n if (noPreEnd || !states || !states.length) {\n return\n }\n\n let didPreEnd = false\n\n for (const state of states) {\n arg.state = state\n const { options, methods } = state\n\n const endPosition = methods.beforeEnd && methods.beforeEnd(arg as unknown as ModifierArg)\n\n if (endPosition) {\n interaction.modifiers.endResult = endPosition\n return false\n }\n\n // if the endOnly option is true for any modifier\n if (!didPreEnd && shouldDo(options, true, true)) {\n // fire a move event at the modified coordinates\n interaction.move({ event, preEnd: true })\n didPreEnd = true\n }\n }\n}\n\nfunction stop (arg: { interaction: Interact.Interaction, phase: Interact.EventPhase }) {\n const { interaction } = arg\n const states = interaction.modifiers.states\n\n if (!states || !states.length) {\n return\n }\n\n const modifierArg: ModifierArg = extend({\n states,\n interactable: interaction.interactable,\n element: interaction.element,\n rect: null,\n }, arg as any)\n\n for (const state of states) {\n modifierArg.state = state\n\n if (state.methods.stop) { state.methods.stop(modifierArg) }\n }\n\n arg.interaction.modifiers.states = null\n arg.interaction.modifiers.endResult = null\n}\n\nfunction getModifierList (interaction) {\n const actionOptions = interaction.interactable.options[interaction.prepared.name]\n const actionModifiers = actionOptions.modifiers\n\n if (actionModifiers && actionModifiers.length) {\n return actionModifiers.filter(\n modifier => !modifier.options || modifier.options.enabled !== false,\n )\n }\n\n return ['snap', 'snapSize', 'snapEdges', 'restrict', 'restrictEdges', 'restrictSize']\n .map(type => {\n const options = actionOptions[type]\n\n return options && options.enabled && {\n options,\n methods: options._methods,\n }\n })\n .filter(m => !!m)\n}\n\nexport function prepareStates (modifierList: Modifier[]) {\n const states: ModifierState[] = []\n\n for (let index = 0; index < modifierList.length; index++) {\n const { options, methods, name } = modifierList[index]\n\n if (options && options.enabled === false) { continue }\n\n states.push({\n options,\n methods,\n index,\n name,\n })\n }\n\n return states\n}\n\nexport function setCoords (arg: { interaction: Interact.Interaction, phase: Interact.EventPhase, rect?: Interact.Rect }) {\n const { interaction, phase } = arg\n const curCoords = interaction.coords.cur\n const startCoords = interaction.coords.start\n const { result, startDelta } = interaction.modifiers\n const curDelta = result.delta\n\n if (phase === 'start') {\n extend(interaction.modifiers.startDelta, result.delta)\n }\n\n for (const [coordsSet, delta] of [[startCoords, startDelta], [curCoords, curDelta]] as const) {\n coordsSet.page.x += delta.x\n coordsSet.page.y += delta.y\n coordsSet.client.x += delta.x\n coordsSet.client.y += delta.y\n }\n\n const { rectDelta } = interaction.modifiers.result\n const rect = arg.rect || interaction.rect\n\n rect.left += rectDelta.left\n rect.right += rectDelta.right\n rect.top += rectDelta.top\n rect.bottom += rectDelta.bottom\n\n rect.width = rect.right - rect.left\n rect.height = rect.bottom - rect.top\n}\n\nexport function restoreCoords ({ interaction: { coords, rect, modifiers } }: { interaction: Interact.Interaction }) {\n if (!modifiers.result) { return }\n\n const { startDelta } = modifiers\n const { delta: curDelta, rectDelta } = modifiers.result\n\n const coordsAndDeltas = [\n [coords.start, startDelta],\n [coords.cur, curDelta],\n ]\n\n for (const [coordsSet, delta] of coordsAndDeltas as any) {\n coordsSet.page.x -= delta.x\n coordsSet.page.y -= delta.y\n coordsSet.client.x -= delta.x\n coordsSet.client.y -= delta.y\n }\n\n rect.left -= rectDelta.left\n rect.right -= rectDelta.right\n rect.top -= rectDelta.top\n rect.bottom -= rectDelta.bottom\n}\n\nfunction shouldDo (options, preEnd?: boolean, requireEndOnly?: boolean, phase?: string) {\n return options\n ? options.enabled !== false &&\n (preEnd || !options.endOnly) &&\n (!requireEndOnly || options.endOnly || options.alwaysOnEnd) &&\n (options.setStart || phase !== 'start')\n : !requireEndOnly\n}\n\nfunction getRectOffset (rect, coords) {\n return rect\n ? {\n left : coords.x - rect.left,\n top : coords.y - rect.top,\n right : rect.right - coords.x,\n bottom: rect.bottom - coords.y,\n }\n : {\n left : 0,\n top : 0,\n right : 0,\n bottom: 0,\n }\n}\n\nexport function makeModifier<\n Defaults extends { enabled?: boolean },\n State extends ModifierState,\n Name extends string\n> (\n module: ModifierModule<Defaults, State>,\n name?: Name,\n) {\n const { defaults } = module\n const methods = {\n start: module.start,\n set: module.set,\n beforeEnd: module.beforeEnd,\n stop: module.stop,\n }\n\n const modifier = (_options?: Partial<Defaults>) => {\n const options: Defaults = (_options || {}) as Defaults\n\n options.enabled = options.enabled !== false\n\n // add missing defaults to options\n for (const prop in defaults) {\n if (!(prop in options)) {\n options[prop] = defaults[prop]\n }\n }\n\n const m: Modifier<Defaults, State, Name> = { options, methods, name }\n\n return m\n }\n\n if (name && typeof name === 'string') {\n // for backwrads compatibility\n modifier._defaults = defaults\n modifier._methods = methods\n }\n\n return modifier\n}\n\nfunction addEventModifiers ({ iEvent, interaction: { modifiers: { result } } }: {\n iEvent: Interact.InteractEvent\n interaction: Interact.Interaction\n}) {\n if (result) {\n iEvent.modifiers = result.eventProps\n }\n}\n\nconst modifiersBase: Interact.Plugin = {\n id: 'modifiers/base',\n install: scope => {\n scope.defaults.perAction.modifiers = []\n },\n listeners: {\n 'interactions:new': ({ interaction }) => {\n interaction.modifiers = {\n startOffset: { left: 0, right: 0, top: 0, bottom: 0 },\n states: null,\n result: null,\n endResult: null,\n startDelta: null,\n }\n },\n\n 'interactions:before-action-start': arg => {\n start(arg, arg.interaction.coords.start.page, null, null)\n setCoords(arg)\n },\n 'interactions:after-action-start': restoreCoords,\n 'interactions:before-action-move': beforeMove,\n 'interactions:after-action-move': restoreCoords,\n\n 'interactions:action-resume': arg => {\n const { coords: prevCoords, rect: prevRect } = arg.interaction.modifiers.result\n\n stop(arg)\n start(arg, arg.interaction.coords.cur.page, prevCoords, prevRect)\n beforeMove(arg)\n },\n\n 'interactions:before-action-end': beforeEnd,\n 'interactions:action-start': addEventModifiers,\n 'interactions:action-move': addEventModifiers,\n 'interactions:action-end': addEventModifiers,\n 'interactions:stop': stop,\n },\n before: ['actions', 'action/drag', 'actions/resize', 'actions/gesture'],\n startAll,\n setAll,\n prepareStates,\n start,\n beforeMove,\n beforeEnd,\n stop,\n shouldDo,\n getModifierList,\n getRectOffset,\n makeModifier,\n}\n\nexport default modifiersBase\n","import { EventPhase } from '@interactjs/core/InteractEvent'\nimport modifiers, { ModifierArg, restoreCoords, setCoords } from '@interactjs/modifiers/base'\nimport * as utils from '@interactjs/utils/index'\nimport raf from '@interactjs/utils/raf'\n\ndeclare module '@interactjs/core/InteractEvent' {\n // eslint-disable-next-line no-shadow\n enum EventPhase {\n Resume = 'resume',\n InertiaStart = 'inertiastart',\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n inertia?: {\n active: boolean\n smoothEnd: boolean\n allowResume: boolean\n\n startEvent?: Interact.InteractEvent\n upCoords: {\n page: Interact.Point\n client: Interact.Point\n timeStamp: number\n }\n\n xe?: number\n ye?: number\n sx?: number\n sy?: number\n\n t0?: number\n te?: number\n v0?: number\n vx0?: number\n vy0?: number\n duration?: number\n modifiedXe?: number\n modifiedYe?: number\n\n lambda_v0?: number // eslint-disable-line camelcase\n one_ve_v0?: number // eslint-disable-line camelcase\n timeout: any\n }\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface PerActionDefaults {\n inertia?: {\n enabled?: boolean\n resistance?: number // the lambda in exponential decay\n minSpeed?: number // target speed must be above this for inertia to start\n endSpeed?: number // the speed at which inertia is slow enough to stop\n allowResume?: true // allow resuming an action in inertia phase\n smoothEndDuration?: number // animate to snap/restrict endOnly if there's no inertia\n }\n }\n}\n\ndeclare module '@interactjs/core/scope' {\n interface SignalArgs {\n 'interactions:action-resume': {\n interaction: Interact.Interaction\n phase: EventPhase.Resume\n }\n }\n}\n\n(EventPhase as any).Resume = 'resume'\n;(EventPhase as any).InertiaStart = 'inertiastart'\n\nfunction install (scope: Interact.Scope) {\n const {\n defaults,\n } = scope\n\n scope.usePlugin(modifiers)\n\n defaults.perAction.inertia = {\n enabled : false,\n resistance : 10, // the lambda in exponential decay\n minSpeed : 100, // target speed must be above this for inertia to start\n endSpeed : 10, // the speed at which inertia is slow enough to stop\n allowResume : true, // allow resuming an action in inertia phase\n smoothEndDuration: 300, // animate to snap/restrict endOnly if there's no inertia\n }\n}\n\nfunction resume (\n { interaction, event, pointer, eventTarget }: Interact.SignalArgs['interactions:down'],\n scope: Interact.Scope,\n) {\n const state = interaction.inertia\n\n // Check if the down event hits the current inertia target\n if (state.active) {\n let element = eventTarget as Node\n\n // climb up the DOM tree from the event target\n while (utils.is.element(element)) {\n // if interaction element is the current inertia target element\n if (element === interaction.element) {\n // stop inertia\n raf.cancel(state.timeout)\n state.active = false\n interaction.simulation = null\n\n // update pointers to the down event's coordinates\n interaction.updatePointer(pointer as Interact.PointerType, event as Interact.PointerEventType, eventTarget, true)\n utils.pointer.setCoords(\n interaction.coords.cur,\n interaction.pointers.map(p => p.pointer),\n interaction._now(),\n )\n\n // fire appropriate signals\n const signalArg = {\n interaction,\n phase: EventPhase.Resume as const,\n }\n\n scope.fire('interactions:action-resume', signalArg)\n\n // fire a reume event\n const resumeEvent = new scope.InteractEvent(\n interaction, event as Interact.PointerEventType, interaction.prepared.name, EventPhase.Resume, interaction.element)\n\n interaction._fireEvent(resumeEvent)\n\n utils.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur)\n break\n }\n\n element = utils.dom.parentNode(element)\n }\n }\n}\n\nfunction release<T extends Interact.ActionName> (\n { interaction, event, noPreEnd }: Interact.DoPhaseArg & { noPreEnd?: boolean },\n scope: Interact.Scope,\n) {\n const state = interaction.inertia\n\n if (!interaction.interacting() ||\n (interaction.simulation && interaction.simulation.active) ||\n noPreEnd) {\n return null\n }\n\n const options = getOptions(interaction)\n\n const now = interaction._now()\n const { client: velocityClient } = interaction.coords.velocity\n const pointerSpeed = utils.hypot(velocityClient.x, velocityClient.y)\n\n let smoothEnd = false\n let modifierResult: ReturnType<typeof modifiers.setAll>\n\n // check if inertia should be started\n const inertiaPossible = (options && options.enabled &&\n interaction.prepared.name !== 'gesture' &&\n event !== state.startEvent)\n\n const inertia = (inertiaPossible &&\n (now - interaction.coords.cur.timeStamp) < 50 &&\n pointerSpeed > options.minSpeed &&\n pointerSpeed > options.endSpeed)\n\n const modifierArg: ModifierArg = {\n interaction,\n interactable: interaction.interactable,\n element: interaction.element,\n rect: interaction.rect,\n edges: interaction.edges,\n pageCoords: interaction.coords.cur.page,\n states: inertiaPossible && interaction.modifiers.states.map(\n modifierState => utils.extend({}, modifierState),\n ),\n preEnd: true,\n prevCoords: null,\n prevRect: null,\n requireEndOnly: null,\n phase: EventPhase.InertiaStart,\n }\n\n // smoothEnd\n if (inertiaPossible && !inertia) {\n modifierArg.prevCoords = interaction.modifiers.result.coords\n modifierArg.prevRect = interaction.modifiers.result.rect\n modifierArg.requireEndOnly = false\n modifierResult = modifiers.setAll(modifierArg)\n\n smoothEnd = modifierResult.changed\n }\n\n if (!(inertia || smoothEnd)) { return null }\n\n utils.pointer.copyCoords(state.upCoords, interaction.coords.cur)\n\n setCoords(modifierArg)\n interaction.pointers[0].pointer = state.startEvent = new scope.InteractEvent(\n interaction,\n event,\n // FIXME add proper typing Action.name\n interaction.prepared.name as T,\n EventPhase.InertiaStart,\n interaction.element,\n )\n restoreCoords(modifierArg)\n\n state.t0 = now\n\n state.active = true\n state.allowResume = options.allowResume\n interaction.simulation = state\n\n interaction.interactable.fire(state.startEvent)\n\n if (inertia) {\n state.vx0 = interaction.coords.velocity.client.x\n state.vy0 = interaction.coords.velocity.client.y\n state.v0 = pointerSpeed\n\n calcInertia(interaction, state)\n\n utils.extend(modifierArg.pageCoords, interaction.coords.cur.page)\n\n modifierArg.pageCoords.x += state.xe\n modifierArg.pageCoords.y += state.ye\n modifierArg.prevCoords = null\n modifierArg.prevRect = null\n modifierArg.requireEndOnly = true\n\n modifierResult = modifiers.setAll(modifierArg)\n\n state.modifiedXe += modifierResult.delta.x\n state.modifiedYe += modifierResult.delta.y\n\n state.timeout = raf.request(() => inertiaTick(interaction))\n }\n else {\n state.smoothEnd = true\n state.xe = modifierResult.delta.x\n state.ye = modifierResult.delta.y\n\n state.sx = state.sy = 0\n\n state.timeout = raf.request(() => smothEndTick(interaction))\n }\n\n return false\n}\n\nfunction stop ({ interaction }: Interact.DoPhaseArg) {\n const state = interaction.inertia\n if (state.active) {\n raf.cancel(state.timeout)\n state.active = false\n interaction.simulation = null\n }\n}\n\nfunction calcInertia (interaction: Interact.Interaction, state) {\n const options = getOptions(interaction)\n const lambda = options.resistance\n const inertiaDur = -Math.log(options.endSpeed / state.v0) / lambda\n\n state.x0 = interaction.prevEvent.page.x\n state.y0 = interaction.prevEvent.page.y\n state.t0 = state.startEvent.timeStamp / 1000\n state.sx = state.sy = 0\n\n state.modifiedXe = state.xe = (state.vx0 - inertiaDur) / lambda\n state.modifiedYe = state.ye = (state.vy0 - inertiaDur) / lambda\n state.te = inertiaDur\n\n state.lambda_v0 = lambda / state.v0\n state.one_ve_v0 = 1 - options.endSpeed / state.v0\n}\n\nfunction inertiaTick (interaction: Interact.Interaction) {\n updateInertiaCoords(interaction)\n utils.pointer.setCoordDeltas(interaction.coords.delta, interaction.coords.prev, interaction.coords.cur)\n utils.pointer.setCoordVelocity(interaction.coords.velocity, interaction.coords.delta)\n\n const state = interaction.inertia\n const options = getOptions(interaction)\n const lambda = options.resistance\n const t = interaction._now() / 1000 - state.t0\n\n if (t < state.te) {\n const progress = 1 - (Math.exp(-lambda * t) - state.lambda_v0) / state.one_ve_v0\n\n if (state.modifiedXe === state.xe && state.modifiedYe === state.ye) {\n state.sx = state.xe * progress\n state.sy = state.ye * progress\n }\n else {\n const quadPoint = utils.getQuadraticCurvePoint(\n 0, 0,\n state.xe, state.ye,\n state.modifiedXe, state.modifiedYe,\n progress)\n\n state.sx = quadPoint.x\n state.sy = quadPoint.y\n }\n\n interaction.move({ event: state.startEvent })\n\n state.timeout = raf.request(() => inertiaTick(interaction))\n }\n else {\n state.sx = state.modifiedXe\n state.sy = state.modifiedYe\n\n interaction.move({ event: state.startEvent })\n interaction.end(state.startEvent)\n state.active = false\n interaction.simulation = null\n }\n\n utils.pointer.copyCoords(interaction.coords.prev, interaction.coords.cur)\n}\n\nfunction smothEndTick (interaction: Interact.Interaction) {\n updateInertiaCoords(interaction)\n\n const state = interaction.inertia\n const t = interaction._now() - state.t0\n const { smoothEndDuration: duration } = getOptions(interaction)\n\n if (t < duration) {\n state.sx = utils.easeOutQuad(t, 0, state.xe, duration)\n state.sy = utils.easeOutQuad(t, 0, state.ye, duration)\n\n interaction.move({ event: state.startEvent })\n\n state.timeout = raf.request(() => smothEndTick(interaction))\n }\n else {\n state.sx = state.xe\n state.sy = state.ye\n\n interaction.move({ event: state.startEvent })\n interaction.end(state.startEvent)\n\n state.smoothEnd =\n state.active = false\n interaction.simulation = null\n }\n}\n\nfunction updateInertiaCoords (interaction: Interact.Interaction) {\n const state = interaction.inertia\n\n // return if inertia isn't running\n if (!state.active) { return }\n\n const pageUp = state.upCoords.page\n const clientUp = state.upCoords.client\n\n utils.pointer.setCoords(interaction.coords.cur, [{\n pageX : pageUp.x + state.sx,\n pageY : pageUp.y + state.sy,\n clientX: clientUp.x + state.sx,\n clientY: clientUp.y + state.sy,\n }], interaction._now())\n}\n\nfunction getOptions ({ interactable, prepared }: Interact.Interaction) {\n return interactable &&\n interactable.options &&\n prepared.name &&\n interactable.options[prepared.name].inertia\n}\n\nconst inertia: Interact.Plugin = {\n id: 'inertia',\n install,\n listeners: {\n 'interactions:new': ({ interaction }) => {\n interaction.inertia = {\n active : false,\n smoothEnd : false,\n allowResume: false,\n upCoords : {} as any,\n timeout : null,\n }\n },\n\n 'interactions:before-action-end': release,\n 'interactions:down': resume,\n 'interactions:stop': stop,\n },\n before: ['modifiers/base'],\n calcInertia,\n inertiaTick,\n smothEndTick,\n updateInertiaCoords,\n}\n\nexport default inertia\n","/* eslint-disable */\n\n/**\n * @module modifiers/aspectRatio\n *\n * @description\n * This module forces elements to be resized with a specified dx/dy ratio.\n *\n * @example\n * interact(target).resizable({\n * modifiers: [\n * interact.modifiers.snapSize({\n * targets: [ interact.createSnapGrid({ x: 20, y: 20 }) ],\n * }),\n * interact.aspectRatio({ ratio: 'preserve' }),\n * ],\n * });\n */\n\nimport extend from '@interactjs/utils/extend'\nimport { addEdges } from '@interactjs/utils/rect'\nimport modifiersBase, { Modifier, ModifierModule, ModifierState, setAll, startAll } from './base'\n\nexport interface AspectRatioOptions {\n ratio?: number | 'preserve'\n equalDelta?: boolean\n modifiers?: Modifier[]\n enabled?: boolean\n}\n\nexport type AspectRatioState = ModifierState<AspectRatioOptions, {\n startCoords: Interact.Point\n startRect: Interact.Rect\n linkedEdges: Interact.EdgeOptions\n ratio: number\n equalDelta: boolean\n xIsPrimaryAxis: boolean\n edgeSign: 1 | -1\n subStates: ModifierState[]\n}>\n\nconst aspectRatio: ModifierModule<AspectRatioOptions, AspectRatioState> = {\n start (arg) {\n const { state, rect, edges: originalEdges, pageCoords: coords } = arg\n let { ratio } = state.options\n const { equalDelta, modifiers } = state.options\n\n if (ratio === 'preserve') {\n ratio = rect.width / rect.height\n }\n\n state.startCoords = extend({}, coords)\n state.startRect = extend({}, rect)\n state.ratio = ratio\n state.equalDelta = equalDelta\n\n const linkedEdges = state.linkedEdges = {\n top : originalEdges.top || (originalEdges.left && !originalEdges.bottom),\n left : originalEdges.left || (originalEdges.top && !originalEdges.right),\n bottom: originalEdges.bottom || (originalEdges.right && !originalEdges.top),\n right : originalEdges.right || (originalEdges.bottom && !originalEdges.left),\n }\n\n state.xIsPrimaryAxis = !!(originalEdges.left || originalEdges.right)\n\n if (state.equalDelta) {\n state.edgeSign = (linkedEdges.left ? 1 : -1) * (linkedEdges.top ? 1 : -1) as 1 | -1\n }\n else {\n const negativeSecondaryEdge = state.xIsPrimaryAxis ? linkedEdges.top : linkedEdges.left\n state.edgeSign = negativeSecondaryEdge ? -1 : 1\n }\n\n extend(arg.edges, linkedEdges)\n\n if (!modifiers || !modifiers.length) { return }\n\n state.subStates = modifiersBase.prepareStates(modifiers).map(subState => {\n subState.options = {\n ...subState.options,\n }\n\n return subState\n })\n\n return startAll({\n ...arg,\n states: state.subStates,\n })\n },\n\n set (arg) {\n const { state, rect, coords } = arg\n const initialCoords = extend({}, coords)\n const aspectMethod = state.equalDelta ? setEqualDelta : setRatio\n\n aspectMethod(state, state.xIsPrimaryAxis, coords, rect)\n\n if (!state.subStates) { return null }\n\n const correctedRect = extend({}, rect)\n\n addEdges(state.linkedEdges, correctedRect, { x: coords.x - initialCoords.x, y: coords.y - initialCoords.y })\n\n const result = setAll({\n ...arg,\n rect: correctedRect,\n edges: state.linkedEdges,\n pageCoords: coords,\n states: state.subStates,\n prevCoords: coords,\n prevRect: correctedRect,\n })\n\n const { delta } = result\n\n if (result.changed) {\n const xIsCriticalAxis = Math.abs(delta.x) > Math.abs(delta.y)\n\n // do aspect modification again with critical edge axis as primary\n aspectMethod(state, xIsCriticalAxis, result.coords, result.rect)\n extend(coords, result.coords)\n }\n\n return result.eventProps\n },\n\n defaults: {\n ratio: 'preserve',\n equalDelta: false,\n modifiers: [],\n enabled: false,\n },\n}\n\nfunction setEqualDelta ({ startCoords, edgeSign }: AspectRatioState, xIsPrimaryAxis: boolean, coords: Interact.Point) {\n if (xIsPrimaryAxis) {\n coords.y = startCoords.y + (coords.x - startCoords.x) * edgeSign\n }\n else {\n coords.x = startCoords.x + (coords.y - startCoords.y) * edgeSign\n }\n}\n\nfunction setRatio ({ startRect, startCoords, ratio, edgeSign }: AspectRatioState, xIsPrimaryAxis: boolean, coords: Interact.Point, rect: Interact.Rect) {\n if (xIsPrimaryAxis) {\n const newHeight = rect.width / ratio\n\n coords.y = startCoords.y + (newHeight - startRect.height) * edgeSign\n }\n else {\n const newWidth = rect.height * ratio\n\n coords.x = startCoords.x + (newWidth - startRect.width) * edgeSign\n }\n}\n\nexport default aspectRatio\n","import extend from '@interactjs/utils/extend'\nimport * as is from '@interactjs/utils/is'\nimport * as rectUtils from '@interactjs/utils/rect'\nimport { ModifierArg, ModifierModule, ModifierState } from '../base'\n\nexport interface RestrictOptions {\n // where to drag over\n restriction: Interact.RectResolvable<[number, number, Interact.Interaction]>\n // what part of self is allowed to drag over\n elementRect: Interact.Rect\n offset: Interact.Rect\n // restrict just before the end drag\n endOnly: boolean\n enabled?: boolean\n}\n\nexport type RestrictState = ModifierState<RestrictOptions, {\n offset: Interact.Rect\n}>\n\nfunction start ({ rect, startOffset, state, interaction, pageCoords }: ModifierArg<RestrictState>) {\n const { options } = state\n const { elementRect } = options\n const offset: Interact.Rect = extend({\n left: 0,\n top: 0,\n right: 0,\n bottom: 0,\n }, options.offset || {})\n\n if (rect && elementRect) {\n const restriction = getRestrictionRect(options.restriction, interaction, pageCoords)\n\n if (restriction) {\n const widthDiff = (restriction.right - restriction.left) - rect.width\n const heightDiff = (restriction.bottom - restriction.top) - rect.height\n\n if (widthDiff < 0) {\n offset.left += widthDiff\n offset.right += widthDiff\n }\n if (heightDiff < 0) {\n offset.top += heightDiff\n offset.bottom += heightDiff\n }\n }\n\n offset.left += startOffset.left - (rect.width * elementRect.left)\n offset.top += startOffset.top - (rect.height * elementRect.top)\n\n offset.right += startOffset.right - (rect.width * (1 - elementRect.right))\n offset.bottom += startOffset.bottom - (rect.height * (1 - elementRect.bottom))\n }\n\n state.offset = offset\n}\n\nfunction set ({ coords, interaction, state }: ModifierArg<RestrictState>) {\n const { options, offset } = state\n\n const restriction = getRestrictionRect(options.restriction, interaction, coords)\n\n if (!restriction) { return }\n\n const rect = rectUtils.xywhToTlbr(restriction)\n\n coords.x = Math.max(Math.min(rect.right - offset.right, coords.x), rect.left + offset.left)\n coords.y = Math.max(Math.min(rect.bottom - offset.bottom, coords.y), rect.top + offset.top)\n}\n\nexport function getRestrictionRect (\n value: Interact.RectResolvable<[number, number, Interact.Interaction]>,\n interaction: Interact.Interaction,\n coords?: Interact.Point,\n) {\n if (is.func(value)) {\n return rectUtils.resolveRectLike(value, interaction.interactable, interaction.element, [coords.x, coords.y, interaction])\n } else {\n return rectUtils.resolveRectLike(value, interaction.interactable, interaction.element)\n }\n}\n\nconst defaults: RestrictOptions = {\n restriction: null,\n elementRect: null,\n offset: null,\n endOnly: false,\n enabled: false,\n}\n\nconst restrict: ModifierModule<RestrictOptions, RestrictState> = {\n start,\n set,\n defaults,\n}\n\nexport default restrict\n","// This module adds the options.resize.restrictEdges setting which sets min and\n// max for the top, left, bottom and right edges of the target being resized.\n//\n// interact(target).resize({\n// edges: { top: true, left: true },\n// restrictEdges: {\n// inner: { top: 200, left: 200, right: 400, bottom: 400 },\n// outer: { top: 0, left: 0, right: 600, bottom: 600 },\n// },\n// })\n\nimport extend from '@interactjs/utils/extend'\nimport * as rectUtils from '@interactjs/utils/rect'\nimport { ModifierArg, ModifierState } from '../base'\nimport { getRestrictionRect, RestrictOptions } from './pointer'\n\nexport interface RestrictEdgesOptions {\n inner: RestrictOptions['restriction']\n outer: RestrictOptions['restriction']\n offset?: RestrictOptions['offset']\n endOnly: boolean\n enabled?: boolean\n}\n\nexport type RestrictEdgesState = ModifierState<RestrictEdgesOptions, {\n inner: Interact.Rect\n outer: Interact.Rect\n offset: RestrictEdgesOptions['offset']\n}>\n\nconst noInner = { top: +Infinity, left: +Infinity, bottom: -Infinity, right: -Infinity }\nconst noOuter = { top: -Infinity, left: -Infinity, bottom: +Infinity, right: +Infinity }\n\nfunction start ({ interaction, startOffset, state }: ModifierArg<RestrictEdgesState>) {\n const { options } = state\n let offset\n\n if (options) {\n const offsetRect = getRestrictionRect(options.offset, interaction, interaction.coords.start.page)\n\n offset = rectUtils.rectToXY(offsetRect)\n }\n\n offset = offset || { x: 0, y: 0 }\n\n state.offset = {\n top: offset.y + startOffset.top,\n left: offset.x + startOffset.left,\n bottom: offset.y - startOffset.bottom,\n right: offset.x - startOffset.right,\n }\n}\n\nfunction set ({ coords, edges, interaction, state }: ModifierArg<RestrictEdgesState>) {\n const { offset, options } = state\n\n if (!edges) {\n return\n }\n\n const page = extend({}, coords)\n const inner = getRestrictionRect(options.inner, interaction, page) || {} as Interact.Rect\n const outer = getRestrictionRect(options.outer, interaction, page) || {} as Interact.Rect\n\n fixRect(inner, noInner)\n fixRect(outer, noOuter)\n\n if (edges.top) {\n coords.y = Math.min(Math.max(outer.top + offset.top, page.y), inner.top + offset.top)\n }\n else if (edges.bottom) {\n coords.y = Math.max(Math.min(outer.bottom + offset.bottom, page.y), inner.bottom + offset.bottom)\n }\n if (edges.left) {\n coords.x = Math.min(Math.max(outer.left + offset.left, page.x), inner.left + offset.left)\n }\n else if (edges.right) {\n coords.x = Math.max(Math.min(outer.right + offset.right, page.x), inner.right + offset.right)\n }\n}\n\nfunction fixRect (rect, defaults) {\n for (const edge of ['top', 'left', 'bottom', 'right']) {\n if (!(edge in rect)) {\n rect[edge] = defaults[edge]\n }\n }\n\n return rect\n}\n\nconst defaults: RestrictEdgesOptions = {\n inner: null,\n outer: null,\n offset: null,\n endOnly: false,\n enabled: false,\n}\n\nconst restrictEdges = {\n noInner,\n noOuter,\n start,\n set,\n defaults,\n}\n\nexport default restrictEdges\n","import extend from '../../utils/extend'\nimport restrictPointer from './pointer'\n\nconst defaults = extend({\n get elementRect () {\n return { top: 0, left: 0, bottom: 1, right: 1 }\n },\n set elementRect (_) {},\n}, restrictPointer.defaults)\n\nconst restrictRect = {\n start: restrictPointer.start,\n set: restrictPointer.set,\n defaults,\n}\n\nexport default restrictRect\n","import extend from '@interactjs/utils/extend'\nimport * as rectUtils from '@interactjs/utils/rect'\nimport { ModifierArg, ModifierState } from '../base'\nimport restrictEdges, { RestrictEdgesState } from './edges'\nimport { getRestrictionRect, RestrictOptions } from './pointer'\n\nconst noMin = { width: -Infinity, height: -Infinity }\nconst noMax = { width: +Infinity, height: +Infinity }\n\nexport interface RestrictSizeOptions {\n min?: Interact.Size | Interact.Point | RestrictOptions['restriction']\n max?: Interact.Size | Interact.Point | RestrictOptions['restriction']\n endOnly: boolean\n enabled?: boolean\n}\n\nfunction start (arg: ModifierArg<RestrictEdgesState>) {\n return restrictEdges.start(arg)\n}\n\nexport type RestrictSizeState =\n RestrictEdgesState & ModifierState<RestrictSizeOptions & { inner: Interact.Rect, outer: Interact.Rect }, {\n min: Interact.Rect\n max: Interact.Rect\n }>\n\nfunction set (arg: ModifierArg<RestrictSizeState>) {\n const { interaction, state, rect, edges } = arg\n const { options } = state\n\n if (!edges) {\n return\n }\n\n const minSize = rectUtils.tlbrToXywh(getRestrictionRect(options.min as any, interaction, arg.coords)) || noMin\n const maxSize = rectUtils.tlbrToXywh(getRestrictionRect(options.max as any, interaction, arg.coords)) || noMax\n\n state.options = {\n endOnly: options.endOnly,\n inner: extend({}, restrictEdges.noInner),\n outer: extend({}, restrictEdges.noOuter),\n }\n\n if (edges.top) {\n state.options.inner.top = rect.bottom - minSize.height\n state.options.outer.top = rect.bottom - maxSize.height\n }\n else if (edges.bottom) {\n state.options.inner.bottom = rect.top + minSize.height\n state.options.outer.bottom = rect.top + maxSize.height\n }\n if (edges.left) {\n state.options.inner.left = rect.right - minSize.width\n state.options.outer.left = rect.right - maxSize.width\n }\n else if (edges.right) {\n state.options.inner.right = rect.left + minSize.width\n state.options.outer.right = rect.left + maxSize.width\n }\n\n restrictEdges.set(arg)\n\n state.options = options\n}\n\nconst defaults: RestrictSizeOptions = {\n min: null,\n max: null,\n endOnly: false,\n enabled: false,\n}\n\nconst restrictSize = {\n start,\n set,\n defaults,\n}\n\nexport default restrictSize\n","import * as utils from '@interactjs/utils/index'\nimport { ModifierArg, ModifierState } from '../base'\n\nexport interface Offset {\n x: number\n y: number\n index: number\n relativePoint?: Interact.Point\n}\n\nexport interface SnapPosition {\n x?: number\n y?: number\n range?: number\n offset?: Offset\n [index: string]: any\n}\n\nexport type SnapFunction = (\n x: number,\n y: number,\n interaction: Interact.Interaction,\n offset: Offset,\n index: number\n) => SnapPosition\nexport type SnapTarget = SnapPosition | SnapFunction\nexport interface SnapOptions {\n targets: SnapTarget[]\n // target range\n range: number\n // self points for snapping. [0,0] = top left, [1,1] = bottom right\n relativePoints: Interact.Point[]\n // startCoords = offset snapping from drag start page position\n offset: Interact.Point | Interact.RectResolvable<[Interact.Interaction]> | 'startCoords'\n offsetWithOrigin?: boolean\n origin: Interact.RectResolvable<[Interact.Element]> | Interact.Point\n endOnly?: boolean\n enabled?: boolean\n}\n\nexport type SnapState = ModifierState<SnapOptions, {\n offsets?: Offset[]\n closest?: any\n targetFields?: string[][]\n}>\n\nfunction start (arg: ModifierArg<SnapState>) {\n const { interaction, interactable, element, rect, state, startOffset } = arg\n const { options } = state\n const origin = options.offsetWithOrigin\n ? getOrigin(arg)\n : { x: 0, y: 0 }\n\n let snapOffset: Interact.Point\n\n if (options.offset === 'startCoords') {\n snapOffset = {\n x: interaction.coords.start.page.x,\n y: interaction.coords.start.page.y,\n }\n }\n else {\n const offsetRect = utils.rect.resolveRectLike(options.offset as any, interactable, element, [interaction])\n\n snapOffset = utils.rect.rectToXY(offsetRect) || { x: 0, y: 0 }\n snapOffset.x += origin.x\n snapOffset.y += origin.y\n }\n\n const { relativePoints } = options\n\n state.offsets = rect && relativePoints && relativePoints.length\n ? relativePoints.map((relativePoint, index) => ({\n index,\n relativePoint,\n x: startOffset.left - (rect.width * relativePoint.x) + snapOffset.x,\n y: startOffset.top - (rect.height * relativePoint.y) + snapOffset.y,\n }))\n : [utils.extend({\n index: 0,\n relativePoint: null,\n }, snapOffset)]\n}\n\nfunction set (arg: ModifierArg<SnapState>) {\n const { interaction, coords, state } = arg\n const { options, offsets } = state\n\n const origin = utils.getOriginXY(interaction.interactable, interaction.element, interaction.prepared.name)\n const page = utils.extend({}, coords)\n const targets = []\n\n if (!options.offsetWithOrigin) {\n page.x -= origin.x\n page.y -= origin.y\n }\n\n for (const offset of offsets) {\n const relativeX = page.x - offset.x\n const relativeY = page.y - offset.y\n\n for (let index = 0, len = options.targets.length; index < len; index++) {\n const snapTarget = options.targets[index]\n let target\n\n if (utils.is.func(snapTarget)) {\n target = snapTarget(relativeX, relativeY, interaction, offset, index)\n }\n else {\n target = snapTarget\n }\n\n if (!target) { continue }\n\n targets.push({\n x: (utils.is.number(target.x) ? target.x : relativeX) + offset.x,\n y: (utils.is.number(target.y) ? target.y : relativeY) + offset.y,\n\n range: utils.is.number(target.range) ? target.range : options.range,\n source: snapTarget,\n index,\n offset,\n })\n }\n }\n\n const closest = {\n target: null,\n inRange: false,\n distance: 0,\n range: 0,\n delta: { x: 0, y: 0 },\n }\n\n for (const target of targets) {\n const range = target.range\n const dx = target.x - page.x\n const dy = target.y - page.y\n const distance = utils.hypot(dx, dy)\n let inRange = distance <= range\n\n // Infinite targets count as being out of range\n // compared to non infinite ones that are in range\n if (range === Infinity && closest.inRange && closest.range !== Infinity) {\n inRange = false\n }\n\n if (!closest.target || (inRange\n // is the closest target in range?\n ? (closest.inRange && range !== Infinity\n // the pointer is relatively deeper in this target\n ? distance / range < closest.distance / closest.range\n // this target has Infinite range and the closest doesn't\n : (range === Infinity && closest.range !== Infinity) ||\n // OR this target is closer that the previous closest\n distance < closest.distance)\n // The other is not in range and the pointer is closer to this target\n : (!closest.inRange && distance < closest.distance))) {\n closest.target = target\n closest.distance = distance\n closest.range = range\n closest.inRange = inRange\n closest.delta.x = dx\n closest.delta.y = dy\n }\n }\n\n if (closest.inRange) {\n coords.x = closest.target.x\n coords.y = closest.target.y\n }\n\n state.closest = closest\n return closest\n}\n\nfunction getOrigin (arg: Partial<ModifierArg<SnapState>>) {\n const { element } = arg.interaction\n const optionsOrigin = utils.rect.rectToXY(\n utils.rect.resolveRectLike(arg.state.options.origin as any, null, null, [element]),\n )\n const origin = optionsOrigin || utils.getOriginXY(\n arg.interactable,\n element,\n arg.interaction.prepared.name,\n )\n\n return origin\n}\n\nconst defaults: SnapOptions = {\n range : Infinity,\n targets: null,\n offset: null,\n offsetWithOrigin: true,\n origin: null,\n relativePoints: null,\n endOnly: false,\n enabled: false,\n}\nconst snap = {\n start,\n set,\n defaults,\n}\n\nexport default snap\n","// This module allows snapping of the size of targets during resize\n// interactions.\n\nimport extend from '@interactjs/utils/extend'\nimport * as is from '@interactjs/utils/is'\nimport { ModifierArg } from '../base'\nimport snap, { SnapOptions, SnapState } from './pointer'\n\nexport type SnapSizeOptions = Pick<\nSnapOptions,\n'targets' | 'offset' | 'endOnly' | 'range' | 'enabled'\n>\n\nfunction start (arg: ModifierArg<SnapState>) {\n const { state, edges } = arg\n const { options } = state\n\n if (!edges) { return null }\n\n arg.state = {\n options: {\n targets: null,\n relativePoints: [{\n x: edges.left ? 0 : 1,\n y: edges.top ? 0 : 1,\n }],\n offset: options.offset || 'self',\n origin: { x: 0, y: 0 },\n range: options.range,\n },\n }\n\n state.targetFields = state.targetFields || [\n ['width', 'height'],\n ['x', 'y'],\n ]\n\n snap.start(arg)\n state.offsets = arg.state.offsets\n\n arg.state = state\n}\n\nfunction set (arg) {\n const { interaction, state, coords } = arg\n const { options, offsets } = state\n const relative = {\n x: coords.x - offsets[0].x,\n y: coords.y - offsets[0].y,\n }\n\n state.options = extend({}, options)\n state.options.targets = []\n\n for (const snapTarget of (options.targets || [])) {\n let target\n\n if (is.func(snapTarget)) {\n target = snapTarget(relative.x, relative.y, interaction)\n }\n else {\n target = snapTarget\n }\n\n if (!target) { continue }\n\n for (const [xField, yField] of state.targetFields) {\n if (xField in target || yField in target) {\n target.x = target[xField]\n target.y = target[yField]\n\n break\n }\n }\n\n state.options.targets.push(target)\n }\n\n const returnValue = snap.set(arg)\n\n state.options = options\n\n return returnValue\n}\n\nconst defaults: SnapSizeOptions = {\n range: Infinity,\n targets: null,\n offset: null,\n endOnly: false,\n enabled: false,\n}\n\nconst snapSize = {\n start,\n set,\n defaults,\n}\n\nexport default snapSize\n","/**\n * @module modifiers/snapEdges\n *\n * @description\n * This module allows snapping of the edges of targets during resize\n * interactions.\n *\n * @example\n * interact(target).resizable({\n * snapEdges: {\n * targets: [interact.snappers.grid({ x: 100, y: 50 })],\n * },\n * })\n *\n * interact(target).resizable({\n * snapEdges: {\n * targets: [\n * interact.snappers.grid({\n * top: 50,\n * left: 50,\n * bottom: 100,\n * right: 100,\n * }),\n * ],\n * },\n * })\n */\n\nimport clone from '@interactjs/utils/clone'\nimport extend from '@interactjs/utils/extend'\nimport { ModifierArg, ModifierModule } from '../base'\nimport { SnapOptions, SnapState } from './pointer'\nimport snapSize from './size'\n\nfunction start (arg: ModifierArg<SnapState>) {\n const { edges } = arg\n\n if (!edges) { return null }\n\n arg.state.targetFields = arg.state.targetFields || [\n [edges.left ? 'left' : 'right', edges.top ? 'top' : 'bottom'],\n ]\n\n return snapSize.start(arg)\n}\n\nconst snapEdges: ModifierModule<SnapOptions, SnapState> = {\n start,\n set: snapSize.set,\n defaults: extend(\n clone(snapSize.defaults),\n {\n offset: { x: 0, y: 0 },\n } as SnapOptions,\n ),\n}\n\nexport default snapEdges\n","import aspectRatioModule from './aspectRatio'\nimport base from './base'\nimport restrictEdgesModule from './restrict/edges'\nimport restrictModule from './restrict/pointer'\nimport restrictRectModule from './restrict/rect'\nimport restrictSizeModule from './restrict/size'\nimport snapEdgesModule from './snap/edges'\nimport snapModule from './snap/pointer'\nimport snapSizeModule from './snap/size'\n\nconst { makeModifier } = base\n\nexport const snap = makeModifier(snapModule, 'snap')\nexport const snapSize = makeModifier(snapSizeModule, 'snapSize')\nexport const snapEdges = makeModifier(snapEdgesModule, 'snapEdges')\nexport const restrict = makeModifier(restrictModule, 'restrict')\nexport const restrictRect = makeModifier(restrictRectModule, 'restrictRect')\nexport const restrictEdges = makeModifier(restrictEdgesModule, 'restrictEdges')\nexport const restrictSize = makeModifier(restrictSizeModule, 'restrictSize')\nexport const aspectRatio = makeModifier(aspectRatioModule, 'aspectRatio')\n","import BaseEvent from '../core/BaseEvent'\nimport * as pointerUtils from '../utils/pointerUtils'\n\nexport default class PointerEvent<T extends string = any> extends BaseEvent {\n type: T\n originalEvent: Interact.PointerEventType\n pointerId: number\n pointerType: string\n double: boolean\n pageX: number\n pageY: number\n clientX: number\n clientY: number\n dt: number\n eventable: any\n [key: string]: any\n\n /** */\n constructor (\n type: T,\n pointer: Interact.PointerType | PointerEvent<any>,\n event: Interact.PointerEventType,\n eventTarget: Interact.EventTarget,\n interaction: Interact.Interaction,\n timeStamp: number,\n ) {\n super(interaction)\n pointerUtils.pointerExtend(this, event)\n\n if (event !== pointer) {\n pointerUtils.pointerExtend(this, pointer)\n }\n\n this.timeStamp = timeStamp\n this.originalEvent = event\n this.type = type\n this.pointerId = pointerUtils.getPointerId(pointer)\n this.pointerType = pointerUtils.getPointerType(pointer)\n this.target = eventTarget\n this.currentTarget = null\n\n if (type === 'tap') {\n const pointerIndex = interaction.getPointerIndex(pointer)\n this.dt = this.timeStamp - interaction.pointers[pointerIndex].downTime\n\n const interval = this.timeStamp - interaction.tapTime\n\n this.double = !!(interaction.prevTap &&\n interaction.prevTap.type !== 'doubletap' &&\n interaction.prevTap.target === this.target &&\n interval < 500)\n }\n else if (type === 'doubletap') {\n this.dt = (pointer as PointerEvent<'tap'>).timeStamp - interaction.tapTime\n }\n }\n\n _subtractOrigin ({ x: originX, y: originY }: Interact.Point) {\n this.pageX -= originX\n this.pageY -= originY\n this.clientX -= originX\n this.clientY -= originY\n\n return this\n }\n\n _addOrigin ({ x: originX, y: originY }: Interact.Point) {\n this.pageX += originX\n this.pageY += originY\n this.clientX += originX\n this.clientY += originY\n\n return this\n }\n\n /**\n * Prevent the default behaviour of the original Event\n */\n preventDefault () {\n this.originalEvent.preventDefault()\n }\n}\n\nexport { PointerEvent }\n","import { PerActionDefaults } from '@interactjs/core/defaultOptions'\nimport Eventable from '@interactjs/core/Eventable'\nimport Interaction from '@interactjs/core/Interaction'\nimport { Scope } from '@interactjs/core/scope'\nimport * as utils from '@interactjs/utils/index'\nimport PointerEvent from './PointerEvent'\n\nexport type EventTargetList = Array<{\n node: Node\n eventable: Eventable\n props: { [key: string]: any }\n}>\n\nexport interface PointerEventOptions extends PerActionDefaults {\n enabled?: undefined // not used\n holdDuration?: number\n ignoreFrom?: any\n allowFrom?: any\n origin?: Interact.Point | string | Interact.Element\n}\n\ndeclare module '@interactjs/core/scope' {\n interface Scope {\n pointerEvents: typeof pointerEvents\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n prevTap?: PointerEvent<string>\n tapTime?: number\n }\n}\n\ndeclare module '@interactjs/core/PointerInfo' {\n interface PointerInfo {\n hold?: {\n duration: number\n timeout: any\n }\n }\n}\n\ndeclare module '@interactjs/core/defaultOptions' {\n interface ActionDefaults {\n pointerEvents: Interact.Options\n }\n}\n\ndeclare module '@interactjs/core/scope' {\n interface SignalArgs {\n 'pointerEvents:new': { pointerEvent: PointerEvent<any> }\n 'pointerEvents:fired': {\n interaction: Interaction\n pointer: Interact.PointerType | PointerEvent<any>\n event: Interact.PointerEventType | PointerEvent<any>\n eventTarget: Interact.EventTarget\n pointerEvent: PointerEvent<any>\n targets?: EventTargetList\n type: string\n }\n 'pointerEvents:collect-targets': {\n interaction: Interaction\n pointer: Interact.PointerType | PointerEvent<any>\n event: Interact.PointerEventType | PointerEvent<any>\n eventTarget: Interact.EventTarget\n targets?: EventTargetList\n type: string\n path: Node[]\n node: null\n }\n }\n}\n\nconst defaults: PointerEventOptions = {\n holdDuration: 600,\n ignoreFrom : null,\n allowFrom : null,\n origin : { x: 0, y: 0 },\n}\n\nconst pointerEvents = {\n id: 'pointer-events/base',\n install,\n listeners: {\n 'interactions:new': addInteractionProps,\n 'interactions:update-pointer': addHoldInfo,\n 'interactions:move': moveAndClearHold,\n 'interactions:down': (arg, scope) => {\n downAndStartHold(arg, scope)\n fire(arg, scope)\n },\n 'interactions:up': (arg, scope) => {\n clearHold(arg)\n fire(arg, scope)\n tapAfterUp(arg, scope)\n },\n 'interactions:cancel': (arg, scope) => {\n clearHold(arg)\n fire(arg, scope)\n },\n },\n PointerEvent,\n fire,\n collectEventTargets,\n defaults,\n types: [\n 'down',\n 'move',\n 'up',\n 'cancel',\n 'tap',\n 'doubletap',\n 'hold',\n ],\n}\n\nfunction fire<T extends string> (\n arg: {\n pointer: Interact.PointerType | PointerEvent<any>\n event: Interact.PointerEventType | PointerEvent<any>\n eventTarget: Interact.EventTarget\n interaction: Interaction\n type: T\n targets?: EventTargetList\n },\n scope: Interact.Scope,\n) {\n const {\n interaction,\n pointer,\n event,\n eventTarget,\n type,\n targets = collectEventTargets(arg, scope),\n } = arg\n\n const pointerEvent = new PointerEvent(type, pointer, event, eventTarget, interaction, scope.now())\n\n scope.fire('pointerEvents:new', { pointerEvent })\n\n const signalArg = {\n interaction,\n pointer,\n event,\n eventTarget,\n targets,\n type,\n pointerEvent,\n }\n\n for (let i = 0; i < targets.length; i++) {\n const target = targets[i]\n\n for (const prop in target.props || {}) {\n (pointerEvent as any)[prop] = target.props[prop]\n }\n\n const origin = utils.getOriginXY(target.eventable, target.node)\n\n pointerEvent._subtractOrigin(origin)\n pointerEvent.eventable = target.eventable\n pointerEvent.currentTarget = target.node\n\n target.eventable.fire(pointerEvent)\n\n pointerEvent._addOrigin(origin)\n\n if (pointerEvent.immediatePropagationStopped ||\n (pointerEvent.propagationStopped &&\n (i + 1) < targets.length && targets[i + 1].node !== pointerEvent.currentTarget)) {\n break\n }\n }\n\n scope.fire('pointerEvents:fired', signalArg)\n\n if (type === 'tap') {\n // if pointerEvent should make a double tap, create and fire a doubletap\n // PointerEvent and use that as the prevTap\n const prevTap = pointerEvent.double\n ? fire({\n interaction,\n pointer,\n event,\n eventTarget,\n type: 'doubletap',\n }, scope)\n : pointerEvent\n\n interaction.prevTap = prevTap\n interaction.tapTime = prevTap.timeStamp\n }\n\n return pointerEvent\n}\n\nfunction collectEventTargets<T extends string> ({ interaction, pointer, event, eventTarget, type }: {\n interaction: Interaction\n pointer: Interact.PointerType | PointerEvent<any>\n event: Interact.PointerEventType | PointerEvent<any>\n eventTarget: Interact.EventTarget\n type: T\n}, scope: Interact.Scope) {\n const pointerIndex = interaction.getPointerIndex(pointer)\n const pointerInfo = interaction.pointers[pointerIndex]\n\n // do not fire a tap event if the pointer was moved before being lifted\n if (type === 'tap' && (interaction.pointerWasMoved ||\n // or if the pointerup target is different to the pointerdown target\n !(pointerInfo && pointerInfo.downTarget === eventTarget))) {\n return []\n }\n\n const path = utils.dom.getPath(eventTarget as Interact.Element | Document)\n const signalArg = {\n interaction,\n pointer,\n event,\n eventTarget,\n type,\n path,\n targets: [] as EventTargetList,\n node: null,\n }\n\n for (const node of path) {\n signalArg.node = node\n\n scope.fire('pointerEvents:collect-targets', signalArg)\n }\n\n if (type === 'hold') {\n signalArg.targets = signalArg.targets.filter(target =>\n target.eventable.options.holdDuration === interaction.pointers[pointerIndex].hold.duration)\n }\n\n return signalArg.targets\n}\n\nfunction addInteractionProps ({ interaction }) {\n interaction.prevTap = null // the most recent tap event on this interaction\n interaction.tapTime = 0 // time of the most recent tap event\n}\n\nfunction addHoldInfo ({ down, pointerInfo }: Interact.SignalArgs['interactions:update-pointer']) {\n if (!down && pointerInfo.hold) {\n return\n }\n\n pointerInfo.hold = { duration: Infinity, timeout: null }\n}\n\nfunction clearHold ({ interaction, pointerIndex }) {\n if (interaction.pointers[pointerIndex].hold) {\n clearTimeout(interaction.pointers[pointerIndex].hold.timeout)\n }\n}\n\nfunction moveAndClearHold (\n { interaction, pointer, event, eventTarget, duplicate }: Interact.SignalArgs['interactions:move'],\n scope: Interact.Scope,\n) {\n const pointerIndex = interaction.getPointerIndex(pointer)\n\n if (!duplicate && (!interaction.pointerIsDown || interaction.pointerWasMoved)) {\n if (interaction.pointerIsDown) {\n clearTimeout(interaction.pointers[pointerIndex].hold.timeout)\n }\n\n fire({\n interaction,\n pointer,\n event,\n eventTarget: eventTarget as Interact.Element,\n type: 'move',\n }, scope)\n }\n}\n\nfunction downAndStartHold ({ interaction, pointer, event, eventTarget, pointerIndex }: Interact.SignalArgs['interactions:down'], scope: Interact.Scope) {\n const timer = interaction.pointers[pointerIndex].hold\n const path = utils.dom.getPath(eventTarget as Interact.Element | Document)\n const signalArg = {\n interaction,\n pointer,\n event,\n eventTarget,\n type: 'hold',\n targets: [] as EventTargetList,\n path,\n node: null,\n }\n\n for (const node of path) {\n signalArg.node = node\n\n scope.fire('pointerEvents:collect-targets', signalArg)\n }\n\n if (!signalArg.targets.length) { return }\n\n let minDuration = Infinity\n\n for (const target of signalArg.targets) {\n const holdDuration = target.eventable.options.holdDuration\n\n if (holdDuration < minDuration) {\n minDuration = holdDuration\n }\n }\n\n timer.duration = minDuration\n timer.timeout = setTimeout(() => {\n fire({\n interaction,\n eventTarget,\n pointer,\n event,\n type: 'hold',\n }, scope)\n }, minDuration)\n}\n\nfunction tapAfterUp ({ interaction, pointer, event, eventTarget }: Interact.SignalArgs['interactions:up'], scope: Interact.Scope) {\n if (!interaction.pointerWasMoved) {\n fire({ interaction, eventTarget, pointer, event, type: 'tap' }, scope)\n }\n}\n\nfunction install (scope: Scope) {\n scope.pointerEvents = pointerEvents\n scope.defaults.actions.pointerEvents = pointerEvents.defaults\n}\n\nexport default pointerEvents\n","import { ListenerMap } from '@interactjs/core/scope'\nimport basePlugin from './base'\nimport PointerEvent from './PointerEvent'\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n holdIntervalHandle?: any\n }\n}\n\ndeclare module '@interactjs/pointer-events/PointerEvent' {\n interface PointerEvent<T extends string = any> {\n count?: number\n }\n}\n\ndeclare module '@interactjs/pointer-events/base' {\n interface PointerEventOptions {\n holdRepeatInterval?: number\n }\n}\n\nfunction install (scope: Interact.Scope) {\n scope.usePlugin(basePlugin)\n\n const {\n pointerEvents,\n } = scope\n\n // don't repeat by default\n pointerEvents.defaults.holdRepeatInterval = 0\n pointerEvents.types.push('holdrepeat')\n}\n\nfunction onNew ({ pointerEvent }: { pointerEvent: PointerEvent<any> }) {\n if (pointerEvent.type !== 'hold') { return }\n\n pointerEvent.count = (pointerEvent.count || 0) + 1\n}\n\nfunction onFired (\n { interaction, pointerEvent, eventTarget, targets }: Interact.SignalArgs['pointerEvents:fired'],\n scope: Interact.Scope,\n) {\n if (pointerEvent.type !== 'hold' || !targets.length) { return }\n\n // get the repeat interval from the first eventable\n const interval = targets[0].eventable.options.holdRepeatInterval\n\n // don't repeat if the interval is 0 or less\n if (interval <= 0) { return }\n\n // set a timeout to fire the holdrepeat event\n interaction.holdIntervalHandle = setTimeout(() => {\n scope.pointerEvents.fire({\n interaction,\n eventTarget,\n type: 'hold',\n pointer: pointerEvent,\n event: pointerEvent,\n }, scope)\n }, interval)\n}\n\nfunction endHoldRepeat ({ interaction }: { interaction: Interact.Interaction }) {\n // set the interaction's holdStopTime property\n // to stop further holdRepeat events\n if (interaction.holdIntervalHandle) {\n clearInterval(interaction.holdIntervalHandle)\n interaction.holdIntervalHandle = null\n }\n}\n\nconst holdRepeat: Interact.Plugin = {\n id: 'pointer-events/holdRepeat',\n install,\n listeners: ['move', 'up', 'cancel', 'endall'].reduce(\n (acc, enderTypes) => {\n (acc as any)[`pointerEvents:${enderTypes}`] = endHoldRepeat\n return acc\n },\n {\n 'pointerEvents:new': onNew,\n 'pointerEvents:fired': onFired,\n } as ListenerMap,\n ),\n}\n\nexport default holdRepeat\n","import { Scope } from '@interactjs/core/scope'\nimport { merge } from '@interactjs/utils/arr'\nimport extend from '@interactjs/utils/extend'\n\ntype Interactable = import ('@interactjs/core/Interactable').default\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n pointerEvents: typeof pointerEventsMethod\n __backCompatOption: (optionName: string, newValue: any) => any\n }\n}\n\nfunction install (scope: Scope) {\n const {\n pointerEvents,\n actions,\n Interactable,\n } = scope\n\n merge(actions.eventTypes, pointerEvents.types)\n\n Interactable.prototype.pointerEvents = pointerEventsMethod\n\n const __backCompatOption = Interactable.prototype._backCompatOption\n\n Interactable.prototype._backCompatOption = function (optionName, newValue) {\n const ret = __backCompatOption.call(this, optionName, newValue)\n\n if (ret === this) {\n this.events.options[optionName] = newValue\n }\n\n return ret\n }\n}\n\nfunction pointerEventsMethod (this: Interact.Interactable, options: any) {\n extend(this.events.options, options)\n\n return this\n}\n\nconst plugin: Interact.Plugin = {\n id: 'pointer-events/interactableTargets',\n install,\n listeners: {\n 'pointerEvents:collect-targets': ({\n targets,\n node,\n type,\n eventTarget,\n }, scope) => {\n scope.interactables.forEachMatch(node, (interactable: Interactable) => {\n const eventable = interactable.events\n const options = eventable.options\n\n if (\n eventable.types[type] &&\n eventable.types[type].length &&\n interactable.testIgnoreAllow(options, node, eventTarget)) {\n targets.push({\n node,\n eventable,\n props: { interactable },\n })\n }\n })\n },\n\n 'interactable:new': ({ interactable }) => {\n interactable.events.getRect = function (element: Interact.Element) {\n return interactable.getRect(element)\n }\n },\n\n 'interactable:set': ({ interactable, options }, scope) => {\n extend(interactable.events.options, scope.pointerEvents.defaults)\n extend(interactable.events.options, options.pointerEvents || {})\n },\n },\n}\n\nexport default plugin\n","import * as pointerEvents from './base'\nimport holdRepeat from './holdRepeat'\nimport interactableTargets from './interactableTargets'\n\nfunction install (scope: Interact.Scope) {\n scope.usePlugin(pointerEvents)\n scope.usePlugin(holdRepeat)\n scope.usePlugin(interactableTargets)\n}\n\nconst id = 'pointer-events'\n\nexport { id, pointerEvents, holdRepeat, interactableTargets, install }\n","import Interactable from '@interactjs/core/Interactable'\nimport { EventPhase } from '@interactjs/core/InteractEvent'\nimport { ActionProps, Interaction } from '@interactjs/core/Interaction'\nimport { Scope } from '@interactjs/core/scope'\nimport { arr, extend, is, pointer as pointerUtils, rect as rectUtils, win } from '@interactjs/utils/index'\n\ndeclare module '@interactjs/core/Interactable' {\n interface Interactable {\n reflow: (action: ActionProps) => ReturnType<typeof reflow>\n }\n}\n\ndeclare module '@interactjs/core/Interaction' {\n interface Interaction {\n _reflowPromise: Promise<void>\n _reflowResolve: () => void\n }\n}\n\ndeclare module '@interactjs/core/InteractEvent' {\n // eslint-disable-next-line no-shadow\n enum EventPhase {\n Reflow = 'reflow',\n }\n}\n\n(EventPhase as any).Reflow = 'reflow'\n\nexport function install (scope: Scope) {\n const {\n actions,\n /** @lends Interactable */\n // eslint-disable-next-line no-shadow\n Interactable,\n } = scope\n\n // add action reflow event types\n for (const actionName of actions.names) {\n actions.eventTypes.push(`${actionName}reflow`)\n }\n\n /**\n * ```js\n * const interactable = interact(target)\n * const drag = { name: drag, axis: 'x' }\n * const resize = { name: resize, edges: { left: true, bottom: true }\n *\n * interactable.reflow(drag)\n * interactable.reflow(resize)\n * ```\n *\n * Start an action sequence to re-apply modifiers, check drops, etc.\n *\n * @param { Object } action The action to begin\n * @param { string } action.name The name of the action\n * @returns { Promise } A promise that resolves to the `Interactable` when actions on all targets have ended\n */\n Interactable.prototype.reflow = function (action) {\n return reflow(this, action, scope)\n }\n}\n\nfunction reflow (interactable: Interactable, action: ActionProps, scope: Scope): Promise<Interactable> {\n const elements = (is.string(interactable.target)\n ? arr.from(interactable._context.querySelectorAll(interactable.target))\n : [interactable.target]) as Interact.Element[]\n\n // tslint:disable-next-line variable-name\n const Promise = (win.window as any).Promise\n const promises: Array<Promise<null>> | null = Promise ? [] : null\n\n for (const element of elements) {\n const rect = interactable.getRect(element as HTMLElement | SVGElement)\n\n if (!rect) { break }\n\n const runningInteraction = arr.find(\n scope.interactions.list,\n (interaction: Interaction) => {\n return interaction.interacting() &&\n interaction.interactable === interactable &&\n interaction.element === element &&\n interaction.prepared.name === action.name\n })\n let reflowPromise: Promise<null>\n\n if (runningInteraction) {\n runningInteraction.move()\n\n if (promises) {\n reflowPromise = runningInteraction._reflowPromise || new Promise((resolve: any) => {\n runningInteraction._reflowResolve = resolve\n })\n }\n }\n else {\n const xywh = rectUtils.tlbrToXywh(rect)\n const coords = {\n page : { x: xywh.x, y: xywh.y },\n client : { x: xywh.x, y: xywh.y },\n timeStamp: scope.now(),\n }\n\n const event = pointerUtils.coordsToEvent(coords)\n reflowPromise = startReflow(scope, interactable, element, action, event)\n }\n\n if (promises) {\n promises.push(reflowPromise)\n }\n }\n\n return promises && Promise.all(promises).then(() => interactable)\n}\n\nfunction startReflow (scope: Scope, interactable: Interactable, element: Interact.Element, action: ActionProps, event: any) {\n const interaction = scope.interactions.new({ pointerType: 'reflow' })\n const signalArg = {\n interaction,\n event,\n pointer: event,\n eventTarget: element,\n phase: EventPhase.Reflow,\n }\n\n interaction.interactable = interactable\n interaction.element = element\n interaction.prepared = extend({}, action)\n interaction.prevEvent = event\n interaction.updatePointer(event, event, element, true)\n\n interaction._doPhase(signalArg)\n\n const reflowPromise = (win.window as unknown as any).Promise\n ? new (win.window as unknown as any).Promise((resolve: any) => {\n interaction._reflowResolve = resolve\n })\n : null\n\n interaction._reflowPromise = reflowPromise\n interaction.start(action, interactable, element)\n\n if (interaction._interacting) {\n interaction.move(signalArg)\n interaction.end(event)\n }\n else {\n interaction.stop()\n }\n\n interaction.removePointer(event, event)\n interaction.pointerIsDown = false\n\n return reflowPromise\n}\n\nexport default {\n id: 'reflow',\n install,\n listeners: {\n // remove completed reflow interactions\n 'interactions:stop': ({ interaction }, scope) => {\n if (interaction.pointerType === EventPhase.Reflow) {\n if (interaction._reflowResolve) {\n interaction._reflowResolve()\n }\n\n arr.remove(scope.interactions.list, interaction)\n }\n },\n },\n} as Interact.Plugin\n","/** @module interact */\n\nimport { Options } from '@interactjs/core/defaultOptions'\nimport Interactable from '@interactjs/core/Interactable'\nimport { Scope } from '@interactjs/core/scope'\nimport browser from '@interactjs/utils/browser'\nimport events from '@interactjs/utils/events'\nimport * as utils from '@interactjs/utils/index'\n\ndeclare module '@interactjs/core/scope' {\n interface Scope {\n interact: InteractStatic\n }\n}\n\nexport interface InteractStatic {\n (target: Interact.Target, options?: Options): Interactable\n on: typeof on\n pointerMoveTolerance: typeof pointerMoveTolerance\n stop: typeof stop\n supportsPointerEvent: typeof supportsPointerEvent\n supportsTouch: typeof supportsTouch\n debug: typeof debug\n off: typeof off\n isSet: typeof isSet\n use: typeof use\n getPointerAverage: typeof utils.pointer.pointerAverage\n getTouchBBox: typeof utils.pointer.touchBBox\n getTouchDistance: typeof utils.pointer.touchDistance\n getTouchAngle: typeof utils.pointer.touchAngle\n getElementRect: typeof utils.dom.getElementRect\n getElementClientRect: typeof utils.dom.getElementClientRect\n matchesSelector: typeof utils.dom.matchesSelector\n closest: typeof utils.dom.closest\n addDocument: typeof scope.addDocument\n removeDocument: typeof scope.removeDocument\n dynamicDrop: (newValue?: boolean) => boolean | Interact.interact\n version: string\n}\n\nconst globalEvents: any = {}\nconst scope = new Scope()\n\n/**\n * ```js\n * interact('#draggable').draggable(true)\n *\n * var rectables = interact('rect')\n * rectables\n * .gesturable(true)\n * .on('gesturemove', function (event) {\n * // ...\n * })\n * ```\n *\n * The methods of this variable can be used to set elements as interactables\n * and also to change various default settings.\n *\n * Calling it as a function and passing an element or a valid CSS selector\n * string returns an Interactable object which has various methods to configure\n * it.\n *\n * @global\n *\n * @param {Element | string} target The HTML or SVG Element to interact with\n * or CSS selector\n * @return {Interactable}\n */\nexport const interact: InteractStatic = function interact (target: Interact.Target, options?: any) {\n let interactable = scope.interactables.get(target, options)\n\n if (!interactable) {\n interactable = scope.interactables.new(target, options)\n interactable.events.global = globalEvents\n }\n\n return interactable\n} as InteractStatic\n\n/**\n * Use a plugin\n *\n * @alias module:interact.use\n *\n * @param {Object} plugin\n * @param {function} plugin.install\n * @return {interact}\n */\ninteract.use = use\nfunction use (plugin: Interact.Plugin, options?: { [key: string]: any }) {\n scope.usePlugin(plugin, options)\n\n return interact\n}\n\n/**\n * Check if an element or selector has been set with the {@link interact}\n * function\n *\n * @alias module:interact.isSet\n *\n * @param {Element} element The Element being searched for\n * @return {boolean} Indicates if the element or CSS selector was previously\n * passed to interact\n */\ninteract.isSet = isSet\nfunction isSet (target: Interact.Element, options?: any) {\n return !!scope.interactables.get(target, options && options.context)\n}\n\n/**\n * Add a global listener for an InteractEvent or adds a DOM event to `document`\n *\n * @alias module:interact.on\n *\n * @param {string | array | object} type The types of events to listen for\n * @param {function} listener The function event (s)\n * @param {object | boolean} [options] object or useCapture flag for\n * addEventListener\n * @return {object} interact\n */\ninteract.on = on\nfunction on (type: string | Interact.EventTypes, listener: Interact.ListenersArg, options?: object) {\n if (utils.is.string(type) && type.search(' ') !== -1) {\n type = type.trim().split(/ +/)\n }\n\n if (utils.is.array(type)) {\n for (const eventType of (type as any[])) {\n interact.on(eventType, listener, options)\n }\n\n return interact\n }\n\n if (utils.is.object(type)) {\n for (const prop in type) {\n interact.on(prop, (type as any)[prop], listener)\n }\n\n return interact\n }\n\n // if it is an InteractEvent type, add listener to globalEvents\n if (utils.arr.contains(scope.actions.eventTypes, type)) {\n // if this type of event was never bound\n if (!globalEvents[type]) {\n globalEvents[type] = [listener]\n }\n else {\n globalEvents[type].push(listener)\n }\n }\n // If non InteractEvent type, addEventListener to document\n else {\n events.add(scope.document, type, listener as Interact.Listener, { options })\n }\n\n return interact\n}\n\n/**\n * Removes a global InteractEvent listener or DOM event from `document`\n *\n * @alias module:interact.off\n *\n * @param {string | array | object} type The types of events that were listened\n * for\n * @param {function} listener The listener function to be removed\n * @param {object | boolean} options [options] object or useCapture flag for\n * removeEventListener\n * @return {object} interact\n */\ninteract.off = off\nfunction off (type: Interact.EventTypes, listener: any, options?: object) {\n if (utils.is.string(type) && type.search(' ') !== -1) {\n type = type.trim().split(/ +/)\n }\n\n if (utils.is.array(type)) {\n for (const eventType of type) {\n interact.off(eventType, listener, options)\n }\n\n return interact\n }\n\n if (utils.is.object(type)) {\n for (const prop in type) {\n interact.off(prop, type[prop], listener)\n }\n\n return interact\n }\n\n if (!utils.arr.contains(scope.actions.eventTypes, type)) {\n events.remove(scope.document, type, listener, options)\n }\n else {\n let index\n\n if (type in globalEvents &&\n (index = globalEvents[type].indexOf(listener)) !== -1) {\n globalEvents[type].splice(index, 1)\n }\n }\n\n return interact\n}\n\ninteract.debug = debug\nfunction debug () {\n return scope\n}\n\n// expose the functions used to calculate multi-touch properties\ninteract.getPointerAverage = utils.pointer.pointerAverage\ninteract.getTouchBBox = utils.pointer.touchBBox\ninteract.getTouchDistance = utils.pointer.touchDistance\ninteract.getTouchAngle = utils.pointer.touchAngle\n\ninteract.getElementRect = utils.dom.getElementRect\ninteract.getElementClientRect = utils.dom.getElementClientRect\ninteract.matchesSelector = utils.dom.matchesSelector\ninteract.closest = utils.dom.closest\n\n/**\n * @alias module:interact.supportsTouch\n *\n * @return {boolean} Whether or not the browser supports touch input\n */\ninteract.supportsTouch = supportsTouch\nfunction supportsTouch () {\n return browser.supportsTouch\n}\n\n/**\n * @alias module:interact.supportsPointerEvent\n *\n * @return {boolean} Whether or not the browser supports PointerEvents\n */\ninteract.supportsPointerEvent = supportsPointerEvent\nfunction supportsPointerEvent () {\n return browser.supportsPointerEvent\n}\n\n/**\n * Cancels all interactions (end events are not fired)\n *\n * @alias module:interact.stop\n *\n * @return {object} interact\n */\ninteract.stop = stop\nfunction stop () {\n for (const interaction of scope.interactions.list) {\n interaction.stop()\n }\n\n return interact\n}\n\n/**\n * Returns or sets the distance the pointer must be moved before an action\n * sequence occurs. This also affects tolerance for tap events.\n *\n * @alias module:interact.pointerMoveTolerance\n *\n * @param {number} [newValue] The movement from the start position must be greater than this value\n * @return {interact | number}\n */\ninteract.pointerMoveTolerance = pointerMoveTolerance\nfunction pointerMoveTolerance (newValue?: number) {\n if (utils.is.number(newValue)) {\n scope.interactions.pointerMoveTolerance = newValue\n\n return interact\n }\n\n return scope.interactions.pointerMoveTolerance\n}\n\nscope.addListeners({\n 'interactable:unset': ({ interactable }) => {\n scope.interactables.list.splice(scope.interactables.list.indexOf(interactable), 1)\n\n // Stop related interactions when an Interactable is unset\n for (const interaction of scope.interactions.list) {\n if (interaction.interactable === interactable && interaction.interacting() && !interaction._ending) {\n interaction.stop()\n }\n }\n },\n})\n\ninteract.addDocument = (doc, options) => scope.addDocument(doc, options)\ninteract.removeDocument = doc => scope.removeDocument(doc)\n\nscope.interact = interact\n\nexport { scope }\nexport default interact\n","import * as actions from '@interactjs/actions/index'\nimport autoScroll from '@interactjs/auto-scroll/index'\nimport * as autoStart from '@interactjs/auto-start/index'\nimport interactablePreventDefault from '@interactjs/core/interactablePreventDefault'\nimport devTools from '@interactjs/dev-tools/index'\nimport inertia from '@interactjs/inertia/index'\nimport modifiersBase from '@interactjs/modifiers/base'\nimport * as modifiers from '@interactjs/modifiers/index'\nimport * as pointerEvents from '@interactjs/pointer-events/index'\nimport reflow from '@interactjs/reflow/index'\nimport interact, { scope } from './interact'\n\nexport function init (window: Window) {\n scope.init(window)\n\n interact.use(interactablePreventDefault)\n\n // pointerEvents\n interact.use(pointerEvents)\n\n // inertia\n interact.use(inertia)\n\n // snap, resize, etc.\n interact.use(modifiersBase)\n\n // autoStart, hold\n interact.use(autoStart)\n\n // drag and drop, resize, gesture\n interact.use(actions)\n\n // for backwrads compatibility\n for (const type in modifiers) {\n const { _defaults, _methods } = modifiers[type as keyof typeof modifiers]\n\n _defaults._methods = _methods\n ;(scope.defaults.perAction as any)[type] = _defaults\n }\n\n // autoScroll\n interact.use(autoScroll)\n\n // reflow\n interact.use(reflow)\n\n // eslint-disable-next-line no-undef\n if (process.env.NODE_ENV !== 'production') {\n interact.use(devTools)\n }\n\n return interact\n}\n\n// eslint-disable-next-line no-undef\ninteract.version = process.env.npm_package_version\n\nexport default interact\n","/// <reference path=\"./types.d.ts\" />\n","function createGrid (grid: (Partial<Interact.Rect> | Interact.Point) & { range?: number, limits?: Interact.Rect, offset?: Interact.Point }) {\n const coordFields = ([\n ['x', 'y'],\n ['left', 'top'],\n ['right', 'bottom'],\n ['width', 'height'],\n ] as const).filter(([xField, yField]) => xField in grid || yField in grid)\n\n const gridFunc: Interact.SnapFunction & {\n grid: typeof grid\n coordFields: typeof coordFields\n } = (x, y) => {\n const {\n range,\n limits = {\n left : -Infinity,\n right : Infinity,\n top : -Infinity,\n bottom: Infinity,\n },\n offset = { x: 0, y: 0 },\n } = grid\n\n const result: Interact.SnapTarget & {\n grid: typeof grid\n } = { range, grid, x: null as number, y: null as number }\n\n for (const [xField, yField] of coordFields) {\n const gridx = Math.round((x - offset.x) / (grid as any)[xField])\n const gridy = Math.round((y - offset.y) / (grid as any)[yField])\n\n result[xField] = Math.max(limits.left, Math.min(limits.right, gridx * (grid as any)[xField] + offset.x))\n result[yField] = Math.max(limits.top, Math.min(limits.bottom, gridy * (grid as any)[yField] + offset.y))\n }\n\n return result\n }\n\n gridFunc.grid = grid\n gridFunc.coordFields = coordFields\n\n return gridFunc\n}\n\nexport default createGrid\n","import grid from './grid'\n\nexport { grid }\n","import interact, { init as initInteract } from '@interactjs/interact/index'\nimport * as modifiers from '@interactjs/modifiers/index'\nimport '@interactjs/types/index'\nimport extend from '@interactjs/utils/extend'\nimport * as snappers from '@interactjs/utils/snappers/index'\n\ndeclare module '@interactjs/interact/interact' {\n interface InteractStatic {\n modifiers: typeof modifiers\n snappers: typeof snappers\n createSnapGrid: typeof snappers.grid\n }\n}\n\nif (typeof window === 'object' && !!window) {\n init(window)\n}\n\nexport function init (win: Window) {\n initInteract(win)\n\n return interact.use({\n id: 'interactjs',\n install () {\n interact.modifiers = extend({}, modifiers)\n interact.snappers = snappers\n interact.createSnapGrid = interact.snappers.grid\n },\n })\n}\n\nexport default interact\n","import interact, { init } from '@interactjs/interactjs/index'\nexport * from '@interactjs/interactjs/index'\n\nif (typeof module === 'object' && !!module) {\n try { module.exports = interact }\n catch {}\n}\n\n(interact as any).default = interact // tslint:disable-line no-string-literal\n;(interact as any).init = init // tslint:disable-line no-string-literal\n\nexport default interact\n","\nreturn _$index_67;\n\n});\n"]} \ No newline at end of file diff --git a/src/main/webapp/static/js/interactjs/interact.min.js b/src/main/webapp/static/js/interactjs/interact.min.js new file mode 100644 index 0000000000000000000000000000000000000000..12f26b13a1d092ef76dd45828877a12a8a91e79f --- /dev/null +++ b/src/main/webapp/static/js/interactjs/interact.min.js @@ -0,0 +1,4 @@ +/* interact.js 1.7.3 | https://raw.github.com/taye/interact.js/master/LICENSE */ +!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).interact=e()}}(function(){function e(t){var n;return function(e){return n||t(n={exports:{},parent:e},n.exports),n.exports}}var b=e(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Scope=t.ActionName=void 0;var n=f(k),o=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==p(e)&&"function"!=typeof e)return{default:e};var t=c();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(pt),i=f(It),a=f(Ct),u=f(Ut),l=f(fn),s=f(Dn),r=f(E({}));function c(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return c=function(){return e},e}function f(e){return e&&e.__esModule?e:{default:e}}function p(e){return(p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function d(e,t){return!t||"object"!==p(t)&&"function"!=typeof t?function(e){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}function v(e,t,n){return(v="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=y(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(n):o.value}})(e,t,n||e)}function y(e){return(y=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function m(e,t){return(m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function g(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function b(e,t,n){return t&&h(e.prototype,t),n&&h(e,n),e}function w(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var O,P=o.win,_=o.browser,x=o.raf,S=o.events;(t.ActionName=O)||(t.ActionName=O={});var j=function(){function e(){var t=this;g(this,e),w(this,"id","__interact_scope_".concat(Math.floor(100*Math.random()))),w(this,"listenerMaps",[]),w(this,"browser",_),w(this,"events",S),w(this,"utils",o),w(this,"defaults",o.clone(i.default)),w(this,"Eventable",a.default),w(this,"actions",{names:[],methodDict:{},eventTypes:[]}),w(this,"InteractEvent",s.default),w(this,"Interactable",void 0),w(this,"interactables",new l.default(this)),w(this,"_win",void 0),w(this,"document",void 0),w(this,"window",void 0),w(this,"documents",[]),w(this,"_plugins",{list:[],map:{}}),w(this,"onWindowUnload",function(e){return t.removeDocument(e.target)});var r=this;this.Interactable=function(){function n(){return g(this,n),d(this,y(n).apply(this,arguments))}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&m(e,t)}(n,u["default"]),b(n,[{key:"set",value:function(e){return v(y(n.prototype),"set",this).call(this,e),r.fire("interactable:set",{options:e,interactable:this}),this}},{key:"unset",value:function(){v(y(n.prototype),"unset",this).call(this);for(var e=r.interactions.list.length-1;0<=e;e--){var t=r.interactions.list[e];t.interactable===this&&(t.stop(),r.fire("interactions:destroy",{interaction:t}),t.destroy(),2<r.interactions.list.length&&r.interactions.list.splice(e,1))}r.fire("interactable:unset",{interactable:this})}},{key:"_defaults",get:function(){return r.defaults}}]),n}()}return b(e,[{key:"addListeners",value:function(e,t){this.listenerMaps.push({id:t,map:e})}},{key:"fire",value:function(e,t){for(var n=0;n<this.listenerMaps.length;n++){var r=this.listenerMaps[n].map[e];if(r&&!1===r(t,this,e))return!1}}},{key:"init",value:function(e){return M(this,e)}},{key:"pluginIsInstalled",value:function(e){return this._plugins.map[e.id]||-1!==this._plugins.list.indexOf(e)}},{key:"usePlugin",value:function(e,t){if(this.pluginIsInstalled(e))return this;if(e.id&&(this._plugins.map[e.id]=e),this._plugins.list.push(e),e.install&&e.install(this,t),e.listeners&&e.before){for(var n=0;n<this.listenerMaps.length;n++){if(this.listenerMaps[n].id===e.before)break}this.listenerMaps.splice(n,0,{id:e.id,map:e.listeners})}else e.listeners&&this.listenerMaps.push({id:e.id,map:e.listeners});return this}},{key:"addDocument",value:function(e,t){if(-1!==this.getDocIndex(e))return!1;var n=P.getWindow(e);t=t?o.extend({},t):{},this.documents.push({doc:e,options:t}),S.documents.push(e),e!==this.document&&S.add(n,"unload",this.onWindowUnload),this.fire("scope:add-document",{doc:e,window:n,scope:this,options:t})}},{key:"removeDocument",value:function(e){var t=this.getDocIndex(e),n=P.getWindow(e),r=this.documents[t].options;S.remove(n,"unload",this.onWindowUnload),this.documents.splice(t,1),S.documents.splice(t,1),this.fire("scope:remove-document",{doc:e,window:n,scope:this,options:r})}},{key:"getDocIndex",value:function(e){for(var t=0;t<this.documents.length;t++)if(this.documents[t].doc===e)return t;return-1}},{key:"getDocOptions",value:function(e){var t=this.getDocIndex(e);return-1===t?null:this.documents[t].options}},{key:"now",value:function(){return(this.window.Date||Date).now()}}]),e}();function M(e,t){return P.init(t),n.default.init(t),_.init(t),x.init(t),S.init(t),e.usePlugin(r.default),e.document=t.document,e.window=t,e}t.Scope=j}),E=e(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var P=n(j),u=n(k),f=n(Te),_=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==s(e)&&"function"!=typeof e)return{default:e};var t=a();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(J),l=n(g({})),o=n(Qn);function a(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return a=function(){return e},e}function n(e){return e&&e.__esModule?e:{default:e}}function s(e){return(s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function x(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function p(e,t){return!t||"object"!==s(t)&&"function"!=typeof t?function(e){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}function d(e){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function v(e,t){return(v=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var y=["pointerDown","pointerMove","pointerUp","updatePointer","removePointer","windowBlur"];function m(w,O){return function(e){var t=O.interactions.list,n=_.getPointerType(e),r=x(_.getEventTargets(e),2),o=r[0],i=r[1],a=[];if(/^touch/.test(e.type)){O.prevTouchTime=O.now();for(var u=0;u<e.changedTouches.length;u++){var l=e.changedTouches[u],s={pointer:l,pointerId:_.getPointerId(l),pointerType:n,eventType:e.type,eventTarget:o,curEventTarget:i,scope:O},c=S(s);a.push([s.pointer,s.eventTarget,s.curEventTarget,c])}}else{var f=!1;if(!P.default.supportsPointerEvent&&/mouse/.test(e.type)){for(var p=0;p<t.length&&!f;p++)f="mouse"!==t[p].pointerType&&t[p].pointerIsDown;f=f||O.now()-O.prevTouchTime<500||0===e.timeStamp}if(!f){var d={pointer:e,pointerId:_.getPointerId(e),pointerType:n,eventType:e.type,curEventTarget:i,eventTarget:o,scope:O},v=S(d);a.push([d.pointer,d.eventTarget,d.curEventTarget,v])}}for(var y=0;y<a.length;y++){var m=x(a[y],4),g=m[0],h=m[1],b=m[2];m[3][w](g,e,h,b)}}}function S(e){var t=e.pointerType,n=e.scope,r={interaction:o.default.search(e),searchDetails:e};return n.fire("interactions:find",r),r.interaction||n.interactions.new({pointerType:t})}function r(e,t){var n=e.doc,r=e.scope,o=e.options,i=r.interactions.docEvents,a=f.default[t];for(var u in r.browser.isIOS&&!o.events&&(o.events={passive:!1}),f.default.delegatedEvents)a(n,u,f.default.delegateListener),a(n,u,f.default.delegateUseCapture,!0);for(var l=o&&o.events,s=0;s<i.length;s++){var c=i[s];a(n,c.type,c.listener,l)}}var i={id:"core/interactions",install:function(o){for(var e={},t=0;t<y.length;t++){var n=y[t];e[n]=m(n,o)}var r,i=P.default.pEventTypes;function a(){for(var e=0;e<o.interactions.list.length;e++){var t=o.interactions.list[e];if(t.pointerIsDown&&"touch"===t.pointerType&&!t._interacting)for(var n=function(){var n=t.pointers[r];o.documents.some(function(e){var t=e.doc;return(0,C.nodeContains)(t,n.downTarget)})||t.removePointer(n.pointer,n.event)},r=0;r<t.pointers.length;r++){n()}}}(r=u.default.PointerEvent?[{type:i.down,listener:a},{type:i.down,listener:e.pointerDown},{type:i.move,listener:e.pointerMove},{type:i.up,listener:e.pointerUp},{type:i.cancel,listener:e.pointerUp}]:[{type:"mousedown",listener:e.pointerDown},{type:"mousemove",listener:e.pointerMove},{type:"mouseup",listener:e.pointerUp},{type:"touchstart",listener:a},{type:"touchstart",listener:e.pointerDown},{type:"touchmove",listener:e.pointerMove},{type:"touchend",listener:e.pointerUp},{type:"touchcancel",listener:e.pointerUp}]).push({type:"blur",listener:function(e){for(var t=0;t<o.interactions.list.length;t++){o.interactions.list[t].documentBlur(e)}}}),o.prevTouchTime=0,o.Interaction=function(){function e(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),p(this,d(e).apply(this,arguments))}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&v(e,t)}(e,l["default"]),function(e,t,n){t&&c(e.prototype,t),n&&c(e,n)}(e,[{key:"_now",value:function(){return o.now()}},{key:"pointerMoveTolerance",get:function(){return o.interactions.pointerMoveTolerance},set:function(e){o.interactions.pointerMoveTolerance=e}}]),e}(),o.interactions={list:[],new:function(e){e.scopeFire=function(e,t){return o.fire(e,t)};var t=new o.Interaction(e);return o.interactions.list.push(t),t},listeners:e,docEvents:r,pointerMoveTolerance:1}},listeners:{"scope:add-document":function(e){return r(e,"add")},"scope:remove-document":function(e){return r(e,"remove")}},onDocSignal:r,doOnInteractions:m,methodNames:y};t.default=i}),g=e(function(e,t){"use strict";function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PointerInfo",{enumerable:!0,get:function(){return u.default}}),t.default=t.Interaction=t._ProxyMethods=t._ProxyValues=void 0;var n,c,r,f,o,p=d(pt),i=d(Dn),u=(n=Hn)&&n.__esModule?n:{default:n},l=b({});function s(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return s=function(){return e},e}function d(e){if(e&&e.__esModule)return e;if(null===e||"object"!==a(e)&&"function"!=typeof e)return{default:e};var t=s();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function v(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function y(e,t,n){return t&&v(e.prototype,t),n&&v(e,n),e}function m(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}t._ProxyValues=c,(r=c||(t._ProxyValues=c={})).interactable="",r.element="",r.prepared="",r.pointerIsDown="",r.pointerWasMoved="",r._proxy="",t._ProxyMethods=f,(o=f||(t._ProxyMethods=f={})).start="",o.move="",o.end="",o.stop="",o.interacting="";var g=function(){function s(e){var t=this,n=e.pointerType,r=e.scopeFire;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,s),m(this,"interactable",null),m(this,"element",null),m(this,"rect",void 0),m(this,"edges",void 0),m(this,"_scopeFire",void 0),m(this,"prepared",{name:null,axis:null,edges:null}),m(this,"pointerType",void 0),m(this,"pointers",[]),m(this,"downEvent",null),m(this,"downPointer",{}),m(this,"_latestPointer",{pointer:null,event:null,eventTarget:null}),m(this,"prevEvent",null),m(this,"pointerIsDown",!1),m(this,"pointerWasMoved",!1),m(this,"_interacting",!1),m(this,"_ending",!1),m(this,"_stopped",!0),m(this,"_proxy",null),m(this,"simulation",null),m(this,"doMove",p.warnOnce(function(e){this.move(e)},"The interaction.doMove() method has been renamed to interaction.move()")),m(this,"coords",{start:p.pointer.newCoords(),prev:p.pointer.newCoords(),cur:p.pointer.newCoords(),delta:p.pointer.newCoords(),velocity:p.pointer.newCoords()}),this._scopeFire=r,this.pointerType=n;var o=this;this._proxy={};function i(e){Object.defineProperty(t._proxy,e,{get:function(){return o[e]}})}for(var a in c)i(a);function u(e){Object.defineProperty(t._proxy,e,{value:function(){return o[e].apply(o,arguments)}})}for(var l in f)u(l);this._scopeFire("interactions:new",{interaction:this})}return y(s,[{key:"pointerMoveTolerance",get:function(){return 1}}]),y(s,[{key:"pointerDown",value:function(e,t,n){var r=this.updatePointer(e,t,n,!0);this._scopeFire("interactions:down",{pointer:e,event:t,eventTarget:n,pointerIndex:r,type:"down",interaction:this})}},{key:"start",value:function(e,t,n){return!(this.interacting()||!this.pointerIsDown||this.pointers.length<(e.name===l.ActionName.Gesture?2:1)||!t.options[e.name].enabled)&&(p.copyAction(this.prepared,e),this.interactable=t,this.element=n,this.rect=t.getRect(n),this.edges=this.prepared.edges,this._stopped=!1,this._interacting=this._doPhase({interaction:this,event:this.downEvent,phase:i.EventPhase.Start})&&!this._stopped,this._interacting)}},{key:"pointerMove",value:function(e,t,n){this.simulation||this.modifiers&&this.modifiers.endPrevented||(this.updatePointer(e,t,n,!1),p.pointer.setCoords(this.coords.cur,this.pointers.map(function(e){return e.pointer}),this._now()));var r,o,i=this.coords.cur.page.x===this.coords.prev.page.x&&this.coords.cur.page.y===this.coords.prev.page.y&&this.coords.cur.client.x===this.coords.prev.client.x&&this.coords.cur.client.y===this.coords.prev.client.y;this.pointerIsDown&&!this.pointerWasMoved&&(r=this.coords.cur.client.x-this.coords.start.client.x,o=this.coords.cur.client.y-this.coords.start.client.y,this.pointerWasMoved=p.hypot(r,o)>this.pointerMoveTolerance);var a={pointer:e,pointerIndex:this.getPointerIndex(e),event:t,type:"move",eventTarget:n,dx:r,dy:o,duplicate:i,interaction:this};i||(p.pointer.setCoordDeltas(this.coords.delta,this.coords.prev,this.coords.cur),p.pointer.setCoordVelocity(this.coords.velocity,this.coords.delta)),this._scopeFire("interactions:move",a),i||(this.interacting()&&(a.type=null,this.move(a)),this.pointerWasMoved&&p.pointer.copyCoords(this.coords.prev,this.coords.cur))}},{key:"move",value:function(e){(e=p.extend({pointer:this._latestPointer.pointer,event:this._latestPointer.event,eventTarget:this._latestPointer.eventTarget,interaction:this},e||{})).phase=i.EventPhase.Move,this._doPhase(e)}},{key:"pointerUp",value:function(e,t,n,r){var o=this.getPointerIndex(e);-1===o&&(o=this.updatePointer(e,t,n,!1));var i=/cancel$/i.test(t.type)?"cancel":"up";this._scopeFire("interactions:".concat(i),{pointer:e,pointerIndex:o,event:t,eventTarget:n,type:i,curEventTarget:r,interaction:this}),this.simulation||this.end(t),this.pointerIsDown=!1,this.removePointer(e,t)}},{key:"documentBlur",value:function(e){this.end(e),this._scopeFire("interactions:blur",{event:e,type:"blur",interaction:this})}},{key:"end",value:function(e){var t;this._ending=!0,e=e||this._latestPointer.event,this.interacting()&&(t=this._doPhase({event:e,interaction:this,phase:i.EventPhase.End})),!(this._ending=!1)===t&&this.stop()}},{key:"currentAction",value:function(){return this._interacting?this.prepared.name:null}},{key:"interacting",value:function(){return this._interacting}},{key:"stop",value:function(){this._scopeFire("interactions:stop",{interaction:this}),this.interactable=this.element=null,this._interacting=!1,this._stopped=!0,this.prepared.name=this.prevEvent=null}},{key:"getPointerIndex",value:function(e){var t=p.pointer.getPointerId(e);return"mouse"===this.pointerType||"pen"===this.pointerType?this.pointers.length-1:p.arr.findIndex(this.pointers,function(e){return e.id===t})}},{key:"getPointerInfo",value:function(e){return this.pointers[this.getPointerIndex(e)]}},{key:"updatePointer",value:function(e,t,n,r){var o=p.pointer.getPointerId(e),i=this.getPointerIndex(e),a=this.pointers[i];return r=!1!==r&&(r||/(down|start)$/i.test(t.type)),a?a.pointer=e:(a=new u.default(o,e,t,null,null),i=this.pointers.length,this.pointers.push(a)),r&&(this.pointerIsDown=!0,this.interacting()||(p.pointer.setCoords(this.coords.start,this.pointers.map(function(e){return e.pointer}),this._now()),p.pointer.copyCoords(this.coords.cur,this.coords.start),p.pointer.copyCoords(this.coords.prev,this.coords.start),p.pointer.pointerExtend(this.downPointer,e),this.downEvent=t,a.downTime=this.coords.cur.timeStamp,a.downTarget=n,this.pointerWasMoved=!1)),this._updateLatestPointer(e,t,n),this._scopeFire("interactions:update-pointer",{pointer:e,event:t,eventTarget:n,down:r,pointerInfo:a,pointerIndex:i,interaction:this}),i}},{key:"removePointer",value:function(e,t){var n=this.getPointerIndex(e);if(-1!==n){var r=this.pointers[n];this._scopeFire("interactions:remove-pointer",{pointer:e,event:t,eventTarget:null,pointerIndex:n,pointerInfo:r,interaction:this}),this.pointers.splice(n,1)}}},{key:"_updateLatestPointer",value:function(e,t,n){this._latestPointer.pointer=e,this._latestPointer.event=t,this._latestPointer.eventTarget=n}},{key:"destroy",value:function(){this._latestPointer.pointer=null,this._latestPointer.event=null,this._latestPointer.eventTarget=null}},{key:"_createPreparedEvent",value:function(e,t,n,r){var o=this.prepared.name;return new i.default(this,e,o,t,this.element,null,n,r)}},{key:"_fireEvent",value:function(e){this.interactable.fire(e),(!this.prevEvent||e.timeStamp>=this.prevEvent.timeStamp)&&(this.prevEvent=e)}},{key:"_doPhase",value:function(e){var t=e.event,n=e.phase,r=e.preEnd,o=e.type;if(!1===this._scopeFire("interactions:before-action-".concat(n),e))return!1;var i=e.iEvent=this._createPreparedEvent(t,n,r,o),a=this.rect;if(a){var u=this.edges||this.prepared.edges||{left:!0,right:!0,top:!0,bottom:!0};u.top&&(a.top+=i.delta.y),u.bottom&&(a.bottom+=i.delta.y),u.left&&(a.left+=i.delta.x),u.right&&(a.right+=i.delta.x),a.width=a.right-a.left,a.height=a.bottom-a.top}return this._scopeFire("interactions:action-".concat(n),e),this._fireEvent(i),this._scopeFire("interactions:after-action-".concat(n),e),!0}},{key:"_now",value:function(){return Date.now()}}]),s}(),h=t.Interaction=g;t.default=h}),k={};Object.defineProperty(k,"__esModule",{value:!0}),k.default=void 0;var n={init:function(e){var t=e;n.document=t.document,n.DocumentFragment=t.DocumentFragment||r,n.SVGElement=t.SVGElement||r,n.SVGSVGElement=t.SVGSVGElement||r,n.SVGElementInstance=t.SVGElementInstance||r,n.Element=t.Element||r,n.HTMLElement=t.HTMLElement||n.Element,n.Event=t.Event,n.Touch=t.Touch||r,n.PointerEvent=t.PointerEvent||t.MSPointerEvent},document:null,DocumentFragment:null,SVGElement:null,SVGSVGElement:null,SVGElementInstance:null,Element:null,HTMLElement:null,Event:null,Touch:null,PointerEvent:null};function r(){}var t=n;k.default=t;var u={};function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];e.push(r)}return e}function i(e,t){for(var n=0;n<e.length;n++)if(t(e[n],n,e))return n;return-1}Object.defineProperty(u,"__esModule",{value:!0}),u.contains=function(e,t){return-1!==e.indexOf(t)},u.remove=function(e,t){return e.splice(e.indexOf(t),1)},u.merge=o,u.from=function(e){return o([],e)},u.findIndex=i,u.find=function(e,t){return e[i(e,t)]};var a={};Object.defineProperty(a,"__esModule",{value:!0}),a.default=void 0;a.default=function(e){return!(!e||!e.Window)&&e instanceof e.Window};var l={};Object.defineProperty(l,"__esModule",{value:!0}),l.init=p,l.getWindow=d,l.default=void 0;var s,c=(s=a)&&s.__esModule?s:{default:s};var f={realWindow:void 0,window:void 0,getWindow:d,init:p};function p(e){var t=(f.realWindow=e).document.createTextNode("");t.ownerDocument!==e.document&&"function"==typeof e.wrap&&e.wrap(t)===t&&(e=e.wrap(e)),f.window=e}function d(e){return(0,c.default)(e)?e:(e.ownerDocument||e).defaultView||f.window}"undefined"==typeof window?(f.window=void 0,f.realWindow=void 0):p(window),f.init=p;var v=f;l.default=v;var y={};Object.defineProperty(y,"__esModule",{value:!0}),y.array=y.plainObject=y.element=y.string=y.bool=y.number=y.func=y.object=y.docFrag=y.window=void 0;var m=w(a),h=w(l);function w(e){return e&&e.__esModule?e:{default:e}}function O(e){return(O="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}y.window=function(e){return e===h.default.window||(0,m.default)(e)};y.docFrag=function(e){return P(e)&&11===e.nodeType};var P=function(e){return!!e&&"object"===O(e)};y.object=P;function _(e){return"function"==typeof e}y.func=_;y.number=function(e){return"number"==typeof e};y.bool=function(e){return"boolean"==typeof e};y.string=function(e){return"string"==typeof e};y.element=function(e){if(!e||"object"!==O(e))return!1;var t=h.default.getWindow(e)||h.default.window;return/object|function/.test(O(t.Element))?e instanceof t.Element:1===e.nodeType&&"string"==typeof e.nodeName};y.plainObject=function(e){return P(e)&&!!e.constructor&&/function Object\b/.test(e.constructor.toString())};y.array=function(e){return P(e)&&void 0!==e.length&&_(e.splice)};var j={};function x(e){return(x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(j,"__esModule",{value:!0}),j.default=void 0;var S=I(k),M=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==x(e)&&"function"!=typeof e)return{default:e};var t=D();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(y),T=I(l);function D(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return D=function(){return e},e}function I(e){return e&&e.__esModule?e:{default:e}}var z={init:function(e){var t=S.default.Element,n=T.default.window.navigator;z.supportsTouch="ontouchstart"in e||M.func(e.DocumentTouch)&&S.default.document instanceof e.DocumentTouch,z.supportsPointerEvent=!1!==n.pointerEnabled&&!!S.default.PointerEvent,z.isIOS=/iP(hone|od|ad)/.test(n.platform),z.isIOS7=/iP(hone|od|ad)/.test(n.platform)&&/OS 7[^\d]/.test(n.appVersion),z.isIe9=/MSIE 9/.test(n.userAgent),z.isOperaMobile="Opera"===n.appName&&z.supportsTouch&&/Presto/.test(n.userAgent),z.prefixedMatchesSelector="matches"in t.prototype?"matches":"webkitMatchesSelector"in t.prototype?"webkitMatchesSelector":"mozMatchesSelector"in t.prototype?"mozMatchesSelector":"oMatchesSelector"in t.prototype?"oMatchesSelector":"msMatchesSelector",z.pEventTypes=z.supportsPointerEvent?S.default.PointerEvent===e.MSPointerEvent?{up:"MSPointerUp",down:"MSPointerDown",over:"mouseover",out:"mouseout",move:"MSPointerMove",cancel:"MSPointerCancel"}:{up:"pointerup",down:"pointerdown",over:"pointerover",out:"pointerout",move:"pointermove",cancel:"pointercancel"}:null,z.wheelEvent="onmousewheel"in S.default.document?"mousewheel":"wheel"},supportsTouch:null,supportsPointerEvent:null,isIOS7:null,isIOS:null,isIe9:null,isOperaMobile:null,prefixedMatchesSelector:null,pEventTypes:null,wheelEvent:null};var A=z;j.default=A;var C={};function R(e){return(R="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(C,"__esModule",{value:!0}),C.nodeContains=function(e,t){for(;t;){if(t===e)return!0;t=t.parentNode}return!1},C.closest=function(e,t){for(;Y.element(e);){if(G(e,t))return e;e=q(e)}return null},C.parentNode=q,C.matchesSelector=G,C.indexOfDeepestElement=function(e){var t,n,r=[],o=e[0],i=o?0:-1;for(t=1;t<e.length;t++){var a=e[t];if(a&&a!==o)if(o){if(a.parentNode!==a.ownerDocument)if(o.parentNode!==a.ownerDocument)if(a.parentNode!==o.parentNode){if(!r.length)for(var u=o,l=void 0;(l=U(u))&&l!==u.ownerDocument;)r.unshift(u),u=l;var s=void 0;if(o instanceof X.default.HTMLElement&&a instanceof X.default.SVGElement&&!(a instanceof X.default.SVGSVGElement)){if(a===o.parentNode)continue;s=a.ownerSVGElement}else s=a;for(var c=[];s.parentNode!==s.ownerDocument;)c.unshift(s),s=U(s);for(n=0;c[n]&&c[n]===r[n];)n++;for(var f=[c[n-1],c[n],r[n]],p=f[0].lastChild;p;){if(p===f[1]){o=a,i=t,r=c;break}if(p===f[2])break;p=p.previousSibling}}else{var d=parseInt((0,F.getWindow)(o).getComputedStyle(o).zIndex,10)||0,v=parseInt((0,F.getWindow)(a).getComputedStyle(a).zIndex,10)||0;d<=v&&(o=a,i=t)}else o=a,i=t}else o=a,i=t}return i},C.matchesUpTo=function(e,t,n){for(;Y.element(e);){if(G(e,t))return!0;if((e=q(e))===n)return G(e,t)}return!1},C.getActualElement=function(e){return e instanceof X.default.SVGElementInstance?e.correspondingUseElement:e},C.getScrollXY=B,C.getElementClientRect=H,C.getElementRect=function(e){var t=H(e);if(!W.default.isIOS7&&t){var n=B(F.default.getWindow(e));t.left+=n.x,t.right+=n.x,t.top+=n.y,t.bottom+=n.y}return t},C.getPath=function(e){var t=[];for(;e;)t.push(e),e=q(e);return t},C.trySelector=function(e){return!!Y.string(e)&&(X.default.document.querySelector(e),!0)};var W=V(j),X=V(k),Y=L(y),F=L(l);function N(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return N=function(){return e},e}function L(e){if(e&&e.__esModule)return e;if(null===e||"object"!==R(e)&&"function"!=typeof e)return{default:e};var t=N();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function V(e){return e&&e.__esModule?e:{default:e}}function q(e){var t=e.parentNode;if(Y.docFrag(t)){for(;(t=t.host)&&Y.docFrag(t););return t}return t}function G(e,t){return F.default.window!==F.default.realWindow&&(t=t.replace(/\/deep\//g," ")),e[W.default.prefixedMatchesSelector](t)}var U=function(e){return e.parentNode?e.parentNode:e.host};function B(e){return{x:(e=e||F.default.window).scrollX||e.document.documentElement.scrollLeft,y:e.scrollY||e.document.documentElement.scrollTop}}function H(e){var t=e instanceof X.default.SVGElement?e.getBoundingClientRect():e.getClientRects()[0];return t&&{left:t.left,right:t.right,top:t.top,bottom:t.bottom,width:t.width||t.right-t.left,height:t.height||t.bottom-t.top}}var K={};Object.defineProperty(K,"__esModule",{value:!0}),K.default=void 0;K.default=function(e,t){return Math.sqrt(e*e+t*t)};var $={};function Q(e,t){for(var n in t){var r=Q.prefixedPropREs,o=!1;for(var i in r)if(0===n.indexOf(i)&&r[i].test(n)){o=!0;break}o||"function"==typeof t[n]||(e[n]=t[n])}return e}Object.defineProperty($,"__esModule",{value:!0}),$.default=void 0,Q.prefixedPropREs={webkit:/(Movement[XY]|Radius[XY]|RotationAngle|Force)$/,moz:/(Pressure)$/};var Z=Q;$.default=Z;var J={};function ee(e){return(ee="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(J,"__esModule",{value:!0}),J.copyCoords=function(e,t){e.page=e.page||{},e.page.x=t.page.x,e.page.y=t.page.y,e.client=e.client||{},e.client.x=t.client.x,e.client.y=t.client.y,e.timeStamp=t.timeStamp},J.setCoordDeltas=function(e,t,n){e.page.x=n.page.x-t.page.x,e.page.y=n.page.y-t.page.y,e.client.x=n.client.x-t.client.x,e.client.y=n.client.y-t.client.y,e.timeStamp=n.timeStamp-t.timeStamp},J.setCoordVelocity=function(e,t){var n=Math.max(t.timeStamp/1e3,.001);e.page.x=t.page.x/n,e.page.y=t.page.y/n,e.client.x=t.client.x/n,e.client.y=t.client.y/n,e.timeStamp=n},J.setZeroCoords=function(e){e.page.x=0,e.page.y=0,e.client.x=0,e.client.y=0},J.isNativePointer=ce,J.getXY=fe,J.getPageXY=pe,J.getClientXY=de,J.getPointerId=function(e){return ie.number(e.pointerId)?e.pointerId:e.identifier},J.setCoords=function(e,t,n){var r=1<t.length?ye(t):t[0],o={};pe(r,o),e.page.x=o.x,e.page.y=o.y,de(r,o),e.client.x=o.x,e.client.y=o.y,e.timeStamp=n},J.getTouchPair=ve,J.pointerAverage=ye,J.touchBBox=function(e){if(!(e.length||e.touches&&1<e.touches.length))return null;var t=ve(e),n=Math.min(t[0].pageX,t[1].pageX),r=Math.min(t[0].pageY,t[1].pageY),o=Math.max(t[0].pageX,t[1].pageX),i=Math.max(t[0].pageY,t[1].pageY);return{x:n,y:r,left:n,top:r,right:o,bottom:i,width:o-n,height:i-r}},J.touchDistance=function(e,t){var n=t+"X",r=t+"Y",o=ve(e),i=o[0][n]-o[1][n],a=o[0][r]-o[1][r];return(0,oe.default)(i,a)},J.touchAngle=function(e,t){var n=t+"X",r=t+"Y",o=ve(e),i=o[1][n]-o[0][n],a=o[1][r]-o[0][r];return 180*Math.atan2(a,i)/Math.PI},J.getPointerType=function(e){return ie.string(e.pointerType)?e.pointerType:ie.number(e.pointerType)?[void 0,void 0,"touch","pen","mouse"][e.pointerType]:/touch/.test(e.type)||e instanceof ne.default.Touch?"touch":"mouse"},J.getEventTargets=function(e){var t=ie.func(e.composedPath)?e.composedPath():e.path;return[re.getActualElement(t?t[0]:e.target),re.getActualElement(e.currentTarget)]},J.newCoords=function(){return{page:{x:0,y:0},client:{x:0,y:0},timeStamp:0}},J.coordsToEvent=function(e){return{coords:e,get page(){return this.coords.page},get client(){return this.coords.client},get timeStamp(){return this.coords.timeStamp},get pageX(){return this.coords.page.x},get pageY(){return this.coords.page.y},get clientX(){return this.coords.client.x},get clientY(){return this.coords.client.y},get pointerId(){return this.coords.pointerId},get target(){return this.coords.target},get type(){return this.coords.type},get pointerType(){return this.coords.pointerType},get buttons(){return this.coords.buttons}}},Object.defineProperty(J,"pointerExtend",{enumerable:!0,get:function(){return ae.default}});var te=se(j),ne=se(k),re=le(C),oe=se(K),ie=le(y),ae=se($);function ue(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return ue=function(){return e},e}function le(e){if(e&&e.__esModule)return e;if(null===e||"object"!==ee(e)&&"function"!=typeof e)return{default:e};var t=ue();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function se(e){return e&&e.__esModule?e:{default:e}}function ce(e){return e instanceof ne.default.Event||e instanceof ne.default.Touch}function fe(e,t,n){return(n=n||{}).x=t[(e=e||"page")+"X"],n.y=t[e+"Y"],n}function pe(e,t){return t=t||{x:0,y:0},te.default.isOperaMobile&&ce(e)?(fe("screen",e,t),t.x+=window.scrollX,t.y+=window.scrollY):fe("page",e,t),t}function de(e,t){return t=t||{},te.default.isOperaMobile&&ce(e)?fe("screen",e,t):fe("client",e,t),t}function ve(e){var t=[];return ie.array(e)?(t[0]=e[0],t[1]=e[1]):"touchend"===e.type?1===e.touches.length?(t[0]=e.touches[0],t[1]=e.changedTouches[0]):0===e.touches.length&&(t[0]=e.changedTouches[0],t[1]=e.changedTouches[1]):(t[0]=e.touches[0],t[1]=e.touches[1]),t}function ye(e){for(var t={pageX:0,pageY:0,clientX:0,clientY:0,screenX:0,screenY:0},n=0;n<e.length;n++){var r=e[n];for(var o in t)t[o]+=r[o]}for(var i in t)t[i]/=e.length;return t}var me={};Object.defineProperty(me,"__esModule",{value:!0}),me.default=function(e,t){for(var n in t)e[n]=t[n];return e};var ge={};function he(e){return(he="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(ge,"__esModule",{value:!0}),ge.getStringOptionResult=_e,ge.resolveRectLike=function(e,t,n,r){Oe.string(e)?e=_e(e,t,n):Oe.func(e)&&(e=e.apply(void 0,function(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}(r)));Oe.element(e)&&(e=(0,C.getElementRect)(e));return e},ge.rectToXY=function(e){return e&&{x:"x"in e?e.x:e.left,y:"y"in e?e.y:e.top}},ge.xywhToTlbr=function(e){!e||"left"in e&&"top"in e||((e=(0,we.default)({},e)).left=e.x||0,e.top=e.y||0,e.right=e.right||e.left+e.width,e.bottom=e.bottom||e.top+e.height);return e},ge.tlbrToXywh=function(e){!e||"x"in e&&"y"in e||((e=(0,we.default)({},e)).x=e.left||0,e.y=e.top||0,e.width=e.width||e.right-e.x,e.height=e.height||e.bottom-e.y);return e};var be,we=(be=me)&&be.__esModule?be:{default:be},Oe=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==he(e)&&"function"!=typeof e)return{default:e};var t=Pe();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(y);function Pe(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Pe=function(){return e},e}function _e(e,t,n){return"parent"===e?(0,C.parentNode)(n):"self"===e?t.getRect(n):(0,C.closest)(n,e)}var xe={};function Se(e){return(Se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(xe,"__esModule",{value:!0}),xe.default=function e(t){var n={};for(var r in t){var o=t[r];Me.plainObject(o)?n[r]=e(o):Me.array(o)?n[r]=je.from(o):n[r]=o}return n};var je=ke(u),Me=ke(y);function Ee(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Ee=function(){return e},e}function ke(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Se(e)&&"function"!=typeof e)return{default:e};var t=Ee();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}var Te={};function De(e){return(De="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Te,"__esModule",{value:!0}),Te.default=Te.FakeEvent=void 0;var Ie,ze=Xe(C),Ae=Xe(y),Ce=(Ie=$)&&Ie.__esModule?Ie:{default:Ie},Re=Xe(J);function We(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return We=function(){return e},e}function Xe(e){if(e&&e.__esModule)return e;if(null===e||"object"!==De(e)&&"function"!=typeof e)return{default:e};var t=We();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function Ye(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Fe(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}var Ne=[],Le=[],Ve={},qe=[];function Ge(e,t,n,r){var o=Ke(r),i=Ne.indexOf(e),a=Le[i];a||(a={events:{},typeCount:0},i=Ne.push(e)-1,Le.push(a)),a.events[t]||(a.events[t]=[],a.typeCount++),(0,u.contains)(a.events[t],n)||(e.addEventListener(t,n,Qe.supportsOptions?o:!!o.capture),a.events[t].push(n))}function Ue(e,t,n,r){var o=Ke(r),i=Ne.indexOf(e),a=Le[i];if(a&&a.events)if("all"!==t){if(a.events[t]){var u=a.events[t].length;if("all"===n){for(var l=0;l<u;l++)Ue(e,t,a.events[t][l],o);return}for(var s=0;s<u;s++)if(a.events[t][s]===n){e.removeEventListener(t,n,Qe.supportsOptions?o:!!o.capture),a.events[t].splice(s,1);break}a.events[t]&&0===a.events[t].length&&(a.events[t]=null,a.typeCount--)}a.typeCount||(Le.splice(i,1),Ne.splice(i,1))}else for(t in a.events)a.events.hasOwnProperty(t)&&Ue(e,t,"all")}function Be(e,t){for(var n=Ke(t),r=new $e(e),o=Ve[e.type],i=Fe(Re.getEventTargets(e),1)[0],a=i;Ae.element(a);){for(var u=0;u<o.selectors.length;u++){var l=o.selectors[u],s=o.contexts[u];if(ze.matchesSelector(a,l)&&ze.nodeContains(s,i)&&ze.nodeContains(s,a)){var c=o.listeners[u];r.currentTarget=a;for(var f=0;f<c.length;f++){var p=Fe(c[f],3),d=p[0],v=p[1],y=p[2];v===!!n.capture&&y===n.passive&&d(r)}}}a=ze.parentNode(a)}}function He(e){return Be.call(this,e,!0)}function Ke(e){return Ae.object(e)?e:{capture:e}}var $e=function(){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),this.originalEvent=e,function(e,t,n){t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,"currentTarget",void 0),(0,Ce.default)(this,e)}return function(e,t,n){t&&Ye(e.prototype,t),n&&Ye(e,n)}(t,[{key:"preventOriginalDefault",value:function(){this.originalEvent.preventDefault()}},{key:"stopPropagation",value:function(){this.originalEvent.stopPropagation()}},{key:"stopImmediatePropagation",value:function(){this.originalEvent.stopImmediatePropagation()}}]),t}();Te.FakeEvent=$e;var Qe={add:Ge,remove:Ue,addDelegate:function(e,t,n,r,o){var i=Ke(o);if(!Ve[n]){Ve[n]={contexts:[],listeners:[],selectors:[]};for(var a=0;a<qe.length;a++){var u=qe[a];Ge(u,n,Be),Ge(u,n,He,!0)}}var l,s=Ve[n];for(l=s.selectors.length-1;0<=l&&(s.selectors[l]!==e||s.contexts[l]!==t);l--);-1===l&&(l=s.selectors.length,s.selectors.push(e),s.contexts.push(t),s.listeners.push([])),s.listeners[l].push([r,!!i.capture,i.passive])},removeDelegate:function(e,t,n,r,o){var i,a=Ke(o),u=Ve[n],l=!1;if(u)for(i=u.selectors.length-1;0<=i;i--)if(u.selectors[i]===e&&u.contexts[i]===t){for(var s=u.listeners[i],c=s.length-1;0<=c;c--){var f=Fe(s[c],3),p=f[0],d=f[1],v=f[2];if(p===r&&d===!!a.capture&&v===a.passive){s.splice(c,1),s.length||(u.selectors.splice(i,1),u.contexts.splice(i,1),u.listeners.splice(i,1),Ue(t,n,Be),Ue(t,n,He,!0),u.selectors.length||(Ve[n]=null)),l=!0;break}}if(l)break}},delegateListener:Be,delegateUseCapture:He,delegatedEvents:Ve,documents:qe,supportsOptions:!1,supportsPassive:!1,_elements:Ne,_targets:Le,init:function(e){e.document.createElement("div").addEventListener("test",null,{get capture(){return Qe.supportsOptions=!0},get passive(){return Qe.supportsPassive=!0}})}},Ze=Qe;Te.default=Ze;var Je={};Object.defineProperty(Je,"__esModule",{value:!0}),Je.default=function(e,t,n){var r=e.options[n],o=r&&r.origin||e.options.origin,i=(0,ge.resolveRectLike)(o,e,t,[e&&t]);return(0,ge.rectToXY)(i)||{x:0,y:0}};var et={};function tt(e){return(tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(et,"__esModule",{value:!0}),et.default=function n(t,r,o){o=o||{};ot.string(t)&&-1!==t.search(" ")&&(t=at(t));if(ot.array(t))return t.reduce(function(e,t){return(0,rt.default)(e,n(t,r,o))},o);ot.object(t)&&(r=t,t="");if(ot.func(r))o[t]=o[t]||[],o[t].push(r);else if(ot.array(r))for(var e=0;e<r.length;e++){var i=r[e];n(t,i,o)}else if(ot.object(r))for(var a in r){var u=at(a).map(function(e){return"".concat(t).concat(e)});n(u,r[a],o)}return o};var nt,rt=(nt=me)&&nt.__esModule?nt:{default:nt},ot=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==tt(e)&&"function"!=typeof e)return{default:e};var t=it();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(y);function it(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return it=function(){return e},e}function at(e){return e.trim().split(/ +/)}var ut={};Object.defineProperty(ut,"__esModule",{value:!0}),ut.default=void 0;var lt,st,ct=0;var ft={request:function(e){return lt(e)},cancel:function(e){return st(e)},init:function(e){if(lt=e.requestAnimationFrame,st=e.cancelAnimationFrame,!lt)for(var t=["ms","moz","webkit","o"],n=0;n<t.length;n++){var r=t[n];lt=e["".concat(r,"RequestAnimationFrame")],st=e["".concat(r,"CancelAnimationFrame")]||e["".concat(r,"CancelRequestAnimationFrame")]}lt||(lt=function(e){var t=Date.now(),n=Math.max(0,16-(t-ct)),r=setTimeout(function(){e(t+n)},n);return ct=t+n,r},st=function(e){return clearTimeout(e)})}};ut.default=ft;var pt={};function dt(e){return(dt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(pt,"__esModule",{value:!0}),pt.warnOnce=function(e,t){var n=!1;return function(){return n||(bt.default.window.console.warn(t),n=!0),e.apply(this,arguments)}},pt._getQBezierValue=Dt,pt.getQuadraticCurvePoint=function(e,t,n,r,o,i,a){return{x:Dt(a,e,n,o),y:Dt(a,t,r,i)}},pt.easeOutQuad=function(e,t,n,r){return-n*(e/=r)*(e-2)+t},pt.copyAction=function(e,t){return e.name=t.name,e.axis=t.axis,e.edges=t.edges,e},Object.defineProperty(pt,"win",{enumerable:!0,get:function(){return bt.default}}),Object.defineProperty(pt,"browser",{enumerable:!0,get:function(){return wt.default}}),Object.defineProperty(pt,"clone",{enumerable:!0,get:function(){return Ot.default}}),Object.defineProperty(pt,"events",{enumerable:!0,get:function(){return Pt.default}}),Object.defineProperty(pt,"extend",{enumerable:!0,get:function(){return _t.default}}),Object.defineProperty(pt,"getOriginXY",{enumerable:!0,get:function(){return xt.default}}),Object.defineProperty(pt,"hypot",{enumerable:!0,get:function(){return St.default}}),Object.defineProperty(pt,"normalizeListeners",{enumerable:!0,get:function(){return jt.default}}),Object.defineProperty(pt,"raf",{enumerable:!0,get:function(){return Mt.default}}),pt.rect=pt.pointer=pt.is=pt.dom=pt.arr=void 0;var vt=Tt(u);pt.arr=vt;var yt=Tt(C);pt.dom=yt;var mt=Tt(y);pt.is=mt;var gt=Tt(J);pt.pointer=gt;var ht=Tt(ge);pt.rect=ht;var bt=Et(l),wt=Et(j),Ot=Et(xe),Pt=Et(Te),_t=Et(me),xt=Et(Je),St=Et(K),jt=Et(et),Mt=Et(ut);function Et(e){return e&&e.__esModule?e:{default:e}}function kt(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return kt=function(){return e},e}function Tt(e){if(e&&e.__esModule)return e;if(null===e||"object"!==dt(e)&&"function"!=typeof e)return{default:e};var t=kt();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function Dt(e,t,n,r){var o=1-e;return o*o*t+2*o*e*n+e*e*r}var It={};Object.defineProperty(It,"__esModule",{value:!0}),It.default=It.defaults=void 0;var zt={base:{preventDefault:"auto",deltaSource:"page"},perAction:{enabled:!1,origin:{x:0,y:0}},actions:{}},At=It.defaults=zt;It.default=At;var Ct={};function Rt(e){return(Rt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Ct,"__esModule",{value:!0}),Ct.default=void 0;var Wt=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Rt(e)&&"function"!=typeof e)return{default:e};var t=Nt();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(u),Xt=Ft(me),Yt=Ft(et);function Ft(e){return e&&e.__esModule?e:{default:e}}function Nt(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Nt=function(){return e},e}function Lt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Vt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function qt(e,t){for(var n=0;n<t.length;n++){var r=t[n];if(e.immediatePropagationStopped)break;r(e)}}var Gt=function(){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),Vt(this,"options",void 0),Vt(this,"types",{}),Vt(this,"propagationStopped",!1),Vt(this,"immediatePropagationStopped",!1),Vt(this,"global",void 0),this.options=(0,Xt.default)({},e||{})}return function(e,t,n){t&&Lt(e.prototype,t),n&&Lt(e,n)}(t,[{key:"fire",value:function(e){var t,n=this.global;(t=this.types[e.type])&&qt(e,t),!e.propagationStopped&&n&&(t=n[e.type])&&qt(e,t)}},{key:"on",value:function(e,t){var n=(0,Yt.default)(e,t);for(e in n)this.types[e]=Wt.merge(this.types[e]||[],n[e])}},{key:"off",value:function(e,t){var n=(0,Yt.default)(e,t);for(e in n){var r=this.types[e];if(r&&r.length)for(var o=0;o<n[e].length;o++){var i=n[e][o],a=r.indexOf(i);-1!==a&&r.splice(a,1)}}}},{key:"getRect",value:function(){return null}}]),t}();Ct.default=Gt;var Ut={};function Bt(e){return(Bt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Ut,"__esModule",{value:!0}),Ut.default=Ut.Interactable=void 0;var Ht=on(u),Kt=nn(j),$t=nn(xe),Qt=nn(Te),Zt=nn(me),Jt=on(y),en=nn(et),tn=nn(Ct);function nn(e){return e&&e.__esModule?e:{default:e}}function rn(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return rn=function(){return e},e}function on(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Bt(e)&&"function"!=typeof e)return{default:e};var t=rn();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function an(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function un(e,t,n){return t&&an(e.prototype,t),n&&an(e,n),e}function ln(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var sn=function(){function r(e,t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,r),ln(this,"options",void 0),ln(this,"_actions",void 0),ln(this,"target",void 0),ln(this,"events",new tn.default),ln(this,"_context",void 0),ln(this,"_win",void 0),ln(this,"_doc",void 0),this._actions=t.actions,this.target=e,this._context=t.context||n,this._win=(0,l.getWindow)((0,C.trySelector)(e)?this._context:e),this._doc=this._win.document,this.set(t)}return un(r,[{key:"_defaults",get:function(){return{base:{},perAction:{},actions:{}}}}]),un(r,[{key:"setOnEvents",value:function(e,t){return Jt.func(t.onstart)&&this.on("".concat(e,"start"),t.onstart),Jt.func(t.onmove)&&this.on("".concat(e,"move"),t.onmove),Jt.func(t.onend)&&this.on("".concat(e,"end"),t.onend),Jt.func(t.oninertiastart)&&this.on("".concat(e,"inertiastart"),t.oninertiastart),this}},{key:"updatePerActionListeners",value:function(e,t,n){(Jt.array(t)||Jt.object(t))&&this.off(e,t),(Jt.array(n)||Jt.object(n))&&this.on(e,n)}},{key:"setPerAction",value:function(e,t){var n=this._defaults;for(var r in t){var o=this.options[e],i=t[r],a=Jt.array(i);"listeners"===r&&this.updatePerActionListeners(e,o.listeners,i),a?o[r]=Ht.from(i):!a&&Jt.plainObject(i)?(o[r]=(0,Zt.default)(o[r]||{},(0,$t.default)(i)),Jt.object(n.perAction[r])&&"enabled"in n.perAction[r]&&(o[r].enabled=!1!==i.enabled)):Jt.bool(i)&&Jt.object(n.perAction[r])?o[r].enabled=i:o[r]=i}}},{key:"getRect",value:function(e){return e=e||(Jt.element(this.target)?this.target:null),Jt.string(this.target)&&(e=e||this._context.querySelector(this.target)),(0,C.getElementRect)(e)}},{key:"rectChecker",value:function(e){return Jt.func(e)?(this.getRect=e,this):null===e?(delete this.getRect,this):this.getRect}},{key:"_backCompatOption",value:function(e,t){if((0,C.trySelector)(t)||Jt.object(t)){this.options[e]=t;for(var n=0;n<this._actions.names.length;n++){var r=this._actions.names[n];this.options[r][e]=t}return this}return this.options[e]}},{key:"origin",value:function(e){return this._backCompatOption("origin",e)}},{key:"deltaSource",value:function(e){return"page"===e||"client"===e?(this.options.deltaSource=e,this):this.options.deltaSource}},{key:"context",value:function(){return this._context}},{key:"inContext",value:function(e){return this._context===e.ownerDocument||(0,C.nodeContains)(this._context,e)}},{key:"testIgnoreAllow",value:function(e,t,n){return!this.testIgnore(e.ignoreFrom,t,n)&&this.testAllow(e.allowFrom,t,n)}},{key:"testAllow",value:function(e,t,n){return!e||!!Jt.element(n)&&(Jt.string(e)?(0,C.matchesUpTo)(n,e,t):!!Jt.element(e)&&(0,C.nodeContains)(e,n))}},{key:"testIgnore",value:function(e,t,n){return!(!e||!Jt.element(n))&&(Jt.string(e)?(0,C.matchesUpTo)(n,e,t):!!Jt.element(e)&&(0,C.nodeContains)(e,n))}},{key:"fire",value:function(e){return this.events.fire(e),this}},{key:"_onOff",value:function(e,t,n,r){Jt.object(t)&&!Jt.array(t)&&(r=n,n=null);var o="on"===e?"add":"remove",i=(0,en.default)(t,n);for(var a in i){"wheel"===a&&(a=Kt.default.wheelEvent);for(var u=0;u<i[a].length;u++){var l=i[a][u];Ht.contains(this._actions.eventTypes,a)?this.events[e](a,l):Jt.string(this.target)?Qt.default["".concat(o,"Delegate")](this.target,this._context,a,l,r):Qt.default[o](this.target,a,l,r)}}return this}},{key:"on",value:function(e,t,n){return this._onOff("on",e,t,n)}},{key:"off",value:function(e,t,n){return this._onOff("off",e,t,n)}},{key:"set",value:function(e){var t=this._defaults;for(var n in Jt.object(e)||(e={}),this.options=(0,$t.default)(t.base),this._actions.methodDict){var r=this._actions.methodDict[n];this.options[n]={},this.setPerAction(n,(0,Zt.default)((0,Zt.default)({},t.perAction),t.actions[n])),this[r](e[n])}for(var o in e)Jt.func(this[o])&&this[o](e[o]);return this}},{key:"unset",value:function(){if(Qt.default.remove(this.target,"all"),Jt.string(this.target))for(var e in Qt.default.delegatedEvents){var t=Qt.default.delegatedEvents[e];t.selectors[0]===this.target&&t.contexts[0]===this._context&&(t.selectors.splice(0,1),t.contexts.splice(0,1),t.listeners.splice(0,1),t.selectors.length||(t[e]=null)),Qt.default.remove(this._context,e,Qt.default.delegateListener),Qt.default.remove(this._context,e,Qt.default.delegateUseCapture,!0)}else Qt.default.remove(this.target,"all")}}]),r}(),cn=Ut.Interactable=sn;Ut.default=cn;var fn={};function pn(e){return(pn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(fn,"__esModule",{value:!0}),fn.default=void 0;var dn,vn=bn(u),yn=bn(C),mn=(dn=me)&&dn.__esModule?dn:{default:dn},gn=bn(y);function hn(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return hn=function(){return e},e}function bn(e){if(e&&e.__esModule)return e;if(null===e||"object"!==pn(e)&&"function"!=typeof e)return{default:e};var t=hn();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function wn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function On(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Pn=function(){function t(e){var a=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),this.scope=e,On(this,"list",[]),On(this,"selectorMap",{}),e.addListeners({"interactable:unset":function(e){var t=e.interactable,n=t.target,r=t._context,o=gn.string(n)?a.selectorMap[n]:n[a.scope.id],i=o.findIndex(function(e){return e.context===r});o[i]&&(o[i].context=null,o[i].interactable=null),o.splice(i,1)}})}return function(e,t,n){t&&wn(e.prototype,t),n&&wn(e,n)}(t,[{key:"new",value:function(e,t){t=(0,mn.default)(t||{},{actions:this.scope.actions});var n=new this.scope.Interactable(e,t,this.scope.document),r={context:n._context,interactable:n};return this.scope.addDocument(n._doc),this.list.push(n),gn.string(e)?(this.selectorMap[e]||(this.selectorMap[e]=[]),this.selectorMap[e].push(r)):(n.target[this.scope.id]||Object.defineProperty(e,this.scope.id,{value:[],configurable:!0}),e[this.scope.id].push(r)),this.scope.fire("interactable:new",{target:e,options:t,interactable:n,win:this.scope._win}),n}},{key:"get",value:function(t,e){var n=e&&e.context||this.scope.document,r=gn.string(t),o=r?this.selectorMap[t]:t[this.scope.id];if(!o)return null;var i=vn.find(o,function(e){return e.context===n&&(r||e.interactable.inContext(t))});return i&&i.interactable}},{key:"forEachMatch",value:function(e,t){for(var n=0;n<this.list.length;n++){var r=this.list[n],o=void 0;if((gn.string(r.target)?gn.element(e)&&yn.matchesSelector(e,r.target):e===r.target)&&r.inContext(e)&&(o=t(r)),void 0!==o)return o}}}]),t}();fn.default=Pn;var _n,xn,Sn={};function jn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Mn(e,t,n){return t&&jn(e.prototype,t),n&&jn(e,n),e}function En(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}Object.defineProperty(Sn,"__esModule",{value:!0}),Sn.default=Sn.BaseEvent=Sn.EventPhase=void 0,Sn.EventPhase=_n,(xn=_n||(Sn.EventPhase=_n={})).Start="start",xn.Move="move",xn.End="end",xn._NONE="";var kn=function(){function t(e){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),En(this,"type",void 0),En(this,"target",void 0),En(this,"currentTarget",void 0),En(this,"interactable",void 0),En(this,"_interaction",void 0),En(this,"timeStamp",void 0),En(this,"immediatePropagationStopped",!1),En(this,"propagationStopped",!1),this._interaction=e}return Mn(t,[{key:"interaction",get:function(){return this._interaction._proxy}}]),Mn(t,[{key:"preventDefault",value:function(){}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}}]),t}(),Tn=Sn.BaseEvent=kn;Sn.default=Tn;var Dn={};Object.defineProperty(Dn,"__esModule",{value:!0}),Dn.default=Dn.InteractEvent=Dn.EventPhase=void 0;var In,zn,An=Yn(me),Cn=Yn(Je),Rn=Yn(K),Wn=Yn(Sn),Xn=Yn(It);function Yn(e){return e&&e.__esModule?e:{default:e}}function Fn(e){return(Fn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Nn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ln(e){return(Ln=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Vn(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function qn(e,t){return(qn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Gn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}Dn.EventPhase=In,(zn=In||(Dn.EventPhase=In={})).Start="start",zn.Move="move",zn.End="end",zn._NONE="";var Un=function(){function m(e,t,n,r,o,i,a,u){var l;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,m),l=function(e,t){return!t||"object"!==Fn(t)&&"function"!=typeof t?Vn(e):t}(this,Ln(m).call(this,e)),Gn(Vn(l),"target",void 0),Gn(Vn(l),"currentTarget",void 0),Gn(Vn(l),"relatedTarget",void 0),Gn(Vn(l),"screenX",void 0),Gn(Vn(l),"screenY",void 0),Gn(Vn(l),"button",void 0),Gn(Vn(l),"buttons",void 0),Gn(Vn(l),"ctrlKey",void 0),Gn(Vn(l),"shiftKey",void 0),Gn(Vn(l),"altKey",void 0),Gn(Vn(l),"metaKey",void 0),Gn(Vn(l),"page",void 0),Gn(Vn(l),"client",void 0),Gn(Vn(l),"delta",void 0),Gn(Vn(l),"rect",void 0),Gn(Vn(l),"x0",void 0),Gn(Vn(l),"y0",void 0),Gn(Vn(l),"t0",void 0),Gn(Vn(l),"dt",void 0),Gn(Vn(l),"duration",void 0),Gn(Vn(l),"clientX0",void 0),Gn(Vn(l),"clientY0",void 0),Gn(Vn(l),"velocity",void 0),Gn(Vn(l),"speed",void 0),Gn(Vn(l),"swipe",void 0),Gn(Vn(l),"timeStamp",void 0),Gn(Vn(l),"dragEnter",void 0),Gn(Vn(l),"dragLeave",void 0),Gn(Vn(l),"axes",void 0),Gn(Vn(l),"preEnd",void 0),o=o||e.element;var s=e.interactable,c=(s&&s.options||Xn.default).deltaSource,f=(0,Cn.default)(s,o,n),p="start"===r,d="end"===r,v=p?Vn(l):e.prevEvent,y=p?e.coords.start:d?{page:v.page,client:v.client,timeStamp:e.coords.cur.timeStamp}:e.coords.cur;return l.page=(0,An.default)({},y.page),l.client=(0,An.default)({},y.client),l.rect=(0,An.default)({},e.rect),l.timeStamp=y.timeStamp,d||(l.page.x-=f.x,l.page.y-=f.y,l.client.x-=f.x,l.client.y-=f.y),l.ctrlKey=t.ctrlKey,l.altKey=t.altKey,l.shiftKey=t.shiftKey,l.metaKey=t.metaKey,l.button=t.button,l.buttons=t.buttons,l.target=o,l.currentTarget=o,l.relatedTarget=i||null,l.preEnd=a,l.type=u||n+(r||""),l.interactable=s,l.t0=p?e.pointers[e.pointers.length-1].downTime:v.t0,l.x0=e.coords.start.page.x-f.x,l.y0=e.coords.start.page.y-f.y,l.clientX0=e.coords.start.client.x-f.x,l.clientY0=e.coords.start.client.y-f.y,l.delta=p||d?{x:0,y:0}:{x:l[c].x-v[c].x,y:l[c].y-v[c].y},l.dt=e.coords.delta.timeStamp,l.duration=l.timeStamp-l.t0,l.velocity=(0,An.default)({},e.coords.velocity[c]),l.speed=(0,Rn.default)(l.velocity.x,l.velocity.y),l.swipe=d||"inertiastart"===r?l.getSwipe():null,l}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&qn(e,t)}(m,Wn["default"]),function(e,t,n){t&&Nn(e.prototype,t),n&&Nn(e,n)}(m,[{key:"getSwipe",value:function(){var e=this._interaction;if(e.prevEvent.speed<600||150<this.timeStamp-e.prevEvent.timeStamp)return null;var t=180*Math.atan2(e.prevEvent.velocityY,e.prevEvent.velocityX)/Math.PI;t<0&&(t+=360);var n=112.5<=t&&t<247.5,r=202.5<=t&&t<337.5;return{up:r,down:!r&&22.5<=t&&t<157.5,left:n,right:!n&&(292.5<=t||t<67.5),angle:t,speed:e.prevEvent.speed,velocity:{x:e.prevEvent.velocityX,y:e.prevEvent.velocityY}}}},{key:"preventDefault",value:function(){}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}},{key:"pageX",get:function(){return this.page.x},set:function(e){this.page.x=e}},{key:"pageY",get:function(){return this.page.y},set:function(e){this.page.y=e}},{key:"clientX",get:function(){return this.client.x},set:function(e){this.client.x=e}},{key:"clientY",get:function(){return this.client.y},set:function(e){this.client.y=e}},{key:"dx",get:function(){return this.delta.x},set:function(e){this.delta.x=e}},{key:"dy",get:function(){return this.delta.y},set:function(e){this.delta.y=e}},{key:"velocityX",get:function(){return this.velocity.x},set:function(e){this.velocity.x=e}},{key:"velocityY",get:function(){return this.velocity.y},set:function(e){this.velocity.y=e}}]),m}(),Bn=Dn.InteractEvent=Un;Dn.default=Bn;var Hn={};Object.defineProperty(Hn,"__esModule",{value:!0}),Hn.default=Hn.PointerInfo=void 0;function Kn(e,t,n,r,o){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,Kn),this.id=e,this.pointer=t,this.event=n,this.downTime=r,this.downTarget=o}var $n=Hn.PointerInfo=Kn;Hn.default=$n;var Qn={};function Zn(e){return(Zn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Qn,"__esModule",{value:!0}),Qn.default=void 0;var Jn=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Zn(e)&&"function"!=typeof e)return{default:e};var t=er();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(C);function er(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return er=function(){return e},e}var tr={methodOrder:["simulationResume","mouseOrPen","hasPointer","idle"],search:function(e){for(var t=0;t<tr.methodOrder.length;t++){var n;n=tr.methodOrder[t];var r=tr[n](e);if(r)return r}},simulationResume:function(e){var t=e.pointerType,n=e.eventType,r=e.eventTarget,o=e.scope;if(!/down|start/i.test(n))return null;for(var i=0;i<o.interactions.list.length;i++){var a=o.interactions.list[i],u=r;if(a.simulation&&a.simulation.allowResume&&a.pointerType===t)for(;u;){if(u===a.element)return a;u=Jn.parentNode(u)}}return null},mouseOrPen:function(e){var t,n=e.pointerId,r=e.pointerType,o=e.eventType,i=e.scope;if("mouse"!==r&&"pen"!==r)return null;for(var a=0;a<i.interactions.list.length;a++){var u=i.interactions.list[a];if(u.pointerType===r){if(u.simulation&&!nr(u,n))continue;if(u.interacting())return u;t=t||u}}if(t)return t;for(var l=0;l<i.interactions.list.length;l++){var s=i.interactions.list[l];if(!(s.pointerType!==r||/down/i.test(o)&&s.simulation))return s}return null},hasPointer:function(e){for(var t=e.pointerId,n=e.scope,r=0;r<n.interactions.list.length;r++){var o=n.interactions.list[r];if(nr(o,t))return o}return null},idle:function(e){for(var t=e.pointerType,n=e.scope,r=0;r<n.interactions.list.length;r++){var o=n.interactions.list[r];if(1===o.pointers.length){var i=o.interactable;if(i&&(!i.options.gesture||!i.options.gesture.enabled))continue}else if(2<=o.pointers.length)continue;if(!o.interacting()&&t===o.pointerType)return o}return null}};function nr(e,t){return e.pointers.some(function(e){return e.id===t})}var rr=tr;Qn.default=rr;var or={};function ir(e){return(ir="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(or,"__esModule",{value:!0}),or.default=void 0;var ar=b({}),ur=cr(u),lr=cr(y);function sr(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return sr=function(){return e},e}function cr(e){if(e&&e.__esModule)return e;if(null===e||"object"!==ir(e)&&"function"!=typeof e)return{default:e};var t=sr();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function fr(e){var t=e.interaction;if("drag"===t.prepared.name){var n=t.prepared.axis;"x"===n?(t.coords.cur.page.y=t.coords.start.page.y,t.coords.cur.client.y=t.coords.start.client.y,t.coords.velocity.client.y=0,t.coords.velocity.page.y=0):"y"===n&&(t.coords.cur.page.x=t.coords.start.page.x,t.coords.cur.client.x=t.coords.start.client.x,t.coords.velocity.client.x=0,t.coords.velocity.page.x=0)}}function pr(e){var t=e.iEvent,n=e.interaction;if("drag"===n.prepared.name){var r=n.prepared.axis;if("x"===r||"y"===r){var o="x"===r?"y":"x";t.page[o]=n.coords.start.page[o],t.client[o]=n.coords.start.client[o],t.delta[o]=0}}}ar.ActionName.Drag="drag";var dr={id:"actions/drag",install:function(e){var t=e.actions,n=e.Interactable,r=e.defaults;e.addListeners({"interactions:before-action-move":fr,"interactions:action-resume":fr,"interactions:action-move":pr}),n.prototype.draggable=dr.draggable,t[ar.ActionName.Drag]=dr,t.names.push(ar.ActionName.Drag),ur.merge(t.eventTypes,["dragstart","dragmove","draginertiastart","dragresume","dragend"]),t.methodDict.drag="draggable",r.actions.drag=dr.defaults},draggable:function(e){return lr.object(e)?(this.options.drag.enabled=!1!==e.enabled,this.setPerAction("drag",e),this.setOnEvents("drag",e),/^(xy|x|y|start)$/.test(e.lockAxis)&&(this.options.drag.lockAxis=e.lockAxis),/^(xy|x|y)$/.test(e.startAxis)&&(this.options.drag.startAxis=e.startAxis),this):lr.bool(e)?(this.options.drag.enabled=e,this):this.options.drag},beforeMove:fr,move:pr,defaults:{startAxis:"xy",lockAxis:"xy"},checker:function(e,t,n){var r=n.options.drag;return r.enabled?{name:"drag",axis:"start"===r.lockAxis?r.startAxis:r.lockAxis}:null},getCursor:function(){return"move"}},vr=dr;or.default=vr;var yr={};Object.defineProperty(yr,"__esModule",{value:!0}),yr.default=void 0;var mr,gr=(mr=Sn)&&mr.__esModule?mr:{default:mr},hr=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==wr(e)&&"function"!=typeof e)return{default:e};var t=br();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(u);function br(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return br=function(){return e},e}function wr(e){return(wr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Or(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function Pr(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _r(e){return(_r=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function xr(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Sr(e,t){return(Sr=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function jr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Mr=function(){function u(e,t,n){var r;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,u),r=function(e,t){return!t||"object"!==wr(t)&&"function"!=typeof t?xr(e):t}(this,_r(u).call(this,t._interaction)),jr(xr(r),"target",void 0),jr(xr(r),"dropzone",void 0),jr(xr(r),"dragEvent",void 0),jr(xr(r),"relatedTarget",void 0),jr(xr(r),"draggable",void 0),jr(xr(r),"timeStamp",void 0),jr(xr(r),"propagationStopped",!1),jr(xr(r),"immediatePropagationStopped",!1);var o="dragleave"===n?e.prev:e.cur,i=o.element,a=o.dropzone;return r.type=n,r.target=i,r.currentTarget=i,r.dropzone=a,r.dragEvent=t,r.relatedTarget=t.target,r.draggable=t.interactable,r.timeStamp=t.timeStamp,r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Sr(e,t)}(u,gr["default"]),function(e,t,n){t&&Pr(e.prototype,t),n&&Pr(e,n)}(u,[{key:"reject",value:function(){var r=this,e=this._interaction.dropState;if("dropactivate"===this.type||this.dropzone&&e.cur.dropzone===this.dropzone&&e.cur.element===this.target)if(e.prev.dropzone=this.dropzone,e.prev.element=this.target,e.rejected=!0,e.events.enter=null,this.stopImmediatePropagation(),"dropactivate"===this.type){var t=e.activeDrops,n=hr.findIndex(t,function(e){var t=e.dropzone,n=e.element;return t===r.dropzone&&n===r.target});e.activeDrops=[].concat(Or(t.slice(0,n)),Or(t.slice(n+1)));var o=new u(e,this.dragEvent,"dropdeactivate");o.dropzone=this.dropzone,o.target=this.target,this.dropzone.fire(o)}else this.dropzone.fire(new u(e,this.dragEvent,"dragleave"))}},{key:"preventDefault",value:function(){}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}}]),u}();yr.default=Mr;var Er={};function kr(e){return(kr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Er,"__esModule",{value:!0}),Er.default=void 0;var Tr=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==kr(e)&&"function"!=typeof e)return{default:e};var t=Ar();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(pt),Dr=zr(or),Ir=zr(yr);function zr(e){return e&&e.__esModule?e:{default:e}}function Ar(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Ar=function(){return e},e}function Cr(e,t){for(var n=0;n<e.length;n++){var r=e[n],o=r.dropzone,i=r.element;t.dropzone=o,t.target=i,o.fire(t),t.propagationStopped=t.immediatePropagationStopped=!1}}function Rr(e,t){for(var n=function(e,t){for(var n=e.interactables,r=[],o=0;o<n.list.length;o++){var i=n.list[o];if(i.options.drop.enabled){var a=i.options.drop.accept;if(!(Tr.is.element(a)&&a!==t||Tr.is.string(a)&&!Tr.dom.matchesSelector(t,a)||Tr.is.func(a)&&!a({dropzone:i,draggableElement:t})))for(var u=Tr.is.string(i.target)?i._context.querySelectorAll(i.target):Tr.is.array(i.target)?i.target:[i.target],l=0;l<u.length;l++){var s=u[l];s!==t&&r.push({dropzone:i,element:s})}}}return r}(e,t),r=0;r<n.length;r++){var o=n[r];o.rect=o.dropzone.getRect(o.element)}return n}function Wr(e,t,n){for(var r=e.dropState,o=e.interactable,i=e.element,a=[],u=0;u<r.activeDrops.length;u++){var l=r.activeDrops[u],s=l.dropzone,c=l.element,f=l.rect;a.push(s.dropCheck(t,n,o,i,c,f)?c:null)}var p=Tr.dom.indexOfDeepestElement(a);return r.activeDrops[p]||null}function Xr(e,t,n){var r=e.dropState,o={enter:null,leave:null,activate:null,deactivate:null,move:null,drop:null};return"dragstart"===n.type&&(o.activate=new Ir.default(r,n,"dropactivate"),o.activate.target=null,o.activate.dropzone=null),"dragend"===n.type&&(o.deactivate=new Ir.default(r,n,"dropdeactivate"),o.deactivate.target=null,o.deactivate.dropzone=null),r.rejected||(r.cur.element!==r.prev.element&&(r.prev.dropzone&&(o.leave=new Ir.default(r,n,"dragleave"),n.dragLeave=o.leave.target=r.prev.element,n.prevDropzone=o.leave.dropzone=r.prev.dropzone),r.cur.dropzone&&(o.enter=new Ir.default(r,n,"dragenter"),n.dragEnter=r.cur.element,n.dropzone=r.cur.dropzone)),"dragend"===n.type&&r.cur.dropzone&&(o.drop=new Ir.default(r,n,"drop"),n.dropzone=r.cur.dropzone,n.relatedTarget=r.cur.element),"dragmove"===n.type&&r.cur.dropzone&&(o.move=new Ir.default(r,n,"dropmove"),(o.move.dragmove=n).dropzone=r.cur.dropzone)),o}function Yr(e,t){var n=e.dropState,r=n.activeDrops,o=n.cur,i=n.prev;t.leave&&i.dropzone.fire(t.leave),t.move&&o.dropzone.fire(t.move),t.enter&&o.dropzone.fire(t.enter),t.drop&&o.dropzone.fire(t.drop),t.deactivate&&Cr(r,t.deactivate),n.prev.dropzone=o.dropzone,n.prev.element=o.element}function Fr(e,t){var n=e.interaction,r=e.iEvent,o=e.event;if("dragmove"===r.type||"dragend"===r.type){var i=n.dropState;t.dynamicDrop&&(i.activeDrops=Rr(t,n.element));var a=r,u=Wr(n,a,o);i.rejected=i.rejected&&!!u&&u.dropzone===i.cur.dropzone&&u.element===i.cur.element,i.cur.dropzone=u&&u.dropzone,i.cur.element=u&&u.element,i.events=Xr(n,0,a)}}var Nr={id:"actions/drop",install:function(t){var e=t.actions,n=t.interact,r=t.Interactable,o=t.defaults;t.usePlugin(Dr.default),r.prototype.dropzone=function(e){return function(e,t){if(Tr.is.object(t)){if(e.options.drop.enabled=!1!==t.enabled,t.listeners){var n=Tr.normalizeListeners(t.listeners),r=Object.keys(n).reduce(function(e,t){return e[/^(enter|leave)/.test(t)?"drag".concat(t):/^(activate|deactivate|move)/.test(t)?"drop".concat(t):t]=n[t],e},{});e.off(e.options.drop.listeners),e.on(r),e.options.drop.listeners=r}return Tr.is.func(t.ondrop)&&e.on("drop",t.ondrop),Tr.is.func(t.ondropactivate)&&e.on("dropactivate",t.ondropactivate),Tr.is.func(t.ondropdeactivate)&&e.on("dropdeactivate",t.ondropdeactivate),Tr.is.func(t.ondragenter)&&e.on("dragenter",t.ondragenter),Tr.is.func(t.ondragleave)&&e.on("dragleave",t.ondragleave),Tr.is.func(t.ondropmove)&&e.on("dropmove",t.ondropmove),/^(pointer|center)$/.test(t.overlap)?e.options.drop.overlap=t.overlap:Tr.is.number(t.overlap)&&(e.options.drop.overlap=Math.max(Math.min(1,t.overlap),0)),"accept"in t&&(e.options.drop.accept=t.accept),"checker"in t&&(e.options.drop.checker=t.checker),e}if(Tr.is.bool(t))return e.options.drop.enabled=t,e;return e.options.drop}(this,e)},r.prototype.dropCheck=function(e,t,n,r,o,i){return function(e,t,n,r,o,i,a){var u=!1;if(!(a=a||e.getRect(i)))return!!e.options.drop.checker&&e.options.drop.checker(t,n,u,e,i,r,o);var l=e.options.drop.overlap;if("pointer"===l){var s=Tr.getOriginXY(r,o,"drag"),c=Tr.pointer.getPageXY(t);c.x+=s.x,c.y+=s.y;var f=c.x>a.left&&c.x<a.right,p=c.y>a.top&&c.y<a.bottom;u=f&&p}var d=r.getRect(o);if(d&&"center"===l){var v=d.left+d.width/2,y=d.top+d.height/2;u=v>=a.left&&v<=a.right&&y>=a.top&&y<=a.bottom}if(d&&Tr.is.number(l)){var m=Math.max(0,Math.min(a.right,d.right)-Math.max(a.left,d.left))*Math.max(0,Math.min(a.bottom,d.bottom)-Math.max(a.top,d.top))/(d.width*d.height);u=l<=m}e.options.drop.checker&&(u=e.options.drop.checker(t,n,u,e,i,r,o));return u}(this,e,t,n,r,o,i)},n.dynamicDrop=function(e){return Tr.is.bool(e)?(t.dynamicDrop=e,n):t.dynamicDrop},Tr.arr.merge(e.eventTypes,["dragenter","dragleave","dropactivate","dropdeactivate","dropmove","drop"]),e.methodDict.drop="dropzone",t.dynamicDrop=!1,o.actions.drop=Nr.defaults},listeners:{"interactions:before-action-start":function(e){var t=e.interaction;"drag"===t.prepared.name&&(t.dropState={cur:{dropzone:null,element:null},prev:{dropzone:null,element:null},rejected:null,events:null,activeDrops:null})},"interactions:after-action-start":function(e,t){var n=e.interaction,r=(e.event,e.iEvent);if("drag"===n.prepared.name){var o=n.dropState;o.activeDrops=null,o.events=null,o.activeDrops=Rr(t,n.element),o.events=Xr(n,0,r),o.events.activate&&Cr(o.activeDrops,o.events.activate)}},"interactions:action-move":Fr,"interactions:action-end":Fr,"interactions:after-action-move":function(e){var t=e.interaction;"drag"===t.prepared.name&&(Yr(t,t.dropState.events),t.dropState.events={})},"interactions:after-action-end":function(e){var t=e.interaction;"drag"===t.prepared.name&&Yr(t,t.dropState.events)},"interactions:stop":function(e){var t=e.interaction;if("drag"===t.prepared.name){var n=t.dropState;n&&(n.activeDrops=null,n.events=null,n.cur.dropzone=null,n.cur.element=null,n.prev.dropzone=null,n.prev.element=null,n.rejected=!1)}}},getActiveDrops:Rr,getDrop:Wr,getDropEvents:Xr,fireDropEvents:Yr,defaults:{enabled:!1,accept:null,overlap:"pointer"}},Lr=Nr;Er.default=Lr;var Vr={};function qr(e){return(qr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Vr,"__esModule",{value:!0}),Vr.default=void 0;var Gr,Ur=(Gr=Dn)&&Gr.__esModule?Gr:{default:Gr},Br=b({}),Hr=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==qr(e)&&"function"!=typeof e)return{default:e};var t=Kr();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(pt);function Kr(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Kr=function(){return e},e}Br.ActionName.Gesture="gesture";var $r={id:"actions/gesture",install:function(e){var t=e.actions,n=e.Interactable,r=e.defaults;n.prototype.gesturable=function(e){return Hr.is.object(e)?(this.options.gesture.enabled=!1!==e.enabled,this.setPerAction("gesture",e),this.setOnEvents("gesture",e),this):Hr.is.bool(e)?(this.options.gesture.enabled=e,this):this.options.gesture},t[Br.ActionName.Gesture]=$r,t.names.push(Br.ActionName.Gesture),Hr.arr.merge(t.eventTypes,["gesturestart","gesturemove","gestureend"]),t.methodDict.gesture="gesturable",r.actions.gesture=$r.defaults},listeners:{"interactions:action-start":Qr,"interactions:action-move":Qr,"interactions:action-end":Qr,"interactions:new":function(e){e.interaction.gesture={angle:0,distance:0,scale:1,startAngle:0,startDistance:0}}},defaults:{},checker:function(e,t,n,r,o){return 2<=o.pointers.length?{name:"gesture"}:null},getCursor:function(){return""}};function Qr(e){var t=e.interaction,n=e.iEvent,r=e.event,o=e.phase;if("gesture"===t.prepared.name){var i=t.pointers.map(function(e){return e.pointer}),a="start"===o,u="end"===o,l=t.interactable.options.deltaSource;if(n.touches=[i[0],i[1]],a)n.distance=Hr.pointer.touchDistance(i,l),n.box=Hr.pointer.touchBBox(i),n.scale=1,n.ds=0,n.angle=Hr.pointer.touchAngle(i,l),n.da=0,t.gesture.startDistance=n.distance,t.gesture.startAngle=n.angle;else if(u||r instanceof Ur.default){var s=t.prevEvent;n.distance=s.distance,n.box=s.box,n.scale=s.scale,n.ds=0,n.angle=s.angle,n.da=0}else n.distance=Hr.pointer.touchDistance(i,l),n.box=Hr.pointer.touchBBox(i),n.scale=n.distance/t.gesture.startDistance,n.angle=Hr.pointer.touchAngle(i,l),n.ds=n.scale-t.gesture.scale,n.da=n.angle-t.gesture.angle;t.gesture.distance=n.distance,t.gesture.angle=n.angle,Hr.is.number(n.scale)&&n.scale!==1/0&&!isNaN(n.scale)&&(t.gesture.scale=n.scale)}}var Zr=$r;Vr.default=Zr;var Jr={};function eo(e){return(eo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Jr,"__esModule",{value:!0}),Jr.default=void 0;var to,no=b({}),ro=lo(u),oo=lo(C),io=(to=me)&&to.__esModule?to:{default:to},ao=lo(y);function uo(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return uo=function(){return e},e}function lo(e){if(e&&e.__esModule)return e;if(null===e||"object"!==eo(e)&&"function"!=typeof e)return{default:e};var t=uo();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}var so={id:"actions/resize",install:function(t){var e=t.actions,n=t.browser,r=t.Interactable,o=t.defaults;so.cursors=function(e){return e.isIe9?{x:"e-resize",y:"s-resize",xy:"se-resize",top:"n-resize",left:"w-resize",bottom:"s-resize",right:"e-resize",topleft:"se-resize",bottomright:"se-resize",topright:"ne-resize",bottomleft:"ne-resize"}:{x:"ew-resize",y:"ns-resize",xy:"nwse-resize",top:"ns-resize",left:"ew-resize",bottom:"ns-resize",right:"ew-resize",topleft:"nwse-resize",bottomright:"nwse-resize",topright:"nesw-resize",bottomleft:"nesw-resize"}}(n),so.defaultMargin=n.supportsTouch||n.supportsPointerEvent?20:10,r.prototype.resizable=function(e){return function(e,t,n){if(ao.object(t))return e.options.resize.enabled=!1!==t.enabled,e.setPerAction("resize",t),e.setOnEvents("resize",t),ao.string(t.axis)&&/^x$|^y$|^xy$/.test(t.axis)?e.options.resize.axis=t.axis:null===t.axis&&(e.options.resize.axis=n.defaults.actions.resize.axis),ao.bool(t.preserveAspectRatio)?e.options.resize.preserveAspectRatio=t.preserveAspectRatio:ao.bool(t.square)&&(e.options.resize.square=t.square),e;if(ao.bool(t))return e.options.resize.enabled=t,e;return e.options.resize}(this,e,t)},e[no.ActionName.Resize]=so,e.names.push(no.ActionName.Resize),ro.merge(e.eventTypes,["resizestart","resizemove","resizeinertiastart","resizeresume","resizeend"]),e.methodDict.resize="resizable",o.actions.resize=so.defaults},listeners:{"interactions:new":function(e){e.interaction.resizeAxes="xy"},"interactions:action-start":function(e){!function(e){var t=e.iEvent,n=e.interaction;if("resize"!==n.prepared.name||!n.prepared.edges)return;var r=(0,io.default)({},n.rect),o=n.interactable.options.resize;if(o.square||o.preserveAspectRatio){var i=(0,io.default)({},n.prepared.edges);i.top=i.top||i.left&&!i.bottom,i.left=i.left||i.top&&!i.right,i.bottom=i.bottom||i.right&&!i.top,i.right=i.right||i.bottom&&!i.left,n.prepared._linkedEdges=i}else n.prepared._linkedEdges=null;o.preserveAspectRatio&&(n.resizeStartAspectRatio=r.width/r.height);n.resizeRects={start:r,current:{left:r.left,right:r.right,top:r.top,bottom:r.bottom},inverted:(0,io.default)({},r),previous:(0,io.default)({},r),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},t.edges=n.prepared.edges,t.rect=n.resizeRects.inverted,t.deltaRect=n.resizeRects.delta}(e),fo(e)},"interactions:action-move":function(e){!function(e){var t=e.iEvent,n=e.interaction;if("resize"!==n.prepared.name||!n.prepared.edges)return;var r=n.interactable.options.resize,o=r.invert,i="reposition"===o||"negate"===o,a=n.prepared.edges,u=n.resizeRects.start,l=n.resizeRects.current,s=n.resizeRects.inverted,c=n.resizeRects.delta,f=(0,io.default)(n.resizeRects.previous,s),p=a,d=(0,io.default)({},t.delta);if(r.preserveAspectRatio||r.square){var v=r.preserveAspectRatio?n.resizeStartAspectRatio:1;a=n.prepared._linkedEdges,p.left&&p.bottom||p.right&&p.top?d.y=-d.x/v:p.left||p.right?d.y=d.x/v:(p.top||p.bottom)&&(d.x=d.y*v)}a.top&&(l.top+=d.y);a.bottom&&(l.bottom+=d.y);a.left&&(l.left+=d.x);a.right&&(l.right+=d.x);if(i){var y;if((0,io.default)(s,l),"reposition"===o)s.top>s.bottom&&(y=s.top,s.top=s.bottom,s.bottom=y),s.left>s.right&&(y=s.left,s.left=s.right,s.right=y)}else s.top=Math.min(l.top,u.bottom),s.bottom=Math.max(l.bottom,u.top),s.left=Math.min(l.left,u.right),s.right=Math.max(l.right,u.left);for(var m in s.width=s.right-s.left,s.height=s.bottom-s.top,s)c[m]=s[m]-f[m];t.edges=n.prepared.edges,t.rect=s,t.deltaRect=c}(e),fo(e)},"interactions:action-end":function(e){var t=e.iEvent,n=e.interaction;if("resize"!==n.prepared.name||!n.prepared.edges)return;t.edges=n.prepared.edges,t.rect=n.resizeRects.inverted,t.deltaRect=n.resizeRects.delta}},defaults:{square:!(no.ActionName.Resize="resize"),preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},checker:function(e,t,n,r,o,i){if(!i)return null;var a=(0,io.default)({},o.coords.cur.page),u=n.options;if(u.resize.enabled){var l=u.resize,s={left:!1,right:!1,top:!1,bottom:!1};if(ao.object(l.edges)){for(var c in s)s[c]=co(c,l.edges[c],a,o._latestPointer.eventTarget,r,i,l.margin||this.defaultMargin);if(s.left=s.left&&!s.right,s.top=s.top&&!s.bottom,s.left||s.right||s.top||s.bottom)return{name:"resize",edges:s}}else{var f="y"!==u.resize.axis&&a.x>i.right-this.defaultMargin,p="x"!==u.resize.axis&&a.y>i.bottom-this.defaultMargin;if(f||p)return{name:"resize",axes:(f?"x":"")+(p?"y":"")}}}return null},cursors:null,getCursor:function(e){var t=e.edges,n=e.axis,r=e.name,o=so.cursors,i=null;if(n)i=o[r+n];else if(t){for(var a="",u=["top","bottom","left","right"],l=0;l<u.length;l++){var s=u[l];t[s]&&(a+=s)}i=o[a]}return i},defaultMargin:null};function co(e,t,n,r,o,i,a){if(!t)return!1;if(!0===t){var u=ao.number(i.width)?i.width:i.right-i.left,l=ao.number(i.height)?i.height:i.bottom-i.top;if(a=Math.min(a,("left"===e||"right"===e?u:l)/2),u<0&&("left"===e?e="right":"right"===e&&(e="left")),l<0&&("top"===e?e="bottom":"bottom"===e&&(e="top")),"left"===e)return n.x<(0<=u?i.left:i.right)+a;if("top"===e)return n.y<(0<=l?i.top:i.bottom)+a;if("right"===e)return n.x>(0<=u?i.right:i.left)-a;if("bottom"===e)return n.y>(0<=l?i.bottom:i.top)-a}return!!ao.element(r)&&(ao.element(t)?t===r:oo.matchesUpTo(r,t,o))}function fo(e){var t=e.iEvent,n=e.interaction;n.prepared.name===no.ActionName.Resize&&n.resizeAxes&&(n.interactable.options.resize.square?("y"===n.resizeAxes?t.delta.x=t.delta.y:t.delta.y=t.delta.x,t.axes="xy"):(t.axes=n.resizeAxes,"x"===n.resizeAxes?t.delta.y=0:"y"===n.resizeAxes&&(t.delta.x=0)))}var po=so;Jr.default=po;var vo={};Object.defineProperty(vo,"__esModule",{value:!0}),vo.install=function(e){e.usePlugin(go.default),e.usePlugin(ho.default),e.usePlugin(yo.default),e.usePlugin(mo.default)},Object.defineProperty(vo,"drag",{enumerable:!0,get:function(){return yo.default}}),Object.defineProperty(vo,"drop",{enumerable:!0,get:function(){return mo.default}}),Object.defineProperty(vo,"gesture",{enumerable:!0,get:function(){return go.default}}),Object.defineProperty(vo,"resize",{enumerable:!0,get:function(){return ho.default}}),vo.id=void 0;var yo=bo(or),mo=bo(Er),go=bo(Vr),ho=bo(Jr);function bo(e){return e&&e.__esModule?e:{default:e}}vo.id="actions";var wo={};function Oo(e){return(Oo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(wo,"__esModule",{value:!0}),wo.getContainer=ko,wo.getScroll=To,wo.getScrollSize=function(e){xo.window(e)&&(e=window.document.body);return{x:e.scrollWidth,y:e.scrollHeight}},wo.getScrollSizeDelta=function(e,t){var n=e.interaction,r=e.element,o=n&&n.interactable.options[n.prepared.name].autoScroll;if(!o||!o.enabled)return t(),{x:0,y:0};var i=ko(o.container,n.interactable,r),a=To(i);t();var u=To(i);return{x:u.x-a.x,y:u.y-a.y}},wo.default=void 0;var Po,_o=Mo(C),xo=Mo(y),So=(Po=ut)&&Po.__esModule?Po:{default:Po};function jo(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return jo=function(){return e},e}function Mo(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Oo(e)&&"function"!=typeof e)return{default:e};var t=jo();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}var Eo={defaults:{enabled:!1,margin:60,container:null,speed:300},now:Date.now,interaction:null,i:null,x:0,y:0,isScrolling:!1,prevTime:0,margin:0,speed:0,start:function(e){Eo.isScrolling=!0,So.default.cancel(Eo.i),(e.autoScroll=Eo).interaction=e,Eo.prevTime=Eo.now(),Eo.i=So.default.request(Eo.scroll)},stop:function(){Eo.isScrolling=!1,Eo.interaction&&(Eo.interaction.autoScroll=null),So.default.cancel(Eo.i)},scroll:function(){var e=Eo.interaction,t=e.interactable,n=e.element,r=t.options[Eo.interaction.prepared.name].autoScroll,o=ko(r.container,t,n),i=Eo.now(),a=(i-Eo.prevTime)/1e3,u=r.speed*a;if(1<=u){var l={x:Eo.x*u,y:Eo.y*u};if(l.x||l.y){var s=To(o);xo.window(o)?o.scrollBy(l.x,l.y):o&&(o.scrollLeft+=l.x,o.scrollTop+=l.y);var c=To(o),f={x:c.x-s.x,y:c.y-s.y};(f.x||f.y)&&t.fire({type:"autoscroll",target:n,interactable:t,delta:f,interaction:e,container:o})}Eo.prevTime=i}Eo.isScrolling&&(So.default.cancel(Eo.i),Eo.i=So.default.request(Eo.scroll))},check:function(e,t){var n=e.options;return n[t].autoScroll&&n[t].autoScroll.enabled},onInteractionMove:function(e){var t=e.interaction,n=e.pointer;if(t.interacting()&&Eo.check(t.interactable,t.prepared.name))if(t.simulation)Eo.x=Eo.y=0;else{var r,o,i,a,u=t.interactable,l=t.element,s=u.options[t.prepared.name].autoScroll,c=ko(s.container,u,l);if(xo.window(c))a=n.clientX<Eo.margin,r=n.clientY<Eo.margin,o=n.clientX>c.innerWidth-Eo.margin,i=n.clientY>c.innerHeight-Eo.margin;else{var f=_o.getElementClientRect(c);a=n.clientX<f.left+Eo.margin,r=n.clientY<f.top+Eo.margin,o=n.clientX>f.right-Eo.margin,i=n.clientY>f.bottom-Eo.margin}Eo.x=o?1:a?-1:0,Eo.y=i?1:r?-1:0,Eo.isScrolling||(Eo.margin=s.margin,Eo.speed=s.speed,Eo.start(t))}}};function ko(e,t,n){return(xo.string(e)?(0,ge.getStringOptionResult)(e,t,n):e)||(0,l.getWindow)(n)}function To(e){return xo.window(e)&&(e=window.document.body),{x:e.scrollLeft,y:e.scrollTop}}var Do={id:"auto-scroll",install:function(e){var t=e.defaults,n=e.actions;(e.autoScroll=Eo).now=function(){return e.now()},n.eventTypes.push("autoscroll"),t.perAction.autoScroll=Eo.defaults},listeners:{"interactions:new":function(e){e.interaction.autoScroll=null},"interactions:destroy":function(e){e.interaction.autoScroll=null,Eo.stop(),Eo.interaction&&(Eo.interaction=null)},"interactions:stop":Eo.stop,"interactions:action-move":function(e){return Eo.onInteractionMove(e)}}};wo.default=Do;var Io={};function zo(e){return(zo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Io,"__esModule",{value:!0}),Io.default=void 0;var Ao=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==zo(e)&&"function"!=typeof e)return{default:e};var t=Co();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(y);function Co(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Co=function(){return e},e}function Ro(e,t,n,r){var o=this.defaultActionChecker(e,t,n,r);return this.options.actionChecker?this.options.actionChecker(e,t,o,this,r,n):o}function Wo(e){return Ao.bool(e)?(this.options.styleCursor=e,this):null===e?(delete this.options.styleCursor,this):this.options.styleCursor}function Xo(e){return Ao.func(e)?(this.options.actionChecker=e,this):null===e?(delete this.options.actionChecker,this):this.options.actionChecker}var Yo={id:"auto-start/interactableMethods",install:function(e){var t=e.Interactable,o=e.actions;t.prototype.getAction=Ro,t.prototype.ignoreFrom=(0,pt.warnOnce)(function(e){return this._backCompatOption("ignoreFrom",e)},"Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue})."),t.prototype.allowFrom=(0,pt.warnOnce)(function(e){return this._backCompatOption("allowFrom",e)},"Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue})."),t.prototype.actionChecker=Xo,t.prototype.styleCursor=Wo,t.prototype.defaultActionChecker=function(e,t,n,r){return function(e,t,n,r,o,i){for(var a=e.getRect(o),u=n.buttons||{0:1,1:4,3:8,4:16}[n.button],l=null,s=0;s<i.names.length;s++){var c=i.names[s];if((!r.pointerIsDown||!/mouse|pointer/.test(r.pointerType)||0!=(u&e.options[c].mouseButtons))&&(l=i[c].checker(t,n,e,o,r,a)))return l}}(this,e,t,n,r,o)}}};Io.default=Yo;var Fo={};function No(e){return(No="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Fo,"__esModule",{value:!0}),Fo.default=void 0;var Lo,Vo=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==No(e)&&"function"!=typeof e)return{default:e};var t=Go();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(pt),qo=(Lo=Io)&&Lo.__esModule?Lo:{default:Lo};function Go(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Go=function(){return e},e}function Uo(e,t,n,r,o){return t.testIgnoreAllow(t.options[e.name],n,r)&&t.options[e.name].enabled&&$o(t,n,e,o)?e:null}function Bo(e,t,n,r,o,i,a){for(var u=0,l=r.length;u<l;u++){var s=r[u],c=o[u],f=s.getAction(t,n,e,c);if(f){var p=Uo(f,s,c,i,a);if(p)return{action:p,interactable:s,element:c}}}return{action:null,interactable:null,element:null}}function Ho(e,t,n,r,o){var i=[],a=[],u=r;function l(e){i.push(e),a.push(u)}for(;Vo.is.element(u);){i=[],a=[],o.interactables.forEachMatch(u,l);var s=Bo(e,t,n,i,a,r,o);if(s.action&&!s.interactable.options[s.action.name].manualStart)return s;u=Vo.dom.parentNode(u)}return{action:null,interactable:null,element:null}}function Ko(e,t,n){var r=t.action,o=t.interactable,i=t.element;r=r||{name:null},e.interactable&&e.interactable.options.styleCursor&&Zo(e.element,"",n),e.interactable=o,e.element=i,Vo.copyAction(e.prepared,r),e.rect=o&&r.name?o.getRect(i):null,Jo(e,n),n.fire("autoStart:prepared",{interaction:e})}function $o(e,t,n,r){var o=e.options,i=o[n.name].max,a=o[n.name].maxPerElement,u=r.autoStart.maxInteractions,l=0,s=0,c=0;if(!(i&&a&&u))return!1;for(var f=0;f<r.interactions.list.length;f++){var p=r.interactions.list[f],d=p.prepared.name;if(p.interacting()){if(u<=++l)return!1;if(p.interactable===e){if(i<=(s+=d===n.name?1:0))return!1;if(p.element===t&&(c++,d===n.name&&a<=c))return!1}}}return 0<u}function Qo(e,t){return Vo.is.number(e)?(t.autoStart.maxInteractions=e,this):t.autoStart.maxInteractions}function Zo(e,t,n){n.autoStart.cursorElement&&(n.autoStart.cursorElement.style.cursor=""),e.ownerDocument.documentElement.style.cursor=t,e.style.cursor=t,n.autoStart.cursorElement=t?e:null}function Jo(e,t){var n=e.interactable,r=e.element,o=e.prepared;if("mouse"===e.pointerType&&n&&n.options.styleCursor){var i="";if(o.name){var a=n.options[o.name].cursorChecker;i=Vo.is.func(a)?a(o,n,r,e._interacting):t.actions[o.name].getCursor(o)}Zo(e.element,i||"",t)}}var ei={id:"auto-start/base",install:function(t){var e=t.interact,n=t.defaults;t.usePlugin(qo.default),n.base.actionChecker=null,n.base.styleCursor=!0,Vo.extend(n.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),e.maxInteractions=function(e){return Qo(e,t)},t.autoStart={maxInteractions:1/0,withinInteractionLimit:$o,cursorElement:null}},listeners:{"interactions:down":function(e,t){var n=e.interaction,r=e.pointer,o=e.event,i=e.eventTarget;n.interacting()||Ko(n,Ho(n,r,o,i,t),t)},"interactions:move":function(e,t){!function(e,t){var n=e.interaction,r=e.pointer,o=e.event,i=e.eventTarget;"mouse"!==n.pointerType||n.pointerIsDown||n.interacting()||Ko(n,Ho(n,r,o,i,t),t)}(e,t),function(e,t){var n=e.interaction;if(n.pointerIsDown&&!n.interacting()&&n.pointerWasMoved&&n.prepared.name){t.fire("autoStart:before-start",e);var r=n.interactable;n.prepared.name&&r&&(r.options[n.prepared.name].manualStart||!$o(r,n.element,n.prepared,t)?n.stop():(n.start(n.prepared,r,n.element),Jo(n,t)))}}(e,t)},"interactions:stop":function(e,t){var n=e.interaction,r=n.interactable;r&&r.options.styleCursor&&Zo(n.element,"",t)}},before:"ations",maxInteractions:Qo,withinInteractionLimit:$o,validateAction:Uo};Fo.default=ei;var ti={};function ni(e){return(ni="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(ti,"__esModule",{value:!0}),ti.default=void 0;var ri,oi=b({}),ii=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==ni(e)&&"function"!=typeof e)return{default:e};var t=ui();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(y),ai=(ri=Fo)&&ri.__esModule?ri:{default:ri};function ui(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return ui=function(){return e},e}var li={id:"auto-start/dragAxis",listeners:{"autoStart:before-start":function(e,r){var o=e.interaction,i=e.eventTarget,t=e.dx,n=e.dy;if("drag"===o.prepared.name){var a=Math.abs(t),u=Math.abs(n),l=o.interactable.options.drag,s=l.startAxis,c=u<a?"x":a<u?"y":"xy";if(o.prepared.axis="start"===l.lockAxis?c[0]:l.lockAxis,"xy"!=c&&"xy"!==s&&s!==c){o.prepared.name=null;function f(e){if(e!==o.interactable){var t=o.interactable.options.drag;if(!t.manualStart&&e.testIgnoreAllow(t,p,i)){var n=e.getAction(o.downPointer,o.downEvent,o,p);if(n&&n.name===oi.ActionName.Drag&&function(e,t){if(!t)return!1;var n=t.options[oi.ActionName.Drag].startAxis;return"xy"===e||"xy"===n||n===e}(c,e)&&ai.default.validateAction(n,e,p,i,r))return e}}}for(var p=i;ii.element(p);){var d=r.interactables.forEachMatch(p,f);if(d){o.prepared.name=oi.ActionName.Drag,o.interactable=d,o.element=p;break}p=(0,C.parentNode)(p)}}}}}};ti.default=li;var si={};Object.defineProperty(si,"__esModule",{value:!0}),si.default=void 0;var ci,fi=(ci=Fo)&&ci.__esModule?ci:{default:ci};function pi(e){var t=e.prepared&&e.prepared.name;if(!t)return null;var n=e.interactable.options;return n[t].hold||n[t].delay}var di={id:"auto-start/hold",install:function(e){var t=e.defaults;e.usePlugin(fi.default),t.perAction.hold=0,t.perAction.delay=0},listeners:{"interactions:new":function(e){e.interaction.autoStartHoldTimer=null},"autoStart:prepared":function(e){var t=e.interaction,n=pi(t);0<n&&(t.autoStartHoldTimer=setTimeout(function(){t.start(t.prepared,t.interactable,t.element)},n))},"interactions:move":function(e){var t=e.interaction,n=e.duplicate;t.pointerWasMoved&&!n&&clearTimeout(t.autoStartHoldTimer)},"autoStart:before-start":function(e){var t=e.interaction;0<pi(t)&&(t.prepared.name=null)}},getHoldDuration:pi};si.default=di;var vi={};Object.defineProperty(vi,"__esModule",{value:!0}),vi.install=function(e){e.usePlugin(yi.default),e.usePlugin(gi.default),e.usePlugin(mi.default)},Object.defineProperty(vi,"autoStart",{enumerable:!0,get:function(){return yi.default}}),Object.defineProperty(vi,"dragAxis",{enumerable:!0,get:function(){return mi.default}}),Object.defineProperty(vi,"hold",{enumerable:!0,get:function(){return gi.default}}),vi.id=void 0;var yi=hi(Fo),mi=hi(ti),gi=hi(si);function hi(e){return e&&e.__esModule?e:{default:e}}vi.id="auto-start";var bi={};function wi(e){return(wi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(bi,"__esModule",{value:!0}),bi.install=Mi,bi.default=void 0;var Oi,Pi=(Oi=Te)&&Oi.__esModule?Oi:{default:Oi},_i=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==wi(e)&&"function"!=typeof e)return{default:e};var t=xi();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(y);function xi(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return xi=function(){return e},e}function Si(e){return/^(always|never|auto)$/.test(e)?(this.options.preventDefault=e,this):_i.bool(e)?(this.options.preventDefault=e?"always":"never",this):this.options.preventDefault}function ji(e){var t=e.interaction,n=e.event;t.interactable&&t.interactable.checkAndPreventDefault(n)}function Mi(r){var e=r.Interactable;e.prototype.preventDefault=Si,e.prototype.checkAndPreventDefault=function(e){return function(e,t,n){var r=e.options.preventDefault;if("never"!==r)if("always"!==r){if(Pi.default.supportsPassive&&/^touch(start|move)$/.test(n.type)){var o=(0,l.getWindow)(n.target).document,i=t.getDocOptions(o);if(!i||!i.events||!1!==i.events.passive)return}/^(mouse|pointer|touch)*(down|start)/i.test(n.type)||_i.element(n.target)&&(0,C.matchesSelector)(n.target,"input,select,textarea,[contenteditable=true],[contenteditable=true] *")||n.preventDefault()}else n.preventDefault()}(this,r,e)},r.interactions.docEvents.push({type:"dragstart",listener:function(e){for(var t=0;t<r.interactions.list.length;t++){var n=r.interactions.list[t];if(n.element&&(n.element===e.target||(0,C.nodeContains)(n.element,e.target)))return void n.interactable.checkAndPreventDefault(e)}}})}var Ei={id:"core/interactablePreventDefault",install:Mi,listeners:["down","move","up","cancel"].reduce(function(e,t){return e["interactions:".concat(t)]=ji,e},{})};bi.default=Ei;var ki={};function Ti(e){return(Ti="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(ki,"__esModule",{value:!0}),ki.default=void 0;var Di,Ii,zi=Xi(k),Ai=Xi(me),Ci=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Ti(e)&&"function"!=typeof e)return{default:e};var t=Wi();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(y),Ri=Xi(l);function Wi(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Wi=function(){return e},e}function Xi(e){return e&&e.__esModule?e:{default:e}}function Yi(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}(Ii=Di=Di||{}).touchAction="",Ii.boxSizing="",Ii.noListeners="";var Fi="[interact.js] ",Ni={touchAction:"https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action",boxSizing:"https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing"};var Li=[{name:"touchAction",perform:function(e){return!function(e,t,n){var r=e;for(;Ci.element(r);){if(Vi(r,t,n))return!0;r=(0,C.parentNode)(r)}return!1}(e.element,"touchAction",/pan-|pinch|none/)},getInfo:function(e){return[e.element,Ni.touchAction]},text:'Consider adding CSS "touch-action: none" to this element\n'},{name:"boxSizing",perform:function(e){var t=e.element;return"resize"===e.prepared.name&&t instanceof zi.default.HTMLElement&&!Vi(t,"boxSizing",/border-box/)},text:'Consider adding CSS "box-sizing: border-box" to this resizable element',getInfo:function(e){return[e.element,Ni.boxSizing]}},{name:"noListeners",perform:function(e){var t=e.prepared.name;return!(e.interactable.events.types["".concat(t,"move")]||[]).length},getInfo:function(e){return[e.prepared.name,e.interactable]},text:"There are no listeners set for this action"}];function Vi(e,t,n){return n.test(e.style[t]||Ri.default.window.getComputedStyle(e)[t])}var qi="dev-tools",Gi={id:qi,install:function(e){var t=(1<arguments.length&&void 0!==arguments[1]?arguments[1]:{}).logger,n=e.Interactable,r=e.defaults;e.logger=t||console,r.base.devTools={ignore:{}},n.prototype.devTools=function(e){return e?((0,Ai.default)(this.options.devTools,e),this):this.options.devTools}},listeners:{"interactions:action-start":function(e,t){for(var n=e.interaction,r=0;r<Li.length;r++){var o,i=Li[r],a=n.interactable&&n.interactable.options[n.prepared.name];if(!(a&&a.devTools&&a.devTools.ignore[i.name])&&i.perform(n))(o=t.logger).warn.apply(o,[Fi+i.text].concat(Yi(i.getInfo(n))))}}},checks:Li,CheckName:Di,links:Ni,prefix:Fi};ki.default=Gi;var Ui={};Object.defineProperty(Ui,"__esModule",{value:!0}),Ui.startAll=Qi,Ui.setAll=Zi,Ui.prepareStates=ra,Ui.setCoords=oa,Ui.restoreCoords=ia,Ui.makeModifier=la,Ui.default=void 0;var Bi,Hi=(Bi=me)&&Bi.__esModule?Bi:{default:Bi};function Ki(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function $i(e,t,n){var r=e.interaction,o=e.phase,i=r.interactable,a=r.element,u=ra(na(r)),l=(0,Hi.default)({},r.rect);"width"in l||(l.width=l.right-l.left),"height"in l||(l.height=l.bottom-l.top);var s=ua(l,t);r.modifiers.startOffset=s,r.modifiers.startDelta={x:0,y:0};var c={interaction:r,interactable:i,element:a,pageCoords:t,phase:o,rect:l,startOffset:s,states:u,preEnd:!1,requireEndOnly:!1,prevCoords:n||(r.modifiers.result?r.modifiers.result.coords:r.coords.prev.page)};return r.modifiers.states=u,r.modifiers.result=null,Qi(c),r.modifiers.result=Zi(c)}function Qi(e){for(var t=e.states,n=0;n<t.length;n++){var r=t[n];r.methods.start&&(e.state=r).methods.start(e)}}function Zi(e){var t=e.prevCoords,n=e.phase,r=e.preEnd,o=e.requireEndOnly,i=e.rect,a=e.states;e.coords=(0,Hi.default)({},e.pageCoords),e.rect=(0,Hi.default)({},i);for(var u={delta:{x:0,y:0},rectDelta:{left:0,right:0,top:0,bottom:0},coords:e.coords,changed:!0},l=0;l<a.length;l++){var s=a[l],c=s.options;s.methods.set&&aa(c,r,o,n)&&(e.state=s).methods.set(e)}u.delta.x=e.coords.x-e.pageCoords.x,u.delta.y=e.coords.y-e.pageCoords.y;var f=!1;return i&&(u.rectDelta.left=e.rect.left-i.left,u.rectDelta.right=e.rect.right-i.right,u.rectDelta.top=e.rect.top-i.top,u.rectDelta.bottom=e.rect.bottom-i.bottom,f=0!==u.rectDelta.left||0!==u.rectDelta.right||0!==u.rectDelta.top||0!==u.rectDelta.bottom),u.changed=!t||t.x!==u.coords.x||t.y!==u.coords.y||f,u}function Ji(e){var t=e.interaction,n=e.phase,r=e.preEnd,o=e.skipModifiers,i=t.interactable,a=t.element,u=o?t.modifiers.states.slice(o):t.modifiers.states,l=e.prevCoords||(t.modifiers.result?t.modifiers.result.coords:t.coords.prev.page),s=Zi({interaction:t,interactable:i,element:a,preEnd:r,phase:n,pageCoords:e.modifiedCoords||t.coords.cur.page,prevCoords:l,rect:t.rect,states:u,requireEndOnly:!1});if(!(t.modifiers.result=s).changed&&t.interacting())return!1;if(e.modifiedCoords){var c=t.coords.cur.page,f=e.modifiedCoords.x-c.x,p=e.modifiedCoords.y-c.y;s.coords.x+=f,s.coords.y+=p,s.delta.x+=f,s.delta.y+=p}oa(e)}function ea(e){var t=e.interaction,n=e.event,r=e.noPreEnd,o=t.modifiers.states;if(!r&&o&&o.length)for(var i=!1,a=0;a<o.length;a++){var u=o[a],l=(e.state=u).options,s=u.methods;if(!1===(s.beforeEnd&&s.beforeEnd(e)))return!(t.modifiers.endPrevented=!0);!i&&aa(l,!0,!0)&&(t.move({event:n,preEnd:!0}),i=!0)}}function ta(e){var t=e.interaction,n=t.modifiers.states;if(n&&n.length){for(var r=(0,Hi.default)({states:n,interactable:t.interactable,element:t.element,rect:null},e),o=0;o<n.length;o++){var i=n[o];(r.state=i).methods.stop&&i.methods.stop(r)}e.interaction.modifiers.states=null,e.interaction.modifiers.endPrevented=null}}function na(e){var n=e.interactable.options[e.prepared.name],t=n.modifiers;return t&&t.length?t.filter(function(e){return!e.options||!1!==e.options.enabled}):["snap","snapSize","snapEdges","restrict","restrictEdges","restrictSize"].map(function(e){var t=n[e];return t&&t.enabled&&{options:t,methods:t._methods}}).filter(function(e){return!!e})}function ra(e){for(var t=[],n=0;n<e.length;n++){var r=e[n],o=r.options,i=r.methods,a=r.name;o&&!1===o.enabled||t.push({options:o,methods:i,index:n,name:a})}return t}function oa(e){var t=e.interaction,n=e.phase,r=t.coords.cur,o=t.coords.start,i=t.modifiers,a=i.result,u=i.startDelta,l=a.delta;"start"===n&&(0,Hi.default)(t.modifiers.startDelta,a.delta);for(var s=[[o,u],[r,l]],c=0;c<s.length;c++){var f=Ki(s[c],2),p=f[0],d=f[1];p.page.x+=d.x,p.page.y+=d.y,p.client.x+=d.x,p.client.y+=d.y}var v=t.modifiers.result.rectDelta,y=e.rect||t.rect;y.left+=v.left,y.right+=v.right,y.top+=v.top,y.bottom+=v.bottom,y.width=y.right-y.left,y.height=y.bottom-y.top}function ia(e){var t=e.interaction,n=t.coords,r=t.rect,o=t.modifiers;if(o.result){for(var i=o.startDelta,a=o.result,u=a.delta,l=a.rectDelta,s=[[n.start,i],[n.cur,u]],c=0;c<s.length;c++){var f=Ki(s[c],2),p=f[0],d=f[1];p.page.x-=d.x,p.page.y-=d.y,p.client.x-=d.x,p.client.y-=d.y}r.left-=l.left,r.right-=l.right,r.top-=l.top,r.bottom-=l.bottom}}function aa(e,t,n,r){return e?!1!==e.enabled&&(t||!e.endOnly)&&(!n||e.endOnly||e.alwaysOnEnd)&&(e.setStart||"start"!==r):!n}function ua(e,t){return e?{left:t.x-e.left,top:t.y-e.top,right:e.right-t.x,bottom:e.bottom-t.y}:{left:0,top:0,right:0,bottom:0}}function la(e,r){function t(e){var t=e||{};for(var n in t.enabled=!1!==t.enabled,o)n in t||(t[n]=o[n]);return{options:t,methods:i,name:r}}var o=e.defaults,i={start:e.start,set:e.set,beforeEnd:e.beforeEnd,stop:e.stop};return r&&"string"==typeof r&&(t._defaults=o,t._methods=i),t}var sa={id:"modifiers/base",install:function(e){e.defaults.perAction.modifiers=[]},listeners:{"interactions:new":function(e){e.interaction.modifiers={startOffset:{left:0,right:0,top:0,bottom:0},offsets:{},states:null,result:null,endPrevented:!1,startDelta:null}},"interactions:before-action-start":function(e){$i(e,e.interaction.coords.start.page,e.interaction.coords.prev.page),oa(e)},"interactions:action-resume":function(e){ta(e),$i(e,e.interaction.coords.cur.page,e.interaction.modifiers.result.coords),Ji(e)},"interactions:after-action-move":ia,"interactions:before-action-move":Ji,"interactions:after-action-start":ia,"interactions:before-action-end":ea,"interactions:stop":ta},before:"ations",startAll:Qi,setAll:Zi,prepareStates:ra,start:$i,beforeMove:Ji,beforeEnd:ea,stop:ta,shouldDo:aa,getModifierList:na,getRectOffset:ua,makeModifier:la};Ui.default=sa;var ca={};function fa(e){return(fa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(ca,"__esModule",{value:!0}),ca.default=void 0;var pa,da=ga(Ui),va=ga(pt),ya=(pa=ut)&&pa.__esModule?pa:{default:pa};function ma(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return ma=function(){return e},e}function ga(e){if(e&&e.__esModule)return e;if(null===e||"object"!==fa(e)&&"function"!=typeof e)return{default:e};var t=ma();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function ha(e,t){var n=Pa(e),r=n.resistance,o=-Math.log(n.endSpeed/t.v0)/r;t.x0=e.prevEvent.page.x,t.y0=e.prevEvent.page.y,t.t0=t.startEvent.timeStamp/1e3,t.sx=t.sy=0,t.modifiedXe=t.xe=(t.vx0-o)/r,t.modifiedYe=t.ye=(t.vy0-o)/r,t.te=o,t.lambda_v0=r/t.v0,t.one_ve_v0=1-n.endSpeed/t.v0}function ba(e){Oa(e),va.pointer.setCoordDeltas(e.coords.delta,e.coords.prev,e.coords.cur),va.pointer.setCoordVelocity(e.coords.velocity,e.coords.delta);var t=e.inertia,n=Pa(e).resistance,r=e._now()/1e3-t.t0;if(r<t.te){var o=1-(Math.exp(-n*r)-t.lambda_v0)/t.one_ve_v0;if(t.modifiedXe===t.xe&&t.modifiedYe===t.ye)t.sx=t.xe*o,t.sy=t.ye*o;else{var i=va.getQuadraticCurvePoint(0,0,t.xe,t.ye,t.modifiedXe,t.modifiedYe,o);t.sx=i.x,t.sy=i.y}e.move(),t.timeout=ya.default.request(function(){return ba(e)})}else t.sx=t.modifiedXe,t.sy=t.modifiedYe,e.move(),e.end(t.startEvent),t.active=!1,e.simulation=null;va.pointer.copyCoords(e.coords.prev,e.coords.cur)}function wa(e){Oa(e);var t=e.inertia,n=e._now()-t.t0,r=Pa(e).smoothEndDuration;n<r?(t.sx=va.easeOutQuad(n,0,t.xe,r),t.sy=va.easeOutQuad(n,0,t.ye,r),e.move(),t.timeout=ya.default.request(function(){return wa(e)})):(t.sx=t.xe,t.sy=t.ye,e.move(),e.end(t.startEvent),t.smoothEnd=t.active=!1,e.simulation=null)}function Oa(e){var t=e.inertia;if(t.active){var n=t.upCoords.page,r=t.upCoords.client;va.pointer.setCoords(e.coords.cur,[{pageX:n.x+t.sx,pageY:n.y+t.sy,clientX:r.x+t.sx,clientY:r.y+t.sy}],e._now())}}function Pa(e){var t=e.interactable,n=e.prepared;return t&&t.options&&n.name&&t.options[n.name].inertia}Dn.EventPhase.Resume="resume",Dn.EventPhase.InertiaStart="inertiastart";var _a={id:"inertia",install:function(e){var t=e.defaults;e.usePlugin(da.default),t.perAction.inertia={enabled:!1,resistance:10,minSpeed:100,endSpeed:10,allowResume:!0,smoothEndDuration:300}},listeners:{"interactions:new":function(e){e.interaction.inertia={active:!1,smoothEnd:!1,allowResume:!1,upCoords:{},timeout:null}},"interactions:before-action-end":function(e,t){var n=e.interaction,r=e.event,o=e.noPreEnd,i=n.inertia;if(!n.interacting()||n.simulation&&n.simulation.active||o)return null;var a,u=Pa(n),l=n._now(),s=n.coords.velocity.client,c=va.hypot(s.x,s.y),f=!1,p=u&&u.enabled&&"gesture"!==n.prepared.name&&r!==i.startEvent,d=p&&l-n.coords.cur.timeStamp<50&&c>u.minSpeed&&c>u.endSpeed,v={interaction:n,interactable:n.interactable,element:n.element,rect:n.rect,pageCoords:n.coords.cur.page,states:p&&n.modifiers.states.map(function(e){return va.extend({},e)}),preEnd:!0,prevCoords:null,requireEndOnly:null,phase:Dn.EventPhase.InertiaStart};return p&&!d&&(v.prevCoords=n.modifiers.result?n.modifiers.result.coords:n.prevEvent.page,v.requireEndOnly=!1,(a=da.default.setAll(v)).changed&&(f=!0)),d||f?(va.pointer.copyCoords(i.upCoords,n.coords.cur),(0,da.setCoords)(v),n.pointers[0].pointer=i.startEvent=new t.InteractEvent(n,r,n.prepared.name,Dn.EventPhase.InertiaStart,n.element),(0,da.restoreCoords)(v),i.t0=l,i.active=!0,i.allowResume=u.allowResume,n.simulation=i,n.interactable.fire(i.startEvent),d?(i.vx0=n.coords.velocity.client.x,i.vy0=n.coords.velocity.client.y,i.v0=c,ha(n,i),va.extend(v.pageCoords,n.coords.cur.page),v.pageCoords.x+=i.xe,v.pageCoords.y+=i.ye,v.prevCoords=null,v.requireEndOnly=!0,a=da.default.setAll(v),i.modifiedXe+=a.delta.x,i.modifiedYe+=a.delta.y,i.timeout=ya.default.request(function(){return ba(n)})):(i.smoothEnd=!0,i.xe=a.delta.x,i.ye=a.delta.y,i.sx=i.sy=0,i.timeout=ya.default.request(function(){return wa(n)})),!1):null},"interactions:down":function(e,t){var n=e.interaction,r=e.event,o=e.pointer,i=e.eventTarget,a=n.inertia;if(a.active)for(var u=i;va.is.element(u);){if(u===n.element){ya.default.cancel(a.timeout),a.active=!1,n.simulation=null,n.updatePointer(o,r,i,!0),va.pointer.setCoords(n.coords.cur,n.pointers.map(function(e){return e.pointer}),n._now());var l={interaction:n,phase:Dn.EventPhase.Resume};t.fire("interactions:action-resume",l);var s=new t.InteractEvent(n,r,n.prepared.name,Dn.EventPhase.Resume,n.element);n._fireEvent(s),va.pointer.copyCoords(n.coords.prev,n.coords.cur);break}u=va.dom.parentNode(u)}},"interactions:stop":function(e){var t=e.interaction,n=t.inertia;n.active&&(ya.default.cancel(n.timeout),n.active=!1,t.simulation=null)}},before:"modifiers/base",calcInertia:ha,inertiaTick:ba,smothEndTick:wa,updateInertiaCoords:Oa};ca.default=_a;var xa={};function Sa(e){return(Sa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(xa,"__esModule",{value:!0}),xa.getRestrictionRect=Ia,xa.default=void 0;var ja,Ma=(ja=me)&&ja.__esModule?ja:{default:ja},Ea=Da(y),ka=Da(ge);function Ta(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Ta=function(){return e},e}function Da(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Sa(e)&&"function"!=typeof e)return{default:e};var t=Ta();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function Ia(e,t,n){return Ea.func(e)?ka.resolveRectLike(e,t.interactable,t.element,[n.x,n.y,t]):ka.resolveRectLike(e,t.interactable,t.element)}var za={start:function(e){var t=e.rect,n=e.startOffset,r=e.state,o=e.interaction,i=e.pageCoords,a=r.options,u=a.elementRect,l=(0,Ma.default)({left:0,top:0,right:0,bottom:0},a.offset||{});if(t&&u){var s=Ia(a.restriction,o,i);if(s){var c=s.right-s.left-t.width,f=s.bottom-s.top-t.height;c<0&&(l.left+=c,l.right+=c),f<0&&(l.top+=f,l.bottom+=f)}l.left+=n.left-t.width*u.left,l.top+=n.top-t.height*u.top,l.right+=n.right-t.width*(1-u.right),l.bottom+=n.bottom-t.height*(1-u.bottom)}r.offset=l},set:function(e){var t=e.coords,n=e.interaction,r=e.state,o=r.options,i=r.offset,a=Ia(o.restriction,n,t);if(a){var u=ka.xywhToTlbr(a);t.x=Math.max(Math.min(u.right-i.right,t.x),u.left+i.left),t.y=Math.max(Math.min(u.bottom-i.bottom,t.y),u.top+i.top)}},defaults:{restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1}};xa.default=za;var Aa={};function Ca(e){return(Ca="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Aa,"__esModule",{value:!0}),Aa.default=void 0;var Ra,Wa=(Ra=me)&&Ra.__esModule?Ra:{default:Ra},Xa=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Ca(e)&&"function"!=typeof e)return{default:e};var t=Ya();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(ge);function Ya(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Ya=function(){return e},e}var Fa={top:1/0,left:1/0,bottom:-1/0,right:-1/0},Na={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function La(e,t){for(var n=["top","left","bottom","right"],r=0;r<n.length;r++){var o=n[r];o in e||(e[o]=t[o])}return e}var Va={noInner:Fa,noOuter:Na,start:function(e){var t,n=e.interaction,r=e.state,o=r.options,i=n.modifiers.startOffset;if(o){var a=(0,xa.getRestrictionRect)(o.offset,n,n.coords.start.page);t=Xa.rectToXY(a)}t=t||{x:0,y:0},r.offset={top:t.y+i.top,left:t.x+i.left,bottom:t.y-i.bottom,right:t.x-i.right}},set:function(e){var t=e.coords,n=e.interaction,r=e.state,o=r.offset,i=r.options,a=n.prepared._linkedEdges||n.prepared.edges;if(a){var u=(0,Wa.default)({},t),l=(0,xa.getRestrictionRect)(i.inner,n,u)||{},s=(0,xa.getRestrictionRect)(i.outer,n,u)||{};La(l,Fa),La(s,Na),a.top?t.y=Math.min(Math.max(s.top+o.top,u.y),l.top+o.top):a.bottom&&(t.y=Math.max(Math.min(s.bottom+o.bottom,u.y),l.bottom+o.bottom)),a.left?t.x=Math.min(Math.max(s.left+o.left,u.x),l.left+o.left):a.right&&(t.x=Math.max(Math.min(s.right+o.right,u.x),l.right+o.right))}},defaults:{inner:null,outer:null,offset:null,endOnly:!1,enabled:!1}};Aa.default=Va;var qa={};Object.defineProperty(qa,"__esModule",{value:!0}),qa.default=void 0;var Ga=Ba(me),Ua=Ba(xa);function Ba(e){return e&&e.__esModule?e:{default:e}}var Ha=(0,Ga.default)({get elementRect(){return{top:0,left:0,bottom:1,right:1}},set elementRect(e){}},Ua.default.defaults),Ka={start:Ua.default.start,set:Ua.default.set,defaults:Ha};qa.default=Ka;var $a={};function Qa(e){return(Qa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty($a,"__esModule",{value:!0}),$a.default=void 0;var Za=nu(me),Ja=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Qa(e)&&"function"!=typeof e)return{default:e};var t=tu();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(ge),eu=nu(Aa);function tu(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return tu=function(){return e},e}function nu(e){return e&&e.__esModule?e:{default:e}}var ru={width:-1/0,height:-1/0},ou={width:1/0,height:1/0};var iu={start:function(e){return eu.default.start(e)},set:function(e){var t=e.interaction,n=e.state,r=n.options,o=t.prepared._linkedEdges||t.prepared.edges;if(o){var i=Ja.xywhToTlbr(t.resizeRects.inverted),a=Ja.tlbrToXywh((0,xa.getRestrictionRect)(r.min,t,e.coords))||ru,u=Ja.tlbrToXywh((0,xa.getRestrictionRect)(r.max,t,e.coords))||ou;n.options={endOnly:r.endOnly,inner:(0,Za.default)({},eu.default.noInner),outer:(0,Za.default)({},eu.default.noOuter)},o.top?(n.options.inner.top=i.bottom-a.height,n.options.outer.top=i.bottom-u.height):o.bottom&&(n.options.inner.bottom=i.top+a.height,n.options.outer.bottom=i.top+u.height),o.left?(n.options.inner.left=i.right-a.width,n.options.outer.left=i.right-u.width):o.right&&(n.options.inner.right=i.left+a.width,n.options.outer.right=i.left+u.width),eu.default.set(e),n.options=r}},defaults:{min:null,max:null,endOnly:!1,enabled:!1}};$a.default=iu;var au={};function uu(e){return(uu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(au,"__esModule",{value:!0}),au.default=void 0;var lu=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==uu(e)&&"function"!=typeof e)return{default:e};var t=su();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(pt);function su(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return su=function(){return e},e}var cu={start:function(e){var t,n=e.interaction,r=e.interactable,o=e.element,i=e.rect,a=e.state,u=e.startOffset,l=a.options,s=[],c=l.offsetWithOrigin?function(e){var t=e.interaction.element;return lu.rect.rectToXY(lu.rect.resolveRectLike(e.state.options.origin,null,null,[t]))||lu.getOriginXY(e.interactable,t,e.interaction.prepared.name)}(e):{x:0,y:0};if("startCoords"===l.offset)t={x:n.coords.start.page.x,y:n.coords.start.page.y};else{var f=lu.rect.resolveRectLike(l.offset,r,o,[n]);(t=lu.rect.rectToXY(f)||{x:0,y:0}).x+=c.x,t.y+=c.y}var p=l.relativePoints||[];if(i&&l.relativePoints&&l.relativePoints.length)for(var d=0;d<p.length;d++){var v=p[d];s.push({index:d,relativePoint:v,x:u.left-i.width*v.x+t.x,y:u.top-i.height*v.y+t.y})}else s.push(lu.extend({index:0,relativePoint:null},t));a.offsets=s},set:function(e){var t,n=e.interaction,r=e.coords,o=e.state,i=o.options,a=o.offsets,u=lu.getOriginXY(n.interactable,n.element,n.prepared.name),l=lu.extend({},r),s=[];i.offsetWithOrigin||(l.x-=u.x,l.y-=u.y),o.realX=l.x,o.realY=l.y;for(var c=0;c<a.length;c++)for(var f=a[c],p=l.x-f.x,d=l.y-f.y,v=0,y=i.targets.length;v<y;v++){var m=i.targets[v];(t=lu.is.func(m)?m(p,d,n,f,v):m)&&s.push({x:(lu.is.number(t.x)?t.x:p)+f.x,y:(lu.is.number(t.y)?t.y:d)+f.y,range:lu.is.number(t.range)?t.range:i.range})}for(var g={target:null,inRange:!1,distance:0,range:0,dx:0,dy:0},h=0,b=s.length;h<b;h++){var w=(t=s[h]).range,O=t.x-l.x,P=t.y-l.y,_=lu.hypot(O,P),x=_<=w;w===1/0&&g.inRange&&g.range!==1/0&&(x=!1),g.target&&!(x?g.inRange&&w!==1/0?_/w<g.distance/g.range:w===1/0&&g.range!==1/0||_<g.distance:!g.inRange&&_<g.distance)||(g.target=t,g.distance=_,g.range=w,g.inRange=x,g.dx=O,g.dy=P,o.range=w)}g.inRange&&(r.x=g.target.x,r.y=g.target.y),o.closest=g},defaults:{range:1/0,targets:null,offset:null,offsetWithOrigin:!0,origin:null,relativePoints:null,endOnly:!1,enabled:!1}};au.default=cu;var fu={};function pu(e){return(pu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(fu,"__esModule",{value:!0}),fu.default=void 0;var du=gu(me),vu=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==pu(e)&&"function"!=typeof e)return{default:e};var t=mu();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(y),yu=gu(au);function mu(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return mu=function(){return e},e}function gu(e){return e&&e.__esModule?e:{default:e}}function hu(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}var bu={start:function(e){var t=e.interaction,n=e.state,r=n.options,o=t.prepared.edges;if(!o)return null;e.state={options:{targets:null,relativePoints:[{x:o.left?0:1,y:o.top?0:1}],offset:r.offset||"self",origin:{x:0,y:0},range:r.range}},n.targetFields=n.targetFields||[["width","height"],["x","y"]],yu.default.start(e),n.offsets=e.state.offsets,e.state=n},set:function(e){var t=e.interaction,n=e.state,r=e.coords,o=n.options,i=n.offsets,a={x:r.x-i[0].x,y:r.y-i[0].y};n.options=(0,du.default)({},o),n.options.targets=[];for(var u=0;u<(o.targets||[]).length;u++){var l=(o.targets||[])[u],s=void 0;if(s=vu.func(l)?l(a.x,a.y,t):l){for(var c=0;c<n.targetFields.length;c++){var f=hu(n.targetFields[c],2),p=f[0],d=f[1];if(p in s||d in s){s.x=s[p],s.y=s[d];break}}n.options.targets.push(s)}}yu.default.set(e),n.options=o},defaults:{range:1/0,targets:null,offset:null,endOnly:!1,enabled:!1}};fu.default=bu;var wu={};Object.defineProperty(wu,"__esModule",{value:!0}),wu.default=void 0;var Ou=xu(xe),Pu=xu(me),_u=xu(fu);function xu(e){return e&&e.__esModule?e:{default:e}}var Su={start:function(e){var t=e.interaction.prepared.edges;return t?(e.state.targetFields=e.state.targetFields||[[t.left?"left":"right",t.top?"top":"bottom"]],_u.default.start(e)):null},set:function(e){return _u.default.set(e)},defaults:(0,Pu.default)((0,Ou.default)(_u.default.defaults),{offset:{x:0,y:0}})};wu.default=Su;var ju={};Object.defineProperty(ju,"__esModule",{value:!0}),ju.restrictSize=ju.restrictEdges=ju.restrictRect=ju.restrict=ju.snapEdges=ju.snapSize=ju.snap=void 0;var Mu=Cu(Ui),Eu=Cu(Aa),ku=Cu(xa),Tu=Cu(qa),Du=Cu($a),Iu=Cu(wu),zu=Cu(au),Au=Cu(fu);function Cu(e){return e&&e.__esModule?e:{default:e}}var Ru=Mu.default.makeModifier,Wu=Ru(zu.default,"snap");ju.snap=Wu;var Xu=Ru(Au.default,"snapSize");ju.snapSize=Xu;var Yu=Ru(Iu.default,"snapEdges");ju.snapEdges=Yu;var Fu=Ru(ku.default,"restrict");ju.restrict=Fu;var Nu=Ru(Tu.default,"restrictRect");ju.restrictRect=Nu;var Lu=Ru(Eu.default,"restrictEdges");ju.restrictEdges=Lu;var Vu=Ru(Du.default,"restrictSize");ju.restrictSize=Vu;var qu={};Object.defineProperty(qu,"__esModule",{value:!0}),qu.default=void 0;var Gu,Uu=(Gu=Sn)&&Gu.__esModule?Gu:{default:Gu},Bu=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Ku(e)&&"function"!=typeof e)return{default:e};var t=Hu();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(J);function Hu(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Hu=function(){return e},e}function Ku(e){return(Ku="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function $u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Qu(e){return(Qu=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Zu(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Ju(e,t){return(Ju=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function el(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var tl=function(){function s(e,t,n,r,o,i){var a;if(!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,s),a=function(e,t){return!t||"object"!==Ku(t)&&"function"!=typeof t?Zu(e):t}(this,Qu(s).call(this,o)),el(Zu(a),"type",void 0),el(Zu(a),"originalEvent",void 0),el(Zu(a),"pointerId",void 0),el(Zu(a),"pointerType",void 0),el(Zu(a),"double",void 0),el(Zu(a),"pageX",void 0),el(Zu(a),"pageY",void 0),el(Zu(a),"clientX",void 0),el(Zu(a),"clientY",void 0),el(Zu(a),"dt",void 0),el(Zu(a),"eventable",void 0),Bu.pointerExtend(Zu(a),n),n!==t&&Bu.pointerExtend(Zu(a),t),a.timeStamp=i,a.originalEvent=n,a.type=e,a.pointerId=Bu.getPointerId(t),a.pointerType=Bu.getPointerType(t),a.target=r,a.currentTarget=null,"tap"===e){var u=o.getPointerIndex(t);a.dt=a.timeStamp-o.pointers[u].downTime;var l=a.timeStamp-o.tapTime;a.double=!!(o.prevTap&&"doubletap"!==o.prevTap.type&&o.prevTap.target===a.target&&l<500)}else"doubletap"===e&&(a.dt=t.timeStamp-o.tapTime);return a}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ju(e,t)}(s,Uu["default"]),function(e,t,n){t&&$u(e.prototype,t),n&&$u(e,n)}(s,[{key:"_subtractOrigin",value:function(e){var t=e.x,n=e.y;return this.pageX-=t,this.pageY-=n,this.clientX-=t,this.clientY-=n,this}},{key:"_addOrigin",value:function(e){var t=e.x,n=e.y;return this.pageX+=t,this.pageY+=n,this.clientX+=t,this.clientY+=n,this}},{key:"preventDefault",value:function(){this.originalEvent.preventDefault()}}]),s}();qu.default=tl;var nl={};function rl(e){return(rl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(nl,"__esModule",{value:!0}),nl.default=void 0;var ol,il=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==rl(e)&&"function"!=typeof e)return{default:e};var t=ul();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(pt),al=(ol=qu)&&ol.__esModule?ol:{default:ol};function ul(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return ul=function(){return e},e}var ll={id:"pointer-events/base",install:function(e){e.pointerEvents=ll,e.defaults.actions.pointerEvents=ll.defaults},listeners:{"interactions:new":function(e){var t=e.interaction;t.prevTap=null,t.tapTime=0},"interactions:update-pointer":function(e){var t=e.down,n=e.pointerInfo;if(!t&&n.hold)return;n.hold={duration:1/0,timeout:null}},"interactions:move":function(e,t){var n=e.interaction,r=e.pointer,o=e.event,i=e.eventTarget,a=e.duplicate,u=n.getPointerIndex(r);a||n.pointerIsDown&&!n.pointerWasMoved||(n.pointerIsDown&&clearTimeout(n.pointers[u].hold.timeout),sl({interaction:n,pointer:r,event:o,eventTarget:i,type:"move"},t))},"interactions:down":function(e,t){!function(e,t){for(var n=e.interaction,r=e.pointer,o=e.event,i=e.eventTarget,a=e.pointerIndex,u=n.pointers[a].hold,l=il.dom.getPath(i),s={interaction:n,pointer:r,event:o,eventTarget:i,type:"hold",targets:[],path:l,node:null},c=0;c<l.length;c++){var f=l[c];s.node=f,t.fire("pointerEvents:collect-targets",s)}if(!s.targets.length)return;for(var p=1/0,d=0;d<s.targets.length;d++){var v=s.targets[d].eventable.options.holdDuration;v<p&&(p=v)}u.duration=p,u.timeout=setTimeout(function(){sl({interaction:n,eventTarget:i,pointer:r,event:o,type:"hold"},t)},p)}(e,t),sl(e,t)},"interactions:up":function(e,t){fl(e),sl(e,t),function(e,t){var n=e.interaction,r=e.pointer,o=e.event,i=e.eventTarget;n.pointerWasMoved||sl({interaction:n,eventTarget:i,pointer:r,event:o,type:"tap"},t)}(e,t)},"interactions:cancel":function(e,t){fl(e),sl(e,t)}},PointerEvent:al.default,fire:sl,collectEventTargets:cl,defaults:{holdDuration:600,ignoreFrom:null,allowFrom:null,origin:{x:0,y:0}},types:["down","move","up","cancel","tap","doubletap","hold"]};function sl(e,t){var n=e.interaction,r=e.pointer,o=e.event,i=e.eventTarget,a=e.type,u=e.targets,l=void 0===u?cl(e,t):u,s=new al.default(a,r,o,i,n,t.now());t.fire("pointerEvents:new",{pointerEvent:s});for(var c={interaction:n,pointer:r,event:o,eventTarget:i,targets:l,type:a,pointerEvent:s},f=0;f<l.length;f++){var p=l[f];for(var d in p.props||{})s[d]=p.props[d];var v=il.getOriginXY(p.eventable,p.node);if(s._subtractOrigin(v),s.eventable=p.eventable,s.currentTarget=p.node,p.eventable.fire(s),s._addOrigin(v),s.immediatePropagationStopped||s.propagationStopped&&f+1<l.length&&l[f+1].node!==s.currentTarget)break}if(t.fire("pointerEvents:fired",c),"tap"===a){var y=s.double?sl({interaction:n,pointer:r,event:o,eventTarget:i,type:"doubletap"},t):s;n.prevTap=y,n.tapTime=y.timeStamp}return s}function cl(e,t){var n=e.interaction,r=e.pointer,o=e.event,i=e.eventTarget,a=e.type,u=n.getPointerIndex(r),l=n.pointers[u];if("tap"===a&&(n.pointerWasMoved||!l||l.downTarget!==i))return[];for(var s=il.dom.getPath(i),c={interaction:n,pointer:r,event:o,eventTarget:i,type:a,path:s,targets:[],node:null},f=0;f<s.length;f++){var p=s[f];c.node=p,t.fire("pointerEvents:collect-targets",c)}return"hold"===a&&(c.targets=c.targets.filter(function(e){return e.eventable.options.holdDuration===n.pointers[u].hold.duration})),c.targets}function fl(e){var t=e.interaction,n=e.pointerIndex;t.pointers[n].hold&&clearTimeout(t.pointers[n].hold.timeout)}var pl=ll;nl.default=pl;var dl={};Object.defineProperty(dl,"__esModule",{value:!0}),dl.default=void 0;var vl,yl=(vl=nl)&&vl.__esModule?vl:{default:vl};function ml(e){var t=e.interaction;t.holdIntervalHandle&&(clearInterval(t.holdIntervalHandle),t.holdIntervalHandle=null)}var gl={id:"pointer-events/holdRepeat",install:function(e){e.usePlugin(yl.default);var t=e.pointerEvents;t.defaults.holdRepeatInterval=0,t.types.push("holdrepeat")},listeners:["move","up","cancel","endall"].reduce(function(e,t){return e["pointerEvents:".concat(t)]=ml,e},{"pointerEvents:new":function(e){var t=e.pointerEvent;"hold"===t.type&&(t.count=(t.count||0)+1)},"pointerEvents:fired":function(e,t){var n=e.interaction,r=e.pointerEvent,o=e.eventTarget,i=e.targets;if("hold"===r.type&&i.length){var a=i[0].eventable.options.holdRepeatInterval;a<=0||(n.holdIntervalHandle=setTimeout(function(){t.pointerEvents.fire({interaction:n,eventTarget:o,type:"hold",pointer:r,event:r},t)},a))}}})};dl.default=gl;var hl={};Object.defineProperty(hl,"__esModule",{value:!0}),hl.default=void 0;var bl,wl=(bl=me)&&bl.__esModule?bl:{default:bl};function Ol(e){return(0,wl.default)(this.events.options,e),this}var Pl={id:"pointer-events/interactableTargets",install:function(e){var t=e.pointerEvents,n=e.actions,r=e.Interactable;(0,u.merge)(n.eventTypes,t.types),r.prototype.pointerEvents=Ol;var o=r.prototype._backCompatOption;r.prototype._backCompatOption=function(e,t){var n=o.call(this,e,t);return n===this&&(this.events.options[e]=t),n}},listeners:{"pointerEvents:collect-targets":function(e,t){var r=e.targets,o=e.node,i=e.type,a=e.eventTarget;t.interactables.forEachMatch(o,function(e){var t=e.events,n=t.options;t.types[i]&&t.types[i].length&&e.testIgnoreAllow(n,o,a)&&r.push({node:o,eventable:t,props:{interactable:e}})})},"interactable:new":function(e){var t=e.interactable;t.events.getRect=function(e){return t.getRect(e)}},"interactable:set":function(e,t){var n=e.interactable,r=e.options;(0,wl.default)(n.events.options,t.pointerEvents.defaults),(0,wl.default)(n.events.options,r.pointerEvents||{})}}};hl.default=Pl;var _l={};function xl(e){return(xl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(_l,"__esModule",{value:!0}),_l.install=function(e){e.usePlugin(Sl),e.usePlugin(jl.default),e.usePlugin(Ml.default)},Object.defineProperty(_l,"holdRepeat",{enumerable:!0,get:function(){return jl.default}}),Object.defineProperty(_l,"interactableTargets",{enumerable:!0,get:function(){return Ml.default}}),_l.pointerEvents=_l.id=void 0;var Sl=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==xl(e)&&"function"!=typeof e)return{default:e};var t=kl();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(nl);_l.pointerEvents=Sl;var jl=El(dl),Ml=El(hl);function El(e){return e&&e.__esModule?e:{default:e}}function kl(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return kl=function(){return e},e}_l.id="pointer-events";var Tl={};function Dl(t){for(var e=t.actions,n=t.Interactable,r=0;r<e.names.length;r++){var o=e.names[r];e.eventTypes.push("".concat(o,"reflow"))}n.prototype.reflow=function(e){return function(u,l,s){function e(){var t=c[d],e=u.getRect(t);if(!e)return"break";var n=pt.arr.find(s.interactions.list,function(e){return e.interacting()&&e.interactable===u&&e.element===t&&e.prepared.name===l.name}),r=void 0;if(n)n.move(),p&&(r=n._reflowPromise||new f(function(e){n._reflowResolve=e}));else{var o=pt.rect.tlbrToXywh(e),i={page:{x:o.x,y:o.y},client:{x:o.x,y:o.y},timeStamp:s.now()},a=pt.pointer.coordsToEvent(i);r=function(e,t,n,r,o){var i=e.interactions.new({pointerType:"reflow"}),a={interaction:i,event:o,pointer:o,eventTarget:n,phase:Dn.EventPhase.Reflow};i.interactable=t,i.element=n,i.prepared=(0,pt.extend)({},r),i.prevEvent=o,i.updatePointer(o,o,n,!0),i._doPhase(a);var u=pt.win.window.Promise?new pt.win.window.Promise(function(e){i._reflowResolve=e}):null;i._reflowPromise=u,i.start(r,t,n),i._interacting?(i.move(a),i.end(o)):i.stop();return i.removePointer(o,o),i.pointerIsDown=!1,u}(s,u,t,l,a)}p&&p.push(r)}for(var c=pt.is.string(u.target)?pt.arr.from(u._context.querySelectorAll(u.target)):[u.target],f=pt.win.window.Promise,p=f?[]:null,d=0;d<c.length;d++){if("break"===e())break}return p&&f.all(p).then(function(){return u})}(this,e,t)}}Object.defineProperty(Tl,"__esModule",{value:!0}),Tl.install=Dl,Tl.default=void 0;var Il={id:Dn.EventPhase.Reflow="reflow",install:Dl,listeners:{"interactions:stop":function(e,t){var n=e.interaction;n.pointerType===Dn.EventPhase.Reflow&&(n._reflowResolve&&n._reflowResolve(),pt.arr.remove(t.interactions.list,n))}}};Tl.default=Il;var zl={};function Al(e){return(Al="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(zl,"__esModule",{value:!0}),zl.default=zl.scope=zl.interact=void 0;var Cl=b({}),Rl=Fl(j),Wl=Fl(Te),Xl=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Al(e)&&"function"!=typeof e)return{default:e};var t=Yl();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(pt);function Yl(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Yl=function(){return e},e}function Fl(e){return e&&e.__esModule?e:{default:e}}var Nl={},Ll=new Cl.Scope;zl.scope=Ll;function Vl(e,t){var n=Ll.interactables.get(e,t);return n||((n=Ll.interactables.new(e,t)).events.global=Nl),n}(zl.interact=Vl).use=function(e,t){return Ll.usePlugin(e,t),Vl},Vl.isSet=function(e,t){return!!Ll.interactables.get(e,t&&t.context)},Vl.on=function(e,t,n){Xl.is.string(e)&&-1!==e.search(" ")&&(e=e.trim().split(/ +/));if(Xl.is.array(e)){for(var r=0;r<e.length;r++){var o;o=e[r],Vl.on(o,t,n)}return Vl}if(Xl.is.object(e)){for(var i in e)Vl.on(i,e[i],t);return Vl}Xl.arr.contains(Ll.actions.eventTypes,e)?Nl[e]?Nl[e].push(t):Nl[e]=[t]:Wl.default.add(Ll.document,e,t,{options:n});return Vl},Vl.off=function(e,t,n){Xl.is.string(e)&&-1!==e.search(" ")&&(e=e.trim().split(/ +/));if(Xl.is.array(e)){for(var r=0;r<e.length;r++){var o;o=e[r],Vl.off(o,t,n)}return Vl}if(Xl.is.object(e)){for(var i in e)Vl.off(i,e[i],t);return Vl}var a;Xl.arr.contains(Ll.actions.eventTypes,e)?e in Nl&&-1!==(a=Nl[e].indexOf(t))&&Nl[e].splice(a,1):Wl.default.remove(Ll.document,e,t,n);return Vl},Vl.debug=function(){return Ll},Vl.getPointerAverage=Xl.pointer.pointerAverage,Vl.getTouchBBox=Xl.pointer.touchBBox,Vl.getTouchDistance=Xl.pointer.touchDistance,Vl.getTouchAngle=Xl.pointer.touchAngle,Vl.getElementRect=Xl.dom.getElementRect,Vl.getElementClientRect=Xl.dom.getElementClientRect,Vl.matchesSelector=Xl.dom.matchesSelector,Vl.closest=Xl.dom.closest,Vl.supportsTouch=function(){return Rl.default.supportsTouch},Vl.supportsPointerEvent=function(){return Rl.default.supportsPointerEvent},Vl.stop=function(){for(var e=0;e<Ll.interactions.list.length;e++){Ll.interactions.list[e].stop()}return Vl},Vl.pointerMoveTolerance=function(e){if(Xl.is.number(e))return Ll.interactions.pointerMoveTolerance=e,Vl;return Ll.interactions.pointerMoveTolerance},Ll.addListeners({"interactable:unset":function(e){var t=e.interactable;Ll.interactables.list.splice(Ll.interactables.list.indexOf(t),1);for(var n=0;n<Ll.interactions.list.length;n++){var r=Ll.interactions.list[n];r.interactable===t&&r.interacting()&&!r._ending&&r.stop()}}}),Vl.addDocument=function(e,t){return Ll.addDocument(e,t)},Vl.removeDocument=function(e){return Ll.removeDocument(e)};var ql=Ll.interact=Vl;zl.default=ql;var Gl={};function Ul(e){return(Ul="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(Gl,"__esModule",{value:!0}),Gl.init=function(e){for(var t in rs.scope.init(e),rs.default.use($l.default),rs.default.use(ts),rs.default.use(Zl.default),rs.default.use(Jl.default),rs.default.use(Kl),rs.default.use(Bl),es){var n=es[t],r=n._defaults,o=n._methods;r._methods=o,rs.scope.defaults.perAction[t]=r}rs.default.use(Hl.default),rs.default.use(ns.default),rs.default.use(Ql.default);return rs.default},Object.defineProperty(Gl,"autoScroll",{enumerable:!0,get:function(){return Hl.default}}),Object.defineProperty(Gl,"interactablePreventDefault",{enumerable:!0,get:function(){return $l.default}}),Object.defineProperty(Gl,"inertia",{enumerable:!0,get:function(){return Zl.default}}),Object.defineProperty(Gl,"modifiers",{enumerable:!0,get:function(){return Jl.default}}),Object.defineProperty(Gl,"reflow",{enumerable:!0,get:function(){return ns.default}}),Object.defineProperty(Gl,"interact",{enumerable:!0,get:function(){return rs.default}}),Gl.pointerEvents=Gl.actions=Gl.default=void 0;var Bl=as(vo);Gl.actions=Bl;var Hl=os(wo),Kl=as(vi),$l=os(bi),Ql=os(ki),Zl=os(ca),Jl=os(Ui),es=as(ju),ts=as(_l);Gl.pointerEvents=ts;var ns=os(Tl),rs=as(zl);function os(e){return e&&e.__esModule?e:{default:e}}function is(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return is=function(){return e},e}function as(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Ul(e)&&"function"!=typeof e)return{default:e};var t=is();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}rs.default.version="1.7.3";var us=rs.default;Gl.default=us;var ls={};function ss(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}Object.defineProperty(ls,"__esModule",{value:!0}),ls.default=void 0;function cs(v){function e(e,t){for(var n=v.range,r=v.limits,o=void 0===r?{left:-1/0,right:1/0,top:-1/0,bottom:1/0}:r,i=v.offset,a=void 0===i?{x:0,y:0}:i,u={range:n},l=0;l<y.length;l++){var s=ss(y[l],2),c=s[0],f=s[1],p=Math.round((e-a.x)/v[c]),d=Math.round((t-a.y)/v[f]);u[c]=Math.max(o.left,Math.min(o.right,p*v[c]+a.x)),u[f]=Math.max(o.top,Math.min(o.bottom,d*v[f]+a.y))}return u}var y=[["x","y"],["left","top"],["right","bottom"],["width","height"]].filter(function(e){var t=ss(e,2),n=t[0],r=t[1];return n in v||r in v});return e._isSnapGrid=!0,e.grid=v,e.coordFields=y,e}ls.default=cs;var fs={};Object.defineProperty(fs,"__esModule",{value:!0}),Object.defineProperty(fs,"grid",{enumerable:!0,get:function(){return ds.default}});var ps,ds=(ps=ls)&&ps.__esModule?ps:{default:ps};var vs={};Object.defineProperty(vs,"__esModule",{value:!0}),vs.init=_s,vs.default=void 0;var ys,ms=Os(Gl),gs=Os(ju),hs=(ys=me)&&ys.__esModule?ys:{default:ys},bs=Os(fs);function ws(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return ws=function(){return e},e}function Os(e){if(e&&e.__esModule)return e;if(null===e||"object"!==Ps(e)&&"function"!=typeof e)return{default:e};var t=ws();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}function Ps(e){return(Ps="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _s(e){return(0,ms.init)(e),ms.default.use({id:"interactjs",install:function(){ms.default.modifiers=(0,hs.default)({},gs),ms.default.snappers=bs,ms.default.createSnapGrid=ms.default.snappers.grid}})}"object"===("undefined"==typeof window?"undefined":Ps(window))&&window&&_s(window);var xs=ms.default;vs.default=xs;var Ss={exports:{}};Object.defineProperty(Ss.exports,"__esModule",{value:!0});var js={};Ss.exports.default=void 0;var Ms=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==ks(e)&&"function"!=typeof e)return{default:e};var t=Es();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(vs);function Es(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Es=function(){return e},e}function ks(e){return(ks="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.keys(Ms).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(js,e)||Object.defineProperty(Ss.exports,e,{enumerable:!0,get:function(){return Ms[e]}}))}),"object"===ks(Ss)&&Ss&&(Ss.exports=Ms.default),Ms.default.default=Ms.default,Ms.default.init=Ms.init;var Ts=Ms.default;return Ss.exports.default=Ts,Ss=Ss.exports}); + +//# sourceMappingURL=interact.min.js.map diff --git a/src/main/webapp/static/js/jquery/openolat/jquery.contenteditor.v2.js b/src/main/webapp/static/js/jquery/openolat/jquery.contenteditor.v2.js new file mode 100644 index 0000000000000000000000000000000000000000..64c78e459cd0e93133302768110e5d79a792b88b --- /dev/null +++ b/src/main/webapp/static/js/jquery/openolat/jquery.contenteditor.v2.js @@ -0,0 +1,198 @@ +/* + * ======================================================== + * <a href="http://www.openolat.org"> + * OpenOLAT - Online Learning and Training</a><br> + * <p> + * Licensed under the Apache License, Version 2.0 (the "License"); <br> + * you may not use this file except in compliance with the License.<br> + * You may obtain a copy of the License at the + * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> + * <p> + * Unless required by applicable law or agreed to in writing,<br> + * software distributed under the License is distributed on an "AS IS" BASIS, <br> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> + * See the License for the specific language governing permissions and <br> + * limitations under the License. + * <p> + * Initial code contributed and copyrighted by<br> + * 28.04.2014 by frentix GmbH, http://www.frentix.com + * <p> + * @author srosse, www.frentix.com + * @date Sept. 2018 + * ======================================================== + */ +(function($) { + "use strict"; + $.fn.ceditor = function(options) { + var editor = this.data("data-oo-ceditor"); + if(typeof editor === "undefined") { + editor = new ContentEditor(this.get(0), options); + this.data("data-oo-ceditor", editor); + } else {// if the same DOM element exists + editor.initWindowListener(); + } + initInteractJs(); + return editor; + }; + + var ContentEditor = function(container, params) { + this.settings = $.extend({ + componentUrl: '' + }, params); + + initWindowListener(); + this.container = container; + initInteractJs(); + }; + + function isTop(target, y) { + var jElement = jQuery(target); + var relativeY = y - jElement.offset().top; + + var middle; + if(jElement.hasClass('oo-accepted-top')) { + var placeHolderHeight = acceptedTopHeight(target); + middle = ((jElement.height() - placeHolderHeight) / 2) + placeHolderHeight; + } else { + middle = jElement.height() / 2; + } + return relativeY > middle; + } + + function acceptedTopHeight(target) { + var style = window.getComputedStyle(target, ':before'); + return parseInt(style.height) + parseInt(style.marginTop) + parseInt(style.marginBottom); + } + + function initInteractJs() { + var position = { x: 0, y: 0 } + + function setPositionClass(target, top) { + if(top) { + jQuery(target).addClass('oo-accepted'); + jQuery(target).removeClass('oo-accepted-top'); + jQuery(target).data('position', 'bottom'); + } else { + jQuery(target).removeClass('oo-accepted'); + jQuery(target).addClass('oo-accepted-top'); + jQuery(target).data('position', 'top'); + } + } + + interact('.o_page_part.o_page_part_view, .o_page_fragment_edit').draggable({ + autoScroll: true, + allowFrom: '.o_page_tools_dd, .o_page_part.o_page_part_view', + modifiers: [ + interact.modifiers.restrict({ + restriction: '.o_page_content_editor' + }) + ], + listeners: { + start(event) { + jQuery(event.target).addClass('oo-dragging'); + }, + move(event) { + position.x += event.dx; + position.y += event.dy; + event.target.style.transform = `translate(${position.x}px, ${position.y}px)`; + }, + end(event) { + position.x = 0; + position.y = 0; + event.target.style.transform = 'none'; + jQuery(event.target).removeClass('oo-dragging'); + jQuery('.o_page_drop').removeClass('oo-accepted').removeClass('oo-accepted-top'); + } + } + }); + + interact('.o_page_drop').dropzone({ + listeners: { + move(event) { + var top = isTop(event.target, event.dragEvent.page.y); + setPositionClass(event.target, top); + }, + drop: function(event) { + drop(event, event.target, event.relatedTarget); + } + }, + checker: function (dragEvent, event, dropped, dropzone, dropElement, draggable, draggableElement) { + return dropped && jQuery(dropElement).attr("id") != jQuery(draggableElement).attr("id"); + }, + ondragenter: function(event) { + var top = isTop(event.target, event.dragEvent.page.y); + setPositionClass(event.target, top); + }, + ondragleave: function(event) { + jQuery(event.target) + .removeClass('oo-accepted').removeClass('oo-accepted-top') + .data('position', null); + } + }); + return null; + } + + function initWindowListener() { + if(o_info.contentEditorWindowListener === undefined || o_info.contentEditorWindowListener == null) { + o_info.contentEditorWindowListener = function(e) { + var componentUrl = jQuery(".o_page_content_editor").data("oo-content-editor-url"); + if(componentUrl === undefined || componentUrl == null) { + jQuery(window).off('click', o_info.contentEditorWindowListener); + o_info.contentEditorWindowListener = null; + } else { + var excludedEls = jQuery(e.target).closest(".o_popover").length > 0 + || jQuery(e.target).closest(".o_page_add_in_container").length > 0 + || jQuery(e.target).closest(".mce-menu").length > 0 + || jQuery(e.target).closest(".mce-window").length > 0 + || jQuery(e.target).closest(".mce-container").length > 0 + || jQuery(e.target).closest(".mce-widget").length > 0 + || jQuery(e.target).closest(".o_layered_panel .popover").length > 0 + || jQuery(e.target).closest(".o_layered_panel .modal-dialog").length > 0 + || e.target.nodeName == 'BODY'; + + if(!excludedEls) { + var edited = jQuery(e.target).closest(".o_page_fragment_edit").length > 0 + || jQuery(e.target).closest(".o_page_side_options").length > 0; + var parts = jQuery(e.target).closest(".o_page_part"); + + if(parts.length == 1) { + var element = jQuery(parts.get(0)); + var elementUrl = element.data("oo-content-editor-url"); + o_XHREvent(elementUrl, false, false, 'cid', 'edit_fragment', 'fragment', element.data('oo-page-fragment')); + } else if(!edited) { + o_XHREvent(componentUrl, false, false, 'cid', 'close_edit_fragment'); + } + } + } + }; + jQuery(window).on('click', o_info.contentEditorWindowListener); + } + } + + function drop(event, target, source) { + var draggedId = jQuery(source).data('oo-page-fragment'); + + var slotId = null; + var containerId = null; + var jElement = jQuery(target); + var targetId = jElement.data('oo-page-fragment'); + if(jElement.hasClass('o_page_container_slot')) { + slotId = jElement.data('oo-slot'); + containerId = jElement.closest(".o_page_part").data('oo-page-fragment'); + } + + var position = jElement.data('position'); + if(position == null) { + var top = isTop(event.target, event.dragEvent.page.y); + position = top ? "top": "bottom"; + } + + var componentUrl = jElement.closest(".o_page_drop").data("oo-content-editor-url"); + if(componentUrl == null) { + componentUrl = jQuery(target).closest(".o_page_content_editor") + } + + o_XHREvent(componentUrl, false, false, "cid", "drop_fragment", "fragment", targetId, "dragged", draggedId, "source", draggedId, "target", targetId, "container", containerId, "slot", slotId, "position", position); + } + +}(jQuery)); \ No newline at end of file diff --git a/src/main/webapp/static/themes/light/_config.scss b/src/main/webapp/static/themes/light/_config.scss index aa5148ae1f13e8e74a7e142fc572390d13db5581..ac7e81f2b00aef1722704ada40c7614c5b9f2122 100644 --- a/src/main/webapp/static/themes/light/_config.scss +++ b/src/main/webapp/static/themes/light/_config.scss @@ -212,7 +212,7 @@ $o-toolbar-height-md : 37px !default; $o-toolbar-height-sm : 35px !default; $o-toolbar-height-xs : 22px !default; $o-toolbar-margin-top : -10px !default; -$o-toolbar-margin-bottom : $navbar-margin-bottom !default; +$o-toolbar-margin-bottom : ($navbar-margin-bottom + 5px) !default; // 5 extra for course pagination $o-toolbar-tools-margin-top-md : 8px !default; $o-toolbar-tools-margin-bottom-md : 5px !default; $o-toolbar-tools-margin-top-sm : 6px !default; @@ -517,6 +517,7 @@ $o-editor-settings-bg : #f9f9f9 !default; $o-editor-title-dark : #000 !default; $o-editor-title-bright : #f9f9f9 !default; $o-editor-hover-border-color : #ef00ef !default; +$o-editor-drop-border-color : #a0a0b0 !default; $o-editor-drag-accepted-color : #e80c96 !default; $o-editor-container-border-color : #eeeeee !default; $o-editor-container-level-1-bg-color : transparent !default; diff --git a/src/main/webapp/static/themes/light/content.css.map b/src/main/webapp/static/themes/light/content.css.map index a592cd657627725c93a55aa0f7c5d48066c976a6..b12e241eef79d1a2f1025611266d9be88804f507 100644 --- a/src/main/webapp/static/themes/light/content.css.map +++ b/src/main/webapp/static/themes/light/content.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "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", +"mappings": "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", "sources": ["_license.scss","../../bootstrap/stylesheets/bootstrap/_normalize.scss","../../bootstrap/stylesheets/bootstrap/_print.scss","../../bootstrap/stylesheets/bootstrap/_scaffolding.scss","../../bootstrap/stylesheets/bootstrap/mixins/_vendor-prefixes.scss","_config.scss","../../bootstrap/stylesheets/bootstrap/_variables.scss","../../bootstrap/stylesheets/bootstrap/mixins/_tab-focus.scss","../../bootstrap/stylesheets/bootstrap/mixins/_image.scss","../../bootstrap/stylesheets/bootstrap/_type.scss","../../bootstrap/stylesheets/bootstrap/mixins/_text-emphasis.scss","../../bootstrap/stylesheets/bootstrap/mixins/_background-variant.scss","../../bootstrap/stylesheets/bootstrap/mixins/_clearfix.scss","../../bootstrap/stylesheets/bootstrap/mixins/_text-overflow.scss","../../font-awesome/scss/_path.scss","../../font-awesome/scss/_core.scss","modules/_helpers.scss","../../bootstrap/stylesheets/bootstrap/mixins/_opacity.scss","modules/_dialog.scss","modules/_mixins.scss","modules/_emoticons.scss","modules/_edusharing.scss","modules/_qti21content.scss","modules/_content.scss","modules/_content_embedded.scss","../../bootstrap/stylesheets/bootstrap/mixins/_border-radius.scss","../../font-awesome/scss/_variables.scss","modules/_tinymce.scss","modules/_print.scss"], "names": [], "file": "content.css" diff --git a/src/main/webapp/static/themes/light/email.css.map b/src/main/webapp/static/themes/light/email.css.map index 92a5ad767dd5bc3c821ccf13778b3905e6c59e8c..38965705e68d6cb10722b0c4ebf6d020382d3e1a 100644 --- a/src/main/webapp/static/themes/light/email.css.map +++ b/src/main/webapp/static/themes/light/email.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "AAkBA,aAAc,CACb,WAAW,CCw1Be,wGAA8G,CDv1BxI,SAAS,CCw1BgB,KAAK,CDt1B9B,8BAAiB,CAChB,MAAM,CCs1BsB,aAAc,CDr1B1C,YAAY,CCs1BoB,IAAI,CDp1BpC,iCAAG,CACF,gBAAgB,CC01BK,OAAe,CDz1BpC,KAAK,CCw1BkB,IAAkB,CDv1BzC,OAAO,CAAE,gBAAyC,CAClD,aAAa,CAAE,IAAI,CACnB,WAAW,CAAE,KAA8B,CAC3C,SAAS,CAAE,OAAO,CAGnB,qCAAO,CACN,KAAK,CCi1BgB,OAAe,CD90BtC,6BAAgB,CACf,SAAS,CAAE,OAAO,CAClB,KAAK,CCy0BqB,IAAgB,CDx0B1C,UAAU,CAAE,iBAAmC,CAC/C,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,GAAG,CAEf,+BAAE,CACD,KAAK,CCm0BoB,IAAgB,CD5zB3C,6BAAc,CACb,WAAW,CAAE,OAAO,CAWrB,6BAAgB,CACf,KAAK,CCizBmB,IAAkB,CDhzB1C,gBAAgB,CCizBM,OAAe,CDhzBrC,YAAY,CCizBiB,OAAmB,CDhzBhD,aAAa,CCizBiB,GAAG,CDhzBjC,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,cAAc,CAAE,MAAM,CACtB,YAAY,CAAE,YAAY,CAC1B,MAAM,CAAE,OAAO,CACf,eAAe,CAAE,IAAI,CAGtB,mCAAsB,CACrB,UAAU,CAAE,GAAG,CACf,aAAa,CAAE,GAAG,CAClB,UAAU,CAAE,MAAM,CAElB,qCAAE,CACD,YAAY,CAAE,GAAG,CACjB,aAAa,CAAE,KAAK,CACpB,WAAW,CAAE,IAAI,CACjB,gDAAa,CACZ,YAAY,CAAE,CAAC,CAMlB,wCAA2B,CAC1B,UAAU,CAAE,IAAI,CAEjB,yCAA4B,CAC3B,UAAU,CAAE,KAAK", +"mappings": "AAkBA,aAAc,CACb,WAAW,CCy1Be,wGAA8G,CDx1BxI,SAAS,CCy1BgB,KAAK,CDv1B9B,8BAAiB,CAChB,MAAM,CCu1BsB,aAAc,CDt1B1C,YAAY,CCu1BoB,IAAI,CDr1BpC,iCAAG,CACF,gBAAgB,CC21BK,OAAe,CD11BpC,KAAK,CCy1BkB,IAAkB,CDx1BzC,OAAO,CAAE,gBAAyC,CAClD,aAAa,CAAE,IAAI,CACnB,WAAW,CAAE,KAA8B,CAC3C,SAAS,CAAE,OAAO,CAGnB,qCAAO,CACN,KAAK,CCk1BgB,OAAe,CD/0BtC,6BAAgB,CACf,SAAS,CAAE,OAAO,CAClB,KAAK,CC00BqB,IAAgB,CDz0B1C,UAAU,CAAE,iBAAmC,CAC/C,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,GAAG,CAEf,+BAAE,CACD,KAAK,CCo0BoB,IAAgB,CD7zB3C,6BAAc,CACb,WAAW,CAAE,OAAO,CAWrB,6BAAgB,CACf,KAAK,CCkzBmB,IAAkB,CDjzB1C,gBAAgB,CCkzBM,OAAe,CDjzBrC,YAAY,CCkzBiB,OAAmB,CDjzBhD,aAAa,CCkzBiB,GAAG,CDjzBjC,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,cAAc,CAAE,MAAM,CACtB,YAAY,CAAE,YAAY,CAC1B,MAAM,CAAE,OAAO,CACf,eAAe,CAAE,IAAI,CAGtB,mCAAsB,CACrB,UAAU,CAAE,GAAG,CACf,aAAa,CAAE,GAAG,CAClB,UAAU,CAAE,MAAM,CAElB,qCAAE,CACD,YAAY,CAAE,GAAG,CACjB,aAAa,CAAE,KAAK,CACpB,WAAW,CAAE,IAAI,CACjB,gDAAa,CACZ,YAAY,CAAE,CAAC,CAMlB,wCAA2B,CAC1B,UAAU,CAAE,IAAI,CAEjB,yCAA4B,CAC3B,UAAU,CAAE,KAAK", "sources": ["email.scss","_config.scss"], "names": [], "file": "email.css" diff --git a/src/main/webapp/static/themes/light/modules/_course.scss b/src/main/webapp/static/themes/light/modules/_course.scss index 2046d147b3a90b7544825efe204e4c39cc5b198d..1e5f68b8ac840db9806ab09c1f7f98e829f633a5 100644 --- a/src/main/webapp/static/themes/light/modules/_course.scss +++ b/src/main/webapp/static/themes/light/modules/_course.scss @@ -116,7 +116,7 @@ /* Nodes that are not in a sequence have different path rendering */ li.o_lp_not_in_sequence:not(:last-child):not(.o_last_node):before, li.o_lp_contains_no_sequence.children_visible:not(.o_last_node):before, - li.o_lp_contains_no_sequence.children_visible:not(.o_last_node) li.o_lp_not_in_sequence:before{ + li.o_lp_contains_no_sequence.children_visible:not(.o_last_node) li.o_lp_not_in_sequence:not(.o_last_node):before { border-left: $o-lp-path-width solid $o-lp-default; } @@ -354,7 +354,16 @@ /* pagination */ .o_course_pagination { - margin-bottom: 10px; + position: absolute; + /* make it look like beeing part of the toolbar */ + top: -($o-toolbar-margin-bottom + 1px); + right: 15px; + background-color: $o-toolbar-bg-color; + border: 1px solid $o-toolbar-border-color; + border-top: 0; + @include border-bottom-radius($o-toolbar-border-radius); + padding: 2px; + display: flex; justify-content: flex-end; @@ -365,9 +374,21 @@ .o_previous, .o_next { a { - width: 60px; + width: 50px; } } + .o_confirm { + a { + &.o_course_pagination_status_done { + color: $o-lp-done; + } + } + } + + .btn-xs { + padding: 0px 4px; + } + } /* statistics */ diff --git a/src/main/webapp/static/themes/light/modules/_icons.scss b/src/main/webapp/static/themes/light/modules/_icons.scss index 6535c3f4db5a4e73ea6a95fb0ccb57bd570f0c42..83b6defacfb52d37abef205cd2cedf7873ec65bf 100644 --- a/src/main/webapp/static/themes/light/modules/_icons.scss +++ b/src/main/webapp/static/themes/light/modules/_icons.scss @@ -91,6 +91,8 @@ $fa-css-prefix: "o_icon" !default; .o_icon_columns:before { content: $fa-var-columns;} .o_icon_container:before { content: $fa-var-columns;} .o_icon_copy:before { content: $fa-var-copy;} +.o_icon_course_previous:before { content: $fa-var-chevron-left; } +.o_icon_course_next:before { content: $fa-var-chevron-right; } .o_icon_courseareas:before { content: $fa-var-circle-thin;} .o_icon_coursedb:before { content: $fa-var-database;} .o_icon_courseeditor:before { content: $fa-var-edit;} diff --git a/src/main/webapp/static/themes/light/modules/_pagecontenteditor.scss b/src/main/webapp/static/themes/light/modules/_pagecontenteditor.scss index 3de96b86c6b949b763f97f61831b20947130d1a1..e610f5e7fec8b3838237dc51c2e1a0dda6e1b8f3 100644 --- a/src/main/webapp/static/themes/light/modules/_pagecontenteditor.scss +++ b/src/main/webapp/static/themes/light/modules/_pagecontenteditor.scss @@ -3,6 +3,7 @@ .o_toolbar { border:none; } + padding-bottom: 2em; } .o_page_content_editor .o_page_part, .gu-mirror { @@ -70,7 +71,7 @@ } } - .o_page_tools_dd { + .o_page_tools { position: absolute; z-index: 4; top: 0; @@ -78,7 +79,9 @@ width: $o-portfolio-editor-border-width; height: 100%; background: $o-portfolio-editor-border-color; - + } + + .o_page_tools_dd { /* d&d handle: dotted surface */ &:before { content: ' '; @@ -137,6 +140,7 @@ padding-right: $o-portfolio-editor-border-width - $o-panel-placeholder-border-width; /* space for d&d handel */ border: $o-panel-placeholder-border-width solid $o-portfolio-editor-border-color; box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.2); + background-color: white; &:hover { border: $o-panel-placeholder-border-width solid $o-portfolio-editor-border-color; } @@ -261,9 +265,55 @@ div.o_page_content_editor .gu-mirror, .o_page_content_editor .gu-transit { } /* d&d styles */ + + +.o_page_part.o_page_part_view, .o_page_fragment_edit { + touch-action: none; + user-select: none; + -webkit-touch-callout: none; + -moz-user-select: none; + -ms-user-select: none; +} + .o_page_drop { @extend %o_dragable; } + +.o_page_part.oo-accepted, +.o_page_part.oo-accepted-top, +.o_page_content_editor.o_page_drop.oo-accepted, +.o_page_content_editor.o_page_drop.oo-accepted-top { + border: $o-panel-placeholder-border-width dotted $o-editor-drag-accepted-color; +} + +.o_page_part.o_page_drop.oo-accepted:after, +.o_page_container_slot.o_page_drop.oo-accepted .o_page_container_slot-inner:after { + display: block; + height: 25px; + margin: 10px; + border: 2px dotted $o-editor-drop-border-color; + border-radius: 5px; + content: ''; +} + +.o_page_part.o_page_drop.oo-accepted-top:before, +.o_page_container_slot.o_page_drop.oo-accepted-top .o_page_container_slot-inner:before { + display: block; + height: 25px; + margin: 10px 10px 10px 10px; + border: 2px dotted $o-editor-drop-border-color; + border-radius: 5px; + content: ''; +} + +.o_page_part.oo-dragging { + opacity: 0.4; + background-color: white; + border: $o-panel-placeholder-border-width dotted $o-editor-drag-accepted-color; + box-shadow: 0px 0px 20px #aaa; +} + + .gu-transit { border: $o-panel-placeholder-border-width dotted $o-editor-drag-accepted-color; opacity: 0.4; @@ -541,7 +591,7 @@ table.o_ce_table { } .o_ce_add_main_btns { - margin-top: 2em; + margin-top: 0; } .o_ce_add { diff --git a/src/main/webapp/static/themes/light/modules/_table.scss b/src/main/webapp/static/themes/light/modules/_table.scss index d8d151066b8b511c03c5c1dfb14f379ec2a6bde8..95456940ea93b1e762a78ad11ce0dfea2d4e7cd2 100644 --- a/src/main/webapp/static/themes/light/modules/_table.scss +++ b/src/main/webapp/static/themes/light/modules/_table.scss @@ -193,6 +193,11 @@ a.o_orderby, a.o_orderby:hover { } } + table tr.o_no_border td, + table tr.o_no_border th { + border-top: 0; + } + /* bootstrap extensions */ .o_info, o_note, o_important, o_warning, o_error { .table-bordered td { diff --git a/src/main/webapp/static/themes/light/theme.css b/src/main/webapp/static/themes/light/theme.css index e4a85e358e8eb8bc0a14b1508f2721ff8151341d..ce0b7892a7c81e0cf83164be2cd84fb551146480 100644 --- a/src/main/webapp/static/themes/light/theme.css +++ b/src/main/webapp/static/themes/light/theme.css @@ -22,5 +22,5 @@ * @author gnaegi, www.frentix.com * @date April. 2014 * ======================================================== -**//*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff !important}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:hover,a:focus{color:#23527c;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail,.o_form .o_filepreview img,.o_feed .o_media{padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,.o_cal .fc-header-title h2,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h1 .small,h2 small,h2 .small,h3 small,h3 .small,h4 small,.o_cal .fc-header-title h2 small,h4 .small,.o_cal .fc-header-title h2 .small,h5 small,h5 .small,h6 small,h6 .small,.h1 small,.h1 .small,.h2 small,.h2 .small,.h3 small,.h3 .small,.h4 small,.h4 .small,.h5 small,.h5 .small,.h6 small,.h6 .small{font-weight:normal;line-height:1;color:#777}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,h1 .small,.h1 small,.h1 .small,h2 small,h2 .small,.h2 small,.h2 .small,h3 small,h3 .small,.h3 small,.h3 .small{font-size:65%}h4,.o_cal .fc-header-title h2,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.o_cal .fc-header-title h2 small,h4 .small,.o_cal .fc-header-title h2 .small,.h4 small,.h4 .small,h5 small,h5 .small,.h5 small,.h5 .small,h6 small,h6 .small,.h6 small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.o_cal .fc-header-title h2,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width: 768px){.lead{font-size:21px}}small,.small{font-size:85%}mark,.mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff}.bg-primary{background-color:#337ab7}a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ul ol,ol ul,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}.dl-horizontal dd:before,.dl-horizontal dd:after{content:" ";display:table}.dl-horizontal dd:after{clear:both}@media (min-width: 768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.428571429;color:#777}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,.blockquote-reverse small:before,.blockquote-reverse .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,.blockquote-reverse small:after,.blockquote-reverse .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:bold;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container:before,.container:after{content:" ";display:table}.container:after{clear:both}@media (min-width: 768px){.container{width:750px}}@media (min-width: 992px){.container{width:970px}}@media (min-width: 1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container-fluid:before,.container-fluid:after{content:" ";display:table}.container-fluid:after{clear:both}.row{margin-left:-15px;margin-right:-15px}.row:before,.row:after{content:" ";display:table}.row:after{clear:both}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-1{width:8.3333333333%}.col-xs-2{width:16.6666666667%}.col-xs-3{width:25%}.col-xs-4{width:33.3333333333%}.col-xs-5{width:41.6666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.3333333333%}.col-xs-8{width:66.6666666667%}.col-xs-9{width:75%}.col-xs-10{width:83.3333333333%}.col-xs-11{width:91.6666666667%}.col-xs-12{width:100%}.col-xs-pull-0{right:auto}.col-xs-pull-1{right:8.3333333333%}.col-xs-pull-2{right:16.6666666667%}.col-xs-pull-3{right:25%}.col-xs-pull-4{right:33.3333333333%}.col-xs-pull-5{right:41.6666666667%}.col-xs-pull-6{right:50%}.col-xs-pull-7{right:58.3333333333%}.col-xs-pull-8{right:66.6666666667%}.col-xs-pull-9{right:75%}.col-xs-pull-10{right:83.3333333333%}.col-xs-pull-11{right:91.6666666667%}.col-xs-pull-12{right:100%}.col-xs-push-0{left:auto}.col-xs-push-1{left:8.3333333333%}.col-xs-push-2{left:16.6666666667%}.col-xs-push-3{left:25%}.col-xs-push-4{left:33.3333333333%}.col-xs-push-5{left:41.6666666667%}.col-xs-push-6{left:50%}.col-xs-push-7{left:58.3333333333%}.col-xs-push-8{left:66.6666666667%}.col-xs-push-9{left:75%}.col-xs-push-10{left:83.3333333333%}.col-xs-push-11{left:91.6666666667%}.col-xs-push-12{left:100%}.col-xs-offset-0{margin-left:0%}.col-xs-offset-1{margin-left:8.3333333333%}.col-xs-offset-2{margin-left:16.6666666667%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-4{margin-left:33.3333333333%}.col-xs-offset-5{margin-left:41.6666666667%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-7{margin-left:58.3333333333%}.col-xs-offset-8{margin-left:66.6666666667%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-10{margin-left:83.3333333333%}.col-xs-offset-11{margin-left:91.6666666667%}.col-xs-offset-12{margin-left:100%}@media (min-width: 768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-1{width:8.3333333333%}.col-sm-2{width:16.6666666667%}.col-sm-3{width:25%}.col-sm-4{width:33.3333333333%}.col-sm-5{width:41.6666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.3333333333%}.col-sm-8{width:66.6666666667%}.col-sm-9{width:75%}.col-sm-10{width:83.3333333333%}.col-sm-11{width:91.6666666667%}.col-sm-12{width:100%}.col-sm-pull-0{right:auto}.col-sm-pull-1{right:8.3333333333%}.col-sm-pull-2{right:16.6666666667%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.3333333333%}.col-sm-pull-5{right:41.6666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.3333333333%}.col-sm-pull-8{right:66.6666666667%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.3333333333%}.col-sm-pull-11{right:91.6666666667%}.col-sm-pull-12{right:100%}.col-sm-push-0{left:auto}.col-sm-push-1{left:8.3333333333%}.col-sm-push-2{left:16.6666666667%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.3333333333%}.col-sm-push-5{left:41.6666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.3333333333%}.col-sm-push-8{left:66.6666666667%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.3333333333%}.col-sm-push-11{left:91.6666666667%}.col-sm-push-12{left:100%}.col-sm-offset-0{margin-left:0%}.col-sm-offset-1{margin-left:8.3333333333%}.col-sm-offset-2{margin-left:16.6666666667%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.3333333333%}.col-sm-offset-5{margin-left:41.6666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.3333333333%}.col-sm-offset-8{margin-left:66.6666666667%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.3333333333%}.col-sm-offset-11{margin-left:91.6666666667%}.col-sm-offset-12{margin-left:100%}}@media (min-width: 992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-1{width:8.3333333333%}.col-md-2{width:16.6666666667%}.col-md-3{width:25%}.col-md-4{width:33.3333333333%}.col-md-5{width:41.6666666667%}.col-md-6{width:50%}.col-md-7{width:58.3333333333%}.col-md-8{width:66.6666666667%}.col-md-9{width:75%}.col-md-10{width:83.3333333333%}.col-md-11{width:91.6666666667%}.col-md-12{width:100%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.3333333333%}.col-md-pull-2{right:16.6666666667%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.3333333333%}.col-md-pull-5{right:41.6666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.3333333333%}.col-md-pull-8{right:66.6666666667%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.3333333333%}.col-md-pull-11{right:91.6666666667%}.col-md-pull-12{right:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.3333333333%}.col-md-push-2{left:16.6666666667%}.col-md-push-3{left:25%}.col-md-push-4{left:33.3333333333%}.col-md-push-5{left:41.6666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.3333333333%}.col-md-push-8{left:66.6666666667%}.col-md-push-9{left:75%}.col-md-push-10{left:83.3333333333%}.col-md-push-11{left:91.6666666667%}.col-md-push-12{left:100%}.col-md-offset-0{margin-left:0%}.col-md-offset-1{margin-left:8.3333333333%}.col-md-offset-2{margin-left:16.6666666667%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.3333333333%}.col-md-offset-5{margin-left:41.6666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.3333333333%}.col-md-offset-8{margin-left:66.6666666667%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.3333333333%}.col-md-offset-11{margin-left:91.6666666667%}.col-md-offset-12{margin-left:100%}}@media (min-width: 1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-1{width:8.3333333333%}.col-lg-2{width:16.6666666667%}.col-lg-3{width:25%}.col-lg-4{width:33.3333333333%}.col-lg-5{width:41.6666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.3333333333%}.col-lg-8{width:66.6666666667%}.col-lg-9{width:75%}.col-lg-10{width:83.3333333333%}.col-lg-11{width:91.6666666667%}.col-lg-12{width:100%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.3333333333%}.col-lg-pull-2{right:16.6666666667%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.3333333333%}.col-lg-pull-5{right:41.6666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.3333333333%}.col-lg-pull-8{right:66.6666666667%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.3333333333%}.col-lg-pull-11{right:91.6666666667%}.col-lg-pull-12{right:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.3333333333%}.col-lg-push-2{left:16.6666666667%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.3333333333%}.col-lg-push-5{left:41.6666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.3333333333%}.col-lg-push-8{left:66.6666666667%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.3333333333%}.col-lg-push-11{left:91.6666666667%}.col-lg-push-12{left:100%}.col-lg-offset-0{margin-left:0%}.col-lg-offset-1{margin-left:8.3333333333%}.col-lg-offset-2{margin-left:16.6666666667%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.3333333333%}.col-lg-offset-5{margin-left:41.6666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.3333333333%}.col-lg-offset-8{margin-left:66.6666666667%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.3333333333%}.col-lg-offset-11{margin-left:91.6666666667%}.col-lg-offset-12{margin-left:100%}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>thead>tr>td,.table>tbody>tr>th,.table>tbody>tr>td,.table>tfoot>tr>th,.table>tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>th,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>thead>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>thead>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>thead>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>thead>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>thead>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width: 767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}input[type="range"]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;background-color:#fcfcfc;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;-o-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#fafafa;opacity:1}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio: 0){input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{line-height:34px}input[type="date"].input-sm,.input-group-sm>input[type="date"].form-control,.input-group-sm>input[type="date"].input-group-addon,.input-group-sm>.input-group-btn>input[type="date"].btn,input[type="time"].input-sm,.input-group-sm>input[type="time"].form-control,.input-group-sm>input[type="time"].input-group-addon,.input-group-sm>.input-group-btn>input[type="time"].btn,input[type="datetime-local"].input-sm,.input-group-sm>input[type="datetime-local"].form-control,.input-group-sm>input[type="datetime-local"].input-group-addon,.input-group-sm>.input-group-btn>input[type="datetime-local"].btn,input[type="month"].input-sm,.input-group-sm>input[type="month"].form-control,.input-group-sm>input[type="month"].input-group-addon,.input-group-sm>.input-group-btn>input[type="month"].btn{line-height:30px}input[type="date"].input-lg,.input-group-lg>input[type="date"].form-control,.input-group-lg>input[type="date"].input-group-addon,.input-group-lg>.input-group-btn>input[type="date"].btn,input[type="time"].input-lg,.input-group-lg>input[type="time"].form-control,.input-group-lg>input[type="time"].input-group-addon,.input-group-lg>.input-group-btn>input[type="time"].btn,input[type="datetime-local"].input-lg,.input-group-lg>input[type="datetime-local"].form-control,.input-group-lg>input[type="datetime-local"].input-group-addon,.input-group-lg>.input-group-btn>input[type="datetime-local"].btn,input[type="month"].input-lg,.input-group-lg>input[type="month"].form-control,.input-group-lg>input[type="month"].input-group-addon,.input-group-lg>.input-group-btn>input[type="month"].btn{line-height:46px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="radio"].disabled,fieldset[disabled] input[type="radio"],input[type="checkbox"][disabled],input[type="checkbox"].disabled,fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}.radio-inline.disabled,fieldset[disabled] .radio-inline,.checkbox-inline.disabled,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,fieldset[disabled] .radio label,.checkbox.disabled label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.input-group-lg>.form-control-static.form-control,.input-group-lg>.form-control-static.input-group-addon,.input-group-lg>.input-group-btn>.form-control-static.btn,.form-control-static.input-sm,.input-group-sm>.form-control-static.form-control,.input-group-sm>.form-control-static.input-group-addon,.input-group-sm>.input-group-btn>.form-control-static.btn{padding-left:0;padding-right:0}.input-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn,.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm,.input-group-sm>select.form-control,.input-group-sm>select.input-group-addon,.input-group-sm>.input-group-btn>select.btn,.form-group-sm .form-control{height:30px;line-height:30px}textarea.input-sm,.input-group-sm>textarea.form-control,.input-group-sm>textarea.input-group-addon,.input-group-sm>.input-group-btn>textarea.btn,.form-group-sm .form-control,select[multiple].input-sm,.input-group-sm>select[multiple].form-control,.input-group-sm>select[multiple].input-group-addon,.input-group-sm>.input-group-btn>select[multiple].btn,.form-group-sm .form-control{height:auto}.input-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn,.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg,.input-group-lg>select.form-control,.input-group-lg>select.input-group-addon,.input-group-lg>.input-group-btn>select.btn,.form-group-lg .form-control{height:46px;line-height:46px}textarea.input-lg,.input-group-lg>textarea.form-control,.input-group-lg>textarea.input-group-addon,.input-group-lg>.input-group-btn>textarea.btn,.form-group-lg .form-control,select[multiple].input-lg,.input-group-lg>select[multiple].form-control,.input-group-lg>select[multiple].input-group-addon,.input-group-lg>.input-group-btn>select[multiple].btn,.form-group-lg .form-control{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback,.input-group-lg>.form-control+.form-control-feedback,.input-group-lg>.input-group-addon+.form-control-feedback,.input-group-lg>.input-group-btn>.btn+.form-control-feedback{width:46px;height:46px;line-height:46px}.input-sm+.form-control-feedback,.input-group-sm>.form-control+.form-control-feedback,.input-group-sm>.input-group-addon+.form-control-feedback,.input-group-sm>.input-group-btn>.btn+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label ~ .form-control-feedback{top:25px}.has-feedback label.sr-only ~ .form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width: 768px){.form-inline .form-group,.o_navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control,.o_navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static,.o_navbar-form .form-control-static{display:inline-block}.form-inline .input-group,.o_navbar-form .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.o_navbar-form .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.o_navbar-form .input-group .input-group-btn,.form-inline .input-group .form-control,.o_navbar-form .input-group .form-control{width:auto}.form-inline .input-group>.form-control,.o_navbar-form .input-group>.form-control{width:100%}.form-inline .control-label,.o_navbar-form .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.o_navbar-form .radio,.form-inline .checkbox,.o_navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.o_navbar-form .radio label,.form-inline .checkbox label,.o_navbar-form .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.o_navbar-form .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"],.o_navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback,.o_navbar-form .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{content:" ";display:table}.form-horizontal .form-group:after{clear:both}@media (min-width: 768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width: 768px){.form-horizontal .form-group-lg .control-label{padding-top:14.3px}}@media (min-width: 768px){.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn.focus,.btn:active:focus,.btn:active.focus,.btn.active:focus,.btn.active.focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fcfcfc;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default.focus,.btn-default:active,.btn-default.active,.open>.btn-default.dropdown-toggle{color:#333;background-color:#e3e3e3;border-color:#adadad}.btn-default:active,.btn-default.active,.open>.btn-default.dropdown-toggle{background-image:none}.btn-default.disabled,.btn-default.disabled:hover,.btn-default.disabled:focus,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled.active,.btn-default[disabled],.btn-default[disabled]:hover,.btn-default[disabled]:focus,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled].active,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default:hover,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default.active{background-color:#fcfcfc;border-color:#ccc}.btn-default .badge{color:#fcfcfc;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary:hover,.btn-primary:focus,.btn-primary.focus,.btn-primary:active,.btn-primary.active,.open>.btn-primary.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary:active,.btn-primary.active,.open>.btn-primary.dropdown-toggle{background-image:none}.btn-primary.disabled,.btn-primary.disabled:hover,.btn-primary.disabled:focus,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled.active,.btn-primary[disabled],.btn-primary[disabled]:hover,.btn-primary[disabled]:focus,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary:hover,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary.active{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success.focus,.btn-success:active,.btn-success.active,.open>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.btn-success:active,.btn-success.active,.open>.btn-success.dropdown-toggle{background-image:none}.btn-success.disabled,.btn-success.disabled:hover,.btn-success.disabled:focus,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled.active,.btn-success[disabled],.btn-success[disabled]:hover,.btn-success[disabled]:focus,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled].active,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success:hover,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info.focus,.btn-info:active,.btn-info.active,.open>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info:active,.btn-info.active,.open>.btn-info.dropdown-toggle{background-image:none}.btn-info.disabled,.btn-info.disabled:hover,.btn-info.disabled:focus,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled.active,.btn-info[disabled],.btn-info[disabled]:hover,.btn-info[disabled]:focus,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled].active,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info:hover,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning.focus,.btn-warning:active,.btn-warning.active,.open>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open>.btn-warning.dropdown-toggle{background-image:none}.btn-warning.disabled,.btn-warning.disabled:hover,.btn-warning.disabled:focus,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled.active,.btn-warning[disabled],.btn-warning[disabled]:hover,.btn-warning[disabled]:focus,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning:hover,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger.focus,.btn-danger:active,.btn-danger.active,.open>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open>.btn-danger.dropdown-toggle{background-image:none}.btn-danger.disabled,.btn-danger.disabled:hover,.btn-danger.disabled:focus,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled.active,.btn-danger[disabled],.btn-danger[disabled]:hover,.btn-danger[disabled]:focus,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger:hover,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#337ab7;font-weight:normal;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:hover,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity 0.15s linear;-o-transition:opacity 0.15s linear;transition:opacity 0.15s linear}.fade.in{opacity:1}.collapse{display:none;visibility:hidden}.collapse.in{display:block;visibility:visible}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:0.35s;transition-duration:0.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fcfcfc;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#337ab7}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#777}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width: 768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar:before,.btn-toolbar:after{content:" ";display:table}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle,.btn-group-lg.btn-group>.btn+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret,.btn-group-lg>.btn .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret,.dropup .btn-group-lg>.btn .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{content:" ";display:table}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*="col-"]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.input-group-addon.btn{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.input-group-addon.btn{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav:before,.nav:after{content:" ";display:table}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified,.nav-tabs.nav-justified{width:100%}.nav-justified>li,.nav-tabs.nav-justified>li{float:none}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width: 768px){.nav-justified>li,.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified,.nav-tabs.nav-justified{border-bottom:0}.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs.nav-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width: 768px){.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs.nav-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none;visibility:hidden}.tab-content>.active{display:block;visibility:visible}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{content:" ";display:table}.navbar:after{clear:both}@media (min-width: 768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{content:" ";display:table}.navbar-header:after{clear:both}@media (min-width: 768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{content:" ";display:table}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media (min-width: 768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block !important;visibility:visible !important;height:auto !important;padding-bottom:0;overflow:visible !important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width: 480px) and (orientation: landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width: 768px){.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width: 768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width: 768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width: 768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width: 768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width: 767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width: 768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (min-width: 768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width: 767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width: 768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm,.btn-group-sm>.navbar-btn.btn{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs,.btn-group-xs>.navbar-btn.btn{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width: 768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width: 768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right ~ .navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width: 767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#333}.navbar-default .btn-link[disabled]:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:hover,fieldset[disabled] .navbar-default .btn-link:focus{color:#ccc}.navbar-inverse{background-color:#222;border-color:#090909}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#090909;color:#fff}@media (max-width: 767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#fff}.navbar-inverse .btn-link[disabled]:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:hover,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/ ";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.428571429;text-decoration:none;color:#337ab7;background-color:#fcfcfc;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>a:focus,.pagination>li>span:hover,.pagination>li>span:focus{color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:hover,.pagination>.active>a:focus,.pagination>.active>span,.pagination>.active>span:hover,.pagination>.active>span:focus{z-index:2;color:#fcfcfc;background-color:#337ab7;border-color:#337ab7;cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager:before,.pager:after{content:" ";display:table}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fcfcfc;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#777;background-color:#fcfcfc;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label:empty{display:none}.btn .label{position:relative;top:-1px}a.label:hover,a.label:focus{color:#fff;text-decoration:none;cursor:pointer}.label-default{background-color:#777}.label-default[href]:hover,.label-default[href]:focus{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge,.btn-group-xs>.btn .badge{top:0;padding:1px 5px}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.jumbotron,.o_repo_details .o_lead{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.o_repo_details .o_lead h1,.jumbotron .h1,.o_repo_details .o_lead .h1{color:inherit}.jumbotron p,.o_repo_details .o_lead p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr,.o_repo_details .o_lead>hr{border-top-color:#d5d5d5}.container .jumbotron,.container .o_repo_details .o_lead,.o_repo_details .container .o_lead,.container-fluid .jumbotron,.container-fluid .o_repo_details .o_lead,.o_repo_details .container-fluid .o_lead{border-radius:6px}.jumbotron .container,.o_repo_details .o_lead .container{max-width:100%}@media screen and (min-width: 768px){.jumbotron,.o_repo_details .o_lead{padding:48px 0}.container .jumbotron,.container .o_repo_details .o_lead,.o_repo_details .container .o_lead,.container-fluid .jumbotron,.container-fluid .o_repo_details .o_lead,.o_repo_details .container-fluid .o_lead{padding-left:60px;padding-right:60px}.jumbotron h1,.o_repo_details .o_lead h1,.jumbotron .h1,.o_repo_details .o_lead .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border 0.2s ease-in-out;-o-transition:border 0.2s ease-in-out;transition:border 0.2s ease-in-out}.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#333}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#337ab7}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4,.alert .o_cal .fc-header-title h2,.o_cal .fc-header-title .alert h2{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;-o-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar,.progress-bar-striped{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fcfcfc;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;color:#555;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fcfcfc;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{content:" ";display:table}.panel-body:after{clear:both}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table,.panel-collapse>.table,.panel-collapse>.table-responsive>.table,.panel-collapse>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption,.panel-collapse>.table caption,.panel-collapse>.table-responsive>.table caption,.panel-collapse>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child,.panel-collapse>.table:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child,.panel-collapse>.table:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body,.panel-collapse>.panel-body+.table,.panel-collapse>.panel-body+.table-responsive,.panel-collapse>.table+.panel-body,.panel-collapse>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td,.panel-collapse>.table>tbody:first-child>tr:first-child th,.panel-collapse>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered,.panel-collapse>.table-bordered,.panel-collapse>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel-collapse>.table-bordered>thead>tr>th:first-child,.panel-collapse>.table-bordered>thead>tr>td:first-child,.panel-collapse>.table-bordered>tbody>tr>th:first-child,.panel-collapse>.table-bordered>tbody>tr>td:first-child,.panel-collapse>.table-bordered>tfoot>tr>th:first-child,.panel-collapse>.table-bordered>tfoot>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel-collapse>.table-bordered>thead>tr>th:last-child,.panel-collapse>.table-bordered>thead>tr>td:last-child,.panel-collapse>.table-bordered>tbody>tr>th:last-child,.panel-collapse>.table-bordered>tbody>tr>td:last-child,.panel-collapse>.table-bordered>tfoot>tr>th:last-child,.panel-collapse>.table-bordered>tfoot>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel-collapse>.table-bordered>thead>tr:first-child>td,.panel-collapse>.table-bordered>thead>tr:first-child>th,.panel-collapse>.table-bordered>tbody>tr:first-child>td,.panel-collapse>.table-bordered>tbody>tr:first-child>th,.panel-collapse>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel-collapse>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel-collapse>.table-bordered>tbody>tr:last-child>td,.panel-collapse>.table-bordered>tbody>tr:last-child>th,.panel-collapse>.table-bordered>tfoot>tr:last-child>td,.panel-collapse>.table-bordered>tfoot>tr:last-child>th,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive,.panel-collapse>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);-o-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform 0.3s ease-out;-moz-transition:-moz-transform 0.3s ease-out;-o-transition:-o-transform 0.3s ease-out;transition:transform 0.3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box;outline:0}.modal-backdrop{position:absolute;top:0;right:0;left:0;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.428571429px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{content:" ";display:table}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width: 768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}.modal-sm{width:300px}}@media (min-width: 992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;visibility:visible;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-weight:normal;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important;visibility:hidden !important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none !important}@media (max-width: 767px){.visible-xs{display:block !important}table.visible-xs{display:table}tr.visible-xs{display:table-row !important}th.visible-xs,td.visible-xs{display:table-cell !important}}@media (max-width: 767px){.visible-xs-block{display:block !important}}@media (max-width: 767px){.visible-xs-inline{display:inline !important}}@media (max-width: 767px){.visible-xs-inline-block{display:inline-block !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm{display:block !important}table.visible-sm{display:table}tr.visible-sm{display:table-row !important}th.visible-sm,td.visible-sm{display:table-cell !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-block{display:block !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-inline{display:inline !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-inline-block{display:inline-block !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md{display:block !important}table.visible-md{display:table}tr.visible-md{display:table-row !important}th.visible-md,td.visible-md{display:table-cell !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-block{display:block !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-inline{display:inline !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-inline-block{display:inline-block !important}}@media (min-width: 1200px){.visible-lg{display:block !important}table.visible-lg{display:table}tr.visible-lg{display:table-row !important}th.visible-lg,td.visible-lg{display:table-cell !important}}@media (min-width: 1200px){.visible-lg-block{display:block !important}}@media (min-width: 1200px){.visible-lg-inline{display:inline !important}}@media (min-width: 1200px){.visible-lg-inline-block{display:inline-block !important}}@media (max-width: 767px){.hidden-xs{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.hidden-sm{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.hidden-md{display:none !important}}@media (min-width: 1200px){.hidden-lg{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}body .modal{position:absolute;overflow:visible}body div.tooltip-inner{max-width:400px}body div.popover{max-width:450px}body div.popover input{max-width:100%}body .modal-body.alert{border-radius:0}body .progress{margin-bottom:0}.panel-body:nth-child(n+2){border-top:1px solid #ddd}.panel .panel-heading[data-toggle="collapse"]{cursor:pointer}#o_ajax_busy_backdrop{bottom:0;z-index:1020}.form-control-feedback{top:10px}.form-horizontal .has-feedback .form-control-feedback{top:10px}.btn.btn-primary.o_disabled{color:#fff !important}body .progress-bar[aria-valuenow="1"],body .progress-bar[aria-valuenow="2"]{min-width:1px}td.text-left>div.form-inline>label.checkbox-inline>input[type='checkbox'],td.text-left>div.o_navbar-form>label.checkbox-inline>input[type='checkbox']{position:relative}@-moz-document url-prefix(){fieldset{display:table-cell}}@media screen and (max-width: 768px){@supports (-webkit-overflow-scrolling: touch){.form-control,.ui-widget input,.ui-widget select,.ui-widget textarea{font-size:16px}}}@font-face{font-family:'openolat';src:url("../light/fonts/openolat/openolat.eot?4yacgg");src:url("../light/fonts/openolat/openolat.woff") format("woff"),url("../light/fonts/openolat/openolat.ttf") format("truetype"),url("../light/fonts/openolat/openolat.svg") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:'FontAwesome';src:url("../../font-awesome/fonts/fontawesome-webfont.eot");src:url("../../font-awesome/fonts/fontawesome-webfont.woff2") format("woff2"),url("../../font-awesome/fonts/fontawesome-webfont.woff") format("woff"),url("../../font-awesome/fonts/fontawesome-webfont.ttf") format("truetype");font-weight:normal;font-style:normal}.o_icon,.o_progress_failed .inset:after,.o_progress_passed .inset:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_icon-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-15%}.o_icon-2x{font-size:2em}.o_icon-3x{font-size:3em}.o_icon-4x{font-size:4em}.o_icon-5x{font-size:5em}.o_icon-fw{width:1.2857142857em;text-align:center}.o_icon-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.o_icon-ul>li{position:relative}.o_icon-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em;text-align:center}.o_icon-li.o_icon-lg{left:-1.8571428571em}.o_icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.o_icon-pull-left{float:left}.o_icon-pull-right{float:right}.o_icon.o_icon-pull-left,.o_progress_failed .o_icon-pull-left.inset:after,.o_progress_passed .o_icon-pull-left.inset:after{margin-right:.3em}.o_icon.o_icon-pull-right,.o_progress_failed .o_icon-pull-right.inset:after,.o_progress_passed .o_icon-pull-right.inset:after{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.o_icon.pull-left,.o_progress_failed .pull-left.inset:after,.o_progress_passed .pull-left.inset:after{margin-right:.3em}.o_icon.pull-right,.o_progress_failed .pull-right.inset:after,.o_progress_passed .pull-right.inset:after{margin-left:.3em}.o_icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.o_icon-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.o_icon-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.o_icon-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.o_icon-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.o_icon-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.o_icon-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .o_icon-rotate-90,:root .o_icon-rotate-180,:root .o_icon-rotate-270,:root .o_icon-flip-horizontal,:root .o_icon-flip-vertical{filter:none}.o_icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.o_icon-stack-1x,.o_icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.o_icon-stack-1x{line-height:inherit}.o_icon-stack-2x{font-size:2em}.o_icon-inverse{color:#fff}.o_icon_absence:before{content:"ï€"}.o_icon_absence_authorized:before{content:"ï";color:#5cb85c}.o_icon_absence_leave:before{content:""}.o_icon_absence_unauthorized:before{content:"ïª";color:#d9534f}.o_icon_accepted:before{content:"ï…¤"}.o_icon_accessibility:before{content:""}.o_icon_actions:before{content:"ï‚…"}.o_icon_activate:before{content:"ï"}.o_icon_add_html:before{content:"ï„¡"}.o_icon_align_left:before{content:""}.o_icon_align_middle:before{content:""}.o_icon_align_right:before{content:""}.o_icon_archive_tool:before{content:""}.o_icon_assessment_mode:before{content:"ï„"}.o_icon_assessment_tool:before{content:"ï‚‘"}.o_icon_assignment:before{content:"";color:#d9534f}.o_icon_attempt_limit:before{content:""}.o_icon_accept:before{content:"";color:#5cb85c}.o_icon_add:before{content:"ï•"}.o_icon_add_member:before{content:""}.o_icon_add_search:before{content:""}.o_icon_audio:before{content:""}.o_icon_back:before{content:"ï“"}.o_icon_back_history:before{content:""}.o_icon_banned:before{content:"";color:#d9534f}.o_icon_bold:before{content:""}.o_icon_booking:before{content:"ïº"}.o_icon_bookmark:before{content:"";color:#bc2d0c}.o_icon_bookmark_add:before{content:"ï‚—";color:#bc2d0c}.o_icon_bookmark_header:before{content:""}.o_icon_browse:before{content:""}.o_icon_brush:before{content:""}.o_icon_browsercheck:before{content:"ï…¤"}.o_icon_busy:before{content:"ï„"}.o_icon_calendar:before{content:"ï³"}.o_icon_calendar_enabled:before{content:"ï†"}.o_icon_calendar_disabled:before{content:"ï‚–"}.o_icon_calendar:before{content:"ï³"}.o_icon_calendar_sync:before{content:""}.o_icon_cancelled:before{content:"ïž"}.o_icon_caret:before{content:""}.o_icon_caret_right:before{content:""}.o_icon_catalog:before{content:""}.o_icon_catalog_sub:before{content:"ï»"}.o_icon_certificate:before{content:"ï‚£"}.o_icon_chat:before{content:""}.o_icon_check:before{content:""}.o_icon_check_off:before{content:"ï‚–"}.o_icon_check_on:before{content:"ï†"}.o_icon_checkbox:before{content:"ï‚–"}.o_icon_checkbox_checked:before{content:"ï…Š"}.o_icon_circle:before{content:""}.o_icon_circle_color:before{content:"ï„‘"}.o_icon_citation:before{content:"ï„"}.o_icon_cleanup:before{content:""}.o_icon_clear_all:before{content:""}.o_icon_close:before{content:"ï€"}.o_icon_close_resource:before{content:""}.o_icon_close_tab:before{content:"ï€"}.o_icon_close_tool:before{content:"ï€"}.o_icon_close_tree:before{content:""}.o_icon_close_togglebox:before,.o_togglebox_wrapper .o_opener.o_in i:before,.o_search_result .o_opener.o_in i:before{content:""}.o_icon_code:before{content:"ï„¡"}.o_icon_coach:before{content:"ï†"}.o_icon_color_picker:before{content:"ïƒ"}.o_icon_column:before{content:""}.o_icon_columns:before{content:""}.o_icon_container:before{content:""}.o_icon_copy:before{content:""}.o_icon_courseareas:before{content:""}.o_icon_coursedb:before{content:""}.o_icon_courseeditor:before{content:"ï„"}.o_icon_coursefolder:before{content:"ï„”"}.o_icon_courserun:before{content:""}.o_icon_comments:before{content:""}.o_icon_comments_none:before{content:""}.o_icon_compress:before{content:"ï¦"}.o_icon_compulsory:before{content:"ï©"}.o_icon_content_popup:before{content:"ï‚Ž"}.o_icon_correct_answer:before{content:"";color:#5cb85c}.o_icon_correct_response:before{content:"ï";color:#5cb85c}.o_icon_correction:before{content:"ï€"}.o_icon_curriculum_element:before{content:""}.o_icon_customize:before{content:""}.o_icon_deactivate:before{content:"ïž"}.o_icon_delete_item:before{content:""}.o_icon_delete:before{content:"ï–";color:#A87E7E}.o_icon_deleted:before{content:""}.o_icon_details:before{content:""}.o_icon_description:before{content:"ïš"}.o_icon_dev:before{content:""}.o_icon_disabled:before{content:"ï„Œ"}.o_icon_dispensation_authorized:before{content:"ï";color:#5cb85c}.o_icon_dispensation_unauthorized:before{content:"ï±";color:#f0ad4e}.o_icon_download:before{content:""}.o_icon_edit:before{content:"ï„"}.o_icon_edit_file:before{content:"ï„"}.o_icon_edit_metadata:before{content:""}.o_icon_element_after:before{content:"ï£"}.o_icon_element_before:before{content:"ï¢"}.o_icon_enabled:before{content:"ï„‘"}.o_icon_enlarge:before{content:""}.o_icon_eportfolio_add:before{content:"ï„®"}.o_icon_eportfolio_link:before{content:"ï„®"}.o_icon_eraser:before{content:"ï„"}.o_icon_error:before{content:"ïª";color:#d9534f}.o_icon_exclamation:before{content:""}.o_icon_expand:before{content:"ï¥"}.o_icon_expenditure:before{content:""}.o_icon_export:before{content:"ï…"}.o_icon_extend:before{content:""}.o_icon_external_link:before{content:"ï‚Ž"}.o_icon_extra_time:before{content:""}.o_icon_failed:before{content:"ï—"}.o_icon_files:before{content:""}.o_icon_fileupload:before{content:""}.o_icon_filter:before{content:"ï‚°"}.o_icon_graduate:before{content:"ï†"}.o_icon_group:before,.o_BusinessGroup_icon:before{content:""}.o_icon_header:before{content:""}.o_icon_help:before{content:"ï™";cursor:help}.o_icon_home:before{content:""}.o_icon_image:before{content:""}.o_icon_impress:before{content:"ïš"}.o_icon_important:before{content:"ï±";color:#f0ad4e}.o_icon_import:before{content:"ï‚“"}.o_icon_incorrect_response:before{content:"ïœ";color:#d9534f}.o_icon_info:before{content:"ïš";color:#5bc0de}.o_icon_info_msg:before{content:"ïª";color:#d9534f}.o_icon_info_resource:before{content:"ïš"}.o_icon_inheritance_root:before{content:"ï‚«"}.o_icon_inheritance_inherited:before{content:""}.o_icon_inheritance_none:before{content:"ï„Œ"}.o_icon_inline_editable:before{content:"ï„"}.o_icon_institution:before{content:""}.o_icon_italic:before{content:""}.o_icon_landingpage:before{content:"ï…€"}.o_icon_language:before{content:""}.o_icon_layout:before{content:""}.o_icon_learning_path:before{content:""}.o_icon_lecture:before{content:"ï€"}.o_icon_left:before{content:""}.o_icon_levels:before{content:""}.o_icon_line:before{content:""}.o_icon_link:before{content:"ïƒ"}.o_icon_link_extern:before{content:"ï‚Ž"}.o_icon_list:before{content:""}.o_icon_list_num:before{content:""}.o_icon_lifecycle:before{content:""}.o_icon_lifecycle_date:before{content:"ï³"}.o_icon_locked:before{content:""}.o_icon_log:before{content:"ï…œ"}.o_icon_login:before{content:"ï‚"}.o_icon_logout:before{content:"ï‚‹"}.o_icon_mandatory:before{content:"ï©";color:#f0ad4e}.o_icon_managed:before{content:"ï¹";color:#777}.o_icon_manual:before{content:"ï€";cursor:help}.o_icon_mail:before{content:""}.o_icon_math:before{content:"\03a3"}.o_icon_media:before{content:""}.o_icon_mediacenter:before{content:"ï¼"}.o_icon_membersmanagement:before{content:""}.o_icon_menuhandel:before{content:""}.o_icon_message:before{content:"ïƒ "}.o_icon_mobile:before{content:"ï„‹"}.o_icon_move:before{content:"ï‡"}.o_icon_order:before{content:"ï½"}.o_icon_move_down:before{content:""}.o_icon_move_left:before{content:"ï„€"}.o_icon_move_right:before{content:"ï„"}.o_icon_move_up:before{content:"ï„‚"}.o_icon_ms_done:before{content:""}.o_icon_ms_pending:before{content:"ï‹"}.o_icon_new:before{content:"ï©";color:#5cb85c}.o_icon_new_document:before{content:"ï…œ"}.o_icon_new_folder:before{content:"ï»"}.o_icon_new_portfolio:before{content:"ï€"}.o_icon_news:before{content:"ïš"}.o_icon_next:before{content:""}.o_icon_next_step:before{content:"ï„"}.o_icon_next_page:before{content:"ï„"}.o_icon_next_toolbar:before{content:""}.o_icon_node_after:before{content:"ï…µ"}.o_icon_node_before:before{content:"ï…¶"}.o_icon_node_under:before{content:"ï„’"}.o_icon_node_up_down:before{content:"ï½"}.o_icon_notes:before{content:""}.o_icon_notice_authorized:before{content:"ï";color:#5cb85c}.o_icon_notice_unauthorized:before{content:"ï±";color:#f0ad4e}.o_icon_notification:before{content:"ï‚ž"}.o_icon_number_of:before{content:""}.o_icon_ok:before{content:"";color:#5cb85c}.o_icon_open_tree:before{content:""}.o_icon_open_togglebox:before,.o_togglebox_wrapper .o_opener i:before,.o_search_result .o_opener i:before{content:""}.o_icon_openolat:before,.o_icon_provider_olat:before{content:"\E600";font-family:openolat;font-size:10px}.o_icon_options:before{content:""}.o_icon_origin:before{content:""}.o_icon_others:before{content:""}.o_icon_owner:before{content:""}.o_icon_pageing:before{content:"ï…"}.o_icon_paragraph:before{content:"ï‡"}.o_icon_passed:before{content:"ï˜"}.o_icon_password:before{content:""}.o_icon_pending:before{content:"ï„"}.o_icon_phone:before{content:"ï‚•"}.o_icon_post:before{content:""}.o_icon_presence:before{content:""}.o_icon_preview:before{content:"ï®"}.o_icon_previous:before{content:"ï„·"}.o_icon_previous_page:before{content:"ï„€"}.o_icon_previous_step:before{content:"ï„€"}.o_icon_previous_toolbar:before{content:""}.o_icon_print:before{content:""}.o_icon_private:before{content:""}.o_icon_progress_success:before{content:"";color:#e5efe5}.o_icon_progress_danger:before{content:"ï€";color:#efe5e5}.o_icon_provider_adfs:before{content:"ï…º"}.o_icon_provider_facebook:before{content:"ï‚š"}.o_icon_provider_google:before{content:"ï† "}.o_icon_provider_guest:before{content:""}.o_icon_provider_ldap:before{content:""}.o_icon_provider_linkedin:before{content:""}.o_icon_provider_oauth:before{content:""}.o_icon_provider_openid:before{content:""}.o_icon_provider_performx:before{content:""}.o_icon_provider_shibboleth:before{content:""}.o_icon_provider_tequila:before{content:""}.o_icon_provider_twitter:before{content:"ï‚™"}.o_icon_publish:before{content:"ï¤"}.o_icon_pull:before{content:""}.o_icon_quota:before{content:""}.o_icon_qrcode:before{content:""}.o_icon_quickview:before{content:"ï®"}.o_icon_radio_off:before{content:"ï„Œ"}.o_icon_radio_on:before{content:"ï"}.o_icon_rating_on:before,.o_rating .o_rating_items.o_enabled .o_icon:hover:before{content:""}.o_icon_rating_off:before{content:""}.o_icon_read:before{content:"ï„Œ"}.o_icon_readonly:before{content:"ï„";color:red}.o_icon_readwrite:before{content:"ï„"}.o_icon_recycle:before{content:""}.o_icon_rectangle:before{content:"ï‚–"}.o_icon_redo:before{content:""}.o_icon_refresh:before{content:""}.o_icon_reject:before{content:"ï€";color:#d9534f}.o_icon_rejected:before{content:"ï…¥"}.o_icon_reminder:before{content:""}.o_icon_remove:before{content:"ï€"}.o_icon_remove_filters:before{content:"ï—"}.o_icon_reopen:before{content:"ï„’"}.o_icon_replace:before{content:""}.o_icon_reply:before{content:"ï„’"}.o_icon_reply_with_quote:before{content:"ï„¢"}.o_icon_report:before{content:""}.o_icon_reset:before{content:"ïˆ"}.o_icon_response_feedback:before{content:""}.o_icon_restore:before{content:"ï…¤"}.o_icon_results_visible:before{content:"ï®"}.o_icon_results_hidden:before{content:"ï°"}.o_icon_reviewer:before{content:""}.o_icon_right:before{content:"ï‚©"}.o_icon_rss:before{content:"ï‚ž"}.o_icon_rss_unsubscribe:before{content:"ï‚ž";color:#996633}.o_icon_role:before{content:""}.o_icon_rubric:before{content:""}.o_icon_rubric_insufficient:before{content:"ï—";color:#d9534f}.o_icon_rubric_sufficient:before{content:"ï˜";color:#5cb85c}.o_icon_rubric_neutral:before{content:"ïª";color:#f0ad4e}.o_icon_save:before{content:""}.o_icon_search:before{content:""}.o_icon_select:before{content:""}.o_icon_send:before{content:"ïƒ "}.o_icon_settings:before{content:"ï‚…"}.o_icon_share:before{content:"ï¤"}.o_icon_show_more:before{content:"ï…"}.o_icon_show_less:before{content:"ï…‘"}.o_icon_show_send:before{content:""}.o_icon_shuffle:before{content:"ï´"}.o_icon_sign_out:before{content:"ï‚‹"}.o_icon_slide_down:before{content:"ï¸"}.o_icon_slide_up:before{content:"ï·"}.o_icon_spacer:before{content:"ï¾"}.o_icon_split:before{content:""}.o_icon_sort:before{content:""}.o_icon_sort_asc:before{content:""}.o_icon_sort_desc:before{content:"ïƒ"}.o_icon_sort_amount_asc:before{content:"ï… "}.o_icon_sort_amount_desc:before{content:"ï…¡"}.o_icon_sort_menu:before{content:"ï… "}.o_icon_start:before{content:"ï”"}.o_icon_status_available:before{content:"ï„‘";color:#063}.o_icon_status_chat:before{content:"ïµ"}.o_icon_status_dnd:before{content:"";color:#cc3}.o_icon_status_unavailable:before{content:"ïœ";color:#963}.o_icon_status_not_ready:before{content:"ïž"}.o_icon_status_not_started:before{content:"ï„Œ"}.o_icon_status_in_progress:before{content:"ï‹"}.o_icon_status_in_review:before{content:""}.o_icon_status_done:before{content:"ï˜"}.o_icon_status_undone:before{content:"ï"}.o_icon_statistics_tool:before{content:"ï‚€"}.o_icon_submit:before{content:""}.o_icon_table:before{content:""}.o_icon_table_custom:before{content:""}.o_icon_table_large:before{content:""}.o_icon_tags:before{content:""}.o_icon_textinput:before{content:""}.o_icon_time:before{content:""}.o_icon_timelimit:before{content:""}.o_icon_timelimit_start:before{content:""}.o_icon_timelimit_half:before{content:""}.o_icon_timelimit_end:before{content:""}.o_icon_timetable:before{content:""}.o_icon_toggle:before{content:"ï„‘"}.o_icon_toggle_on:before{content:""}.o_icon_toggle_off:before{content:""}.o_icon_to_read:before{content:"ï„‘"}.o_icon_tool:before{content:""}.o_icon_tool_pdf:before{content:"ï‡"}.o_icon_tools:before{content:"ï‚"}.o_icon_top:before{content:"ï·"}.o_icon_translation_item:before{content:""}.o_icon_translation_package:before{content:"ï„•"}.o_icon_unlocked:before{content:"ï‚œ"}.o_icon_undo:before{content:""}.o_icon_user:before{content:""}.o_icon_user_vip:before{content:"ï†"}.o_icon_user_anonymous:before{content:""}.o_icon_update:before{content:""}.o_icon_upload:before{content:"ï‚“"}.o_icon_version:before{content:""}.o_icon_video:before{content:""}.o_icon_visitingcard.o_icon_waiting:before{content:""}.o_icon_warn:before{content:"ï±";color:#f0ad4e}.o_icon_width_expand:before{content:"ï¥"}.o_icon_width_collapse:before{content:"ï¦"}.o_icon_wizard:before{content:"ïƒ"}.o_icon_xing:before{content:"ï…¨";color:#cfdc00}.o_BinderTemplate_icon:before{content:""}.o_CourseModule_icon:before,.o_course_icon:before{content:""}.o_EPStructuredMapTemplate_icon:before{content:"ï„®"}.o_FileResource-BLOG_icon:before{content:"ï‚¡"}.o_FileResource-IMSCP_icon:before{content:""}.o_FileResource-FORM_icon:before{content:""}.o_FileResource-PODCAST_icon:before{content:""}.o_FileResource-SHAREDFOLDER:before{content:"ï‚Ž"}.o_FileResource-SCORMCP_icon:before{content:""}.o_FileResource-SURVEY_icon:before{content:"ï„š"}.o_FileResource-TEST_icon:before{content:"ï„"}.o_FileResource-IMSQTI21_icon:before{content:"ï…‹"}.o_FileResource-WIKI_icon:before{content:""}.o_FileResource-SHAREDFOLDER_icon:before{content:"ï„•"}.o_FileResource-GLOSSARY_icon:before{content:"ï†"}.o_FileResource-PDF_icon:before{content:"ï‡"}.o_FileResource-XLS_icon:before{content:""}.o_FileResource-PPT_icon:before{content:""}.o_FileResource-DOC_icon:before{content:""}.o_FileResource-ANIM_icon:before{content:""}.o_FileResource-IMAGE_icon:before{content:""}.o_FileResource-SOUND_icon:before{content:""}.o_FileResource-MOVIE_icon:before{content:""}.o_FileResource-FILE_icon:before{content:""}.o_FileResource-VIDEO_icon:before{content:""}.o_CourseModule_icon_closed:before{content:"ïž"}.o_icon_repo_status_preparation:before{content:"ï€"}.o_icon_repo_status_review:before{content:""}.o_icon_repo_status_coachpublished:before{content:""}.o_icon_repo_status_published:before{content:""}.o_icon_repo_status_closed:before{content:"ïž"}.o_icon_repo_status_trash:before{content:""}.o_icon_repo_status_deleted:before{content:""}.o_sp_icon:before{content:""}.o_st_icon:before{content:""}.o_tu_icon:before{content:"ï‚Ž"}.o_bc_icon:before{content:"ï„•"}.o_lti_icon:before{content:"ï‚Ž"}.o_cp_icon:before{content:""}.o_cp_item:before{content:""}.o_scorm_icon:before{content:""}.o_en_icon:before{content:"ï‚"}.o_fo_icon:before{content:""}.o_co_icon:before{content:""}.o_infomsg_icon:before{content:"ïš"}.o_cal_icon:before{content:"ï³"}.o_wiki_icon:before{content:""}.o_podcast_icon:before{content:""}.o_pf_icon:before{content:""}.o_blog_icon:before{content:"ï‚¡"}.o_ep_icon:before{content:""}.o_ep_icon_v1:before{content:"ï„®"}.o_iqtest_icon:before{content:"ï„"}.o_iqself_icon:before{content:"ï„"}.o_iqsurv_icon:before{content:"ï„š"}.o_survey_icon:before{content:""}.o_qtiassessment_icon:before{content:"ï…‹"}.o_ta_icon:before{content:"ï‚®"}.o_gta_icon:before{content:"ï‚®"}.o_ms_icon:before{content:""}.o_dialog_icon:before{content:""}.o_projectbroker_icon:before{content:"ï„Œ"}.o_ll_icon:before{content:"ïƒ"}.o_den_icon:before{content:""}.o_cmembers_icon:before{content:""}.o_cl_icon:before{content:"ï†"}.o_vc_icon:before{content:""}.o_video_icon:before{content:""}.o_vitero_icon:before{content:""}.o_openmeetings_icon:before{content:""}.o_gotomeeting_icon:before{content:""}.o_card2brain_icon:before{content:"\E800";font-family:openolat;font-size:120%}.o_edubase_icon:before{content:"\E885";font-family:openolat}.o_livestream_icon:before{content:""}.o_unkown_icon:before{content:""}.o_portlet_infomsg_icon:before{content:"ïš"}.o_portlet_quickstart_icon:before{content:""}.o_portlet_bookmark_icon:before{content:""}.o_portlet_groups_icon:before{content:""}.o_portlet_notes_icon:before{content:""}.o_portlet_noti_icon:before{content:"ï‚ž"}.o_portlet_eff_icon:before{content:"ï‚£"}.o_portlet_repository_student_icon:before{content:""}.o_portlet_repository_teacher_icon:before{content:"ï†"}.o_portlet_iframe_icon:before{content:""}.o_portlet_sysinfo_icon:before{content:""}.o_portlet_dyk_icon:before{content:""}.o_portlet_infomessages_icon:before{content:""}.o_portlet_cal_icon:before{content:"ï³"}.o_portlet_institutions_icon:before{content:""}.o_portlet_links_icon:before{content:"ïƒ"}.o_portlet_shibboleth_icon:before{content:"ï‚"}.o_icon_qpool:before{content:""}.o_icon_pool_private:before{content:"ï‚–"}.o_icon_pool_public:before{content:"ï†"}.o_icon_pool_my_items:before{content:""}.o_icon_pool_favorits:before{content:""}.o_icon_pool_collection:before{content:""}.o_icon_pool_pool:before{content:""}.o_icon_pool_share:before{content:""}.o_icon_qitem_commands:before{content:"ï‚…"}.o_icon_qitem_convert:before{content:""}.o_icon_qitem_copy:before{content:""}.o_icon_qitem_delete:before{content:""}.o_icon_qitem_draft:before{content:"ï€"}.o_icon_qitem_endOfLife:before{content:""}.o_icon_qitem_finalVersion:before{content:""}.o_icon_qitem_export:before{content:""}.o_icon_qitem_hide_metadata:before{content:""}.o_icon_qitem_import:before{content:"ï‚“"}.o_icon_qitem_new:before{content:"ï•"}.o_icon_qitem_review:before{content:""}.o_icon_qitem_revised:before{content:""}.o_icon_qitem_share:before{content:"ï¤"}.o_icon_qitem_show_metadata:before{content:""}.o_icon_qitem_status:before{content:"ï¡"}.o_forum_message_icon:before{content:""}.o_calendar_icon:before{content:"ï³"}.o_icon_pf_section_draft:before{content:"ï°";color:#f0ad4e}.o_icon_pf_section_progress:before{content:"";color:#f0ad4e}.o_icon_pf_section_submitted:before{content:"";color:#337ab7}.o_icon_pf_section_closed:before{content:"";color:#5cb85c}.o_icon_pf_binder:before{content:""}.o_icon_pf_entry:before{content:"ï…›"}.o_icon_pf_entry_draft:before{content:"ï„‘";color:#f0ad4e}.o_icon_pf_entry_published:before{content:"ï„‘";color:#337ab7}.o_icon_pf_entry_revision:before{content:"ï„‘";color:#d9534f}.o_icon_pf_entry_closed:before{content:"ï„‘";color:#5cb85c}.o_icon_pf_entry_deleted:before{content:"";color:#000}.o_icon_pf_history:before{content:""}.o_icon_pf_my_shares:before{content:"ï‡ "}.o_icon_pf_new_entry:before{content:"ï€"}.o_icon_pf_quick_links:before{content:"ï¤"}.o_icon_pf_page:before{content:""}.o_icon_pf_section:before{content:""}.o_icon_pf_shared_with_me:before{content:""}.o_icon_pf_trash:before{content:""}.o_forum_status_thread_icon:before{content:""}.o_forum_status_sticky_closed_icon:before{content:"ïž"}.o_forum_status_sticky_icon:before{content:""}.o_forum_status_closed_icon:before{content:"ïž";color:#a94442}.o_forum_status_opened_icon:before{content:"ïž";color:#3c763d}.o_forum_status_hidden_icon:before{content:"ï°";color:#a94442}.o_forum_status_visible_icon:before{content:"ï®";color:#3c763d}.o_forum_all_icon:before{content:""}.o_forum_all_flat_icon:before{content:""}.o_forum_one_icon:before{content:"ï®"}.o_forum_marked_icon:before{content:""}.o_forum_new_icon:before{content:"ï©"}.o_mi_qpool_import:before{content:""}.o_mi_qtidrawing:before{content:""}.o_mi_qtisection:before{content:""}.o_mi_qtisc:before{content:""}.o_mi_qtimatch:before{content:""}.o_mi_qtimatch_draganddrop:before{content:"ï‰"}.o_mi_qtimatch_truefalse:before{content:""}.o_mi_qtimc:before{content:"ï†"}.o_mi_qtikprim:before{content:"ï…Š"}.o_mi_qtifib:before{content:"ï…"}.o_mi_qtinumerical:before{content:""}.o_mi_qtihotspot:before{content:""}.o_mi_qtihottext:before{content:"ï"}.o_mi_qtiessay:before{content:""}.o_mi_qtiunkown:before{content:""}.o_mi_qtiupload:before{content:"ï‚“"}.o_as_mode_leadtime:before{content:""}.o_as_mode_assessment:before{content:"ï‹"}.o_as_mode_followup:before{content:"ïž"}.o_as_mode_closed:before{content:'-'}.o_as_mode_stop:before{content:"ï"}.o_icon_qti_notPresented:before{content:"";color:#ddd}.o_icon_qti_notAnswered:before{content:"ï…„";color:#f0ad4e}.o_icon_qti_answered:before{content:"ï˜";color:#5cb85c}.o_icon_qti_ended:before{content:"ïž";color:#5bc0de}.o_icon_qti_invalid:before{content:"ïª";color:#d9534f}.o_icon_qti_review:before{content:"ï®";color:#5bc0de}.o_icon_qti_reviewNotSeen:before,.o_icon_qti_reviewNotAnswered:before,.o_icon_qti_reviewInvalid:before{content:"ï°";color:#5bc0de}.o_icon_qti_end_testpart:before{content:""}.o_icon_qti_close_test:before{content:"ï‹“"}.o_icon_qti_cancel:before{content:"ï"}.o_icon_qti_suspend:before{content:"ïŒ"}.o_icon_qti_close_results:before{content:"ï‹“"}.o_icon_qti_hint:before{content:"ï™"}.o_icon_qti_summary_notAnswered:before{content:"ï„‘";color:#f0ad4e}.o_icon_qti_summary_ended:before{content:"ï—";color:#d9534f}.o_icon_qti_summary_correct:before{content:"ï˜";color:#5cb85c}.o_lectures_current:before{content:"ï„‘";color:#f0ad4e}.o_lectures_next:before{content:""}.o_lectures_pending:before{content:"ï„‘";color:#d9534f}.o_lectures_closed:before{content:"ï„‘"}.o_lectures_rollcall_ok:before{content:"ï„‘";color:#5cb85c}.o_lectures_rollcall_warning:before{content:"ï‚";color:#f0ad4e}.o_lectures_rollcall_danger:before{content:"ï„Œ";color:#d9534f}.o_lectures_rollcall_free:before{content:"ï„‘";color:#969696}.o_lectures_rollcall_notice:before{content:"ï„‘";color:#969696}.o_lectures_rollcall_pending:before{content:"";color:#b8b8b8}.o_lectures_attended:before{content:"ï„‘";color:#5cb85c}.o_lectures_authorized:before{content:"ï„‘";color:#f0ad4e}.o_lectures_absent:before{content:"ï„‘";color:#d9534f}.o_absences_col_warning:before{content:"ï±"}.o_absences_col_alert:before{content:"ïª"}.o_icon_taxonomy:before{content:""}.o_icon_taxonomy_level:before{content:""}.o_icon_taxonomy_level_leaf:before{content:"ï„•"}.o_icon_taxonomy_templates:before{content:""}.o_icon_taxonomy_levels:before{content:""}.o_black_led:before{content:"ï„‘";color:#337ab7}.o_green_led:before{content:"ï„‘";color:#5cb85c}.o_yellow_led:before{content:"ï„‘";color:#f0ad4e}.o_red_led:before{content:"ï„‘";color:#d9534f}.o_grader_active:before{content:"ï";color:#5cb85c}.o_grader_inactive:before{content:"ïž";color:#d9534f}.o_grader_absence:before{content:"";color:#f0ad4e}.o_grad_assignment_unassigned:before{content:"ïª";color:#d9534f}.o_grad_assignment_assigned:before{content:"ï‚–"}.o_grad_assignment_inprocess:before{content:""}.o_grad_assignment_done:before{content:"ï†"}.o_icon_identity_permanent:before{content:""}.o_icon_identity_pending:before{content:""}.o_icon_identity_login_denied:before{content:"ïž"}.o_icon_identity_deleted:before{content:""}.o_ac_token_icon:before{content:"ï‚„"}.o_ac_free_icon:before{content:"ï«"}.o_ac_group_icon:before{content:""}.o_ac_membersonly_icon:before{content:""}.o_ac_guests_icon:before{content:""}.o_ac_paypal_icon:before{content:""}.o_ac_status_canceled_icon:before{content:"ï¨";color:#f0ad4e}.o_ac_status_error_icon:before{content:"ï€";color:#d9534f}.o_ac_status_new_icon:before{content:"ï©";color:#337ab7}.o_ac_status_success_icon:before{content:"";color:#5cb85c}.o_ac_status_waiting_icon:before{content:"";color:#337ab7}.o_ac_order_status_new_icon:before{content:"ï©";color:#337ab7}.o_ac_order_status_prepayment_icon:before{content:"";color:#5bc0de}.o_ac_order_status_payed_icon:before{content:"";color:#5cb85c}.o_ac_order_status_canceled_icon:before{content:"ï¨";color:#f0ad4e}.o_ac_order_status_error_icon:before{content:"ï€";color:#d9534f}.o_ac_order_status_warning_icon:before{content:"";color:#f0ad4e}.o_scorm_org:before{content:""}.o_scorm_item:before{content:""}.o_scorm_completed:before,.o_scorm_passed:before{content:"ï˜"}.o_scorm_failed:before{content:"ï±"}.o_scorm_incomplete:before{content:"ï±"}.o_scorm_not_attempted:before{background:none}.o_midpub:before{content:"ï˜"}.o_midwarn:before{content:"ï±"}.o_midlock:before{content:""}.o_miderr:before{content:"ïª"}.o_middel:before{content:"ï„"}i.o_lp_not_accessible:before{content:"ïž"}i.o_lp_ready:before{content:"ïž"}i.o_lp_in_progress:before{content:"ï‹"}i.o_lp_done:before{content:""}.o_filetype_file:before,.o_filetype_ico:before{content:""}.o_filetype_folder:before{content:"ï„”"}.o_filetype_folder_open:before{content:"ï„•"}.o_filetype_zip:before,.o_filetype_gz:before,.o_filetype_tar:before,.o_filetype_tgz:before{content:""}.o_filetype_css:before,.o_filetype_js:before,.o_filetype_java:before,.o_filetype_numbers:before,.o_filetype_ods:before,.o_filetype_xml:before,.o_filetype_xsl:before{content:""}.o_filetype_bat_icon:before,.o_filetype_bat:before,.o_filetype_exe:before,.o_filetype_app:before,.o_filetype_sh:before{content:""}.o_filetype_xls:before,.o_filetype_xlsx:before{content:""}.o_filetype_png:before,.o_filetype_tiff:before,.o_filetype_webp:before,.o_filetype_gif:before,.o_filetype_ico:before,.o_filetype_jpeg:before,.o_filetype_bmp:before,.o_filetype_odg:before,.o_filetype_eps:before,.o_filetype_jpg:before{content:""}.o_filetype_psd:before,.o_filetype_avi:before,.o_filetype_dvi:before,.o_filetype_mp4:before,.o_filetype_m4v:before,.o_filetype_webm:before,.o_filetype_ogg:before,.o_filetype_video:before,.o_filetype_mov:before,.o_filetype_mpeg:before,.o_filetype_mpg:before,.o_filetype_qt:before,.o_filetype_ra:before,.o_filetype_ram:before,.o_filetype_swf:before,.o_filetype_flv:before{content:""}.o_filetype_midi:before,.o_filetype_audio:before,.o_filetype_mp3:before,.o_filetype_m3u:before,.o_filetype_wav:before{content:""}.o_filetype_ps:before,.o_filetype_pdf:before{content:"ï‡"}.o_filetype_key:before,.o_filetype_odp:before,.o_filetype_ppt:before,.o_filetype_pptx:before{content:""}.o_filetype_odf:before,.o_filetype_rtf:before,.o_filetype_readme:before,.o_filetype_README:before,.o_filetype_log:before,.o_filetype_txt:before,.o_filetype_htm:before,.o_filetype_html:before{content:""}.o_filetype_odt:before,.o_filetype_pages:before,.o_filetype_doc:before,.o_filetype_docx:before{content:""}.o_icon_share_social:before{content:"ï…"}.o_icon_apple:before{content:"ï…¹"}.o_icon_facebook:before{content:"ï‚‚"}.o_icon_twitter:before{content:"ï‚"}.o_icon_google:before{content:""}.o_icon_delicious:before{content:""}.o_icon_digg:before{content:""}.o_icon_mailto:before{content:""}.o_icon_link:before{content:"ïƒ"}.o_icon_yahoo:before{content:""}.o_icon_eva_disclaimer:before{content:""}.o_icon_eva_end_show:before{content:"ï¾"}.o_icon_eva_end_hide:before{content:"ï…¸"}.o_icon_eva_export:before{content:""}.o_icon_eva_pdf:before{content:"ï‡"}.o_icon_eva_print:before{content:""}.o_icon_eva_session_info:before{content:"ï„©"}.o_icon_eva_mc:before{content:"ï†"}.o_icon_eva_sc:before{content:""}.o_icon_eva_sc:before{content:""}.o_icon_surv_reset:before{content:"ï„"}.o_icon_qual_ana_hide_filter:before{content:""}.o_icon_qual_ana_pres_edit:before{content:"ï‚"}.o_icon_qual_ana_export:before{content:""}.o_icon_qual_ana_pres_delete:before{content:"ïž"}.o_icon_qual_ana_pdf:before{content:"ï‡"}.o_icon_qual_ana_print:before{content:""}.o_icon_qual_ana_show_filter:before{content:""}.o_icon_qual_ana_trend:before{content:"ïˆ"}.o_icon_qual_ana_trend_arrow:before{content:"ï‚©"}.o_icon_qual_dc_create:before{content:"ï•"}.o_icon_qual_dc_delete:before{content:""}.o_icon_qual_dc_finished:before{content:"ï˜"}.o_icon_qual_dc_preparation:before{content:"ï„"}.o_icon_qual_dc_ready:before{content:"ï€"}.o_icon_qual_dc_running:before{content:"ï…„"}.o_icon_qual_exec_future:before{content:"ïœ"}.o_icon_qual_exec_over:before{content:"ï—"}.o_icon_qual_exec_participating:before{content:"ï…„"}.o_icon_qual_exec_participated:before{content:"ï˜"}.o_icon_qual_exec_ready:before{content:"ï€"}.o_icon_qual_gen_ce_add:before{content:"ï•"}.o_icon_qual_gen_create:before{content:"ï•"}.o_icon_qual_gen_delete:before{content:""}.o_icon_qual_gen_disabled:before{content:"ïž"}.o_icon_qual_gen_enabled:before{content:""}.o_icon_qual_gen_re_add:before{content:"ï•"}.o_icon_qual_part_user_add:before{content:""}.o_icon_qual_part_user_add_course:before{content:""}.o_icon_qual_part_user_add_curele:before{content:""}.o_icon_qual_part_execute:before{content:"ï‹"}.o_icon_lic_add:before{content:"ï•"}.o_icon_lic_public_domain:before{content:"\E810";font-family:openolat;font-size:120%}.o_icon_lic_cc0:before{content:"\E811";font-family:openolat;font-size:120%}.o_icon_lic_by:before{content:"\E812";font-family:openolat;font-size:120%}.o_icon_lic_by_sa:before{content:"\E813";font-family:openolat;font-size:120%}.o_icon_lic_by_nd:before{content:"\E814";font-family:openolat;font-size:120%}.o_icon_lic_by_nc:before{content:"\E815";font-family:openolat;font-size:120%}.o_icon_lic_by_nc_sa:before{content:"\E817";font-family:openolat;font-size:120%}.o_icon_lic_by_nc_nd:before{content:"\E819";font-family:openolat;font-size:120%}.o_icon_lic_all_rights_reserved:before{content:""}.o_icon_lic_freetext:before{content:""}.o_icon_lic_general:before{content:""}.o_icon_lic_youtube:before{content:"ï…¦"}a.o_icon:hover,.o_progress_failed a.inset:hover:after,.o_progress_passed a.inset:hover:after,a.o_icon:focus,.o_progress_failed a.inset:focus:after,.o_progress_passed a.inset:focus:after{text-decoration:none}img.o_emoticons_angel{background:url(../light/images/emoticons/smiley-angel.png);width:16px;height:16px}img.o_emoticons_angry{background:url(../light/images/emoticons/smiley-mad.png);width:16px;height:16px}img.o_emoticons_blushing{background:url(../light/images/emoticons/smiley-red.png);width:16px;height:16px}img.o_emoticons_confused{background:url(../light/images/emoticons/smiley-confuse.png);width:16px;height:16px}img.o_emoticons_cool{background:url(../light/images/emoticons/smiley-cool.png);width:16px;height:16px}img.o_emoticons_cry{background:url(../light/images/emoticons/smiley-cry.png);width:16px;height:16px}img.o_emoticons_devil{background:url(../light/images/emoticons/smiley-evil.png);width:16px;height:16px}img.o_emoticons_grin{background:url(../light/images/emoticons/smiley-grin.png);width:16px;height:16px}img.o_emoticons_kiss{background:url(../light/images/emoticons/smiley-kiss.png);width:16px;height:16px}img.o_emoticons_ohoh{background:url(../light/images/emoticons/smiley-eek.png);width:16px;height:16px}img.o_emoticons_sad{background:url(../light/images/emoticons/smiley-sad.png);width:16px;height:16px}img.o_emoticons_sick{background:url(../light/images/emoticons/smiley-sad-blue.png);width:16px;height:16px}img.o_emoticons_smile{background:url(../light/images/emoticons/smiley.png);width:16px;height:16px}img.o_emoticons_tongue{background:url(../light/images/emoticons/smiley-razz.png);width:16px;height:16px}img.o_emoticons_ugly{background:url(../light/images/emoticons/smiley-money.png);width:16px;height:16px}img.o_emoticons_weird{background:url(../light/images/emoticons/smiley-nerd.png);width:16px;height:16px}img.o_emoticons_wink{background:url(../light/images/emoticons/smiley-wink.png);width:16px;height:16px}img.o_emoticons_worried{background:url(../light/images/emoticons/smiley-roll-blue.png);width:16px;height:16px}img.o_emoticons_up{background:url(../light/images/emoticons/thumb-up.png);width:16px;height:16px}img.o_emoticons_down{background:url(../light/images/emoticons/thumb.png);width:16px;height:16px}.o_block_bottom,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry,.o_header_with_buttons,.o_search_result{margin-bottom:1em}.o_block_top,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry{margin-top:1em}.o_block_small_bottom,.o_block_small{margin-bottom:0.5em}.o_block_small_top,.o_block_small{margin-top:0.5em}.o_block_large_bottom,.o_block_large,.o_block_with_datecomp,.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left,.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right,.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle,.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill,.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file,.o_pf_content .o_forum,.gu-mirror .o_forum,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_wiki,.o_login .o_login_footer_wrapper,.o_portlet{margin-bottom:2em}.o_block_large_top,.o_block_large,.o_block_with_datecomp,.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left,.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right,.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle,.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill,.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file,.o_pf_content .o_forum,.gu-mirror .o_forum,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_wiki,.o_login .o_login_footer_wrapper,.o_portlet{margin-top:2em}.o_block_move_up{margin-top:-1em}.o_block_move_up_small{margin-top:-0.5em}.o_block_move_up_large{margin-top:-2em}.o_block_inline,.o_block_inline_left,.o_block_inline_both,.o_block_inline_right{display:inline-block;vertical-align:top}.o_block_inline_left,.o_block_inline_both{margin-left:0.5em}.o_block_inline_right,.o_block_inline_both{margin-right:0.5em}.o_block_centered_wrapper{display:table;width:100%;height:100%}.o_block_centered_content{display:table-cell;vertical-align:middle;text-align:center}.o_block_imagebg{background-repeat:no-repeat;background-position:center;background-size:cover}.o_block_imagebg span{padding:2px;background-color:rgba(255,255,255,0.8)}.o_block_imagebg h1,.o_block_imagebg h2,.o_block_imagebg h3,.o_block_imagebg h4,.o_block_imagebg .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_block_imagebg h2,.o_block_imagebg h5,.o_block_imagebg p{padding:2px;background-color:rgba(255,255,255,0.8);display:inline-block}.o_block_imagebg h1:after,.o_block_imagebg h2:after,.o_block_imagebg h3:after,.o_block_imagebg h4:after,.o_block_imagebg .o_cal .fc-header-title h2:after,.o_cal .fc-header-title .o_block_imagebg h2:after,.o_block_imagebg h5:after,.o_block_imagebg p:after{content:' ';display:block}.o_scrollblock,div.b_scrollblock{overflow-x:auto;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_button_group{text-align:center}.o_button_group a,.o_button_group input,.o_button_group button,.o_button_group .btn-group{margin-right:5px;margin-bottom:0.5em}.o_button_group a:last-child,.o_button_group input:last-child,.o_button_group button:last-child,.o_button_group .btn-group:last-child{margin-right:0}.o_button_group .btn-group a,.o_button_group .btn-group input,.o_button_group .btn-group button{margin-right:0;margin-bottom:0}.o_button_group .dropdown-menu{text-align:left}.o_button_group_left{text-align:left}.o_button_group_right{text-align:right}.o_button_group_top{margin-top:0}.o_header_with_buttons:before,.o_header_with_buttons:after{content:" ";display:table}.o_header_with_buttons:after{clear:both}.o_header_with_buttons h1,.o_header_with_buttons h2,.o_header_with_buttons h3,.o_header_with_buttons h4,.o_header_with_buttons .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_header_with_buttons h2,.o_header_with_buttons h5,.o_header_with_buttons h6{display:inline-block}.o_header_with_buttons .o_button_group{margin-bottom:0;float:right}.o_header_with_buttons h1+.o_button_group{margin-top:28px}.o_header_with_buttons h2+.o_button_group{margin-top:24px}.o_header_with_buttons h3+.o_button_group{margin-top:20px}.o_header_with_buttons h4+.o_button_group,.o_header_with_buttons .o_cal .fc-header-title h2+.o_button_group,.o_cal .fc-header-title .o_header_with_buttons h2+.o_button_group{margin-top:10px}.o_header_with_buttons h5+.o_button_group{margin-top:6.6666666667px}.o_header_with_buttons h6+.o_button_group{margin-top:5px}#o_main_center .o_header_with_buttons h2+.o_button_group{margin-top:0}.panel-heading.o_header_with_buttons{margin-bottom:0}.o_button_textstyle:before{content:'['}.o_button_textstyle:after{content:']'}.panel-imagebg{background-repeat:no-repeat;background-position:center;background-size:cover}.panel-imagebg.panel-default>.panel-heading{background-color:rgba(255,255,255,0.8);border-bottom:transparent}.panel-imagebg .panel-body span{padding:2px;background-color:rgba(255,255,255,0.8)}.panel-placeholder{border-width:2px;border-style:dashed;border-color:#ccc;border-radius:10px;background-color:#fcfcfc}.panel-placeholder .panel-body{padding:10px}.panel-placeholder .panel-body:nth-child(n+2){border-top:none}.panel-placeholder .panel-body h3:nth-child(1),.panel-placeholder .panel-body h4:nth-child(1),.panel-placeholder .panel-body .o_cal .fc-header-title h2:nth-child(1),.o_cal .fc-header-title .panel-placeholder .panel-body h2:nth-child(1),.panel-placeholder .panel-body h5:nth-child(1){margin-top:0}.panel-placeholder .panel-body .o_button_group{margin-bottom:0}.panel-placeholder .panel-heading{border-top-right-radius:8px;border-top-left-radius:8px;border-width:2px;border-style:dashed;border-color:#ccc;border-top:none;border-left:none;border-right:none;color:#888;font-weight:bold}.panel-placeholder .panel-footer{border-bottom-right-radius:8px;border-bottom-left-radius:8px;border-width:2px;border-style:dashed;border-color:#ccc;border-bottom:none;border-left:none;border-right:none}.o_xsmall,.b_xsmall,p.b_xsmall,div.b_xsmall{font-size:11px}.o_small,.b_small,p.b_small,div.b_small,.o_comments .o_comment_wrapper h5,.o_comments .o_comment_wrapper .o_comment,.o_bc_meta,.tooltip,.o_htmleditor .o_metadata .o_lastmodified,.o_noti,.o_block_with_datecomp .o_meta,.o_togglebox_wrapper div.o_togglebox_content .o_hide,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label,.o_course_run .o_toc .o_entry,.o_assessment_test_results .o_qti_to_overview{font-size:12px}.o_large,.b_large,p.b_large,div.b_large{font-size:18px}.o_xlarge,.b_xlarge,p.b_xlarge,div.b_xlarge{font-size:20px}.o_disabled,.b_disabled,p.b_disabled,div.b_disabled{color:#777 !important;cursor:default}.o_disabled:hover,.b_disabled:hover{color:#777 !important}.o_dimmed,.b_dimmed,p.b_dimmed,div.b_dimmed{opacity:.4;filter:alpha(opacity=40)}.o_selected,.b_selected,p.b_selected,div.b_selected{font-weight:bold}.o_deleted,.b_deleted,p.b_deleted,div.b_deleted{text-decoration:line-through}.o_highlight_on_hover:hover{background-color:#f5f5f5}.o_clickable{cursor:pointer}.o_ochre{color:#c8a959}.o_blue{color:#12223F}.o_undecorated:hover,.o_undecorated:focus,.o_disabled:hover,.b_disabled:hover,#o_main_wrapper #o_toplink:hover,#o_footer_powered a:hover,#o_share a:hover,#o_share_social_container a:hover,.o_toolbar .o_tools_container a:hover,.o_button_toggle:hover,.o_im_message_group .o_im_from:hover,.o_noti .o_label:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover,.o_catalog .o_level .o_meta .o_title a:hover,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover,.o_repo_details .o_social .o_comments:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:hover,.o_login .o_login_register:hover,.o_disabled:focus,.b_disabled:focus,#o_main_wrapper #o_toplink:focus,#o_footer_powered a:focus,#o_share a:focus,#o_share_social_container a:focus,.o_toolbar .o_tools_container a:focus,.o_button_toggle:focus,.o_im_message_group .o_im_from:focus,.o_noti .o_label:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:focus,.o_catalog .o_level .o_meta .o_title a:focus,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:focus,.o_repo_details .o_social .o_comments:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:focus,.o_login .o_login_register:focus{text-decoration:none}.o_copy_code,.b_copy_code,p.b_copy_code,div.b_copy_code,code,pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}.o_copy_code input,.o_copy_code textarea,.b_copy_code input,code input,pre input,.b_copy_code textarea,code textarea,pre textarea{border:0;width:90%;background:transparent}.o_nowrap,.b_copy_code,p.b_copy_code,div.b_copy_code,code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o_titled_wrapper .o_content{margin-top:20px}.o_video,.o_video video,.b_video,.o_video_wrapper{display:inline-block;max-width:100%;height:auto;max-width:100%}.o_image,.o_image img,img,.b_image{display:inline-block;max-width:100%;height:auto;max-width:100%}.o_figure_caption_bottom{display:inline-block;min-width:50%}.o_figure_caption_bottom figure{display:table}.o_image_vertical_center_helper{display:inline-block;height:100%;vertical-align:middle}.o_image_vertical_center_helper+.o_image img{vertical-align:middle}.o_with_hyphens{-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o_page_margins{padding:25px}.o_dragable,.o_page_fragment_edit .o_page_tools_dd:before,.o_page_drop{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.o_dragable:active,.o_page_fragment_edit .o_page_tools_dd:active:before,.o_page_drop:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_draging,.gu-mirror{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_draging:active,.gu-mirror:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_hidden{visibility:hidden}h1{color:#337ab7}h2{color:#337ab7}h3{color:#337ab7}h4,.o_cal .fc-header-title h2{color:#337ab7}h5{color:#337ab7}h5{color:#337ab7}fieldset legend{color:#333}.o_user_content_block a{color:#337ab7;text-decoration:none}.o_user_content_block a:hover,.o_user_content_block a:focus{color:#23527c;text-decoration:underline}.b_border_box,p.b_border_box,div.b_border_box{border:1px solid #777;padding:1em;border-top-right-radius:3px;border-top-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}table td{line-height:1.428571429;vertical-align:top}table.b_default td,table.b_default th{padding:8px;vertical-align:top}table.b_grid{width:99.5%;background:transparent;border-collapse:separate}table.b_grid td,table.b_grid th{padding:8px;border:1px solid #777}table.b_grid thead td,table.b_grid th{background:#eee;font-weight:bold}table.b_border{width:99.5%;background:transparent;border-collapse:collapse}table.b_border td,table.b_border th{padding:8px;border:1px solid #777}table.b_border thead td,table.b_border th{background:#eee;font-weight:bold}table.b_borderless{width:99.5%;background:transparent;border-collapse:separate}table.b_borderless td,table.b_borderless th{padding:8px;border:0 !important}table.b_borderless thead td,table.b_borderless th{font-weight:bold}table.b_full{width:99.5%}table.b_middle{background:transparent}table.b_middle td{vertical-align:middle}table.b_gray{border-collapse:collapse}table.b_gray td,table.b_gray th{padding:8px;background:#eee;border:1px solid #fbfbfb}table.b_gray thead td,table.b_gray th{background:#d5d5d5;font-weight:bold}table.b_gray tbody tr:nth-child(even) td{background:#fbfbfb;border:1px solid #eee}table.b_gray.b_no_stripes tbody tr:nth-child(even) td{background:#eee;border:1px solid #fbfbfb}@media print{table.b_gray td,table.b_gray th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eee !important}table.b_gray thead td,table.b_gray th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#d5d5d5 !important}table.b_gray tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fbfbfb !important}}table.b_blue{border-collapse:collapse}table.b_blue td,table.b_blue th{padding:8px;background:#d9edf7;border:1px solid #eef7fb}table.b_blue thead td,table.b_blue th{background:#afd9ee;font-weight:bold}table.b_blue tbody tr:nth-child(even) td{background:#eef7fb;border:1px solid #d9edf7}table.b_blue.b_no_stripes tbody tr:nth-child(even) td{background:#d9edf7;border:1px solid #eef7fb}@media print{table.b_blue td,table.b_blue th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#d9edf7 !important}table.b_blue thead td,table.b_blue th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#afd9ee !important}table.b_blue tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eef7fb !important}}table.b_green{border-collapse:collapse}table.b_green td,table.b_green th{padding:8px;background:#dff0d8;border:1px solid #eef7ea}table.b_green thead td,table.b_green th{background:#c1e2b3;font-weight:bold}table.b_green tbody tr:nth-child(even) td{background:#eef7ea;border:1px solid #dff0d8}table.b_green.b_no_stripes tbody tr:nth-child(even) td{background:#dff0d8;border:1px solid #eef7ea}@media print{table.b_green td,table.b_green th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#dff0d8 !important}table.b_green thead td,table.b_green th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#c1e2b3 !important}table.b_green tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eef7ea !important}}table.b_yellow{border-collapse:collapse}table.b_yellow td,table.b_yellow th{padding:8px;background:#fcf8e3;border:1px solid #fefefa}table.b_yellow thead td,table.b_yellow th{background:#f7ecb5;font-weight:bold}table.b_yellow tbody tr:nth-child(even) td{background:#fefefa;border:1px solid #fcf8e3}table.b_yellow.b_no_stripes tbody tr:nth-child(even) td{background:#fcf8e3;border:1px solid #fefefa}@media print{table.b_yellow td,table.b_yellow th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fcf8e3 !important}table.b_yellow thead td,table.b_yellow th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f7ecb5 !important}table.b_yellow tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fefefa !important}}table.b_red{border-collapse:collapse}table.b_red td,table.b_red th{padding:8px;background:#f2dede;border:1px solid #f9f0f0}table.b_red thead td,table.b_red th{background:#e4b9b9;font-weight:bold}table.b_red tbody tr:nth-child(even) td{background:#f9f0f0;border:1px solid #f2dede}table.b_red.b_no_stripes tbody tr:nth-child(even) td{background:#f2dede;border:1px solid #f9f0f0}@media print{table.b_red td,table.b_red th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f2dede !important}table.b_red thead td,table.b_red th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#e4b9b9 !important}table.b_red tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f9f0f0 !important}}table.a_responsive{width:auto !important}@media (max-width: 768px){.a_responsive td{display:block}}.b_align_normal{text-align:left}.b_align_center{text-align:center}.b_align_inverse{text-align:right}.b_align_justified{text-align:justify}a.b_link_extern{color:#337ab7}a.b_link_extern:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï‚Ž"}a.b_link_mailto{color:#337ab7}a.b_link_mailto:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:""}a.b_link_forward{color:#337ab7}a.b_link_forward:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï¤"}img.b_float_left{float:left;margin:0 2em 2em 0}img.b_float_left_clear{clear:both;margin:0 2em 2em 0;display:block}img.b_float_right{float:right;margin:0 0 2em 2em}img.b_float_right_clear{clear:both;display:block;margin:0 0 2em auto}img.b_float_left_clear_nomargin{float:left;display:block;margin:0 0 0 0}img.b_centered{clear:both;display:block;margin:0 auto 2em auto}img.b_circle{border-radius:50%}img.b_with_border{border:1px solid #ddd;padding:3px;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}p.b_figure_title{margin:20px 0 5px 0;font-size:85%;font-family:inherit}p.b_figure_caption{clear:both;margin:5px 0 20px 0}caption,figcaption,.o_caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left;font-style:italic}.b_clear_float,p.b_clear_float,div.b_clear_float{clear:both}figure.align-left{float:left}figure.align-right{float:right}figure.image{display:inline-block;border:1px solid gray;margin:0 2px 0 1px;background:#f5f2f0}figure.image img{margin:8px 8px 0 8px}figure.image figcaption{margin:6px 8px 6px 8px;text-align:center}img.align-left{float:left}img.align-right{float:right}.mce-toc{border:1px solid gray}.mce-toc h2{margin:4px}.mce-toc li{list-style-type:none}figure.image.align-center{display:block;text-align:center}figure.image.align-left{float:none;display:block;text-align:left}figure.image.align-left figcaption{text-align:left}figure.image.align-right{float:none;display:block;text-align:right}figure.image.align-right figcaption{text-align:right}figure.image{margin:2em 0 2em 0;border:0;background:none}figure.image img.b_float_left,figure.image img.b_float_left_clear,figure.image img.b_float_right,figure.image img.b_float_right_clear,figure.image img.b_float_left_clear_nomargin,figure.image img.b_centered{float:none;display:inline-block;margin:0}figure.image figcaption{font-size:90%;font-style:italic}.radial-progress,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{margin:10px;width:120px;height:120px;background-color:#eee;border-radius:50%;font-size:21.6px;display:inline-block;position:relative}.radial-progress .circle,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle{display:block}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask,.radial-progress .circle .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .fill,.radial-progress .circle .shadow,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .shadow{display:block;width:100%;height:100%;position:absolute;border-radius:50%}.radial-progress .circle .shadow,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .shadow{box-shadow:none inset}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask,.radial-progress .circle .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .fill{-webkit-backface-visibility:hidden;transition:-webkit-transform 1s;transition:-ms-transform 1s;transition:transform 1s;border-radius:50%}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask{clip:rect(0px, 120px, 120px, 60px)}.radial-progress .circle .mask .fill{clip:rect(0px, 60px, 120px, 0px);background-color:#337ab7}.radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{display:block;width:90px;height:90px;position:absolute;border-radius:50%;margin-left:15px;margin-top:15px;overflow:hidden;background-color:#fff;box-shadow:none;font-size:80px;line-height:80px;text-align:center}.radial-progress .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{position:absolute;top:5px;left:-5px;opacity:0;transition:opacity 0;transition-delay:1s}.radial-progress .percentage,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage{height:80%;width:80%;position:absolute;top:10%;left:10%;display:table;line-height:1}.radial-progress .percentage .centeredWrapper,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .centeredWrapper{display:table-cell;vertical-align:middle;text-align:center}.radial-progress .percentage .centeredWrapper .number{display:block;margin-right:-0.4em;font-weight:800;color:#337ab7}.radial-progress .percentage .centeredWrapper .addon{display:block;color:#777;margin-top:0.2em;margin-bottom:-0.4em}.radial-progress .percentage .centeredWrapper .addon>span{display:block;font-size:0.6em;font-weight:bold}.radial-progress .percentage .centeredWrapper .addon>span+span{display:block;margin-top:2px;font-size:0.5em}.radial-progress[data-progress="0"] .circle .mask.full,.radial-progress[data-progress="0"] .circle .fill{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.radial-progress[data-progress="0"] .circle .fill.fix{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.radial-progress[data-progress="1"] .circle .mask.full,.radial-progress[data-progress="1"] .circle .fill{-webkit-transform:rotate(1.8deg);-ms-transform:rotate(1.8deg);transform:rotate(1.8deg)}.radial-progress[data-progress="1"] .circle .fill.fix{-webkit-transform:rotate(3.6deg);-ms-transform:rotate(3.6deg);transform:rotate(3.6deg)}.radial-progress[data-progress="2"] .circle .mask.full,.radial-progress[data-progress="2"] .circle .fill{-webkit-transform:rotate(3.6deg);-ms-transform:rotate(3.6deg);transform:rotate(3.6deg)}.radial-progress[data-progress="2"] .circle .fill.fix{-webkit-transform:rotate(7.2deg);-ms-transform:rotate(7.2deg);transform:rotate(7.2deg)}.radial-progress[data-progress="3"] .circle .mask.full,.radial-progress[data-progress="3"] .circle .fill{-webkit-transform:rotate(5.4deg);-ms-transform:rotate(5.4deg);transform:rotate(5.4deg)}.radial-progress[data-progress="3"] .circle .fill.fix{-webkit-transform:rotate(10.8deg);-ms-transform:rotate(10.8deg);transform:rotate(10.8deg)}.radial-progress[data-progress="4"] .circle .mask.full,.radial-progress[data-progress="4"] .circle .fill{-webkit-transform:rotate(7.2deg);-ms-transform:rotate(7.2deg);transform:rotate(7.2deg)}.radial-progress[data-progress="4"] .circle .fill.fix{-webkit-transform:rotate(14.4deg);-ms-transform:rotate(14.4deg);transform:rotate(14.4deg)}.radial-progress[data-progress="5"] .circle .mask.full,.radial-progress[data-progress="5"] .circle .fill{-webkit-transform:rotate(9deg);-ms-transform:rotate(9deg);transform:rotate(9deg)}.radial-progress[data-progress="5"] .circle .fill.fix{-webkit-transform:rotate(18deg);-ms-transform:rotate(18deg);transform:rotate(18deg)}.radial-progress[data-progress="6"] .circle .mask.full,.radial-progress[data-progress="6"] .circle .fill{-webkit-transform:rotate(10.8deg);-ms-transform:rotate(10.8deg);transform:rotate(10.8deg)}.radial-progress[data-progress="6"] .circle .fill.fix{-webkit-transform:rotate(21.6deg);-ms-transform:rotate(21.6deg);transform:rotate(21.6deg)}.radial-progress[data-progress="7"] .circle .mask.full,.radial-progress[data-progress="7"] .circle .fill{-webkit-transform:rotate(12.6deg);-ms-transform:rotate(12.6deg);transform:rotate(12.6deg)}.radial-progress[data-progress="7"] .circle .fill.fix{-webkit-transform:rotate(25.2deg);-ms-transform:rotate(25.2deg);transform:rotate(25.2deg)}.radial-progress[data-progress="8"] .circle .mask.full,.radial-progress[data-progress="8"] .circle .fill{-webkit-transform:rotate(14.4deg);-ms-transform:rotate(14.4deg);transform:rotate(14.4deg)}.radial-progress[data-progress="8"] .circle .fill.fix{-webkit-transform:rotate(28.8deg);-ms-transform:rotate(28.8deg);transform:rotate(28.8deg)}.radial-progress[data-progress="9"] .circle .mask.full,.radial-progress[data-progress="9"] .circle .fill{-webkit-transform:rotate(16.2deg);-ms-transform:rotate(16.2deg);transform:rotate(16.2deg)}.radial-progress[data-progress="9"] .circle .fill.fix{-webkit-transform:rotate(32.4deg);-ms-transform:rotate(32.4deg);transform:rotate(32.4deg)}.radial-progress[data-progress="10"] .circle .mask.full,.radial-progress[data-progress="10"] .circle .fill{-webkit-transform:rotate(18deg);-ms-transform:rotate(18deg);transform:rotate(18deg)}.radial-progress[data-progress="10"] .circle .fill.fix{-webkit-transform:rotate(36deg);-ms-transform:rotate(36deg);transform:rotate(36deg)}.radial-progress[data-progress="11"] .circle .mask.full,.radial-progress[data-progress="11"] .circle .fill{-webkit-transform:rotate(19.8deg);-ms-transform:rotate(19.8deg);transform:rotate(19.8deg)}.radial-progress[data-progress="11"] .circle .fill.fix{-webkit-transform:rotate(39.6deg);-ms-transform:rotate(39.6deg);transform:rotate(39.6deg)}.radial-progress[data-progress="12"] .circle .mask.full,.radial-progress[data-progress="12"] .circle .fill{-webkit-transform:rotate(21.6deg);-ms-transform:rotate(21.6deg);transform:rotate(21.6deg)}.radial-progress[data-progress="12"] .circle .fill.fix{-webkit-transform:rotate(43.2deg);-ms-transform:rotate(43.2deg);transform:rotate(43.2deg)}.radial-progress[data-progress="13"] .circle .mask.full,.radial-progress[data-progress="13"] .circle .fill{-webkit-transform:rotate(23.4deg);-ms-transform:rotate(23.4deg);transform:rotate(23.4deg)}.radial-progress[data-progress="13"] .circle .fill.fix{-webkit-transform:rotate(46.8deg);-ms-transform:rotate(46.8deg);transform:rotate(46.8deg)}.radial-progress[data-progress="14"] .circle .mask.full,.radial-progress[data-progress="14"] .circle .fill{-webkit-transform:rotate(25.2deg);-ms-transform:rotate(25.2deg);transform:rotate(25.2deg)}.radial-progress[data-progress="14"] .circle .fill.fix{-webkit-transform:rotate(50.4deg);-ms-transform:rotate(50.4deg);transform:rotate(50.4deg)}.radial-progress[data-progress="15"] .circle .mask.full,.radial-progress[data-progress="15"] .circle .fill{-webkit-transform:rotate(27deg);-ms-transform:rotate(27deg);transform:rotate(27deg)}.radial-progress[data-progress="15"] .circle .fill.fix{-webkit-transform:rotate(54deg);-ms-transform:rotate(54deg);transform:rotate(54deg)}.radial-progress[data-progress="16"] .circle .mask.full,.radial-progress[data-progress="16"] .circle .fill{-webkit-transform:rotate(28.8deg);-ms-transform:rotate(28.8deg);transform:rotate(28.8deg)}.radial-progress[data-progress="16"] .circle .fill.fix{-webkit-transform:rotate(57.6deg);-ms-transform:rotate(57.6deg);transform:rotate(57.6deg)}.radial-progress[data-progress="17"] .circle .mask.full,.radial-progress[data-progress="17"] .circle .fill{-webkit-transform:rotate(30.6deg);-ms-transform:rotate(30.6deg);transform:rotate(30.6deg)}.radial-progress[data-progress="17"] .circle .fill.fix{-webkit-transform:rotate(61.2deg);-ms-transform:rotate(61.2deg);transform:rotate(61.2deg)}.radial-progress[data-progress="18"] .circle .mask.full,.radial-progress[data-progress="18"] .circle .fill{-webkit-transform:rotate(32.4deg);-ms-transform:rotate(32.4deg);transform:rotate(32.4deg)}.radial-progress[data-progress="18"] .circle .fill.fix{-webkit-transform:rotate(64.8deg);-ms-transform:rotate(64.8deg);transform:rotate(64.8deg)}.radial-progress[data-progress="19"] .circle .mask.full,.radial-progress[data-progress="19"] .circle .fill{-webkit-transform:rotate(34.2deg);-ms-transform:rotate(34.2deg);transform:rotate(34.2deg)}.radial-progress[data-progress="19"] .circle .fill.fix{-webkit-transform:rotate(68.4deg);-ms-transform:rotate(68.4deg);transform:rotate(68.4deg)}.radial-progress[data-progress="20"] .circle .mask.full,.radial-progress[data-progress="20"] .circle .fill{-webkit-transform:rotate(36deg);-ms-transform:rotate(36deg);transform:rotate(36deg)}.radial-progress[data-progress="20"] .circle .fill.fix{-webkit-transform:rotate(72deg);-ms-transform:rotate(72deg);transform:rotate(72deg)}.radial-progress[data-progress="21"] .circle .mask.full,.radial-progress[data-progress="21"] .circle .fill{-webkit-transform:rotate(37.8deg);-ms-transform:rotate(37.8deg);transform:rotate(37.8deg)}.radial-progress[data-progress="21"] .circle .fill.fix{-webkit-transform:rotate(75.6deg);-ms-transform:rotate(75.6deg);transform:rotate(75.6deg)}.radial-progress[data-progress="22"] .circle .mask.full,.radial-progress[data-progress="22"] .circle .fill{-webkit-transform:rotate(39.6deg);-ms-transform:rotate(39.6deg);transform:rotate(39.6deg)}.radial-progress[data-progress="22"] .circle .fill.fix{-webkit-transform:rotate(79.2deg);-ms-transform:rotate(79.2deg);transform:rotate(79.2deg)}.radial-progress[data-progress="23"] .circle .mask.full,.radial-progress[data-progress="23"] .circle .fill{-webkit-transform:rotate(41.4deg);-ms-transform:rotate(41.4deg);transform:rotate(41.4deg)}.radial-progress[data-progress="23"] .circle .fill.fix{-webkit-transform:rotate(82.8deg);-ms-transform:rotate(82.8deg);transform:rotate(82.8deg)}.radial-progress[data-progress="24"] .circle .mask.full,.radial-progress[data-progress="24"] .circle .fill{-webkit-transform:rotate(43.2deg);-ms-transform:rotate(43.2deg);transform:rotate(43.2deg)}.radial-progress[data-progress="24"] .circle .fill.fix{-webkit-transform:rotate(86.4deg);-ms-transform:rotate(86.4deg);transform:rotate(86.4deg)}.radial-progress[data-progress="25"] .circle .mask.full,.radial-progress[data-progress="25"] .circle .fill{-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.radial-progress[data-progress="25"] .circle .fill.fix{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.radial-progress[data-progress="26"] .circle .mask.full,.radial-progress[data-progress="26"] .circle .fill{-webkit-transform:rotate(46.8deg);-ms-transform:rotate(46.8deg);transform:rotate(46.8deg)}.radial-progress[data-progress="26"] .circle .fill.fix{-webkit-transform:rotate(93.6deg);-ms-transform:rotate(93.6deg);transform:rotate(93.6deg)}.radial-progress[data-progress="27"] .circle .mask.full,.radial-progress[data-progress="27"] .circle .fill{-webkit-transform:rotate(48.6deg);-ms-transform:rotate(48.6deg);transform:rotate(48.6deg)}.radial-progress[data-progress="27"] .circle .fill.fix{-webkit-transform:rotate(97.2deg);-ms-transform:rotate(97.2deg);transform:rotate(97.2deg)}.radial-progress[data-progress="28"] .circle .mask.full,.radial-progress[data-progress="28"] .circle .fill{-webkit-transform:rotate(50.4deg);-ms-transform:rotate(50.4deg);transform:rotate(50.4deg)}.radial-progress[data-progress="28"] .circle .fill.fix{-webkit-transform:rotate(100.8deg);-ms-transform:rotate(100.8deg);transform:rotate(100.8deg)}.radial-progress[data-progress="29"] .circle .mask.full,.radial-progress[data-progress="29"] .circle .fill{-webkit-transform:rotate(52.2deg);-ms-transform:rotate(52.2deg);transform:rotate(52.2deg)}.radial-progress[data-progress="29"] .circle .fill.fix{-webkit-transform:rotate(104.4deg);-ms-transform:rotate(104.4deg);transform:rotate(104.4deg)}.radial-progress[data-progress="30"] .circle .mask.full,.radial-progress[data-progress="30"] .circle .fill{-webkit-transform:rotate(54deg);-ms-transform:rotate(54deg);transform:rotate(54deg)}.radial-progress[data-progress="30"] .circle .fill.fix{-webkit-transform:rotate(108deg);-ms-transform:rotate(108deg);transform:rotate(108deg)}.radial-progress[data-progress="31"] .circle .mask.full,.radial-progress[data-progress="31"] .circle .fill{-webkit-transform:rotate(55.8deg);-ms-transform:rotate(55.8deg);transform:rotate(55.8deg)}.radial-progress[data-progress="31"] .circle .fill.fix{-webkit-transform:rotate(111.6deg);-ms-transform:rotate(111.6deg);transform:rotate(111.6deg)}.radial-progress[data-progress="32"] .circle .mask.full,.radial-progress[data-progress="32"] .circle .fill{-webkit-transform:rotate(57.6deg);-ms-transform:rotate(57.6deg);transform:rotate(57.6deg)}.radial-progress[data-progress="32"] .circle .fill.fix{-webkit-transform:rotate(115.2deg);-ms-transform:rotate(115.2deg);transform:rotate(115.2deg)}.radial-progress[data-progress="33"] .circle .mask.full,.radial-progress[data-progress="33"] .circle .fill{-webkit-transform:rotate(59.4deg);-ms-transform:rotate(59.4deg);transform:rotate(59.4deg)}.radial-progress[data-progress="33"] .circle .fill.fix{-webkit-transform:rotate(118.8deg);-ms-transform:rotate(118.8deg);transform:rotate(118.8deg)}.radial-progress[data-progress="34"] .circle .mask.full,.radial-progress[data-progress="34"] .circle .fill{-webkit-transform:rotate(61.2deg);-ms-transform:rotate(61.2deg);transform:rotate(61.2deg)}.radial-progress[data-progress="34"] .circle .fill.fix{-webkit-transform:rotate(122.4deg);-ms-transform:rotate(122.4deg);transform:rotate(122.4deg)}.radial-progress[data-progress="35"] .circle .mask.full,.radial-progress[data-progress="35"] .circle .fill{-webkit-transform:rotate(63deg);-ms-transform:rotate(63deg);transform:rotate(63deg)}.radial-progress[data-progress="35"] .circle .fill.fix{-webkit-transform:rotate(126deg);-ms-transform:rotate(126deg);transform:rotate(126deg)}.radial-progress[data-progress="36"] .circle .mask.full,.radial-progress[data-progress="36"] .circle .fill{-webkit-transform:rotate(64.8deg);-ms-transform:rotate(64.8deg);transform:rotate(64.8deg)}.radial-progress[data-progress="36"] .circle .fill.fix{-webkit-transform:rotate(129.6deg);-ms-transform:rotate(129.6deg);transform:rotate(129.6deg)}.radial-progress[data-progress="37"] .circle .mask.full,.radial-progress[data-progress="37"] .circle .fill{-webkit-transform:rotate(66.6deg);-ms-transform:rotate(66.6deg);transform:rotate(66.6deg)}.radial-progress[data-progress="37"] .circle .fill.fix{-webkit-transform:rotate(133.2deg);-ms-transform:rotate(133.2deg);transform:rotate(133.2deg)}.radial-progress[data-progress="38"] .circle .mask.full,.radial-progress[data-progress="38"] .circle .fill{-webkit-transform:rotate(68.4deg);-ms-transform:rotate(68.4deg);transform:rotate(68.4deg)}.radial-progress[data-progress="38"] .circle .fill.fix{-webkit-transform:rotate(136.8deg);-ms-transform:rotate(136.8deg);transform:rotate(136.8deg)}.radial-progress[data-progress="39"] .circle .mask.full,.radial-progress[data-progress="39"] .circle .fill{-webkit-transform:rotate(70.2deg);-ms-transform:rotate(70.2deg);transform:rotate(70.2deg)}.radial-progress[data-progress="39"] .circle .fill.fix{-webkit-transform:rotate(140.4deg);-ms-transform:rotate(140.4deg);transform:rotate(140.4deg)}.radial-progress[data-progress="40"] .circle .mask.full,.radial-progress[data-progress="40"] .circle .fill{-webkit-transform:rotate(72deg);-ms-transform:rotate(72deg);transform:rotate(72deg)}.radial-progress[data-progress="40"] .circle .fill.fix{-webkit-transform:rotate(144deg);-ms-transform:rotate(144deg);transform:rotate(144deg)}.radial-progress[data-progress="41"] .circle .mask.full,.radial-progress[data-progress="41"] .circle .fill{-webkit-transform:rotate(73.8deg);-ms-transform:rotate(73.8deg);transform:rotate(73.8deg)}.radial-progress[data-progress="41"] .circle .fill.fix{-webkit-transform:rotate(147.6deg);-ms-transform:rotate(147.6deg);transform:rotate(147.6deg)}.radial-progress[data-progress="42"] .circle .mask.full,.radial-progress[data-progress="42"] .circle .fill{-webkit-transform:rotate(75.6deg);-ms-transform:rotate(75.6deg);transform:rotate(75.6deg)}.radial-progress[data-progress="42"] .circle .fill.fix{-webkit-transform:rotate(151.2deg);-ms-transform:rotate(151.2deg);transform:rotate(151.2deg)}.radial-progress[data-progress="43"] .circle .mask.full,.radial-progress[data-progress="43"] .circle .fill{-webkit-transform:rotate(77.4deg);-ms-transform:rotate(77.4deg);transform:rotate(77.4deg)}.radial-progress[data-progress="43"] .circle .fill.fix{-webkit-transform:rotate(154.8deg);-ms-transform:rotate(154.8deg);transform:rotate(154.8deg)}.radial-progress[data-progress="44"] .circle .mask.full,.radial-progress[data-progress="44"] .circle .fill{-webkit-transform:rotate(79.2deg);-ms-transform:rotate(79.2deg);transform:rotate(79.2deg)}.radial-progress[data-progress="44"] .circle .fill.fix{-webkit-transform:rotate(158.4deg);-ms-transform:rotate(158.4deg);transform:rotate(158.4deg)}.radial-progress[data-progress="45"] .circle .mask.full,.radial-progress[data-progress="45"] .circle .fill{-webkit-transform:rotate(81deg);-ms-transform:rotate(81deg);transform:rotate(81deg)}.radial-progress[data-progress="45"] .circle .fill.fix{-webkit-transform:rotate(162deg);-ms-transform:rotate(162deg);transform:rotate(162deg)}.radial-progress[data-progress="46"] .circle .mask.full,.radial-progress[data-progress="46"] .circle .fill{-webkit-transform:rotate(82.8deg);-ms-transform:rotate(82.8deg);transform:rotate(82.8deg)}.radial-progress[data-progress="46"] .circle .fill.fix{-webkit-transform:rotate(165.6deg);-ms-transform:rotate(165.6deg);transform:rotate(165.6deg)}.radial-progress[data-progress="47"] .circle .mask.full,.radial-progress[data-progress="47"] .circle .fill{-webkit-transform:rotate(84.6deg);-ms-transform:rotate(84.6deg);transform:rotate(84.6deg)}.radial-progress[data-progress="47"] .circle .fill.fix{-webkit-transform:rotate(169.2deg);-ms-transform:rotate(169.2deg);transform:rotate(169.2deg)}.radial-progress[data-progress="48"] .circle .mask.full,.radial-progress[data-progress="48"] .circle .fill{-webkit-transform:rotate(86.4deg);-ms-transform:rotate(86.4deg);transform:rotate(86.4deg)}.radial-progress[data-progress="48"] .circle .fill.fix{-webkit-transform:rotate(172.8deg);-ms-transform:rotate(172.8deg);transform:rotate(172.8deg)}.radial-progress[data-progress="49"] .circle .mask.full,.radial-progress[data-progress="49"] .circle .fill{-webkit-transform:rotate(88.2deg);-ms-transform:rotate(88.2deg);transform:rotate(88.2deg)}.radial-progress[data-progress="49"] .circle .fill.fix{-webkit-transform:rotate(176.4deg);-ms-transform:rotate(176.4deg);transform:rotate(176.4deg)}.radial-progress[data-progress="50"] .circle .mask.full,.radial-progress[data-progress="50"] .circle .fill{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.radial-progress[data-progress="50"] .circle .fill.fix{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.radial-progress[data-progress="51"] .circle .mask.full,.radial-progress[data-progress="51"] .circle .fill{-webkit-transform:rotate(91.8deg);-ms-transform:rotate(91.8deg);transform:rotate(91.8deg)}.radial-progress[data-progress="51"] .circle .fill.fix{-webkit-transform:rotate(183.6deg);-ms-transform:rotate(183.6deg);transform:rotate(183.6deg)}.radial-progress[data-progress="52"] .circle .mask.full,.radial-progress[data-progress="52"] .circle .fill{-webkit-transform:rotate(93.6deg);-ms-transform:rotate(93.6deg);transform:rotate(93.6deg)}.radial-progress[data-progress="52"] .circle .fill.fix{-webkit-transform:rotate(187.2deg);-ms-transform:rotate(187.2deg);transform:rotate(187.2deg)}.radial-progress[data-progress="53"] .circle .mask.full,.radial-progress[data-progress="53"] .circle .fill{-webkit-transform:rotate(95.4deg);-ms-transform:rotate(95.4deg);transform:rotate(95.4deg)}.radial-progress[data-progress="53"] .circle .fill.fix{-webkit-transform:rotate(190.8deg);-ms-transform:rotate(190.8deg);transform:rotate(190.8deg)}.radial-progress[data-progress="54"] .circle .mask.full,.radial-progress[data-progress="54"] .circle .fill{-webkit-transform:rotate(97.2deg);-ms-transform:rotate(97.2deg);transform:rotate(97.2deg)}.radial-progress[data-progress="54"] .circle .fill.fix{-webkit-transform:rotate(194.4deg);-ms-transform:rotate(194.4deg);transform:rotate(194.4deg)}.radial-progress[data-progress="55"] .circle .mask.full,.radial-progress[data-progress="55"] .circle .fill{-webkit-transform:rotate(99deg);-ms-transform:rotate(99deg);transform:rotate(99deg)}.radial-progress[data-progress="55"] .circle .fill.fix{-webkit-transform:rotate(198deg);-ms-transform:rotate(198deg);transform:rotate(198deg)}.radial-progress[data-progress="56"] .circle .mask.full,.radial-progress[data-progress="56"] .circle .fill{-webkit-transform:rotate(100.8deg);-ms-transform:rotate(100.8deg);transform:rotate(100.8deg)}.radial-progress[data-progress="56"] .circle .fill.fix{-webkit-transform:rotate(201.6deg);-ms-transform:rotate(201.6deg);transform:rotate(201.6deg)}.radial-progress[data-progress="57"] .circle .mask.full,.radial-progress[data-progress="57"] .circle .fill{-webkit-transform:rotate(102.6deg);-ms-transform:rotate(102.6deg);transform:rotate(102.6deg)}.radial-progress[data-progress="57"] .circle .fill.fix{-webkit-transform:rotate(205.2deg);-ms-transform:rotate(205.2deg);transform:rotate(205.2deg)}.radial-progress[data-progress="58"] .circle .mask.full,.radial-progress[data-progress="58"] .circle .fill{-webkit-transform:rotate(104.4deg);-ms-transform:rotate(104.4deg);transform:rotate(104.4deg)}.radial-progress[data-progress="58"] .circle .fill.fix{-webkit-transform:rotate(208.8deg);-ms-transform:rotate(208.8deg);transform:rotate(208.8deg)}.radial-progress[data-progress="59"] .circle .mask.full,.radial-progress[data-progress="59"] .circle .fill{-webkit-transform:rotate(106.2deg);-ms-transform:rotate(106.2deg);transform:rotate(106.2deg)}.radial-progress[data-progress="59"] .circle .fill.fix{-webkit-transform:rotate(212.4deg);-ms-transform:rotate(212.4deg);transform:rotate(212.4deg)}.radial-progress[data-progress="60"] .circle .mask.full,.radial-progress[data-progress="60"] .circle .fill{-webkit-transform:rotate(108deg);-ms-transform:rotate(108deg);transform:rotate(108deg)}.radial-progress[data-progress="60"] .circle .fill.fix{-webkit-transform:rotate(216deg);-ms-transform:rotate(216deg);transform:rotate(216deg)}.radial-progress[data-progress="61"] .circle .mask.full,.radial-progress[data-progress="61"] .circle .fill{-webkit-transform:rotate(109.8deg);-ms-transform:rotate(109.8deg);transform:rotate(109.8deg)}.radial-progress[data-progress="61"] .circle .fill.fix{-webkit-transform:rotate(219.6deg);-ms-transform:rotate(219.6deg);transform:rotate(219.6deg)}.radial-progress[data-progress="62"] .circle .mask.full,.radial-progress[data-progress="62"] .circle .fill{-webkit-transform:rotate(111.6deg);-ms-transform:rotate(111.6deg);transform:rotate(111.6deg)}.radial-progress[data-progress="62"] .circle .fill.fix{-webkit-transform:rotate(223.2deg);-ms-transform:rotate(223.2deg);transform:rotate(223.2deg)}.radial-progress[data-progress="63"] .circle .mask.full,.radial-progress[data-progress="63"] .circle .fill{-webkit-transform:rotate(113.4deg);-ms-transform:rotate(113.4deg);transform:rotate(113.4deg)}.radial-progress[data-progress="63"] .circle .fill.fix{-webkit-transform:rotate(226.8deg);-ms-transform:rotate(226.8deg);transform:rotate(226.8deg)}.radial-progress[data-progress="64"] .circle .mask.full,.radial-progress[data-progress="64"] .circle .fill{-webkit-transform:rotate(115.2deg);-ms-transform:rotate(115.2deg);transform:rotate(115.2deg)}.radial-progress[data-progress="64"] .circle .fill.fix{-webkit-transform:rotate(230.4deg);-ms-transform:rotate(230.4deg);transform:rotate(230.4deg)}.radial-progress[data-progress="65"] .circle .mask.full,.radial-progress[data-progress="65"] .circle .fill{-webkit-transform:rotate(117deg);-ms-transform:rotate(117deg);transform:rotate(117deg)}.radial-progress[data-progress="65"] .circle .fill.fix{-webkit-transform:rotate(234deg);-ms-transform:rotate(234deg);transform:rotate(234deg)}.radial-progress[data-progress="66"] .circle .mask.full,.radial-progress[data-progress="66"] .circle .fill{-webkit-transform:rotate(118.8deg);-ms-transform:rotate(118.8deg);transform:rotate(118.8deg)}.radial-progress[data-progress="66"] .circle .fill.fix{-webkit-transform:rotate(237.6deg);-ms-transform:rotate(237.6deg);transform:rotate(237.6deg)}.radial-progress[data-progress="67"] .circle .mask.full,.radial-progress[data-progress="67"] .circle .fill{-webkit-transform:rotate(120.6deg);-ms-transform:rotate(120.6deg);transform:rotate(120.6deg)}.radial-progress[data-progress="67"] .circle .fill.fix{-webkit-transform:rotate(241.2deg);-ms-transform:rotate(241.2deg);transform:rotate(241.2deg)}.radial-progress[data-progress="68"] .circle .mask.full,.radial-progress[data-progress="68"] .circle .fill{-webkit-transform:rotate(122.4deg);-ms-transform:rotate(122.4deg);transform:rotate(122.4deg)}.radial-progress[data-progress="68"] .circle .fill.fix{-webkit-transform:rotate(244.8deg);-ms-transform:rotate(244.8deg);transform:rotate(244.8deg)}.radial-progress[data-progress="69"] .circle .mask.full,.radial-progress[data-progress="69"] .circle .fill{-webkit-transform:rotate(124.2deg);-ms-transform:rotate(124.2deg);transform:rotate(124.2deg)}.radial-progress[data-progress="69"] .circle .fill.fix{-webkit-transform:rotate(248.4deg);-ms-transform:rotate(248.4deg);transform:rotate(248.4deg)}.radial-progress[data-progress="70"] .circle .mask.full,.radial-progress[data-progress="70"] .circle .fill{-webkit-transform:rotate(126deg);-ms-transform:rotate(126deg);transform:rotate(126deg)}.radial-progress[data-progress="70"] .circle .fill.fix{-webkit-transform:rotate(252deg);-ms-transform:rotate(252deg);transform:rotate(252deg)}.radial-progress[data-progress="71"] .circle .mask.full,.radial-progress[data-progress="71"] .circle .fill{-webkit-transform:rotate(127.8deg);-ms-transform:rotate(127.8deg);transform:rotate(127.8deg)}.radial-progress[data-progress="71"] .circle .fill.fix{-webkit-transform:rotate(255.6deg);-ms-transform:rotate(255.6deg);transform:rotate(255.6deg)}.radial-progress[data-progress="72"] .circle .mask.full,.radial-progress[data-progress="72"] .circle .fill{-webkit-transform:rotate(129.6deg);-ms-transform:rotate(129.6deg);transform:rotate(129.6deg)}.radial-progress[data-progress="72"] .circle .fill.fix{-webkit-transform:rotate(259.2deg);-ms-transform:rotate(259.2deg);transform:rotate(259.2deg)}.radial-progress[data-progress="73"] .circle .mask.full,.radial-progress[data-progress="73"] .circle .fill{-webkit-transform:rotate(131.4deg);-ms-transform:rotate(131.4deg);transform:rotate(131.4deg)}.radial-progress[data-progress="73"] .circle .fill.fix{-webkit-transform:rotate(262.8deg);-ms-transform:rotate(262.8deg);transform:rotate(262.8deg)}.radial-progress[data-progress="74"] .circle .mask.full,.radial-progress[data-progress="74"] .circle .fill{-webkit-transform:rotate(133.2deg);-ms-transform:rotate(133.2deg);transform:rotate(133.2deg)}.radial-progress[data-progress="74"] .circle .fill.fix{-webkit-transform:rotate(266.4deg);-ms-transform:rotate(266.4deg);transform:rotate(266.4deg)}.radial-progress[data-progress="75"] .circle .mask.full,.radial-progress[data-progress="75"] .circle .fill{-webkit-transform:rotate(135deg);-ms-transform:rotate(135deg);transform:rotate(135deg)}.radial-progress[data-progress="75"] .circle .fill.fix{-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.radial-progress[data-progress="76"] .circle .mask.full,.radial-progress[data-progress="76"] .circle .fill{-webkit-transform:rotate(136.8deg);-ms-transform:rotate(136.8deg);transform:rotate(136.8deg)}.radial-progress[data-progress="76"] .circle .fill.fix{-webkit-transform:rotate(273.6deg);-ms-transform:rotate(273.6deg);transform:rotate(273.6deg)}.radial-progress[data-progress="77"] .circle .mask.full,.radial-progress[data-progress="77"] .circle .fill{-webkit-transform:rotate(138.6deg);-ms-transform:rotate(138.6deg);transform:rotate(138.6deg)}.radial-progress[data-progress="77"] .circle .fill.fix{-webkit-transform:rotate(277.2deg);-ms-transform:rotate(277.2deg);transform:rotate(277.2deg)}.radial-progress[data-progress="78"] .circle .mask.full,.radial-progress[data-progress="78"] .circle .fill{-webkit-transform:rotate(140.4deg);-ms-transform:rotate(140.4deg);transform:rotate(140.4deg)}.radial-progress[data-progress="78"] .circle .fill.fix{-webkit-transform:rotate(280.8deg);-ms-transform:rotate(280.8deg);transform:rotate(280.8deg)}.radial-progress[data-progress="79"] .circle .mask.full,.radial-progress[data-progress="79"] .circle .fill{-webkit-transform:rotate(142.2deg);-ms-transform:rotate(142.2deg);transform:rotate(142.2deg)}.radial-progress[data-progress="79"] .circle .fill.fix{-webkit-transform:rotate(284.4deg);-ms-transform:rotate(284.4deg);transform:rotate(284.4deg)}.radial-progress[data-progress="80"] .circle .mask.full,.radial-progress[data-progress="80"] .circle .fill{-webkit-transform:rotate(144deg);-ms-transform:rotate(144deg);transform:rotate(144deg)}.radial-progress[data-progress="80"] .circle .fill.fix{-webkit-transform:rotate(288deg);-ms-transform:rotate(288deg);transform:rotate(288deg)}.radial-progress[data-progress="81"] .circle .mask.full,.radial-progress[data-progress="81"] .circle .fill{-webkit-transform:rotate(145.8deg);-ms-transform:rotate(145.8deg);transform:rotate(145.8deg)}.radial-progress[data-progress="81"] .circle .fill.fix{-webkit-transform:rotate(291.6deg);-ms-transform:rotate(291.6deg);transform:rotate(291.6deg)}.radial-progress[data-progress="82"] .circle .mask.full,.radial-progress[data-progress="82"] .circle .fill{-webkit-transform:rotate(147.6deg);-ms-transform:rotate(147.6deg);transform:rotate(147.6deg)}.radial-progress[data-progress="82"] .circle .fill.fix{-webkit-transform:rotate(295.2deg);-ms-transform:rotate(295.2deg);transform:rotate(295.2deg)}.radial-progress[data-progress="83"] .circle .mask.full,.radial-progress[data-progress="83"] .circle .fill{-webkit-transform:rotate(149.4deg);-ms-transform:rotate(149.4deg);transform:rotate(149.4deg)}.radial-progress[data-progress="83"] .circle .fill.fix{-webkit-transform:rotate(298.8deg);-ms-transform:rotate(298.8deg);transform:rotate(298.8deg)}.radial-progress[data-progress="84"] .circle .mask.full,.radial-progress[data-progress="84"] .circle .fill{-webkit-transform:rotate(151.2deg);-ms-transform:rotate(151.2deg);transform:rotate(151.2deg)}.radial-progress[data-progress="84"] .circle .fill.fix{-webkit-transform:rotate(302.4deg);-ms-transform:rotate(302.4deg);transform:rotate(302.4deg)}.radial-progress[data-progress="85"] .circle .mask.full,.radial-progress[data-progress="85"] .circle .fill{-webkit-transform:rotate(153deg);-ms-transform:rotate(153deg);transform:rotate(153deg)}.radial-progress[data-progress="85"] .circle .fill.fix{-webkit-transform:rotate(306deg);-ms-transform:rotate(306deg);transform:rotate(306deg)}.radial-progress[data-progress="86"] .circle .mask.full,.radial-progress[data-progress="86"] .circle .fill{-webkit-transform:rotate(154.8deg);-ms-transform:rotate(154.8deg);transform:rotate(154.8deg)}.radial-progress[data-progress="86"] .circle .fill.fix{-webkit-transform:rotate(309.6deg);-ms-transform:rotate(309.6deg);transform:rotate(309.6deg)}.radial-progress[data-progress="87"] .circle .mask.full,.radial-progress[data-progress="87"] .circle .fill{-webkit-transform:rotate(156.6deg);-ms-transform:rotate(156.6deg);transform:rotate(156.6deg)}.radial-progress[data-progress="87"] .circle .fill.fix{-webkit-transform:rotate(313.2deg);-ms-transform:rotate(313.2deg);transform:rotate(313.2deg)}.radial-progress[data-progress="88"] .circle .mask.full,.radial-progress[data-progress="88"] .circle .fill{-webkit-transform:rotate(158.4deg);-ms-transform:rotate(158.4deg);transform:rotate(158.4deg)}.radial-progress[data-progress="88"] .circle .fill.fix{-webkit-transform:rotate(316.8deg);-ms-transform:rotate(316.8deg);transform:rotate(316.8deg)}.radial-progress[data-progress="89"] .circle .mask.full,.radial-progress[data-progress="89"] .circle .fill{-webkit-transform:rotate(160.2deg);-ms-transform:rotate(160.2deg);transform:rotate(160.2deg)}.radial-progress[data-progress="89"] .circle .fill.fix{-webkit-transform:rotate(320.4deg);-ms-transform:rotate(320.4deg);transform:rotate(320.4deg)}.radial-progress[data-progress="90"] .circle .mask.full,.radial-progress[data-progress="90"] .circle .fill{-webkit-transform:rotate(162deg);-ms-transform:rotate(162deg);transform:rotate(162deg)}.radial-progress[data-progress="90"] .circle .fill.fix{-webkit-transform:rotate(324deg);-ms-transform:rotate(324deg);transform:rotate(324deg)}.radial-progress[data-progress="91"] .circle .mask.full,.radial-progress[data-progress="91"] .circle .fill{-webkit-transform:rotate(163.8deg);-ms-transform:rotate(163.8deg);transform:rotate(163.8deg)}.radial-progress[data-progress="91"] .circle .fill.fix{-webkit-transform:rotate(327.6deg);-ms-transform:rotate(327.6deg);transform:rotate(327.6deg)}.radial-progress[data-progress="92"] .circle .mask.full,.radial-progress[data-progress="92"] .circle .fill{-webkit-transform:rotate(165.6deg);-ms-transform:rotate(165.6deg);transform:rotate(165.6deg)}.radial-progress[data-progress="92"] .circle .fill.fix{-webkit-transform:rotate(331.2deg);-ms-transform:rotate(331.2deg);transform:rotate(331.2deg)}.radial-progress[data-progress="93"] .circle .mask.full,.radial-progress[data-progress="93"] .circle .fill{-webkit-transform:rotate(167.4deg);-ms-transform:rotate(167.4deg);transform:rotate(167.4deg)}.radial-progress[data-progress="93"] .circle .fill.fix{-webkit-transform:rotate(334.8deg);-ms-transform:rotate(334.8deg);transform:rotate(334.8deg)}.radial-progress[data-progress="94"] .circle .mask.full,.radial-progress[data-progress="94"] .circle .fill{-webkit-transform:rotate(169.2deg);-ms-transform:rotate(169.2deg);transform:rotate(169.2deg)}.radial-progress[data-progress="94"] .circle .fill.fix{-webkit-transform:rotate(338.4deg);-ms-transform:rotate(338.4deg);transform:rotate(338.4deg)}.radial-progress[data-progress="95"] .circle .mask.full,.radial-progress[data-progress="95"] .circle .fill{-webkit-transform:rotate(171deg);-ms-transform:rotate(171deg);transform:rotate(171deg)}.radial-progress[data-progress="95"] .circle .fill.fix{-webkit-transform:rotate(342deg);-ms-transform:rotate(342deg);transform:rotate(342deg)}.radial-progress[data-progress="96"] .circle .mask.full,.radial-progress[data-progress="96"] .circle .fill{-webkit-transform:rotate(172.8deg);-ms-transform:rotate(172.8deg);transform:rotate(172.8deg)}.radial-progress[data-progress="96"] .circle .fill.fix{-webkit-transform:rotate(345.6deg);-ms-transform:rotate(345.6deg);transform:rotate(345.6deg)}.radial-progress[data-progress="97"] .circle .mask.full,.radial-progress[data-progress="97"] .circle .fill{-webkit-transform:rotate(174.6deg);-ms-transform:rotate(174.6deg);transform:rotate(174.6deg)}.radial-progress[data-progress="97"] .circle .fill.fix{-webkit-transform:rotate(349.2deg);-ms-transform:rotate(349.2deg);transform:rotate(349.2deg)}.radial-progress[data-progress="98"] .circle .mask.full,.radial-progress[data-progress="98"] .circle .fill{-webkit-transform:rotate(176.4deg);-ms-transform:rotate(176.4deg);transform:rotate(176.4deg)}.radial-progress[data-progress="98"] .circle .fill.fix{-webkit-transform:rotate(352.8deg);-ms-transform:rotate(352.8deg);transform:rotate(352.8deg)}.radial-progress[data-progress="99"] .circle .mask.full,.radial-progress[data-progress="99"] .circle .fill{-webkit-transform:rotate(178.2deg);-ms-transform:rotate(178.2deg);transform:rotate(178.2deg)}.radial-progress[data-progress="99"] .circle .fill.fix{-webkit-transform:rotate(356.4deg);-ms-transform:rotate(356.4deg);transform:rotate(356.4deg)}.radial-progress[data-progress="100"] .circle .mask.full,.radial-progress[data-progress="100"] .circle .fill{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.radial-progress[data-progress="100"] .circle .fill.fix{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}.radial-progress:not([data-progress="0"]) .inset .bgIcon{opacity:1}.radial-progress+.o_progress_label_wrapper,.o_coursetable.o_rendertype_classic .o_progress .radial-progress+.o_progress_label_wrapper{margin-left:0.5em}.radial-progress-sm{width:60px;height:60px;font-size:14.4px}.radial-progress-sm .circle .mask{clip:rect(0px, 60px, 60px, 30px)}.radial-progress-sm .circle .mask .fill{clip:rect(0px, 30px, 60px, 0px)}.radial-progress-sm .inset{width:45px;height:45px;margin-left:7.5px;margin-top:7.5px;font-size:80px;line-height:35px;font-size:40px}.radial-progress-sm .inset .bgIcon{position:absolute;top:5px}.radial-progress-lg{width:180px;height:180px;font-size:32.4px}.radial-progress-lg .circle .mask{clip:rect(0px, 180px, 180px, 90px)}.radial-progress-lg .circle .mask .fill{clip:rect(0px, 90px, 180px, 0px)}.radial-progress-lg .inset{width:135px;height:135px;margin-left:22.5px;margin-top:22.5px;font-size:115px;line-height:125px}.radial-progress-lg .inset .bgIcon{position:absolute;top:5px}.radial-progress-inline,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{width:20px;height:20px;margin:0;vertical-align:bottom;display:inline-block}.radial-progress-inline .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask{clip:rect(0px, 20px, 20px, 10px)}.radial-progress-inline .circle .mask .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 10px, 20px, 0px)}.radial-progress-inline .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{width:14px;height:14px;margin-left:3px;margin-top:3px}.radial-progress-inline .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{display:none}.radial-progress-pie .percentage .centeredWrapper .number,.radial-progress-pie .percentage .centeredWrapper .o_progress_label{color:#fff;text-shadow:1px 1px 2px #000000}.radial-progress-success .circle .mask .fill,.radial-progress-success .circle .fill{background-color:#5cb85c}.radial-progress-success .inset .percentage .number span{color:#5cb85c}.radial-progress-info .circle .mask .fill,.radial-progress-info .circle .fill{background-color:#5bc0de}.radial-progress-info .inset .percentage .number span{color:#5bc0de}.radial-progress-danger .circle .mask .fill,.radial-progress-danger .circle .fill{background-color:#d9534f}.radial-progress-danger .inset .percentage .number span{color:#d9534f}.radial-progress-warning .circle .mask .fill,.radial-progress-warning .circle .fill{background-color:#f0ad4e}.radial-progress-warning .inset .percentage .number span{color:#f0ad4e}.o_toolbar .o_tool .o_progress{width:37px;height:33px;position:relative;display:inline-block;overflow:visible}.o_toolbar .o_tool .o_progress .radial-progress{width:45px;height:45px;font-size:12px;position:absolute;top:-5px;left:0;margin:0}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask{clip:rect(0px, 45px, 45px, 22.5px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 22.5px, 45px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset{width:37px;height:37px;margin-left:4px;margin-top:4px;font-size:37px;line-height:37px;background:#f8f8f8}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .number{color:#777;margin-right:-0.3em}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .addon{margin-top:-0.1em;margin-bottom:-0.3em}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .addon>span{font-size:0.8em;font-weight:normal}.o_toolbar .o_tool .o_progress .radial-progress .percentage .o_progress_label{display:none}@media (max-width: 991px){.o_toolbar .o_tool .o_progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress{width:35px;height:31px}.o_toolbar .o_tool .o_progress .radial-progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{width:41px;height:41px;font-size:11px;top:-3px}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask{clip:rect(0px, 41px, 41px, 20.5px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 20.5px, 41px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset{width:35px;height:35px;margin-left:3px;margin-top:3px;font-size:35px;line-height:35px}.o_coursetable.o_rendertype_custom .o_completion .o_progress{display:inline-block}.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{position:relative;top:0;left:-4px;margin:0}}@media (max-width: 767px){.o_toolbar .o_tool .o_progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress{width:22px;height:22px}.o_toolbar .o_tool .o_progress .radial-progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{width:26px;height:26px;top:-2px}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask{clip:rect(0px, 26px, 26px, 13px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 13px, 26px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset{width:20px;height:20px;margin-left:3px;margin-top:3px}.o_toolbar .o_tool .o_progress .radial-progress .inset:after,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset:after{display:none}.o_toolbar .o_tool .o_progress .radial-progress .percentage,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .percentage{display:none}}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset:after{display:none}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage{position:relative;left:28px}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .number{font-size:14px;line-height:1.428571429;font-weight:normal;color:#333}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .addon{display:none}.o_progress_failed .radial-progress-inline .inset,.o_progress_failed .o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .o_progress_failed .radial-progress .inset,.o_progress_passed .radial-progress-inline .inset,.o_progress_passed .o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .o_progress_passed .radial-progress .inset{display:none}.o_progress_failed .radial-progress-toolbar .inset,.o_progress_passed .radial-progress-toolbar .inset{font-size:37px;line-height:37px}.o_progress_failed .inset:after{content:"ï€";color:#efe5e5}.o_progress_passed .inset:after{content:"";color:#e5efe5}html{position:relative;min-height:100%}body{min-height:100%;margin-bottom:80px}#o_main_wrapper{background:#fff;z-index:3}#o_main_wrapper #o_main_container{background:#fff}#o_main_wrapper #o_main_container #o_main_left{float:left;z-index:2;position:relative;background:#fff}#o_main_wrapper #o_main_container #o_main_left #o_main_left_content{padding:0 0 0 15px}#o_main_wrapper #o_main_container #o_main_left #o_main_left_toggle{position:absolute;display:none;right:0;top:70px;margin-right:-30px;font-size:25px;line-height:35px;text-align:center;width:30px;height:35px;z-index:3;border:1px solid #ddd;border-left:none;border-bottom-right-radius:4px;border-top-right-radius:4px;background-color:#fbfbfb;-webkit-box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);color:#337ab7}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas{background:#fbfbfb;-webkit-box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);min-width:250px}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas #o_main_left_content{padding:0 0 0 0}#o_main_wrapper #o_main_container #o_main_right{float:right;z-index:2;position:relative;background:inherit}#o_main_wrapper #o_main_container #o_main_right #o_main_right_content{padding:0 15px 0 0}#o_main_wrapper #o_main_container #o_main_center{position:relative;z-index:1;background:inherit}#o_main_wrapper #o_main_container #o_main_center h2:first-child{margin-top:0}@media screen and (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center{margin-left:0 !important}}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:0 15px}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content #o_main_center_content_inner{padding-bottom:15px}#o_main_wrapper #o_toplink{position:absolute;bottom:0;right:15px;text-align:center;z-index:3}@media (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:15px}}#o_back_wrapper,#o_preview_wrapper{margin-top:10px}#o_back_wrapper.o_toolbar .o_breadcrumb .breadcrumb,#o_preview_wrapper.o_toolbar .o_breadcrumb .breadcrumb{font-size:14px}body.o_message #o_main_center_content_inner{min-height:150px;max-width:500px;padding:15px;margin:60px auto}#o_footer_wrapper{position:absolute;bottom:0;width:100%;height:70px;overflow:hidden;background-color:#f5f5f5;color:#999;line-height:16px;font-size:12px}#o_footer_wrapper a{color:#999}#o_footer_wrapper a:hover{color:#000}#o_footer_container{position:relative;padding-top:10px;min-height:70px;background:#f5f5f5;z-index:1}#o_footer_user{position:absolute;left:15px;top:10px;z-index:1}#o_footer_user #o_counter{white-space:nowrap}#o_footer_user #o_username{white-space:nowrap;margin-right:1em}#o_footer_version{position:absolute;right:15px;top:10px;text-align:right;z-index:1}@media (max-width: 767px){#o_footer_version{padding-top:10px;text-align:left}}#o_footer_powered{position:absolute;top:30px;right:15px;z-index:1}#o_footer_powered img{opacity:.6;filter:alpha(opacity=60);width:120px}#o_footer_powered img:hover{opacity:1;filter:alpha(opacity=100)}#o_footer_impressum{position:absolute;top:10px;width:100%;text-align:center;z-index:-1}#o_footer_impressum i{display:none}#o_footer_textline{position:absolute;top:30px;width:100%;text-align:center;z-index:-1}#o_share{margin-top:10px}#o_share a{opacity:.6;filter:alpha(opacity=60)}#o_share a:hover{opacity:1;filter:alpha(opacity=100)}#o_share a,#o_share_social_container a{color:#999;margin:0 0.25em 0 0}#o_share a:hover,#o_share_social_container a:hover{color:#000}@media (max-width: 767px){#o_counter,#o_footer_version,#o_share{display:none}#o_footer_impressum{top:30px;text-align:left}#o_footer_textline{top:50px;text-align:left}#o_footer_powered{top:10px}#o_footer_powered a:after{content:"\221E";font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold;font-size:14px}#o_footer_powered img{display:none}}#o_navbar_wrapper{z-index:4;border-top:1px solid #e7e7e7;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1)}#o_navbar_wrapper #o_navbar_container{position:relative}a.o_disabled.navbar-text{margin:0}.o_navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid #e7e7e7;background-color:#f8f8f8}.o_navbar:before,.o_navbar:after{content:" ";display:table}.o_navbar:after{clear:both}.o_navbar .o_navbar_tabs li{max-width:150px}.o_navbar .o_navbar_tabs li a{padding-right:30px}.o_navbar .o_navbar_tabs li a:first-child span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o_navbar .o_navbar_tabs .o_icon-fw{position:absolute;top:15px;left:0.5em;padding-top:3px;width:1em;height:1em;display:none}.o_navbar .o_navbar_tabs .o_navbar_tab_close{position:absolute;top:15px;right:0.5em;padding:0;width:1em;height:1em}.o_navbar .o_navbar_tabs .o_navbar_tab_close i:before{color:#d9534f}.o_navbar .o_navbar_tabs .o_navbar_tab_close:hover i:before{color:#c9302c}.o_navbar .o_custom_navbar-brand{background-position:5px 0;background-repeat:no-repeat;height:50px;width:120px}.o_navbar #o_navbar_langchooser{color:#777;padding:7px 15px}.o_navbar #o_navbar_langchooser form span+div{display:inline}.o_navbar #o_navbar_tools_permanent #o_navbar_print a,.o_navbar #o_navbar_tools_permanent #o_navbar_impress a,.o_navbar #o_navbar_tools_permanent #o_navbar_help a{color:#777;padding-right:0}.o_navbar #o_navbar_tools_permanent #o_navbar_login a{color:#f0ad4e}.o_navbar .o_navbar_tools>#o_navbar_tools_permanent>li>a>span{display:none}@media (min-width: 768px){.o_navbar .o_navbar_tools li.o_portrait>a>span{display:inline}}.o_navbar #o_navbar_tools_personal .o_navbar_tool a,.o_navbar #o_navbar_tools_permanent .o_navbar_tool a{padding-right:5px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu a,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu a{padding-left:45px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .dropdown-menu a,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu .dropdown-menu a{padding-left:15px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .o_portrait,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu .o_portrait{position:absolute;left:7px;top:10px}.o_navbar #o_navbar_tools_personal .o_logout,.o_navbar #o_navbar_tools_permanent .o_logout{color:#d9534f}.o_navbar.o_navbar-offcanvas .o_navbar_tab_close{top:10px;right:10px}.o_navbar.o_navbar-offcanvas .o_navbar-right a{padding:3px 20px;color:#9d9d9d}.o_navbar.o_navbar-offcanvas .o_navbar-right a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-right a:focus{color:#fff;background-color:transparent}.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout{color:#d9534f}.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout:hover,.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout:focus{color:#c9302c}.o_navbar.o_navbar-offcanvas .o_navbar-right a .o_icon-lg{font-size:1.0em;vertical-align:baseline}.o_navbar.o_navbar-offcanvas .o_navbar-right .divider{height:1px;margin:9px 0;overflow:hidden;background-color:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-header{padding-left:15px}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-toggle{display:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-menu{box-shadow:none;position:relative;top:0;left:0;display:block;float:none;background-color:#222;color:#9d9d9d;font-size:14px;border:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-menu .divider{background:none}.o_navbar.o_navbar-offcanvas .o_navbar-nav a{color:#9d9d9d;text-shadow:none}.o_navbar.o_navbar-offcanvas .o_navbar-nav a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav a:focus{background-color:transparent;color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a:focus{background-color:#090909;color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .o_navbar-link{color:#9d9d9d}.o_navbar.o_navbar-offcanvas .o_navbar-nav .o_navbar-link:hover{color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a{color:#777}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}#o_navbar_impress a span,#o_navbar_search_opener a span{display:none}body.o_dmz #o_navbar_print a span,body.o_dmz #o_navbar_impress a span,body.o_dmz #o_navbar_help a span,body.o_dmz #o_navbar_search_opener a span{display:inline}.o_navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;-webkit-overflow-scrolling:touch}.o_navbar-collapse:before,.o_navbar-collapse:after{content:" ";display:table}.o_navbar-collapse:after{clear:both}.o_navbar-collapse.o_collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.o_navbar-offcanvas .o_navbar-collapse{width:auto;box-shadow:none;margin-top:10px;margin-right:-15px;margin-left:-15px}.o_navbar-brand{float:left;font-size:18px;line-height:20px;height:50px;color:#777}.o_navbar-brand:hover,.o_navbar-brand:focus{text-decoration:none;color:#5e5e5e;background-color:transparent}.o_navbar-toggle{position:relative;margin-right:15px;margin-left:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;border:1px solid #ddd;border-radius:4px;background-color:transparent;background-image:none}.o_navbar-toggle:hover,.o_navbar-toggle:focus{outline:none;background-color:#ddd}.o_navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px;background-color:#888}.o_navbar-toggle .icon-bar+.icon-bar{margin-top:4px}#o_navbar_left-toggle{float:left}#o_navbar_right-toggle{float:right}.o_navbar-link{color:#777}.o_navbar-link:hover{color:#333}.o_navbar-nav{margin:7.5px -15px}.o_navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px;color:#777}.o_navbar-nav>li>a:hover,.o_navbar-nav>li>a:focus{color:#333;background-color:transparent}.o_navbar-nav>.active>a,.o_navbar-nav>.active>a:hover,.o_navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar-nav>.disabled>a,.o_navbar-nav>.disabled>a:hover,.o_navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.o_navbar-nav>.open>a,.o_navbar-nav>.open>a:hover,.o_navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}.o_collapse .o_navbar-nav{float:left;margin:0}.o_collapse .o_navbar-nav>li{float:left}.o_collapse .o_navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.o_collapse .o_navbar-nav.o_navbar-right:last-child{margin-right:-15px}.o_collapse.o_navbar-collapse .o_navbar-left{float:left !important}.o_collapse.o_navbar-collapse .o_navbar-right{float:right !important}.o_navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (max-width: 767px){.o_navbar-form .form-group{margin-bottom:5px}}.o_collapse .o_navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.o_collapse .o_navbar-form.o_navbar-right:last-child{margin-right:-15px}.o_navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.o_navbar-fixed-bottom .o_navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.o_navbar-btn{margin-top:8px;margin-bottom:8px}.o_navbar-btn.btn-sm,.btn-group-sm>.o_navbar-btn.btn{margin-top:10px;margin-bottom:10px}.o_navbar-btn.btn-xs,.btn-group-xs>.o_navbar-btn.btn{margin-top:14px;margin-bottom:14px}.o_navbar-text{margin-top:15px;margin-bottom:15px;color:#777}.o_collapse .o_navbar-text{float:left;margin-left:15px;margin-right:15px}.o_collapse .o_navbar-text.o_navbar-right:last-child{margin-right:0}.o_dropdown_tab{position:relative}.o_dropdown_tab>a:first-child{padding-right:30px}.o_dropdown_tab>a:first-child .o_icon-fw{display:none;position:absolute;top:0;left:10px;padding-top:3px;line-height:20px}.o_dropdown_tab>a:first-child span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o_dropdown_tab .o_navbar_tab_close{position:absolute;top:0px;right:10px;padding-left:0px;padding-right:0px;color:#d9534f;background-color:inherit}.o_dropdown_tab .o_navbar_tab_close:focus,.o_dropdown_tab .o_navbar_tab_close:hover{color:#c9302c;background-color:inherit}#o_navbar_more .dropdown-menu .divider:last-child{display:none}@media (min-width: 768px){#o_navbar_more .dropdown-menu{max-width:300px}}@media (max-width: 767px){#o_navbar_more>li{position:inherit}#o_navbar_more .dropdown-menu{left:0px;right:0px}#o_navbar_more .dropdown-menu a,#o_navbar_more .dropdown-menu i{line-height:30px}#o_navbar_more .dropdown-menu .o_navbar_tab_close{line-height:inherit}}.o_body_popup #o_topnav_printview{display:inline-block}.o_body_popup #o_topnav_close{float:right}.o_body_popup #o_topnav_close span{display:block}.o_body_popup #o_navbar_tools_permanent li>a{background-color:transparent}.o_toolbar{position:relative;margin-bottom:20px;margin-top:-10px;border:1px solid #e7e7e7}.o_toolbar:before,.o_toolbar:after{content:" ";display:table}.o_toolbar:after{clear:both}@media (min-width: 768px){.o_toolbar{border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}}.o_toolbar.o_toolbar_with_segments{margin-bottom:30px}.o_toolbar .o_breadcrumb:before,.o_toolbar .o_breadcrumb:after{content:" ";display:table}.o_toolbar .o_breadcrumb:after{clear:both}.o_toolbar .o_breadcrumb .breadcrumb{margin-bottom:0;padding:5px 9px;font-size:11px;line-height:15px;border-radius:0;background:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close{float:right;position:relative;margin:0 0 0 15px;vertical-align:middle}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a{line-height:15px;color:#d9534f}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a:hover{color:#b52b27}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a i{font-size:16px}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a span{display:none}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close:before{content:none}.o_toolbar .o_tools_container{text-align:center;min-height:37px;position:relative;background-color:#f8f8f8;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_toolbar .o_tools_container:before,.o_toolbar .o_tools_container:after{content:" ";display:table}.o_toolbar .o_tools_container:after{clear:both}@media (max-width: 991px){.o_toolbar .o_tools_container{min-height:35px}}@media (max-width: 767px){.o_toolbar .o_tools_container{min-height:22px;text-align:left}}.o_toolbar .o_tools_container span.o_tool_text{color:#777;display:inline-block}.o_toolbar .o_tools_container a{color:#777;display:inline-block}.o_toolbar .o_tools_container a:hover{color:#333}.o_toolbar .o_tools_container a.o_disabled{color:#aaa !important}.o_toolbar .o_tools_container a.o_disabled:hover{color:#aaa !important}.o_toolbar .o_tools_container a.active{color:#337ab7;background-color:transparent}.o_toolbar .o_tools_container a.btn-primary{color:#fff}.o_toolbar .o_tools_container .dropdown-menu a{display:block}.o_toolbar .o_tools_container .dropdown-menu a.active{color:#337ab7;background-color:transparent}.o_toolbar .o_breadcrumb+.o_tools_container{border-top:1px solid #e7e7e7}.o_toolbar .o_tools{margin-top:8px;margin-bottom:5px}.o_toolbar .o_tool,.o_toolbar .o_text{position:relative;margin:0 10px}.o_toolbar .o_tool:first-child,.o_toolbar .o_text:first-child{margin-left:0}.o_toolbar .o_tool:last-child,.o_toolbar .o_text:last-child{margin-right:0}.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:18px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:block;font-size:12px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{position:absolute;right:50%;top:-18px;margin-right:-12px;font-size:13px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:16px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{font-size:11px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{top:-16.5px;margin-right:-11px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:20px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:none}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{display:block;position:relative;top:0;left:0;margin-right:0}}.o_toolbar .o_tool .o_chelp,.o_toolbar .o_text .o_chelp{position:relative;top:-1em;vertical-align:top;color:#fff}.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{padding:0;margin-top:5px;border:1px solid #ccc;background-color:#eee}.o_toolbar .o_tool_next a,.o_toolbar .o_tool_previous a{color:#777}.o_toolbar .o_tool_next a:hover,.o_toolbar .o_tool_previous a:hover{color:#333}.o_toolbar .o_tool_next a.o_disabled,.o_toolbar .o_tool_previous a.o_disabled{color:#aaa !important}.o_toolbar .o_tool_next a.o_disabled:hover,.o_toolbar .o_tool_previous a.o_disabled:hover{color:#aaa !important}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:21px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{margin-top:4px}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:18px}}@media (max-width: 767px){.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{margin-top:0}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:20px}}.o_toolbar .o_tool_previous{margin-left:10px;border-bottom-left-radius:4px;border-top-left-radius:4px;border-right:0}.o_toolbar .o_tool_next{border-bottom-right-radius:4px;border-top-right-radius:4px}.o_toolbar .o_tool_dropdown{margin:0 10px}.o_toolbar .o_tool_dropdown:first-child{margin-left:0}.o_toolbar .o_tool_dropdown:last-child{margin-right:0}.o_toolbar .o_tool_dropdown a.dropdown-toggle{position:relative}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:18px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label{display:block;font-size:12px;text-align:center}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{position:absolute;right:50%;top:4px;margin-right:-20px;font-size:14px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:16px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label,.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{font-size:11px}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{top:4px;margin-right:-18px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown a.dropdown-toggle{padding:0 10px 0 5px}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:20px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label{display:none}}.o_toolbar .o_tool_dropdown .dropdown-menu{text-align:left}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{line-height:16px;font-size:70% !important;padding:0 18px 0 4px;position:relative;top:-2px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:12px !important;margin:0 0 3px 0}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{position:absolute;right:5px;top:2px;margin-right:0}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{line-height:14px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:10px !important}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{right:5px;top:2px;margin-right:0;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{padding:0 18px 0 4px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:20px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{right:15px;top:2px;margin-right:0}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled span.o_inner_text,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled span.o_label,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light span.o_inner_text,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light span.o_label{display:none}}.o_toolbar .o_tool_dropdown .dropdown-toggle.o_with_labeled .o_inner_wrapper.o_labeled+.o_icon_caret{color:#fff !important}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled{padding:0;margin:0}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled .o_labeled{text-align:left}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled>li>a{padding:5px 5px;margin:1px}.o_toolbar .o_tools_left{float:left}.o_toolbar .o_tools_right{float:right}.o_toolbar .o_tools_right_edge{float:right}.o_toolbar .o_tools_center{float:both;margin-left:auto;margin-right:auto}.o_toolbar .o_tools_segments{margin:0 auto -1.1em auto}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}@media (max-width: 991px){.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools.o_tools_segments{margin:0 auto -1.1em auto}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}.o_toolbar .o_tool span{max-width:10em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_toolbar .o_tools_segments .o_tool span{display:block}.o_toolbar .o_tool,.o_toolbar .o_text,.o_toolbar .o_tool_dropdown{margin:0 5px}}@media (max-width: 767px){.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools .o_chelp{top:0;vertical-align:top}.o_toolbar .o_tools.o_tools_segments{margin:0 auto -1.1em auto;text-align:center}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}.o_toolbar .o_tools_center{float:left}.o_toolbar .o_tool,.o_toolbar .o_text,.o_toolbar .o_tool_dropdown{margin:0 0;position:static}.o_toolbar .o_tool_dropdown .dropdown-menu{left:0px;right:0px}.o_toolbar .o_tool_dropdown .dropdown-menu a,.o_toolbar .o_tool_dropdown .dropdown-menu i{line-height:30px}.o_toolbar .o_tool_dropdown .dropdown-menu .o_navbar_tab_close{line-height:inherit}}#o_main_container .o_toolbar_message{display:table;margin:0 auto 20px auto}#o_main_container .o_toolbar_message.o_warning{padding-top:5px;padding-bottom:5px;border:1px solid #8a6d3b;border-radius:3px}.o_edit_mode .o_toolbar .o_tools_container{background:repeating-linear-gradient(300deg, #fff0d9, #fff0d9 10px, #fcfcfc 10px, #fcfcfc 20px)}.o_edit_mode .o_toolbar .o_edit_mode .o_tools_container{background:#f8f8f8}body{overflow-x:hidden}.o_container_offcanvas{position:relative;max-width:1324px}#o_container_page_width_toggler{position:absolute;top:25px;margin-top:-.75em;right:10px;z-index:5;display:none}@media (min-width: 1364px){#o_container_page_width_toggler{display:block}#o_container_page_width_toggler #o_go_standard_width{display:none}#o_container_page_width_toggler #o_go_full_width{display:block}body.o_width_full .o_container_offcanvas{max-width:100%;margin-left:20px;margin-right:20px}body.o_width_full #o_container_page_width_toggler #o_go_standard_width{display:block}body.o_width_full #o_container_page_width_toggler #o_go_full_width{display:none}}body.o_dmz #o_container_page_width_toggler{display:none !important}#o_offcanvas_right{position:absolute;top:0;right:-250px;width:250px;padding:15px 15px;background-color:#222;color:#9d9d9d;border:1px solid #090909;-webkit-box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);min-height:100%;z-index:10;display:none}#o_offcanvas_right:before,#o_offcanvas_right:after{content:" ";display:table}#o_offcanvas_right:after{clear:both}@media screen and (max-width: 767px){.row-offcanvas{position:relative;-webkit-transition:all .25s ease-out;-moz-transition:all .25s ease-out;transition:all .25s ease-out}.row-offcanvas-right{right:0}.row-offcanvas-right .sidebar-offcanvas{right:-50%}.row-offcanvas-right.active{right:50%}.row-offcanvas-left{left:0}.row-offcanvas-left .sidebar-offcanvas{left:-50%}.row-offcanvas-left.active{left:50%}.sidebar-offcanvas{position:absolute;top:0;width:50%}}.o_info,.b_info,p.b_info,div.b_info,.o_form .o_info,.o_togglebox_wrapper div.o_togglebox_content,div.o_qti_item_itemfeedback,.o_assessmentitem_wrapper .modalFeedback .o_info{margin:20px 0;padding:20px;border-left:3px solid #777;background-color:#eee}.o_info h2,.o_info h3,.o_info h4,.o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_info h2,.o_info h5,.b_info h2,.o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback h2,.o_assessmentitem_wrapper .modalFeedback .o_info h2,.b_info h3,.o_form .o_info h3,.o_togglebox_wrapper div.o_togglebox_content h3,div.o_qti_item_itemfeedback h3,.o_assessmentitem_wrapper .modalFeedback .o_info h3,.b_info h4,.o_form .o_info h4,.o_togglebox_wrapper div.o_togglebox_content h4,div.o_qti_item_itemfeedback h4,.o_assessmentitem_wrapper .modalFeedback .o_info h4,.b_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_info h2,.o_form .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback .o_cal .fc-header-title h2,.o_cal .fc-header-title div.o_qti_item_itemfeedback h2,.o_assessmentitem_wrapper .modalFeedback .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info h2,.b_info h5,.o_form .o_info h5,.o_togglebox_wrapper div.o_togglebox_content h5,div.o_qti_item_itemfeedback h5,.o_assessmentitem_wrapper .modalFeedback .o_info h5{color:#777}.o_note,.b_note,p.b_note,div.b_note,.o_form .o_desc,.o_course_run .o_statusinfo,.o_course_stats .o_desc,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment{margin:20px 0;padding:20px;border-left:3px solid #31708f;background-color:#d9edf7}.o_note h2,.o_note h3,.o_note h4,.o_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_note h2,.o_note h5,.b_note h2,.o_form .o_desc h2,.o_course_run .o_statusinfo h2,.o_course_stats .o_desc h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h2,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2,.b_note h3,.o_form .o_desc h3,.o_course_run .o_statusinfo h3,.o_course_stats .o_desc h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h3,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h3,.b_note h4,.o_form .o_desc h4,.o_course_run .o_statusinfo h4,.o_course_stats .o_desc h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h4,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h4,.b_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_note h2,.o_form .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_desc h2,.o_course_run .o_statusinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_statusinfo h2,.o_course_stats .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_stats .o_desc h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h2,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2,.b_note h5,.o_form .o_desc h5,.o_course_run .o_statusinfo h5,.o_course_stats .o_desc h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h5,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h5{color:#31708f}.o_important,.b_important,p.b_important,div.b_important,.o_bc_empty,.o_course_run .o_no_scoreinfo{margin:20px 0;padding:20px;border-left:3px solid #F4D000;background-color:#FFF1A4}.o_important h2,.o_important h3,.o_important h4,.o_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_important h2,.o_important h5,.b_important h2,.o_bc_empty h2,.o_course_run .o_no_scoreinfo h2,.b_important h3,.o_bc_empty h3,.o_course_run .o_no_scoreinfo h3,.b_important h4,.o_bc_empty h4,.o_course_run .o_no_scoreinfo h4,.b_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_important h2,.o_bc_empty .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_bc_empty h2,.o_course_run .o_no_scoreinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_no_scoreinfo h2,.b_important h5,.o_bc_empty h5,.o_course_run .o_no_scoreinfo h5{color:#F4D000}.o_success,.b_success,p.b_success,div.b_success,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback{margin:20px 0;padding:20px;border-left:3px solid #3c763d;background-color:#dff0d8}.o_success h2,.o_success h3,.o_success h4,.o_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_success h2,.o_success h5,.b_success h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h2,.b_success h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h3,.b_success h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h4,.b_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_success h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h2,.b_success h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h5{color:#3c763d}.o_warning,.b_warning,p.b_warning,div.b_warning,.o_instruction,.o_form .o_warning,p.o_gta_reopen_warning{margin:20px 0;padding:20px;border-left:3px solid #8a6d3b;background-color:#fcf8e3}.o_warning h2,.o_warning h3,.o_warning h4,.o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_warning h2,.o_warning h5,.b_warning h2,.o_instruction h2,.o_form .o_warning h2,p.o_gta_reopen_warning h2,.b_warning h3,.o_instruction h3,.o_form .o_warning h3,p.o_gta_reopen_warning h3,.b_warning h4,.o_instruction h4,.o_form .o_warning h4,p.o_gta_reopen_warning h4,.b_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_warning h2,.o_instruction .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_instruction h2,.o_form .o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_warning h2,p.o_gta_reopen_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title p.o_gta_reopen_warning h2,.b_warning h5,.o_instruction h5,.o_form .o_warning h5,p.o_gta_reopen_warning h5{color:#8a6d3b}.o_error,.b_error,p.b_error,div.b_error,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback{margin:20px 0;padding:20px;border-left:3px solid #a94442;background-color:#f2dede}.o_error h2,.o_error h3,.o_error h4,.o_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_error h2,.o_error h5,.b_error h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h2,.b_error h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h3,.b_error h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h4,.b_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_error h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h2,.b_error h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h5{color:#a94442}.o_instruction{margin-top:0px;border-left:none;padding-top:10px;padding-bottom:10px}.o_instruction>.o_button_group{margin-bottom:0px}div.o_callout_overlay{position:fixed;top:0;left:0;width:100%;height:100%;zoom:1;background:#000;opacity:0;filter:alpha(opacity=0)}.o_alert_info{position:fixed;top:-100%;left:0;display:none;z-index:2000;width:100%;text-align:center}.o_alert_info .alert{position:relative;width:auto;margin:0 auto;text-align:left;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.o_alert_info .alert .o_alert_close{float:right;color:#777}.o_alert_info .alert .o_alert_close:hover{color:#555}@media (min-width: 768px){.o_alert_info .alert{width:600px}}#o_msg_sticky,#o_msg_sticky_preview{position:relative;color:#a94442;background-color:#f2dede;border:1px solid #ebccd1;padding:10px 16px 10px 60px;min-height:40px;margin:-20px 0 20px 0}#o_msg_sticky .o_icon_info_msg,#o_msg_sticky_preview .o_icon_info_msg{position:absolute;left:10px;top:5px;font-size:40px}#o_msg_sticky.o_msg_sticky_fullscreen,#o_msg_sticky_preview.o_msg_sticky_fullscreen{margin-top:0}@media (min-width: 768px){.modal .o_modal_fullwidth{width:90%}}@media (min-width: 992px){.modal .o_modal_fullwidth{width:80%}}.modal .modal-header h4,.modal .modal-header .o_cal .fc-header-title h2,.o_cal .fc-header-title .modal .modal-header h2{color:#337ab7;font-weight:500;font-family:inherit;line-height:1.1}.o_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_tree a{color:#777;background-color:none}.o_tree a:hover,.o_tree a:focus{color:#333}.o_tree .o_tree_link{background-color:none}.o_tree .o_tree_link:hover,.o_tree .o_tree_link:focus{background-color:#f8f8f8}.o_tree .o_tree_link:first-child{background-color:transparent}.o_tree .o_tree_link:last-child:hover,.o_tree .o_tree_link:last-child:focus{background-color:#f8f8f8}.o_tree .o_insertion_point>a>span{padding:5px;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_tree .o_insertion_source>a>span.o_tree_item,.o_tree .o_insertion_source>a>span.o_dnd_item{border-bottom:solid #f90 4px;background-color:#fefbf6}.o_tree ul{margin:0;padding:0;list-style-type:none}.o_tree ul li{margin:0;padding:0;white-space:nowrap}.o_tree ul li div{position:relative;border-bottom:1px solid #ddd}.o_tree ul li div.popover{position:absolute;left:auto;right:0}.o_tree ul li div a.o_tree_oc_l0{position:absolute;top:10px;left:-4px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l0,.o_tree ul .o_tree_level_close.b_tree_oc_l0{z-index:10}.o_tree ul li div a.o_tree_oc_l1{position:absolute;top:10px;left:11px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l1,.o_tree ul .o_tree_level_close.b_tree_oc_l1{z-index:10}.o_tree ul li div a.o_tree_oc_l2{position:absolute;top:10px;left:26px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l2,.o_tree ul .o_tree_level_close.b_tree_oc_l2{z-index:10}.o_tree ul li div a.o_tree_oc_l3{position:absolute;top:10px;left:41px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l3,.o_tree ul .o_tree_level_close.b_tree_oc_l3{z-index:10}.o_tree ul li div a.o_tree_oc_l4{position:absolute;top:10px;left:56px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l4,.o_tree ul .o_tree_level_close.b_tree_oc_l4{z-index:10}.o_tree ul li div a.o_tree_oc_l5{position:absolute;top:10px;left:71px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l5,.o_tree ul .o_tree_level_close.b_tree_oc_l5{z-index:10}.o_tree ul li div a.o_tree_oc_l6{position:absolute;top:10px;left:86px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l6,.o_tree ul .o_tree_level_close.b_tree_oc_l6{z-index:10}.o_tree ul li div a.o_tree_oc_l7{position:absolute;top:10px;left:101px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l7,.o_tree ul .o_tree_level_close.b_tree_oc_l7{z-index:10}.o_tree ul li div a.o_tree_oc_l8{position:absolute;top:10px;left:116px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l8,.o_tree ul .o_tree_level_close.b_tree_oc_l8{z-index:10}.o_tree ul li div a.o_tree_oc_l9{position:absolute;top:10px;left:131px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l9,.o_tree ul .o_tree_level_close.b_tree_oc_l9{z-index:10}.o_tree ul li div a.o_tree_oc_l10{position:absolute;top:10px;left:146px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l10,.o_tree ul .o_tree_level_close.b_tree_oc_l10{z-index:10}.o_tree ul li div a.o_tree_oc_l11{position:absolute;top:10px;left:161px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l11,.o_tree ul .o_tree_level_close.b_tree_oc_l11{z-index:10}.o_tree ul li div span.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_tree ul li div span.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_tree ul li div span.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_tree ul li div span.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_tree ul li div span.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_tree ul li div span.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_tree ul li div span.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_tree ul li div span.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_tree ul li div span.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_tree ul li div span.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_tree ul li div span.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_tree ul li div span.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_tree ul span.o_tree_leaf{display:none}.o_tree ul span.o_tree_link>input[type=checkbox]{margin-right:5px}.o_tree ul li .badge{position:absolute;font-size:70%}.o_tree ul li .badge:before{content:none}.o_tree ul li .badge.o_badge_1{top:3px;right:1px}.o_tree ul li .badge.o_badge_2{bottom:3px;right:1px}.o_tree ul li .badge.o_badge_3{top:3px;right:25px}.o_tree ul li .badge.o_badge_4{bottom:3px;right:25px}.o_tree ul li div.o_dnd_sibling{margin:0;padding:0;border-bottom:none}.o_tree ul li .active.o_tree_link{background-color:none;font-weight:bold}.o_tree ul li .active.o_tree_link a{color:#337ab7}.o_tree ul li .active.o_tree_link:hover,.o_tree ul li .active.o_tree_link:focus{background-color:#eee}.o_tree ul li .active.o_tree_link:hover a,.o_tree ul li .active.o_tree_link:focus a{color:#23527c}.o_tree ul li .active_parent.o_tree_link{font-weight:bold}.o_tree ul li .active_parent.o_tree_link a{color:#777}.o_tree ul li .active_parent.o_tree_link a:hover,.o_tree ul li .active_parent.o_tree_link a:focus{color:#333}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l0{left:6px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l1{left:21px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l2{left:36px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l3{left:51px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l4{left:66px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l5{left:81px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l6{left:96px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l7{left:111px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l8{left:126px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l9{left:141px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l10{left:156px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l11{left:171px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l0{padding:10px 2px 10px 20px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l1{padding:10px 2px 10px 35px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l2{padding:10px 2px 10px 50px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l3{padding:10px 2px 10px 65px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l4{padding:10px 2px 10px 80px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l5{padding:10px 2px 10px 95px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l6{padding:10px 2px 10px 110px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l7{padding:10px 2px 10px 125px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l8{padding:10px 2px 10px 140px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l9{padding:10px 2px 10px 155px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l10{padding:10px 2px 10px 170px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l11{padding:10px 2px 10px 185px}.o_tree .o_dnd_item{cursor:move;z-index:100}.o_tree .o_dnd_proxy{opacity:.4;filter:alpha(opacity=40);background-color:#f0ad4e;padding:5px 10px 5px 10px;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_tree .o_dnd_item.o_dnd_over{background-color:#ffff60}.o_tree .o_dnd_sibling{height:7px;width:100%}.o_tree .o_dnd_sibling.o_dnd_over{background:transparent url(../light/images/arrow_dd.png) top left no-repeat}.o_tree .o_dnd_l1{margin-left:0 !important}.o_tree .o_dnd_l2{margin-left:1em !important}.o_tree .o_dnd_l3{margin-left:2em !important}.o_tree .o_dnd_l4{margin-left:3em !important}.o_tree .o_dnd_l5{margin-left:4em !important}.o_tree .o_dnd_l6{margin-left:5em !important}.o_tree .o_dnd_l7{margin-left:6em !important}.o_tree .o_dnd_l8{margin-left:7em !important}.o_tree .o_dnd_l9{margin-left:8em !important}.o_tree .o_dnd_l10{margin-left:9em !important}.o_tree .o_dnd_l11{margin-left:10em !important}.o_tree.o_tree_insert_tool span.o_tree_link a{display:block}.o_offcanvas .o_tree{border:0}.o_selection_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_selection_tree ul{margin:0;padding:0;list-style-type:none}.o_selection_tree li{margin:0;padding:0;white-space:nowrap}.o_selection_tree li div{position:relative;margin-bottom:-1px;border-bottom:1px solid #ddd}.o_selection_tree li>div>span.o_tree_l0,.o_selection_tree li>div>div.checkbox.o_tree_l0,.o_selection_tree li>div>div.radio.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_selection_tree li>div>span.o_tree_l1,.o_selection_tree li>div>div.checkbox.o_tree_l1,.o_selection_tree li>div>div.radio.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_selection_tree li>div>span.o_tree_l2,.o_selection_tree li>div>div.checkbox.o_tree_l2,.o_selection_tree li>div>div.radio.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_selection_tree li>div>span.o_tree_l3,.o_selection_tree li>div>div.checkbox.o_tree_l3,.o_selection_tree li>div>div.radio.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_selection_tree li>div>span.o_tree_l4,.o_selection_tree li>div>div.checkbox.o_tree_l4,.o_selection_tree li>div>div.radio.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_selection_tree li>div>span.o_tree_l5,.o_selection_tree li>div>div.checkbox.o_tree_l5,.o_selection_tree li>div>div.radio.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_selection_tree li>div>span.o_tree_l6,.o_selection_tree li>div>div.checkbox.o_tree_l6,.o_selection_tree li>div>div.radio.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_selection_tree li>div>span.o_tree_l7,.o_selection_tree li>div>div.checkbox.o_tree_l7,.o_selection_tree li>div>div.radio.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_selection_tree li>div>span.o_tree_l8,.o_selection_tree li>div>div.checkbox.o_tree_l8,.o_selection_tree li>div>div.radio.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_selection_tree li>div>span.o_tree_l9,.o_selection_tree li>div>div.checkbox.o_tree_l9,.o_selection_tree li>div>div.radio.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_selection_tree li>div>span.o_tree_l10,.o_selection_tree li>div>div.checkbox.o_tree_l10,.o_selection_tree li>div>div.radio.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_selection_tree li>div>span.o_tree_l11,.o_selection_tree li>div>div.checkbox.o_tree_l11,.o_selection_tree li>div>div.radio.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_breadcrumb{position:relative}.o_breadcrumb .o_breadcrumb_close{float:right;position:relative;margin:0 0 0 15px;vertical-align:middle}.o_breadcrumb .o_breadcrumb_close a{line-height:15px;color:#d9534f}.o_breadcrumb .o_breadcrumb_close a:hover{color:#b52b27}.o_breadcrumb .o_breadcrumb_close a i{font-size:16px}.o_breadcrumb .o_breadcrumb_close a span{display:none}.o_breadcrumb .o_breadcrumb_close:before{content:none}.o_form .o_icon_mandatory{margin-right:0.25em}.o_form .o_form_chelp{padding-left:0.25em;margin-right:-1.25em}.o_form .o_form_example{font-size:90%}.o_form .o_error{margin-top:1px;margin-bottom:0;padding:10px}.o_form hr.o_spacer_noline{border-top:1px solid transparent}.o_form hr.o_spacer.form,.o_form hr.o_spacer_noline.form{margin-top:0px;margin-bottom:0px}.o_form .form-group.o_omit_margin{margin-bottom:0}.o_form .o_date{position:relative;padding-right:34px}.o_form .o_date.form-inline .form-group,.o_form .o_date.o_navbar-form .form-group{margin-left:0}.o_form .o_date.form-inline .form-group.o_second_date,.o_form .o_date.o_navbar-form .form-group.o_second_date,.o_form .o_date.form-inline .o_date_ms.form-group,.o_form .o_date.o_navbar-form .o_date_ms.form-group,.o_form .o_date.form-inline .form-group.o_date_separator,.o_form .o_date.o_navbar-form .form-group.o_date_separator{margin-left:25px}.o_form .btn-group .o_date{display:inline-block}.o_form input.o_date_ms{width:3em}.o_form .has-feedback .o_date.form-inline .form-control.o_date_ms,.o_form .has-feedback .o_date.o_navbar-form .form-control.o_date_ms{padding-right:0}.o_form .o_form_element.form-inline .o_form_element.form-group,.o_form .o_form_element.o_navbar-form .o_form_element.form-group{margin-left:25px}.o_form .input-group.o_date_picker{width:11em}.o_form .has-feedback .o_date_picker .form-control{padding-right:0}.o_form .o_filepreview{margin-bottom:10px}.o_form .o_fileinput{cursor:pointer;position:relative}.o_form .o_fileinput .o_fakechooser{position:relative;z-index:1}.o_form .o_fileinput .o_realchooser{position:absolute;top:0;right:0;z-index:2;opacity:0;filter:alpha(opacity=0)}.o_form .o_fileinput .o_realchooser.o_chooser_with_delete{right:38px}.o_form .o_fileElement.has-error .o_icon_error.form-control-feedback{display:none}.o_form .form-control.textarea.o_fixed_font_with{resize:vertical !important;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_form .form-control.textarea_disabled.o_fixed_font_with{white-space:pre-wrap;height:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#555 !important;background:#fafafa}.o_form .form-control.textarea_disabled{resize:both;overflow:auto;white-space:pre-wrap;background:#fafafa}.o_form_inline_mandatory_compact i{width:20px}.o_form_inline_mandatory_compact select.form-control{width:calc(100% - 25px)}.o_day_chooser .o_day_previous{display:inline-block}.o_day_chooser .o_day_previous a{border-bottom-right-radius:0;border-top-right-radius:0;border-right:0}.o_day_chooser .o_day_date{display:inline-block;border-radius:0}.o_day_chooser .o_day_date input,.o_day_chooser .o_day_date .input-group-addon{border-radius:0}.o_day_chooser .o_day_next{display:inline-block}.o_day_chooser .o_day_next a{border-bottom-left-radius:0;border-top-left-radius:0;border-left:0}.o_centered_form{text-align:center}.o_centered_form fieldset.o_form{display:inline-block;text-align:left}.o_choice_checkrow,.o_choice_textrow{vertical-align:text-top;padding-bottom:2px}.o_choice_textrow{padding-left:1em}.o_togglecheck a{white-space:nowrap}.o_catalog .o_catalog_delete_img{position:relative;top:-0.5em}.o_button_dirty{color:#fff;background-color:#f0ad4e;border-color:#eea236}.o_button_dirty:hover,.o_button_dirty:focus,.o_button_dirty.focus,.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{background-image:none}.o_button_dirty.disabled,.o_button_dirty.disabled:hover,.o_button_dirty.disabled:focus,.o_button_dirty.disabled.focus,.o_button_dirty.disabled:active,.o_button_dirty.disabled.active,.o_button_dirty[disabled],.o_button_dirty[disabled]:hover,.o_button_dirty[disabled]:focus,.o_button_dirty[disabled].focus,.o_button_dirty[disabled]:active,.o_button_dirty[disabled].active,fieldset[disabled] .o_button_dirty,fieldset[disabled] .o_button_dirty:hover,fieldset[disabled] .o_button_dirty:focus,fieldset[disabled] .o_button_dirty.focus,fieldset[disabled] .o_button_dirty:active,fieldset[disabled] .o_button_dirty.active{background-color:#f0ad4e;border-color:#eea236}.o_button_dirty .badge{color:#f0ad4e;background-color:#fff}.o_button_toggle{border:1px solid #777;border-top-right-radius:9px;border-top-left-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px;background:#eee;display:inline-block;height:18px;line-height:16px;font-size:16px;text-align:left;padding:0 0.5em 0 1px;margin:0}.o_button_toggle i{color:#777;text-shadow:1px 0 2px rgba(0,0,0,0.25)}.o_button_toggle span{line-height:16px;vertical-align:top;font-size:60%;color:#777;text-transform:uppercase}.o_button_toggle.o_on{text-align:right;padding:0 1px 0 0.5em}.o_button_toggle.o_on i{color:#337ab7;text-shadow:-1px 0 2px rgba(0,0,0,0.25)}.o_table_wrapper{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_table_wrapper.o_table_flexi .o_table_body{margin-top:20px}.o_table_wrapper.o_table_flexi .table{margin-top:20px}.o_table_wrapper.o_table_flexi .table td ul{margin:0}.o_table_wrapper.o_table_flexi.o_table_no_margin .table{margin:0}.o_table_wrapper.o_table_flexi tfoot{border-top:solid #ddd 2px}.o_table_wrapper.o_table_flexi .o_multiselect{width:20px}.o_table_wrapper.o_table_edit table tbody{border-top:solid #f90 4px;background-color:#fefbf6}.o_table_wrapper .o_table_search{max-width:50em}.o_table_wrapper .o_table_footer .o_table_checkall>a{font-weight:normal;margin-right:10px}.o_table_wrapper .o_table_footer .o_table_checkall.input-sm,.o_table_wrapper .o_table_footer .input-group-sm>.o_table_checkall.form-control,.o_table_wrapper .o_table_footer .input-group-sm>.o_table_checkall.input-group-addon,.o_table_wrapper .o_table_footer .input-group-sm>.input-group-btn>.o_table_checkall.btn{padding:5px 6px}.o_table_wrapper .o_table_footer .o_table_pagination{text-align:center}.o_table_wrapper .o_table_rows_infos{float:left;padding-left:0;padding-right:20px;margin:20px 0}.o_table_wrapper .o_row_selected td{background-color:#dff0d8 !important}.o_table_wrapper .o_table{margin-bottom:0}.o_table_wrapper .o_marked{font-weight:bold}.o_table_wrapper .table{margin-bottom:0}.o_table_wrapper th a,.o_table_wrapper th a:hover{color:#333;text-decoration:none}.o_table_search a.btn.o_reset_quick_search{width:38px;margin-left:-38px;z-index:5;color:grey}.o_table_search>label{display:inline}.o_breadcrumb.o_table_flexi_breadcrumb ol.breadcrumb{margin:5px 0 0 0}div.o_table_flexi div.o_table_flexi_leaf{margin-left:1.55em}div.o_table_flexi div.o_table_flexi_l0{padding-left:0px}div.o_table_flexi div.o_table_flexi_l1{padding-left:15px}div.o_table_flexi div.o_table_flexi_l2{padding-left:30px}div.o_table_flexi div.o_table_flexi_l3{padding-left:45px}div.o_table_flexi div.o_table_flexi_l4{padding-left:60px}div.o_table_flexi div.o_table_flexi_l5{padding-left:75px}div.o_table_flexi div.o_table_flexi_l6{padding-left:90px}div.o_table_flexi div.o_table_flexi_l7{padding-left:105px}div.o_table_flexi div.o_table_flexi_l8{padding-left:120px}div.o_table_flexi div.o_table_flexi_l9{padding-left:135px}div.o_table_flexi div.o_table_flexi_l10{padding-left:150px}div.o_table_flexi div.o_table_flexi_l11{padding-left:165px}@media (max-width: 767px){.o_table_wrapper .o_table_rows_infos{clear:both}}a.o_orderby,a.o_orderby:hover{color:#333;text-decoration:none}a.o_orderby.o_orderby_asc,a.o_orderby.o_orderby_desc,a.o_orderby:hover.o_orderby_asc,a.o_orderby:hover.o_orderby_desc{border-bottom:1px solid #ddd}.o_table_row_count{padding-top:6px;padding-bottom:6px;vertical-align:middle}.o_table_row_details td{background-color:white !important}.o_table_config{font-size:12px}.o_table_buttons{text-align:center}.o_table_buttons input{margin-right:1em}.o_table_buttons input:last-child{margin-right:0}.o_table_tools{margin-left:6px}.o_table_tools_indications,.o_table_tools_indications_filter_only{margin-left:10px;padding-top:3px;font-size:80%}.o_table_tools_indications a,.o_table_tools_indications_filter_only a{color:#d9534f}.o_table_toolbar_left .o_table_tools_indications{text-align:right}.o_table_count{max-width:20em;float:left;padding:0 15px}.o_table_filter .control-label{margin-right:0.5em}.o_table_filter .control-label:after{content:':'}.o_table_filter>div{display:inline-block}.o_table_filter>div label{font-weight:normal}.o_info .table-bordered td,o_note .table-bordered td,o_important .table-bordered td,o_warning .table-bordered td,o_error .table-bordered td{border-color:#333}.panel .o_table_layout{border-top:1px solid #ddd;padding-top:6px}.panel .o_table_count{padding:0 15px}.o_table_header_fw{width:40px}#o_navbar_imclient .o_im_messages{float:left}#o_navbar_imclient #o_im_message,#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_summary{float:left;position:relative;padding:15px 3px}#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_message{padding-left:15px}#o_navbar_imclient #o_im_summary .badge{color:#fff;background-color:#777}#o_navbar_imclient #o_im_status li>a>span{display:inline}#o_navbar_imclient #o_im_status div.o_chelp_wrapper{right:0.5em}#o_navbar_imclient #o_im_message a:hover,#o_navbar_imclient #o_im_message a:focus{text-decoration:none}#o_navbar_imclient #o_im_message .o_icon_message{color:#d9534f}#o_navbar_imclient #o_im_message .o_icon_message:hover{color:#f4c37d}.o_im_load_history{margin-bottom:6px}.o_im_load_history .o_label{font-size:12px;padding-right:0.5em;line-height:1.5em;color:#777}.o_im_chat_history{height:170px;font-size:90%;border:1px solid #eee;margin:0 0 1em 0;overflow:scroll;overflow-x:auto}.o_im_message_group{padding:3px 3px 3px 40px;min-height:40px;position:relative;border-top:1px solid #eee;background:#fff}.o_im_message_group.o_odd{background:#F4F4F4}.o_im_message_group .o_portrait{position:absolute;top:3px;left:3px}.o_im_message_group .o_im_from{color:#777;font-size:12px;font-weight:bold}.o_im_message_group .o_im_from:hover{color:#5e5e5e}.o_im_message_group div.o_im_body{padding:3px 0 3px 0;font-size:12px}.o_im_message_group div.o_im_body .o_date{float:right;color:#777;font-size:9px}.o_groupchat_roster{font-size:12px}.o_groupchat_roster li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333}.o_groupchat_roster li.o_vip{color:#3c763d}.o_groupchat_roster li.o_anonymous{color:#31708f}.o_im_buddieslist .o_im_buddieslist_toggler .btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_im_buddieslist ul{font-size:12px}.o_im_buddieslist ul ul{padding-left:1em}.o_im_buddieslist ul a{color:#337ab7}.o_im_buddieslist ul a:hover{color:#23527c}.o_flag{position:relative;top:1px;display:inline-block;line-height:1;width:16px;height:16px;background-repeat:no-repeat;background-position:0 100%}option.o_with_flag{padding-left:23px;min-height:16px;background-repeat:no-repeat;background-position:2px 50%}.o_flag_en{background-image:url("../light/images/flags/gb.png")}.o_flag_de{background-image:url("../light/images/flags/de.png")}.o_flag_fr{background-image:url("../light/images/flags/fr.png")}.o_flag_it{background-image:url("../light/images/flags/it.png")}.o_flag_es{background-image:url("../light/images/flags/es.png")}.o_flag_da{background-image:url("../light/images/flags/dk.png")}.o_flag_cs{background-image:url("../light/images/flags/cz.png")}.o_flag_el{background-image:url("../light/images/flags/gr.png")}.o_flag_ee{background-image:url("../light/images/flags/ee.png")}.o_flag_ru{background-image:url("../light/images/flags/ru.png")}.o_flag_pl{background-image:url("../light/images/flags/pl.png")}.o_flag_zh_CN{background-image:url("../light/images/flags/cn.png")}.o_flag_zh_TW{background-image:url("../light/images/flags/tw.png")}.o_flag_lt{background-image:url("../light/images/flags/lt.png")}.o_flag_fa{background-image:url("../light/images/flags/ir.png")}.o_flag_pt_PT{background-image:url("../light/images/flags/pt.png")}.o_flag_pt_BR{background-image:url("../light/images/flags/br.png")}.o_flag_tr{background-image:url("../light/images/flags/tr.png")}.o_flag_hu{background-image:url("../light/images/flags/hu.png")}.o_flag_sq{background-image:url("../light/images/flags/al.png")}.o_flag_in{background-image:url("../light/images/flags/id.png")}.o_flag_ar{background-image:url("../light/images/flags/eg.png")}.o_flag_rm{background-image:url("../light/images/flags/rm.png")}.o_flag_af{background-image:url("../light/images/flags/za.png")}.o_flag_vi{background-image:url("../light/images/flags/vn.png")}.o_flag_mn{background-image:url("../light/images/flags/mn.png")}.o_flag_iw{background-image:url("../light/images/flags/il.png")}.o_flag_ko{background-image:url("../light/images/flags/kr.png")}.o_flag_nl_NL{background-image:url("../light/images/flags/nl.png")}.o_flag_jp{background-image:url("../light/images/flags/jp.png")}.o_flag_nb_NO{background-image:url("../light/images/flags/no.png")}.o_flag_et_EE{background-image:url("../light/images/flags/ee.png")}.o_flag_bg{background-image:url("../light/images/flags/bg.png")}.o_flag_hi_IN_ASIA{background-image:url("../light/images/flags/in.png")}.o_flag_ar_LB{background-image:url("../light/images/flags/lb.png")}.o_flag_gl_ES{background-image:url("../light/images/flags/galicia.png")}.o_flag_sk{background-image:url("../light/images/flags/sk.png")}.o_rating .o_rating_title{font-size:12px}.o_rating .o_rating_items{white-space:nowrap}.o_rating .o_rating_items .o_icon,.o_rating .o_rating_items .o_progress_failed .inset:after,.o_progress_failed .o_rating .o_rating_items .inset:after,.o_rating .o_rating_items .o_progress_passed .inset:after,.o_progress_passed .o_rating .o_rating_items .inset:after{color:#f0ad4e}.o_rating .o_rating_items .o_legend{margin-left:1em;font-size:12px;line-height:normal}.o_rating.o_rating_personal .o_rating_items .o_icon,.o_rating.o_rating_personal .o_rating_items .o_progress_failed .inset:after,.o_progress_failed .o_rating.o_rating_personal .o_rating_items .inset:after,.o_rating.o_rating_personal .o_rating_items .o_progress_passed .inset:after,.o_progress_passed .o_rating.o_rating_personal .o_rating_items .inset:after{color:#337ab7}.o_rating .o_rating_explanation{font-size:12px;color:#777}@media (max-width: 991px){.o_rating .o_rating_title,.o_rating .o_rating_explanation{display:none}}.o_comments .o_comment_wrapper .o_avatar{float:left;margin:0 1em 0 0}.o_comments .o_comment_wrapper .o_reply,.o_comments .o_comment_wrapper .o_delete{float:right}.o_comments .o_comment_wrapper .o_comment_wrapper{margin-left:16px}.o_ratings_and_comments .o_rating_wrapper{vertical-align:middle;display:inline-block}.o_ratings_and_comments a.o_comments{margin-left:10px;position:relative;top:0.1em}.o_ratings_and_comments div.o_notifications{float:right}.d3chart .bar{shape-rendering:crispEdges}.d3chart .bar_default_light{fill:#64a0d3}.d3chart .bar_default,.d3chart .bubble_default{fill:#337ab7}.d3chart .bar_default_dark{fill:#23527c}.d3chart .axis{font:12px sans-serif}.d3chart .axis path,.d3chart .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_forum_peekview .o_quote_wrapper,.o_forum_peekview .b_quote_wrapper{display:none}.o_forum_thread_sticky{font-weight:bold}.o_forum_switch{font-size:12px}.o_forum_toolbar{margin-bottom:6px;float:left}.o_forum_fulltextsearch{float:right}@media (max-width: 767px){.o_forum_fulltextsearch{float:left}.o_forum_toolbar .o_forum_tool span{display:none}}.o_forum{padding-bottom:50px}.o_forum .o_mark,.o_forum .o_ep_collect{float:right;position:relative;width:2em;margin-left:12px}.o_forum .o_portrait{float:left;margin-right:16px}.o_forum .o_portrait_avatar{width:70px;height:70px}.o_forum .o_newindicator{font-size:10px;color:#5cb85c;text-transform:uppercase;padding-left:1em;vertical-align:text-top;white-space:nowrap}.o_forum .o_author,.o_forum .o_date{display:inline-block;color:#777}.o_forum .o_date{font-size:12px}.o_forum .o_modified{color:#8a6d3b;font-size:12px;font-style:italic}.o_forum .o_forum_message{margin-bottom:20px;background-color:#fcfcfc;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_forum .o_forum_message_new{-webkit-box-shadow:0 1px 10px rgba(92,184,92,0.3);box-shadow:0 1px 10px rgba(92,184,92,0.3)}.o_forum .o_forum_message_highlight{-webkit-box-shadow:0 1px 10px rgba(240,173,78,0.5);box-shadow:0 1px 10px rgba(240,173,78,0.5)}.o_forum .o_forum_message_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:3px;border-top-left-radius:3px}.o_forum .o_forum_message_title{margin-top:0}.o_forum .o_forum_message_body{padding:10px 15px}.o_forum .o_forum_message_attachments{border-top:1px solid #ddd;padding:10px 15px;font-size:12px;background-color:#f7f7f9}.o_forum .o_attachment{position:relative;max-width:250px;vertical-align:top;margin:6px 12px 10px 0}.o_forum .o_attachment img{margin-top:6px}.o_forum .o_filename{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_forum .o_icon_enlarge{position:absolute;left:1em;bottom:1em;text-shadow:1px 1px 2px #fff, -1px 1px 2px #fff, 1px -1px 2px #fff, -1px -1px 2px #fff}@media (min-width: 768px) and (max-width: 991px){.o_forum .o_attachments{font-size:10px}.o_forum .o_attachment{max-width:200px}.o_forum .o_attachment img{max-width:150px}.o_forum .o_filename{max-width:200px}}@media (max-width: 767px){.o_forum .o_attachments{font-size:9px}.o_forum .o_attachment{max-width:150px}.o_forum .o_attachment img{max-width:100px}.o_forum .o_filename{max-width:150px}}.o_quote_wrapper,.b_quote_wrapper{position:relative;margin:10px 0}.o_quote_author,.b_quote_author{color:#777;font-size:12px}.o_quote_author:before,.b_quote_author:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„Ž";font-size:21px;padding-right:0.5em}blockquote.o_quote,blockquote.b_quote{color:#555;font-size:12px;margin-top:6px;padding:0 12px}a.o_chelp{display:inline-block;padding:1px 3px;text-align:center;vertical-align:middle;white-space:nowrap;font-size:10px;font-weight:normal;line-height:15px;color:#fff;background-color:#337ab7;border:1px solid #2e6da4;border-radius:2px;cursor:help;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}a.o_chelp:active,a.o_chelp:hover,a.o_chelp:focus{text-decoration:none;color:#fff;background-color:#2a6598;border-color:#204d74}a.o_chelp i{font-size:10px !important}.o_chelp_wrapper{position:relative;float:right;display:inline-block;line-height:normal;margin-bottom:10px;margin-left:10px}.o_form_chelp,.o_chelp_tooltip{color:#737373}.o_draw_circle{border:2px solid #337ab7;border-radius:50%;position:absolute !important;box-sizing:border-box}.o_draw_rectangle{border:2px solid #337ab7;position:absolute !important;box-sizing:border-box}.o_iframedisplay iframe{width:100%}.o_content_cloneable{position:relative}.o_singlepage .o_edit{position:absolute;top:0;right:25px}.o_content_popup{position:absolute;top:0;right:0}.o_module_cp_wrapper{position:relative}.o_module_cp_wrapper .o_tools{position:absolute;top:0;right:0;text-align:right;vertical-align:middle}.o_module_cp_wrapper .o_tools .o_search_wrapper{display:inline-block;position:relative;top:-2px}.o_module_cp_wrapper .o_tools .o_search_wrapper .form-group{margin-bottom:0}.o_module_cp_wrapper .o_tools .o_search_wrapper .form-control-static{padding-top:0;padding-bottom:0}ul.o_dropdown{margin:-5px -14px}ul.o_dropdown .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}ul.o_dropdown>li>a{display:block;padding:5px 14px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;background:#fcfcfc;white-space:nowrap}ul.o_dropdown>li>a:hover,ul.o_dropdown>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}ul.o_dropdown>li>i.o_icon_check{display:inline-block;padding-left:14px}ul.o_dropdown>li>i.o_icon_check+a{display:inline-block;padding-left:5px}.badge.o_scorm_completed{background-color:#3c763d}.badge.o_scorm_failed{background-color:#a94442}.badge.o_scorm_incomplete{background-color:#8a6d3b}.badge.o_scorm_not_attempted{background:none}.o_bc_meta h5,.o_bc_meta .o_author,.o_bc_meta .o_comment,.tooltip h5,.tooltip .o_author,.tooltip .o_comment{color:#fff;margin:5px 0}.o_bc_meta .o_thumbnail,.tooltip .o_thumbnail{width:200px;height:200px;display:inline-block;background-color:#fff;margin:0 -5px}.o_htmleditor .o_metadata{border:1px solid #999;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom:0;background:#eee;position:relative;top:1px;padding:5px}.o_htmleditor .o_metadata #o_filename{float:left}.o_htmleditor .o_metadata .o_lastmodified{float:right;color:#777;line-height:1.428571429}.o_htmleditor #o_save{margin-top:10px;text-align:center}.o_htmleditor #o_save input{margin-right:1em}.o_htmleditor #o_save input:last-child{margin-right:0}.o_notifications_news_wrapper .o_notifications_news_subscription{margin:10px 0}.o_notifications_news_wrapper .o_notifications_news_subscription h4 i,.o_notifications_news_wrapper .o_notifications_news_subscription .o_cal .fc-header-title h2 i,.o_cal .fc-header-title .o_notifications_news_wrapper .o_notifications_news_subscription h2 i{display:none}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_context{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content{margin-left:1.5em;position:relative}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_icon,.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_progress_failed .inset:after,.o_progress_failed .o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .inset:after,.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_progress_passed .inset:after,.o_progress_passed .o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .inset:after{position:absolute;left:-1.5em;line-height:1.5em;top:0}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_date{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_url{margin-left:1.5em}.o_noti{margin:6px 0 6px 12px;float:right;color:#777}.o_noti .o_label{color:#777;cursor:help}@media (max-width: 767px){.o_noti .o_label span{display:none}}.panel-body .o_noti{margin:0}.o_portrait{display:inline-block}.o_portrait img{border-radius:50%;border:none;background-color:#eee;background-position:50% 50%;background-repeat:no-repeat;background-size:cover}.o_portrait_name{margin-top:6px}.o_block_inline .o_portait,.o_block_inline .o_portrait_name,.o_block_inline .o_portrait_image,.o_block_inline_right .o_portait,.o_block_inline_right .o_portrait_name,.o_block_inline_right .o_portrait_image,.o_block_inline_left .o_portait,.o_block_inline_left .o_portrait_name,.o_block_inline_left .o_portrait_image,.o_block_inline_both .o_portait,.o_block_inline_both .o_portrait_name,.o_block_inline_both .o_portrait_image{display:inline-block}.o_portrait_avatar,.o_portrait_dummy,.o_portrait_dummy_female_big,.o_portrait_dummy_male_big,.o_portrait_anonymous{width:100px;height:100px}.o_portrait_dummy{background-image:url("../light/images/portrait/dummy.png") !important}.o_portrait_dummy_female_big{background-image:url("../light/images/portrait/dummy_female_big.png") !important}.o_portrait_dummy_male_big{background-image:url("../light/images/portrait/dummy_male_big.png") !important}.o_portrait_anonymous{background-image:url("../light/images/portrait/anonymous.png") !important}.o_portrait_avatar_small,.o_portrait_dummy_small,.o_portrait_dummy_female_small,.o_portrait_dummy_male_small,.o_portrait_anonymous_small{width:30px;height:30px}.o_portrait_dummy_small{background-image:url("../light/images/portrait/dummy_small.png") !important}.o_portrait_dummy_female_small{background-image:url("../light/images/portrait/dummy_female_small.png") !important}.o_portrait_dummy_male_small{background-image:url("../light/images/portrait/dummy_male_small.png") !important}.o_portrait_anonymous_small{background-image:url("../light/images/portrait/anonymous_small.png") !important}.o_datecomp{position:relative;width:40px;height:52px;border:1px solid #555;margin-right:12px;text-align:center;vertical-align:middle}.o_datecomp div.o_year{position:absolute;left:0;width:100%;top:-20px;height:20px;line-height:20px;font-size:10px}.o_datecomp div.o_month{height:20px;line-height:20px;font-size:12px;background-color:#337ab7;color:#fff}.o_datecomp div.o_day{height:30px;line-height:30px;font-size:18px;border-top:1px solid #555;background-color:#fff;color:#333}.o_block_with_datecomp .o_head{position:relative;padding-left:52px}.o_block_with_datecomp .o_datecomp{position:absolute;top:0.2em;left:0}.o_block_with_datecomp .o_title{margin-top:0}.o_block_with_datecomp .o_meta{color:#777}.o_block_with_datecomp .o_content{border-left:5px solid #eee;padding:0 20px}.o_block_with_datecomp .o_block_footer{padding-left:25px}ul.o_certificates li{padding:5px 0}ul.o_certificates li a.o_sel_certificate_delete{padding-left:2em}.o_cal_toptoolbar{margin-bottom:6px}.o_cal_toptoolbar .o_cal_toptoolbar_help{float:left;margin-right:12px}.o_cal_toptoolbar .o_noti{margin-top:0}.o_feed .o_date,.o_feed .o_author{color:#777}.o_feed .o_subscription a{margin-right:1.5em}.o_feed .o_subscription .form-group{margin-bottom:5px}.o_feed .o_subscription .form-control{border:0;background:none;padding:0;height:auto;-webkit-box-shadow:none;box-shadow:none}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper{float:left}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_title,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_explanation,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_legend{display:none}.o_feed .o_blog_posts .o_ratings_and_comments a.o_comments span{display:none}.o_feed .o_content:before,.o_feed .o_content:after{content:" ";display:table}.o_feed .o_content:after{clear:both}.o_feed .o_enclosure{clear:both}.o_glossary .o_register{text-align:center}.o_glossary .o_meta{font-size:90%;color:#777;font-style:italic}.o_glossary dl dt:first-letter{font-size:21px}.o_glossary dl dt small{color:#777}.o_tm_glossary{border-bottom:1px dotted #666699 !important}.o_tm_yellow{background-color:#FFFF66}.o_tm_blue{background-color:#33FFFF}.o_tm_red{background-color:#FF3333}.o_tm_green{background-color:#99FF00}.o_coaching div#o_main_toolbar.o_toolbar{margin-top:0px}.o_eff_statement_details .o_user_infos{margin-top:20px}div.o_assessment_user_type_filter{display:inline-block;padding:0.5em;border:1px solid #eee;border-radius:4px}div.o_assessment_user_type_filter div.form-inline,div.o_assessment_user_type_filter div.o_navbar-form{margin-left:5px;display:inline-block}div.panel.o_assessment_modes .o_table_body{margin-top:0}div.panel.o_assessment_modes .o_table_wrapper{margin-bottom:5px}div.o_assessment_mode_row{padding:0 15px}div.o_assessment_mode_row.o_assessment_today{padding:0 20px 0 12px;border-left:3px solid #3c763d;background-color:#dff0d8}div.o_assessment_mode_row.o_assessment_end_soon.o_assessment_today{padding:0 20px 0 12px;border-left:3px solid #a94442;background-color:#f2dede}.vitero_iframe{width:100%;height:100%;border:none;min-height:60em}.o_reminder_rule{padding:5px 0}.o_segments.btn-group a span{overflow:hidden;display:block;text-overflow:ellipsis}.o_segments_content{margin-top:20px}.o_segments.o_segments_linked .btn,.o_segments.o_segments_linked .btn:hover,.o_segments.o_segments_linked .btn:active,.o_segments.o_segments_linked .btn:focus{border:none;border-radius:0;box-shadow:none;background:none}.o_segments.o_segments_linked .btn-primary{color:#000;font-size:24px;background:none}.o_segments.o_segments_linked .btn-default,.o_segments.o_segments_linked .btn-default:hover,.o_segments.o_segments_linked .btn-default:active,.o_segments.o_segments_linked .btn-default:focus{color:#337ab7;background:none}.o_segments.o_segments_linked .o_segment_separator{color:#000}.o_tabbed_pane .o_tabbed_pane_content{padding:20px 0 6px 0}.o_togglebox_wrapper .o_opener{position:relative;left:-0.5em}.o_togglebox_wrapper div.o_togglebox_content{position:relative;margin:0}.o_togglebox_wrapper div.o_togglebox_content .o_hide{position:absolute;bottom:0.5em;right:1em}.o_toolboxes ul{margin:0 0 1.5em 0;padding:0 0 0 1.5em}.o_qrcode{width:256px;height:256px}#o_ajax_busy{position:absolute;left:50%;top:20em;margin-left:-2.5em;height:5em;width:5em;color:#fff;z-index:1201;display:none}#o_body.o_ajax_busy{cursor:busy}.o_exception .o_visual{position:relative;background-image:url("../light/images/lion-500x333.jpg");filter:grayscale(50%);-webkit-filter:grayscale(50%);-moz-filter:grayscale(50%);-ms-filter:grayscale(50%);-o-filter:grayscale(50%);width:500px;height:333px;background-repeat:no-repeat;background-position:50% 50%;background-size:contain;margin:0 0 10px 16px}@media (min-width: 768px) and (max-width: 991px){.o_exception .o_visual{width:375px;height:249px}}@media (min-width: 500px) and (max-width: 767px){.o_exception .o_visual{width:250px;height:166px}}@media (max-width: 500px){.o_exception .o_visual{background-size:cover}}.o_exception .jumbotron h1,.o_exception .o_repo_details .o_lead h1,.o_repo_details .o_exception .o_lead h1{color:#d9534f}ul.o_assessment_docs{margin-bottom:0}ul.o_assessment_docs>li{margin-bottom:0.33em}ul.o_assessment_docs>li:last-child{margin-bottom:0em}.o_mail_message .o_mail_meta{background:#fafafa;border:1px solid #eee;padding:5px 10px}.o_mail_message .o_mail_meta h3{margin-top:0}.o_mail_message .o_mail_date,.o_mail_message .o_mail_from,.o_mail_message .o_mail_recipients{color:#777;font-size:90%}.o_mail_message .o_mail_date .o_label,.o_mail_message .o_mail_from .o_label,.o_mail_message .o_mail_recipients .o_label{font-weight:bold;margin-right:1em}.o_mail_message .o_mail_date .o_group span,.o_mail_message .o_mail_from .o_group span,.o_mail_message .o_mail_recipients .o_group span{font-weight:bold}.o_mail_message .o_mail_date .o_group span:after,.o_mail_message .o_mail_from .o_group span:after,.o_mail_message .o_mail_recipients .o_group span:after{content:':';margin-right:0.5em}.o_mail_message .o_mail_date i,.o_mail_message .o_mail_from i,.o_mail_message .o_mail_recipients i{margin-left:1em}.o_mail_message .o_mail_date ul.list-inline,.o_mail_message .o_mail_from ul.list-inline,.o_mail_message .o_mail_recipients ul.list-inline{display:inline}.o_mail_message .o_mail_date ul.list-inline li,.o_mail_message .o_mail_from ul.list-inline li,.o_mail_message .o_mail_recipients ul.list-inline li{padding-right:0;padding-left:0}.o_mail_message .o_more{margin-left:1em}.o_mail_message .o_showAllLink{float:right;font-size:80%}.progress .o_progress_marker{position:absolute;height:100%;top:0;width:3px;background:red}.o_progress.o_progress_inline{display:inline-block;white-space:nowrap}.o_progress.o_progress_inline .progress{vertical-align:bottom}.o_progress .o_progress_label,.o_progress .o_progress_info{display:inline-block;vertical-align:top}.o_progress .o_progress_info{margin-left:0.5em}.o_progress .progress{position:relative;display:inline-block;text-shadow:1px 1px 2px #000000;font-size:12px;line-height:20px;color:#fff}.o_progress .progress .o_progress_label_wrapper{position:absolute;top:0;left:0;padding-left:0.4em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.o_progress .progress:not(.o_progress-sm)+.o_progress_label_wrapper{margin-left:0.5em}.o_progress .o_progress-lg{height:40px}.o_progress .o_progress-lg .o_progress_label_wrapper{padding-left:1em;line-height:40px}.o_progress .o_progress-sm{vertical-align:bottom;height:5px}.o_progress .o_progress-sm+span{position:absolute;top:0;left:15px;font-size:80%}.o_web_content{padding-bottom:15px}.o_labeled_light,a.o_labeled_light,.o_labeled,a.o_labeled{display:inline-block;text-transform:uppercase;text-align:center;text-decoration:none;vertical-align:middle;font-size:75%;line-height:1;white-space:nowrap;border:1px solid;border-radius:3px;padding:2px 5px;background-color:#777;color:#fff;position:relative}.o_labeled_light,a.o_labeled_light{font-weight:bold;background-color:#f8f8f8}.o_ms_button{max-width:100%;width:100%;display:flex}.o_ms_button span:not(.o_ms_carret){text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.o_ms_button .o_ms_carret{margin:auto 0 auto auto}.o_ms_list{width:100%;height:auto;max-height:300px;overflow-x:hidden;top:unset}.o_disclaimer .o_disclaimer_content{max-height:50vh;overflow:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;background:#fbfbfb;padding:10px;border:1px solid #c2c2c2}.o_files_size_okay{color:#61E868}.o_files_size_warning{color:#FFB100}.o_files_size_large{color:#E82A0C}.tt-input{width:400px}.tt-menu{width:400px;margin-top:6px;padding:0 0 0;color:#555;background-color:#fcfcfc;border:1px solid #66afe9;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;-webkit-box-shadow:0 0 8px rgba(102,175,233,0.6);box-shadow:0 0 8px rgba(102,175,233,0.6)}.tt-suggestion{padding:6px 12px;font-size:14px;line-height:1.428571429}.tt-suggestion.tt-cursor,.tt-suggestion:hover{color:#fff;background-color:#337ab7}.tt-suggestion p{margin:0}.tt-menu div.o_icon_error:before{content:''}.o_search_link_extended,.o_search_link_simple{margin-top:12px;display:inline-block}.o_search_results_stats{color:#777;padding-left:1.5em}.o_search_highlight{margin-left:12px;font-size:12px}.o_search_result_title h4,.o_search_result_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_search_result_title h2{display:inline-block;margin-right:12px;margin-bottom:6px}.o_search_result_title h4 .o_icon-fw,.o_search_result_title .o_cal .fc-header-title h2 .o_icon-fw,.o_cal .fc-header-title .o_search_result_title h2 .o_icon-fw{text-align:left}.o_search_result_highlight{font-weight:bold;background-color:transparent}.o_search_result_context{display:inline-block;color:#3c763d;margin-right:1em}.o_search_result_license{display:inline-block;color:#777}.o_search_result_excerpt{color:#555}.o_search_result .o_opener{font-size:12px}.o_search_result .o_opener i{width:1em}.o_search_result_details .o_togglebox_wrapper.o_block{margin-top:0;margin-bottom:0}.o_search_result_details .o_togglebox_wrapper .o_togglebox_content{color:#777;font-size:12px;background:#fff;padding:6px 12px}.o_search_result_details .o_togglebox_wrapper .o_search_result_license i{font-size:20px}@media (max-width: 767px){.o_search_result_details{display:none}}.wizard{border:1px solid #d4d4d4;border-radius:2px;background-color:#f9f9f9;position:relative;overflow:hidden;margin-bottom:15px}.wizard ul{list-style:none outside none;padding:0;margin:0;width:4000px}.wizard ul li{float:left;margin:0;padding:0 20px 0 30px;height:46px;line-height:46px;position:relative;background:#ededed;color:#333;font-size:16px;cursor:default}.wizard ul li .chevron{border:24px solid transparent;border-left:14px solid #d4d4d4;border-right:0;display:block;position:absolute;right:-14px;top:0;z-index:1}.wizard ul li .chevron:before{border:24px solid transparent;border-left:14px solid #ededed;border-right:0;content:"";display:block;position:absolute;right:1px;top:-24px}.wizard ul li.active{background:#f1f6fc;color:#333}.wizard ul li.active .chevron:before{border-left:14px solid #f1f6fc}.wizard ul li .badge{margin-right:8px}.wizard ul li:first-child{border-radius:4px 0 0 4px;padding-left:20px}.o_process{position:relative;padding-left:25px}.o_process .o_step{position:relative;height:auto;padding-top:10px;padding-left:30px;padding-bottom:10px}.o_process .o_bar{position:absolute;top:10px;left:8px;height:100%;border-left:4px solid #777}.o_process .o_bar:after{position:absolute;top:0;left:-10px;height:16px;width:16px;border:4px solid #777;border-radius:16px;background:#fff;content:" "}.o_process .o_title{margin-top:-1px;color:#777 !important}.o_process .o_title:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;left:-24px}.o_process .o_title a:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";width:1em}.o_process .o_title a.collapsed:before{content:""}.o_process .o_step.o_active .o_bar,.o_process .o_step.o_active .o_bar:after{border-color:#337ab7}.o_process .o_step.o_active .o_title{color:#337ab7 !important}.o_process .o_step.o_active .o_title:before{content:"";color:#337ab7}.o_process .o_step.o_done .o_bar,.o_process .o_step.o_done .o_bar:after{border-color:#5094ce}.o_process .o_step.o_done .o_title{color:#5094ce !important}.o_process .o_step.o_done .o_title:before{content:"";color:#5cb85c}.o_process .o_meta{color:#777;font-size:12px;margin-top:-0.5em}.o_cal_orange{background:#ffc266;border-color:#ff9900;color:#5D5D5D}.o_cal_orange .o_cal_wv_event_header{background:#ff9900}.o_cal_orange a{color:#5D5D5D !important}.o_cal_class.o_cal_orange{border-left:20px solid #ffc266}.o_cal_green{background:#66c266;border-color:#009900;color:#FFF}.o_cal_green .o_cal_wv_event_header{background:#009900}.o_cal_green a{color:#FFF !important}.o_cal_class.o_cal_green{border-left:20px solid #66c266}.o_cal_blue{background:#4d6e9f;border-color:#2e5894;color:#FFF}.o_cal_blue .o_cal_wv_event_header{background:#2e5894}.o_cal_blue a{color:#FFF !important}.o_cal_class.o_cal_blue{border-left:20px solid #4d6e9f}.o_cal_yellow{background:#ffe066;border-color:#ffcc00;color:#5D5D5D}.o_cal_yellow .o_cal_wv_event_header{background:#ffcc00}.o_cal_yellow a{color:#5D5D5D !important}.o_cal_class.o_cal_yellow{border-left:20px solid #ffe066}.o_cal_red{background:#c26666;border-color:#990000;color:#FFF}.o_cal_red .o_cal_wv_event_header{background:#990000}.o_cal_red a{color:#FFF !important}.o_cal_class.o_cal_red{border-left:20px solid #c26666}.o_cal_rebeccapurple{background:#663399;border-color:#663399;color:#FFF}.o_cal_rebeccapurple .o_cal_wv_event_header{background:#663399}.o_cal_rebeccapurple a{color:#FFF !important}.o_cal_class.o_cal_rebeccapurple{border-left:20px solid #639}.o_cal_fuchsia{background:#FF00FF;border-color:#dd00dd;color:#FFF}.o_cal_fuchsia .o_cal_wv_event_header{background:#FF00FF}.o_cal_fuchsia a{color:#FFF !important}.o_cal_class.o_cal_fuchsia{border-left:20px solid #f0f}.o_cal_olive{background:#808000;border-color:#636300;color:#FFF}.o_cal_olive .o_cal_wv_event_header{background:#808000}.o_cal_olive a{color:#FFF !important}.o_cal_class.o_cal_olive{border-left:20px solid olive}.o_cal_navy{background:#000080;border-color:#000057;color:#FFF}.o_cal_navy .o_cal_wv_event_header{background:#000080}.o_cal_navy a{color:#FFF !important}.o_cal_class.o_cal_navy{border-left:20px solid navy}.o_cal_maroon{background:#800000;border-color:#740000;color:#FFF}.o_cal_maroon .o_cal_wv_event_header{background:#800000}.o_cal_maroon a{color:#FFF !important}.o_cal_class.o_cal_maroon{border-left:20px solid maroon}.o_cal_lime{background:#00FF00;border-color:#00e200;color:#004d00}.o_cal_lime .o_cal_wv_event_header{background:#00FF00}.o_cal_lime a{color:#004d00 !important}.o_cal_class.o_cal_lime{border-left:20px solid lime}.o_cal_grey{background:#DDDAAA;border-color:#5D5D5D;color:#FFF}.o_cal_grey .o_cal_wv_event_header{background:#5D5D5D}.o_cal_grey a{color:#FFF !important}.o_cal_class.o_cal_grey{border-left:20px solid #DDDAAA}.o_sel_calendar_print_chooser{padding-right:4em}.o_cal_config_enabled,.o_cal_config_disabled{position:relative;float:left;display:inline}.o_cal_config_calendar{margin:0 5px;padding:1px 6px 1px 4px;position:relative;width:200px;overflow:hidden;float:left;display:inline}.o_cal_config_color{display:block;width:16px;height:16px;border-radius:8px}.o_cal_colorchooser_selected:before{content:""}#o_cal_colorchooser div{border:1px solid #337ab7;margin:5px;display:inline-block}#o_cal_colorchooser div:hover{border:1px solid #333}#o_cal_colorchooser a{width:20px;height:20px;display:inline-block}.o_cal_embedded_course_container .o_content_popup{top:0}.o_cal_wv_event_tooltip_content .o_cal_description{background-color:#f8f8f8;padding:10px 7px;margin:10px -7px}.o_cal_wv_event_tooltip_content .o_cal_tooltip_buttons{text-align:center;margin-top:20px}.o_cal_event_managed .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_not_managed .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_managed.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:" "}.o_cal_event_not_managed.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:" "}.fc-button{color:#333;background-color:#fcfcfc;border-color:#ccc}.fc-button:hover,.fc-button:focus,.fc-button.focus,.fc-button:active,.fc-button.active,.open>.fc-button.dropdown-toggle{color:#333;background-color:#e3e3e3;border-color:#adadad}.fc-button:active,.fc-button.active,.open>.fc-button.dropdown-toggle{background-image:none}.fc-button.disabled,.fc-button.disabled:hover,.fc-button.disabled:focus,.fc-button.disabled.focus,.fc-button.disabled:active,.fc-button.disabled.active,.fc-button[disabled],.fc-button[disabled]:hover,.fc-button[disabled]:focus,.fc-button[disabled].focus,.fc-button[disabled]:active,.fc-button[disabled].active,fieldset[disabled] .fc-button,fieldset[disabled] .fc-button:hover,fieldset[disabled] .fc-button:focus,fieldset[disabled] .fc-button.focus,fieldset[disabled] .fc-button:active,fieldset[disabled] .fc-button.active{background-color:#fcfcfc;border-color:#ccc}.fc-button .badge{color:#fcfcfc;background-color:#333}.fc-button.fc-state-default{text-shadow:none}.fc-button.fc-state-active{color:#fff;background-color:#337ab7;border-color:#2e6da4}.fc-button.fc-state-active:hover,.fc-button.fc-state-active:focus,.fc-button.fc-state-active.focus,.fc-button.fc-state-active:active,.fc-button.fc-state-active.active,.open>.fc-button.fc-state-active.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.fc-button.fc-state-active:active,.fc-button.fc-state-active.active,.open>.fc-button.fc-state-active.dropdown-toggle{background-image:none}.fc-button.fc-state-active.disabled,.fc-button.fc-state-active.disabled:hover,.fc-button.fc-state-active.disabled:focus,.fc-button.fc-state-active.disabled.focus,.fc-button.fc-state-active.disabled:active,.fc-button.fc-state-active.disabled.active,.fc-button.fc-state-active[disabled],.fc-button.fc-state-active[disabled]:hover,.fc-button.fc-state-active[disabled]:focus,.fc-button.fc-state-active[disabled].focus,.fc-button.fc-state-active[disabled]:active,.fc-button.fc-state-active[disabled].active,fieldset[disabled] .fc-button.fc-state-active,fieldset[disabled] .fc-button.fc-state-active:hover,fieldset[disabled] .fc-button.fc-state-active:focus,fieldset[disabled] .fc-button.fc-state-active.focus,fieldset[disabled] .fc-button.fc-state-active:active,fieldset[disabled] .fc-button.fc-state-active.active{background-color:#337ab7;border-color:#2e6da4}.fc-button.fc-state-active .badge{color:#337ab7;background-color:#fff}.fc-listYear-button:before,.fc-listMonth-button:before,.fc-listWeek-button:before,.fc-listDay-button:before{content:"";margin-right:5px;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:80%;webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}table.fc-list-table .fc-list-item{background-color:white;color:#5D5D5D !important}table.fc-list-table .fc-list-item a,table.fc-list-table .fc-list-item span{color:#5D5D5D !important}body.o_cal_print fieldset{border:none;margin-bottom:2em}body.o_cal_print legend{font-size:2em;font-weight:bold}body.o_cal_print legend span{display:block;font-size:14px;font-weight:normal}body.o_cal_print ul.o_cal_wv_list{list-style-type:none;padding:0}body.o_cal_print ul.o_cal_wv_list>li{page-break-inside:avoid;margin-bottom:2em}body.o_cal_print ul.o_cal_wv_list .o_cal_date{font-size:1.25em;font-weight:bold;padding:0.5em 0 0.5em 0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events{list-style-type:none;padding:0.5em 0 0 0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event{position:relative;left:30px;page-break-inside:avoid;clear:both;margin-bottom:1.5em;padding-right:30px}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_time{float:left;font-weight:bold;margin-right:1em}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_subject{font-weight:bold}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_subject p{margin:0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_location,body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_description,body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_freebusy{clear:both}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_freebusy{font-style:italic}body.o_cal_print .o_cal_class{position:absolute;left:-30px;width:20px}body.o_cal_print #o_cal_config legend{font-size:1.25em}body.o_cal_print #o_cal_config .o_cal_config_calendar{margin:0;padding:0}body.o_cal_print #o_cal_config .o_cal_config_calendar{position:relative;left:30px;float:none;padding-right:30px}.o_page_content_editor .o_toolbar{border:none}.o_page_content_editor .o_page_part,.gu-mirror{border:2px solid transparent}.o_page_content_editor .o_page_part:hover,.gu-mirror:hover{border:2px dotted #78acd9}.o_page_fragment_edit{position:relative;display:grid}.o_page_fragment_edit .o_page_tools_above{height:25px;width:100%;background:#78acd9;position:absolute;z-index:3;left:0;top:-25px;box-shadow:3px -8px 10px 0px rgba(0,0,0,0.2)}.o_page_fragment_edit .o_page_tools_above .o_page_add_above{position:absolute;left:0;right:0;margin-left:auto;margin-right:auto;width:26px;top:-19px;height:19px;background-color:#78acd9;border-radius:10px 10px 0 0}.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_icon,.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_progress_failed .inset:after,.o_progress_failed .o_page_fragment_edit .o_page_tools_above .o_page_add_above .inset:after,.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_progress_passed .inset:after,.o_progress_passed .o_page_fragment_edit .o_page_tools_above .o_page_add_above .inset:after{color:#fff;background-color:#78acd9}.o_page_fragment_edit .o_page_tools_above .o_sel_add_element_above{display:inline-block;padding:3px 5px 0 7px}.o_page_fragment_edit .o_page_tools_above .o_page_others_above{padding-right:25px;line-height:25px;vertical-align:middle}.o_page_fragment_edit .o_page_tools_above .o_page_others_above .o_page_type{display:none}.o_page_fragment_edit .o_page_tools_above .o_page_others_above a{float:right;color:#fff;padding-right:1em}.o_page_fragment_edit .o_page_tools_above .o_page_others_above a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_tools_dd{position:absolute;z-index:4;top:0;right:0;width:25px;height:100%;background:#78acd9}.o_page_fragment_edit .o_page_tools_dd:before{content:' ';width:25px;height:100%;position:absolute;left:0;top:0;border:3px #78acd9 solid;border-bottom:28px #78acd9 solid;background-image:-webkit-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:-moz-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:-ms-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);-webkit-background-size:3px 3px;-moz-background-size:3px 3px;background-size:3px 3px}.o_page_fragment_edit .o_page_tools_dd a{position:absolute;display:inline-block;width:25px;height:25px;line-height:25px;text-align:center;vertical-align:middle;background:#78acd9;color:#fff}.o_page_fragment_edit .o_page_tools_dd a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_tools_dd a.o_disabled{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_tools_dd a.o_disabled:hover{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_tools_dd a.o_sel_move_up_element{z-index:4;top:-25px}.o_page_fragment_edit .o_page_tools_dd a.o_sel_move_down_element{bottom:0}.o_page_fragment_edit .o_page_part.o_page_edit{padding-right:23px;border:2px solid #78acd9;box-shadow:5px 5px 10px 0px rgba(0,0,0,0.2)}.o_page_fragment_edit .o_page_part.o_page_edit:hover{border:2px solid #78acd9}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar{position:absolute;z-index:5;left:5px;top:-25px;display:inline-block;height:25px;line-height:25px;vertical-align:middle}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a{color:#fff}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a.o_disabled{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a.o_disabled:hover{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_title .o_page_edit_toolbar li{font-weight:bold}.o_page_fragment_edit .o_page_part.o_page_edit .o_richtext_mce textarea{border:0}.o_page_fragment_edit .o_page_add_below{position:absolute;z-index:3;position:absolute;z-index:3;left:0;right:0;margin-left:auto;margin-right:auto;width:26px;bottom:-20px;height:22px;background-color:#78acd9;border-radius:0 0 10px 10px}.o_page_fragment_edit .o_page_add_below .o_icon,.o_page_fragment_edit .o_page_add_below .o_progress_failed .inset:after,.o_progress_failed .o_page_fragment_edit .o_page_add_below .inset:after,.o_page_fragment_edit .o_page_add_below .o_progress_passed .inset:after,.o_progress_passed .o_page_fragment_edit .o_page_add_below .inset:after{color:#fff;background-color:#78acd9}.o_page_fragment_edit .o_page_add_below .o_sel_add_element_below{display:inline-block;padding:0 5px 5px 5px;margin:0px 0px 0px 2px}.o_page_fragment_edit.gu-mirror .o_page_add_below,.o_page_fragment_edit.gu-mirror .o_page_add_above,.o_page_fragment_edit.gu-transit .o_page_add_below,.o_page_fragment_edit.gu-transit .o_page_add_above{display:none}.o_page_container_slot.col-md-3 .o_page_others_above a span,.o_page_container_slot.col-md-4 .o_page_others_above a span{display:none}.o_page_container_slot.col-md-3 .o_page_edit_toolbar ul>li,.o_page_container_slot.col-md-4 .o_page_edit_toolbar ul>li{padding-right:0}div.o_page_content_editor .gu-mirror,.o_page_content_editor .gu-transit{box-shadow:none}.o_page_container{box-sizing:border-box;padding:10px}.o_page_container{background-color:transparent}.o_page_container .o_page_container{background-color:transparent}.o_page_container .o_page_container .o_page_container{background-color:transparent}.o_page_container_slot{box-sizing:border-box;margin:0 -1px -1px 0;padding:10px}.o_page_container .o_page_container_slot{border:2px dotted #eee}.o_page_container:hover .o_page_container_slot{border:2px dotted #ef00ef}.o_page_add_in_container_grp{margin-bottom:0}.gu-transit{border:2px dotted #e80c96;opacity:0.4;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";filter:alpha(opacity=40)}.gu-mirror{border:2px dotted #78acd9;opacity:0.8;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";filter:alpha(opacity=80)}.o_page_add_callout a span{display:none}.o_page_add_callout ul.list-inline{margin-bottom:0}.o_page_table_edition .o_table_title,.o_page_table_edition .o_table_caption{padding:5px}.o_page_with_side_options_wrapper{display:flex;align-items:stretch;flex-direction:row}.o_page_side_options_target{background-color:#f9f9f9;flex-grow:4}.o_page_side_options{flex-grow:0;background-color:#78acd9;border-left:1px solid #b9b9b9;border-bottom:1px solid #b9b9b9;padding:5px;z-index:2}@media (max-width: 767px){.o_page_with_side_options_wrapper{flex-direction:column-reverse}}.o_page_content .o_image,.o_page_content .o_video,.o_page_content_editor .o_image,.o_page_content_editor .o_video{width:100%}.o_page_content .o_image img,.o_page_content .o_video img,.o_page_content_editor .o_image img,.o_page_content_editor .o_video img{border:1px #f8f8f8 solid;border-radius:10px}.o_page_content .o_image .o_artefact_metadata,.o_page_content .o_video .o_artefact_metadata,.o_page_content_editor .o_image .o_artefact_metadata,.o_page_content_editor .o_video .o_artefact_metadata{text-align:left}.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left{float:left}.o_page_content .o_image.o_image_align_left+.o_image_clear,.o_page_content .o_video.o_image_align_left+.o_image_clear,.o_page_content_editor .o_image.o_image_align_left+.o_image_clear,.o_page_content_editor .o_video.o_image_align_left+.o_image_clear{clear:both}.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right{float:right}.o_page_content .o_image.o_image_align_right+.o_image_clear,.o_page_content .o_video.o_image_align_right+.o_image_clear,.o_page_content_editor .o_image.o_image_align_right+.o_image_clear,.o_page_content_editor .o_video.o_image_align_right+.o_image_clear{clear:both}.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle{clear:both;margin-left:50%;text-align:center;transform:translate(-50%, 0%)}.o_page_content .o_image.o_image_align_leftfloat,.o_page_content .o_video.o_image_align_leftfloat,.o_page_content_editor .o_image.o_image_align_leftfloat,.o_page_content_editor .o_video.o_image_align_leftfloat{float:left;padding-right:10px;padding-bottom:10px}.o_page_content .o_image.o_image_align_rightfloat,.o_page_content .o_video.o_image_align_rightfloat,.o_page_content_editor .o_image.o_image_align_rightfloat,.o_page_content_editor .o_video.o_image_align_rightfloat{float:right;padding-left:10px;padding-bottom:10px}.o_page_content .o_image.o_image_size_style_small,.o_page_content .o_video.o_image_size_style_small,.o_page_content_editor .o_image.o_image_size_style_small,.o_page_content_editor .o_video.o_image_size_style_small{width:25%}.o_page_content .o_image.o_image_size_style_small img,.o_page_content .o_video.o_image_size_style_small img,.o_page_content_editor .o_image.o_image_size_style_small img,.o_page_content_editor .o_video.o_image_size_style_small img{width:100%}.o_page_content .o_image.o_image_size_style_medium,.o_page_content .o_video.o_image_size_style_medium,.o_page_content_editor .o_image.o_image_size_style_medium,.o_page_content_editor .o_video.o_image_size_style_medium{width:40%}.o_page_content .o_image.o_image_size_style_medium img,.o_page_content .o_video.o_image_size_style_medium img,.o_page_content_editor .o_image.o_image_size_style_medium img,.o_page_content_editor .o_video.o_image_size_style_medium img{width:100%}.o_page_content .o_image.o_image_size_style_large,.o_page_content .o_video.o_image_size_style_large,.o_page_content_editor .o_image.o_image_size_style_large,.o_page_content_editor .o_video.o_image_size_style_large{width:60%}.o_page_content .o_image.o_image_size_style_large img,.o_page_content .o_video.o_image_size_style_large img,.o_page_content_editor .o_image.o_image_size_style_large img,.o_page_content_editor .o_video.o_image_size_style_large img{width:100%}.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill{width:100%;float:none !important;display:block}.o_page_content .o_image.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content .o_video.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content_editor .o_image.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content_editor .o_video.o_image_size_style_fill .o_figure_caption_bottom{display:block}.o_page_content .o_image.o_image_size_style_fill img,.o_page_content .o_video.o_image_size_style_fill img,.o_page_content_editor .o_image.o_image_size_style_fill img,.o_page_content_editor .o_video.o_image_size_style_fill img{width:100%;display:block}.o_page_content .o_image img.o_image_classic,.o_page_content .o_video img.o_image_classic,.o_page_content_editor .o_image img.o_image_classic,.o_page_content_editor .o_video img.o_image_classic{padding:0;border:0;border-radius:0}.o_page_content .o_image img.o_image_border,.o_page_content .o_video img.o_image_border,.o_page_content_editor .o_image img.o_image_border,.o_page_content_editor .o_video img.o_image_border{padding:3px;border:solid 1px #CCC}.o_page_content .o_image img.o_image_shadow,.o_page_content .o_video img.o_image_shadow,.o_page_content_editor .o_image img.o_image_shadow,.o_page_content_editor .o_video img.o_image_shadow{padding:0;border:0;-moz-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);-webkit-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19)}.o_page_content .o_image img.o_image_frame,.o_page_content .o_video img.o_image_frame,.o_page_content_editor .o_image img.o_image_frame,.o_page_content_editor .o_video img.o_image_frame{padding:0;border:0;border-radius:0;-moz-box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);-webkit-box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);margin:15px}.o_page_content .o_image img.o_image_polaroid,.o_page_content .o_video img.o_image_polaroid,.o_page_content_editor .o_image img.o_image_polaroid,.o_page_content_editor .o_video img.o_image_polaroid{padding:0;border-radius:0;border:1px solid #dcdcdc;background:#fff;padding:10px 10px 45px 10px;-webkit-box-shadow:3px 3px 3px rgba(0,0,0,0.2);-moz-box-shadow:3px 3px 3px rgba(0,0,0,0.2);box-shadow:3px 3px 3px rgba(0,0,0,0.2)}.o_page_content .o_image img.o_image_round,.o_page_content .o_video img.o_image_round,.o_page_content_editor .o_image img.o_image_round,.o_page_content_editor .o_video img.o_image_round{padding:3px;border:solid 1px #CCC;border-radius:50%}.o_page_content .o_image .o_image_title_dark,.o_page_content .o_video .o_image_title_dark,.o_page_content_editor .o_image .o_image_title_dark,.o_page_content_editor .o_video .o_image_title_dark{color:#000}.o_page_content .o_image .o_image_title_bright,.o_page_content .o_video .o_image_title_bright,.o_page_content_editor .o_image .o_image_title_bright,.o_page_content_editor .o_video .o_image_title_bright{color:#f9f9f9}.o_page_content .o_image .o_image_title,.o_page_content .o_video .o_image_title,.o_page_content_editor .o_image .o_image_title,.o_page_content_editor .o_video .o_image_title{position:relative}.o_page_content .o_image .o_image_title .o_image_title_top,.o_page_content .o_image .o_image_title .o_image_title_centered,.o_page_content .o_image .o_image_title .o_image_title_bottom,.o_page_content .o_video .o_image_title .o_image_title_top,.o_page_content .o_video .o_image_title .o_image_title_centered,.o_page_content .o_video .o_image_title .o_image_title_bottom,.o_page_content_editor .o_image .o_image_title .o_image_title_top,.o_page_content_editor .o_image .o_image_title .o_image_title_centered,.o_page_content_editor .o_image .o_image_title .o_image_title_bottom,.o_page_content_editor .o_video .o_image_title .o_image_title_top,.o_page_content_editor .o_video .o_image_title .o_image_title_centered,.o_page_content_editor .o_video .o_image_title .o_image_title_bottom{position:absolute;left:50%;margin-right:-50%;transform:translate(-50%, -50%)}.o_page_content .o_image .o_image_title .o_image_title_top,.o_page_content .o_video .o_image_title .o_image_title_top,.o_page_content_editor .o_image .o_image_title .o_image_title_top,.o_page_content_editor .o_video .o_image_title .o_image_title_top{top:10%}.o_page_content .o_image .o_image_title .o_image_title_centered,.o_page_content .o_video .o_image_title .o_image_title_centered,.o_page_content_editor .o_image .o_image_title .o_image_title_centered,.o_page_content_editor .o_video .o_image_title .o_image_title_centered{top:50%}.o_page_content .o_image .o_image_title .o_image_title_bottom,.o_page_content .o_video .o_image_title .o_image_title_bottom,.o_page_content_editor .o_image .o_image_title .o_image_title_bottom,.o_page_content_editor .o_video .o_image_title .o_image_title_bottom{bottom:10%}.o_page_content .o_image.o_image_size_style_none .o_image_title_top,.o_page_content .o_image.o_image_size_style_none .o_image_title_centered,.o_page_content .o_image.o_image_size_style_none .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_none .o_image_title_top,.o_page_content .o_video.o_image_size_style_none .o_image_title_centered,.o_page_content .o_video.o_image_size_style_none .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_bottom{font-size:24px}.o_page_content .o_image.o_image_size_style_small .o_image_title_top,.o_page_content .o_image.o_image_size_style_small .o_image_title_centered,.o_page_content .o_image.o_image_size_style_small .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_small .o_image_title_top,.o_page_content .o_video.o_image_size_style_small .o_image_title_centered,.o_page_content .o_video.o_image_size_style_small .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_bottom{font-size:18px}.o_page_content .o_image.o_image_size_style_medium .o_image_title_top,.o_page_content .o_image.o_image_size_style_medium .o_image_title_centered,.o_page_content .o_image.o_image_size_style_medium .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_medium .o_image_title_top,.o_page_content .o_video.o_image_size_style_medium .o_image_title_centered,.o_page_content .o_video.o_image_size_style_medium .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_bottom{font-size:32px}.o_page_content .o_image.o_image_size_style_large .o_image_title_top,.o_page_content .o_image.o_image_size_style_large .o_image_title_centered,.o_page_content .o_image.o_image_size_style_large .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_large .o_image_title_top,.o_page_content .o_video.o_image_size_style_large .o_image_title_centered,.o_page_content .o_video.o_image_size_style_large .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_bottom{font-size:40px}.o_page_content .o_image.o_image_size_style_fill .o_image_title_top,.o_page_content .o_image.o_image_size_style_fill .o_image_title_centered,.o_page_content .o_image.o_image_size_style_fill .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_fill .o_image_title_top,.o_page_content .o_video.o_image_size_style_fill .o_image_title_centered,.o_page_content .o_video.o_image_size_style_fill .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_bottom{font-size:56px}.o_page_add_contents{clear:both;margin-top:30px}.o_ce_html_raw.o_html_col2,.o_ce_html_paragraph.o_html_col2{column-count:2;column-gap:1em}.o_ce_html_raw.o_html_col3,.o_ce_html_paragraph.o_html_col3{column-count:3;column-gap:1em}.o_ce_html_raw.o_html_col4,.o_ce_html_paragraph.o_html_col4{column-count:4;column-gap:1em}table.o_ce_table caption{caption-side:bottom}.o_ce_add_main_btns{margin-top:2em}.o_ce_add{border:none;margin-bottom:0px}.o_ce_add .o_ce_tools{display:flex;flex-direction:row;flex-wrap:wrap;width:100%}.o_ce_add .o_ce_tools .o_ce_tool{padding:0px;margin:0px;width:33%}.o_ce_add .o_ce_tools .o_ce_tool a{padding:6px 3px;margin:0px;display:block;width:100%;height:100%}.o_ce_add .o_ce_tools .o_ce_tool a:hover{padding:5px 2px;border:1px solid #e7e7e7;border-radius:4px}.o_ce_add_list .o_ce_add_list_item{border-style:none;padding:0px;margin:0px -15px}.o_ce_add_list .o_ce_add_list_item a{padding:5px 25px;margin:0px;display:block;width:100%;height:100%}.o_ce_add_list .o_ce_add_list_item a:hover{text-decoration:none;background-color:#f5f5f5}.o_visual{position:absolute;top:0;left:0;overflow:hidden;height:120px;width:180px;vertical-align:middle}@media (min-width: 768px) and (max-width: 991px){.o_visual{height:80px;width:120px}}@media (max-width: 767px){.o_visual{height:50px;width:75px}}.o_visual img{width:100%;height:auto}.o_visual .o_visual_not_available{width:100%;height:100%;background-image:url("../light/images/no_preview.png");background-repeat:no-repeat;background-position:50% 50%;background-size:contain}.o_coursetable.o_rendertype_custom .o_table_row{position:relative;border:1px solid #ccc;border-radius:4px;background:#fcfcfc;margin-bottom:10px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual{box-sizing:content-box;border-top-left-radius:4px;border-bottom-left-radius:4px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual .o_visual_not_available{background-color:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_access{position:absolute;top:0;right:0;height:120px;width:180px;overflow:hidden;border-left:1px solid #ccc;padding-top:0.25em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_completion{text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{padding:0 1em;height:20px;line-height:20px;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{position:relative;left:2px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score .o_label{color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social{position:absolute;width:100%;bottom:32px;height:20px;padding-left:1em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_title,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating o_rating_legend,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_explanation{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings{padding:0 0 0 1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label{margin-bottom:0.8em;font-weight:bold}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{right:0;border-bottom-right-radius:4px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start{color:#fff;background-color:#337ab7;border-color:#2e6da4}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#337ab7;border-color:#2e6da4}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#337ab7;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{color:#fff;background-color:#f0ad4e;border-color:#eea236}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active{background-color:#f0ad4e;border-color:#eea236}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book .badge{color:#f0ad4e;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#5cb85c;border-color:#4cae4c}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#5cb85c;border-color:#4cae4c}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#5cb85c;background-color:#fff}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{height:80px;width:120px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_comments,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_label{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{width:60px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:60px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:120px;margin:0 180px 0 180px;position:relative;padding:1em 0.5em 0.25em 1em;background:#fcfcfc;border-left:1px solid #ccc;overflow:hidden}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{margin:0;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{display:block;color:#337ab7}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover{color:#286090}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author{margin-top:0.5em;line-height:normal;font-size:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d;background:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle{position:absolute;top:5px;right:40px;z-index:2px;background:#fcfcfc;padding:0 3px 3px 3px;border-radius:0px 0px 3px 3px;font-size:90%;line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active{color:#3c763d}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active:hover{color:#2b542c}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{margin-top:0.5em;background:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark{position:absolute;top:-1px;right:15px}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:80px;margin:0 120px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:50px;margin:0 0 0 75px;padding:0 0 0 1em}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{line-height:50px}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{border-right:37px solid transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_go_xs{position:absolute;top:0;right:0;padding:0 1em;height:50px;width:37px;line-height:50px;color:#fff;background-color:#337ab7;border-top-right-radius:4px;border-bottom-right-radius:4px}.o_coursetable.o_rendertype_classic .o_rating_explanation{display:none}.o_coursetable.o_rendertype_classic .o_start,.o_coursetable.o_rendertype_classic .o_book{white-space:nowrap}.o_coursetable.o_rendertype_classic .o_repoentry_type{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac ul{display:inline-block}.o_catalog .o_level{position:relative;margin-bottom:10px;padding:0;border-top:1px solid #ccc;border-bottom:1px solid #ccc}.o_catalog .o_level .o_visual{height:180px}.o_catalog .o_level .o_meta{position:relative;min-height:180px;height:180px;overflow:hidden;margin:0 0 0 180px;padding:1em 0.5em 0.5em 2em}.o_catalog .o_level .o_meta .o_title{margin:0}.o_catalog .o_level .o_meta .o_title a{display:block;color:#337ab7}.o_catalog .o_level .o_meta .o_title a:hover{color:#286090}.o_catalog .o_level .o_meta .o_desc{padding:1em 0 0.5em 0}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_level .o_visual{height:120px}.o_catalog .o_level .o_meta{min-height:120px;height:120px;margin:0 0 0 120px}}@media (max-width: 767px){.o_catalog .o_level .o_visual{height:75px}.o_catalog .o_level .o_meta{min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em}.o_catalog .o_level .o_meta .o_title{line-height:75px}.o_catalog .o_level .o_meta .o_desc{display:none}}.o_catalog .o_sublevels_list .o_sublevel{position:relative;border:1px solid #ccc;margin-bottom:10px}.o_catalog .o_sublevels_list .o_sublevel .o_visual{height:75px;width:75px}.o_catalog .o_sublevels_list .o_sublevel .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_catalog .o_sublevels_list .o_sublevel .o_title{margin:0}.o_catalog .o_sublevels_list .o_sublevel .o_meta{border-left:1px solid #ccc;min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em;overflow:hidden}.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_title{line-height:75px}.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_desc{display:none}.o_catalog .o_sublevels_list .o_sublevel .o_meta h4.o_title>a,.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_cal .fc-header-title h2.o_title>a,.o_cal .fc-header-title .o_catalog .o_sublevels_list .o_sublevel .o_meta h2.o_title>a{font-family:inherit;font-weight:inherit}.o_catalog .o_sublevels_list .o_sublevel .o_meta h4.o_title>a>i,.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_cal .fc-header-title h2.o_title>a>i,.o_cal .fc-header-title .o_catalog .o_sublevels_list .o_sublevel .o_meta h2.o_title>a>i{display:none}.o_catalog .o_sublevels_list .o_sublevel.o_fill_sublevels{border:1px solid transparent}.o_catalog .o_sublevels_list .o_sublevel.o_fill_sublevels .o_meta{border-left:1px solid transparent}.o_catalog .o_sublevels{position:relative;margin-bottom:20px}.o_catalog .o_sublevels:before,.o_catalog .o_sublevels:after{content:" ";display:table}.o_catalog .o_sublevels:after{clear:both}.o_catalog .o_sublevels .o_sublevel{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_catalog .o_sublevels .o_sublevel:last-child{margin-right:0}.o_catalog .o_sublevels .o_sublevel .o_visual{border:1px solid #ccc;position:relative;height:180px}.o_catalog .o_sublevels .o_sublevel .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_catalog .o_sublevels .o_sublevel .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #ccc;border-top:0;background-color:rgba(255,255,255,0.8)}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a{display:block;color:#337ab7;font-family:inherit;font-weight:inherit}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover{color:#286090}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a>i{display:none}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 10px 10px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (max-width: 767px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 1px 1px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px;width:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (min-width: 768px){.o_catalog .o_sublevels_list,.o_catalog .o_sublevels_compact{-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2;columns:2}}.o_repo_details{position:relative}.o_repo_details .o_lead{margin-bottom:10px}.o_repo_details .o_lead .o_author{margin-top:0.5em;margin-bottom:1em;font-size:120%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d}.o_repo_details .o_lead .o_media{float:right;margin-left:2em;margin-bottom:2em}.o_repo_details .o_lead .o_media.o_desc_empty{float:none;margin-left:0;margin-bottom:0}.o_repo_details .o_lead h1{font-size:37px}.o_repo_details .o_lead h1 i{display:none}.o_repo_details .o_overview i{margin-right:0.5em}.o_repo_details .o_overview div{margin-bottom:0.25em}.o_repo_details .o_start_wrapper{clear:both;margin:2em 0 -10px 0;text-align:right}.o_repo_details .o_start_wrapper .o_start_inner{display:inline-block}.o_repo_details .o_start,.o_repo_details .o_book{max-width:400px;display:inline-block}.o_repo_details .o_social:before,.o_repo_details .o_social:after{content:" ";display:table}.o_repo_details .o_social:after{clear:both}.o_repo_details .o_social .o_rating_wrapper{float:left}.o_repo_details .o_social .o_comments{margin-left:1em}@media (max-width: 767px){.o_repo_details .o_lead p{font-size:16px}.o_repo_details .o_lead .o_media{margin-left:0;float:none;text-align:center}.o_repo_details .o_start_wrapper{text-align:center}.o_repo_details .o_start_wrapper .o_start_inner{display:block}.o_repo_details .o_start,.o_repo_details .o_book{max-width:100%;display:block}}@media (max-width: 613px){.o_repo_details .o_subcolumn{width:100%}}.o_meta .o_closed{padding:2px 5px;margin:5px 0}.o_overview .o_closed{padding:12px 15px;margin:15px 0}.o_ac_configuration span.o_ac_infos{font-weight:normal;color:grey}.o_ac_configuration div.o_ac_method{background-color:#efefef;padding:5px;border-radius:3px}.o_ac_configuration div.o_ac_methods.form-group{padding-bottom:0;margin-bottom:0}.o_repo_with_explanation{padding-bottom:0;margin-bottom:0}.o_repo_explanation{color:#f0ad4e}tr.o_entry_closed,tr.o_entry_closed td,tr.o_entry_closed td span,tr.o_entry_unpublished,tr.o_entry_unpublished td,tr.o_entry_unpublished td span{text-decoration:line-through}a.o_repo_tools_status{cursor:pointer;margin:0 2px 2px 2px;text-align:left}.o_labeled.o_repo_status_preparation,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_preparation{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_labeled.o_repo_status_review,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_review{background-color:#FCCA46;border-color:#FCCA46;color:#fff}.o_labeled.o_repo_status_coachpublished,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_coachpublished{background-color:#1DC63F;border-color:#1DC63F;color:#fff}.o_labeled.o_repo_status_published,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_published{background-color:#14892c;border-color:#14892c;color:#fff}.o_labeled.o_repo_status_closed,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_closed{background-color:#99583D;border-color:#99583D;color:#fff}.o_labeled.o_repo_status_trash,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_trash{background-color:#5A5958;border-color:#5A5958;color:#fff}.o_labeled.o_repo_status_deleted,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_deleted{background-color:#888;border-color:#888;color:#fff}.o_labeled.o_repo_role,.o_toolbar .o_tools_container a.o_labeled.o_repo_role{background-color:#777;border-color:#777;color:#fff}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_preparation{background-color:#384e64}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_review{background-color:#fbbc14}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_coachpublished{background-color:#169a31}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_published{background-color:#0e5c1e}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_closed{background-color:#75432e}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_trash{background-color:#40403f}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_deleted{background-color:#6f6f6f}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_role{background-color:#919191;border-color:#919191}.o_labeled_light.o_repo_status_preparation,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_preparation{border-color:#4a6785;color:#4a6785}.o_labeled_light.o_repo_status_review,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_review{border-color:#FCCA46;color:#FCCA46}.o_labeled_light.o_repo_status_coachpublished,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_coachpublished{border-color:#1DC63F;color:#1DC63F}.o_labeled_light.o_repo_status_published,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_published{border-color:#14892c;color:#14892c}.o_labeled_light.o_repo_status_closed,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_closed{border-color:#99583D;color:#99583D}.o_labeled_light.o_repo_status_trash,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_trash{border-color:#5A5958;color:#5A5958}.o_labeled_light.o_repo_status_deleted,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_deleted{border-color:#888;color:#888}.badge.o_midpub{background-color:#3c763d}.badge.o_midwarn{background-color:#8a6d3b}.badge.o_midlock{background-color:#31708f}.badge.o_miderr{background-color:#a94442}.badge.o_middel{background-color:#777}.o_course_editor_legend .badge{font-size:80%}.o_course_editor_legend .badge:before{content:none}.o_course_edit_overview_table tr.o_deleted,.o_course_edit_overview_table tr.o_deleted td,.o_course_edit_overview_table tr.o_deleted td span,.o_course_edit_overview_table tr.o_deleted td a{color:#aaa}.o_lp_tree.o_tree{border:1px solid #e7e7e7}.o_lp_tree.o_tree ul li div{border-bottom:none}.o_lp_tree.o_tree .o_tree_link:last-child:hover,.o_lp_tree.o_tree .o_tree_link:last-child:focus{background-color:transparent}.o_lp_tree.o_tree li div a.o_tree_oc_l0{left:8px}.o_lp_tree.o_tree li div span.o_tree_l0{padding:10px 2px 10px 2px;margin-left:22px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l1{left:23px}.o_lp_tree.o_tree li div span.o_tree_l1{padding:10px 2px 10px 2px;margin-left:37px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l2{left:38px}.o_lp_tree.o_tree li div span.o_tree_l2{padding:10px 2px 10px 2px;margin-left:52px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l3{left:53px}.o_lp_tree.o_tree li div span.o_tree_l3{padding:10px 2px 10px 2px;margin-left:67px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l4{left:68px}.o_lp_tree.o_tree li div span.o_tree_l4{padding:10px 2px 10px 2px;margin-left:82px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l5{left:83px}.o_lp_tree.o_tree li div span.o_tree_l5{padding:10px 2px 10px 2px;margin-left:97px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l6{left:98px}.o_lp_tree.o_tree li div span.o_tree_l6{padding:10px 2px 10px 2px;margin-left:112px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l7{left:113px}.o_lp_tree.o_tree li div span.o_tree_l7{padding:10px 2px 10px 2px;margin-left:127px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l8{left:128px}.o_lp_tree.o_tree li div span.o_tree_l8{padding:10px 2px 10px 2px;margin-left:142px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l9{left:143px}.o_lp_tree.o_tree li div span.o_tree_l9{padding:10px 2px 10px 2px;margin-left:157px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l10{left:158px}.o_lp_tree.o_tree li div span.o_tree_l10{padding:10px 2px 10px 2px;margin-left:172px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l11{left:173px}.o_lp_tree.o_tree li div span.o_tree_l11{padding:10px 2px 10px 2px;margin-left:187px;z-index:9}.o_lp_tree.o_tree .o_tree_link>a>i.o_icon,.o_lp_tree.o_tree .o_progress_failed .o_tree_link>a>i.inset:after,.o_progress_failed .o_lp_tree.o_tree .o_tree_link>a>i.inset:after,.o_lp_tree.o_tree .o_progress_passed .o_tree_link>a>i.inset:after,.o_progress_passed .o_lp_tree.o_tree .o_tree_link>a>i.inset:after{display:none}.o_lp_tree.o_tree li.children_visible{background:rgba(0,0,0,0.025)}.o_lp_tree.o_tree li{position:relative}.o_lp_tree.o_tree li:before{content:' ';position:absolute;top:25px;left:8px;height:29px;width:2px}.o_lp_tree.o_tree li:after{position:absolute;top:13px;left:3px;height:12px;width:12px;display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_lp_tree.o_tree li:before{border-left:2px solid #888}.o_lp_tree.o_tree li:after{content:"ï„Œ";color:#888}.o_lp_tree.o_tree li.o_lp_not_accessible:before{border-left:2px dotted #919191}.o_lp_tree.o_tree li.o_lp_not_accessible:after{content:"ïž";color:#919191}.o_lp_tree.o_tree li.o_lp_ready:before{border-left:2px dotted #919191}.o_lp_tree.o_tree li.o_lp_ready:after{content:"ï„Œ";color:#FCCA46}.o_lp_tree.o_tree li.o_lp_in_progress:before{border-left:2px solid #FCCA46}.o_lp_tree.o_tree li.o_lp_in_progress:after{content:"ï€";color:#FCCA46}.o_lp_tree.o_tree li.o_lp_done:before{border-left:2px solid #3c763d}.o_lp_tree.o_tree li.o_lp_done:after{content:"ï˜";color:#3c763d}.o_lp_tree.o_tree li.o_last_node:before{border:none}.o_lp_tree.o_tree li.o_lp_not_in_sequence:not(:last-child):not(.o_last_node):before,.o_lp_tree.o_tree li.o_lp_contains_no_sequence.children_visible:not(.o_last_node):before,.o_lp_tree.o_tree li.o_lp_contains_no_sequence.children_visible:not(.o_last_node) li.o_lp_not_in_sequence:before{border-left:2px solid #888}.o_lp_list i.o_status.o_lp_not_accessible::before{color:#919191;content:"ïž"}.o_lp_list i.o_status.o_lp_ready::before{color:#919191;content:"ï„Œ"}.o_lp_list i.o_status.o_lp_in_progress::before{color:#FCCA46;content:"ï€"}.o_lp_list i.o_status.o_lp_done::before{color:#3c763d;content:"ï˜"}.o_lp_identity .o_user_infos{margin-top:20px}.o_course_progress{position:absolute;left:0;width:100%}.o_course_progress .progress{height:3px;line-height:3px;-webkit-box-shadow:none;box-shadow:none;border-top-left-radius:0;border-top-right-radius:0}.o_course_progress{top:-37px}@media (max-width: 991px){.o_course_progress{top:-37px}}@media (max-width: 767px){.o_course_progress{top:-37px}}.o_with_toolbar .o_course_progress{top:23px}@media (max-width: 991px){.o_with_toolbar .o_course_progress{top:17px}}@media (max-width: 767px){.o_with_toolbar .o_course_progress{top:5px}}.o_with_breadcrumb .o_course_progress{top:-2px}@media (max-width: 991px){.o_with_breadcrumb .o_course_progress{top:-2px}}@media (max-width: 767px){.o_with_breadcrumb .o_course_progress{top:-2px}}.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:49px}@media (max-width: 991px){.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:44px}}@media (max-width: 767px){.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:32px}}.gugs>.o_course_progress{top:10px}.o_passed{color:#3c763d;font-weight:bold}.o_passed a:hover{color:#2b542c}.o_passed th{color:#333}.o_failed{color:#a94442;font-weight:bold}.o_failed a:hover{color:#66512c}.o_failed th{color:#333}.o_unknown{color:#8a6d3b;font-weight:bold}.o_unknown a:hover{color:#66512c}.o_unknown th{color:#333}.o_noinfo{color:#777}.o_course_run .o_toc .o_entry .o_shorttitle{border-bottom:1px solid #777}.o_course_run .o_toc .o_entry .o_displaytitle{margin-top:5px;color:#777}.o_course_run .o_toc .o_entry .o_objectives{margin-top:10px;font-style:italic}.o_course_run .o_in_review{font-style:italic;position:relative}.o_course_run.o_titled_wrapper>h2 i{display:none}.o_course_run .o_cal_toptoolbar{margin-right:26px}.o_course_run .o_titled_wrapper .o_cal_toptoolbar{margin-right:0px}.o_tree.o_course_menu div.o_tree_l0>a:first-child{background-color:none}.o_st_peekview ul li{margin-bottom:0.5em}.o_cl_line{margin-bottom:10px;padding-bottom:5px}.o_cl_line.o_even{background-color:#f9f9f9}.o_ll_container h5{margin-bottom:5px}.o_ll_container h5 a.o_desc{color:#337ab7}.o_ll_container h5 a.o_desc small{display:none}.o_ll_container h5 a.o_desc:hover{color:#286090;text-decoration:none}.o_ll_container h5 a.o_desc:hover small{color:#5e5e5e;display:inline}.o_ll_container div.o_comment{color:#777}.o_course_pagination{margin-bottom:10px;display:flex;justify-content:flex-end}.o_course_pagination :not(:first-child){margin-left:5px}.o_course_pagination .o_previous a,.o_course_pagination .o_next a{width:60px}.o_cmembers .o_cmember{margin:12px 0;display:table}.o_cmembers .o_cmember .o_portrait{padding-right:10px;display:table-cell;vertical-align:top;min-width:60px}.o_cmembers .o_cmember .o_portrait img{width:50px;height:50px}.o_cmembers .o_cmember .o_cmember_info_wrapper{display:table-cell;vertical-align:middle;color:#777}.o_cmembers .o_cmember .o_cmember_info_wrapper .o_mail{margin-left:6px}.o_cmembers .o_cmember .o_curriculum_displayname,.o_cmembers .o_cmember .o_curriculum_root_el_identifier,.o_cmembers .o_cmember .o_curriculum_root_el_displayname{font-size:12px}.o_cmembers .o_cmember a.o_mail{display:none}.o_cmembers .o_cmember:hover a.o_mail{display:inline}.o_cmembers_print{color:#000}.o_cmembers_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_cmembers_print #o_print_brand img{width:100%}.o_cmembers_print .o_portrait{width:100px;height:100px;position:relative}.o_cmembers_print .o_portrait img{border-radius:0px;max-width:100%;max-height:100%;width:auto;height:auto;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto}.o_cmembers_print .o_cmember{padding-left:0px;padding-right:15px;margin-bottom:20px}.o_cmembers_print .o_cmember .o_cmember_info_wrapper{word-wrap:break-word}.o_cmembers_print .o_cmember .o_prop.o_zipCode{float:left;padding-right:0.5em}.o_cmembers_print h1{font-size:18pt;color:#000}.o_cmembers_print h3{font-size:14pt;margin-top:5px;font-weight:normal;color:#000}.o_cmembers_print h4,.o_cmembers_print .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_cmembers_print h2{font-size:11pt;font-weight:strong;color:#000;padding-bottom:10px;border-bottom:1px solid #eee}.o_cmembers_print .o_cmember_info_wrapper{font-size:7pt;color:#000}.o_cmembers_print .o_cmember_info_wrapper strong{font-size:8pt}.tag.label.label-info{margin-right:3px}.input-group.o_tag_inputgroup .form-control{height:auto}div.o_correction_navigation .o_correction_navigation_back{float:left;line-height:32px}div.o_correction_navigation .o_correction_navigation_previous{position:absolute;right:50%;margin-right:102px}div.o_correction_navigation #o_cocurrent_item_SELBOX{width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:absolute;left:50%;margin-left:-100px}div.o_correction_navigation .o_correction_navigation_next{position:absolute;left:50%;margin-left:102px}@media (max-width: 767px){div.o_correction_navigation .o_correction_navigation_previous span,div.o_correction_navigation .o_correction_navigation_next span{display:none}}.o_ms_stack_panel .o_toolbar{margin-top:0px}.o_ms_bold{font-weight:bold}.o_ms_legend{padding:5px}.o_ms_legend li{display:block;font-size:90%}.o_ms_legend .ident{font-weight:bold}.o_browser_ie10 .o_paella_wrapper iframe,.o_browser_ie11 .o_paella_wrapper iframe{display:none}.o_browser_ie10 .o_paella_wrapper .o_paella_error,.o_browser_ie11 .o_paella_wrapper .o_paella_error{display:block}.o_paella_wrapper iframe{width:100%;height:400px}@media (max-width: 768px){.o_paella_wrapper iframe{height:300px}}.o_paella_wrapper .o_paella_error{display:none}.o_curriculum_el_listing tr.o_curriculum_element_inactive,.o_curriculum_el_listing tr.o_curriculum_element_inactive td,.o_curriculum_el_listing tr.o_curriculum_element_inactive td span,.o_curriculum_el_listing tr.o_curriculum_element_inactive td a{color:#777}.o_curriculum_el_listing tr.o_curriculum_element_unfiltered,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td span,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td a{color:#aaa}.o_curriculum_el_listing tr.o_curriculum_element_deleted,.o_curriculum_el_listing tr.o_curriculum_element_deleted td,.o_curriculum_el_listing tr.o_curriculum_element_deleted td span,.o_curriculum_el_listing tr.o_curriculum_element_deleted td a{color:#777;text-decoration:line-through}.o_curriculumtable tr.o_curriculum_element_l0 td:nth-thild(first){padding-left:0px}.o_curriculumtable tr.o_curriculum_element_l1 td:nth-thild(first){padding-left:15px}.o_curriculumtable tr.o_curriculum_element_l2 td:nth-thild(first){padding-left:30px}.o_curriculumtable tr.o_curriculum_element_l3 td:nth-thild(first){padding-left:45px}.o_curriculumtable tr.o_curriculum_element_l4 td:nth-thild(first){padding-left:60px}.o_curriculumtable tr.o_curriculum_element_l5 td:nth-thild(first){padding-left:75px}.o_curriculumtable tr.o_curriculum_element_l6 td:nth-thild(first){padding-left:90px}.o_curriculumtable tr.o_curriculum_element_l7 td:nth-thild(first){padding-left:105px}.o_curriculumtable tr.o_curriculum_element_l8 td:nth-thild(first){padding-left:120px}.o_curriculumtable tr.o_curriculum_element_l9 td:nth-thild(first){padding-left:135px}.o_curriculumtable tr.o_curriculum_element_l10 td:nth-thild(first){padding-left:150px}.o_curriculumtable tr.o_curriculum_element_l11 td:nth-thild(first){padding-left:165px}.o_curriculumtable tr.o_curriculum_element_inactive,.o_curriculumtable tr.o_curriculum_element_inactive td,.o_curriculumtable tr.o_curriculum_element_inactive td span{color:#777}.o_curriculumtable tr.o_curriculum_element_deleted,.o_curriculumtable tr.o_curriculum_element_deleted td,.o_curriculumtable tr.o_curriculum_element_deleted td span{color:#777;text-decoration:line-through}.o_curriculumtable.o_rendertype_custom .container-fluid{padding-left:0;padding-right:0}.o_curriculumtable.o_rendertype_custom .o_table_row{position:relative;vertical-align:top;margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row:before,.o_curriculumtable.o_rendertype_custom .o_table_row:after{content:" ";display:table}.o_curriculumtable.o_rendertype_custom .o_table_row:after{clear:both}.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{background:none;border:none;position:relative}.o_curriculumtable.o_rendertype_custom .o_table_row .o_ext_id{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_hierarchy_info{display:none;position:absolute;top:0;right:30px;font-size:70%;z-index:5;background:gold}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_title{margin-top:0;margin-bottom:0;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_title small{white-space:nowrap}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars{padding-left:6px;color:#777}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle.o_active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars.o_active{color:#3c763d}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle.o_active:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars.o_active:hover{color:#2b542c}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_desc{padding:6px 6px 16px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_empty{font-style:italic;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{position:relative;padding-left:132px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:50px;padding-left:87px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_visual{left:0;border:none;background-color:#fff;max-height:80px;max-width:120px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_author,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_location,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_lifecycle{color:#3c763d}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state{position:absolute;right:0;bottom:30px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_failed{font-weight:normal}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_state,.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_score{display:inline-block}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_state+.o_score:before{content:', '}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion{display:inline-block;min-width:89px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion .progress{height:14px;margin-bottom:-2px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion .progress-bar{font-size:10px;line-height:unset}.o_curriculumtable.o_rendertype_custom .o_table_row .o_bookmark{position:absolute;top:-1px;right:2px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access{position:absolute;bottom:0;right:0;overflow:hidden;width:180px;height:30px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start{right:0;color:#fff;background-color:#337ab7;border-color:#2e6da4}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#337ab7;border-color:#2e6da4}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#337ab7;background-color:#fff}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#5cb85c;border-color:#4cae4c}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#5cb85c;border-color:#4cae4c}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#5cb85c;background-color:#fff}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_author,.o_curriculumtable.o_rendertype_custom .o_table_row .o_bookmark,.o_curriculumtable.o_rendertype_custom .o_table_row .o_lifecycle,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_desc,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_desc,.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state,.o_curriculumtable.o_rendertype_custom .o_table_row .o_details{display:none}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_row_inner_wrapper{background:#f6f6f6;border:1px solid #eee}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_element_title{background:transparent;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_element_title{background:#ebebeb;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry{display:inline-block;width:50%;border-right:12px solid transparent;margin-top:0 !important}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry_title{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_row_inner_wrapper{background:#f6f6f6;border:1px solid #eee}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_element_title{background:transparent;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_element_title{background:#ebebeb;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_calendars{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{background:#f6f6f6;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{background:none;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_entry{min-height:50px}}@media print{.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state{position:relative;bottom:0}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access{display:none}}table.table.o_qti_item_kprim>thead>tr>th,table.table.o_qti_item_kprim>tbody>tr>td{border:none}td.o_qti_item_kprim_input,th.o_qti_item_kprim_input{text-align:center}td.o_qti_item_kprim_input .radio,th.o_qti_item_kprim_input .radio{display:inline}td.o_qti_item_kprim_text{width:80%}div.o_qti_menu_section,div.o_qti_menu_section_clickable,div.o_qti_menu_section_active{margin-top:10px}div.o_qti_menu_item a,div.o_qti_menu_section a{text-decoration:none}div.o_qti_menu_item{padding:.1em}div.o_qti_menu_item_active{padding:.1em;font-weight:bold}div.o_qti_item_itemfeedback{background-color:#ffffff;border-color:#000000}div.o_qti_item_choice_option_flow{display:inline-block;padding:.5em;border:1px solid transparent}.d3chart .bar_green{fill:#5cb85c}.d3chart .bar_red{fill:#d9534f}.d3chart .bar_grey{fill:lightgrey}.d3chart circle.bubble_green{fill:#5cb85c}div.o_qti_statistics ul{list-style-type:none;padding:0;margin:0;font-size:90%}div.o_qti_statistics ul strong{font-weight:normal}div.o_qti_statistics ul li{padding-left:48px;margin-left:0;margin-bottom:10px}div.o_qti_statistics ul li.o_qti_statistics-ncorrect:before{font-size:125%;content:'\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-correct:before{font-size:125%;content:'\2713\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kplus:before{font-size:125%;content:'\2713\00A0\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kminus:before{font-size:125%;content:'\2A2F\00A0\2713\00A0\00A0'}div.o_qti_statistics ul li img{vertical-align:top}div.o_qti_statistics table.o_qti_statistics_figures tr{float:left}div.o_qti_statistics table.o_qti_statistics_figures tr:nth-child(2n+1){clear:left;padding-right:20px}div.o_qti_statistics table.o_qti_statistics_figures td{width:200px;padding-left:0;vertical-align:bottom}div.o_qti_statistics table.o_qti_statistics_figures td+td{width:100px}div.o_qti_statistics .o_qti_statistics_answer{background:#F5F5F5;padding:1px 2px;width:90%}div.o_qti_statistics div.o_qti_statistics_legend{padding-top:10px;width:470px;border:1px solid #ddd;border-radius:4px}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_green{background-color:#9dd53a}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_red{background-color:#f85032}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_grey{background-color:lightgrey}div.o_qti_metadatas .panel-body{border-top:none}.o_qti_menu_item_attempts:after,.o_qti_menu_item_attempts_marked:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_qti_menu_item_attempts:after{content:"ï„"}.o_qti_menu_item_attempts_marked:after{content:"";color:#337ab7}.o_qti_print div.o_qti_statistics{width:680px}@media print{div.o_qti_statistics{width:680px}}ul.sessionControl{list-style:none;margin:1em;text-align:center}ul.sessionControl li{display:inline;padding:0.2em}.association{margin:20px 20px 20px 40px;background:transparent url("../light/images/association_bg.png") repeat-x center center}.o_associate_item{padding:5px;margin:0 15px 10px 0;border:2px solid #999}.o_associate_item.oo-selected{border:2px solid #337ab7}.o_associate_item.oo-choosed{border:none !important}.o_associate_item.oo-drag{border:2px solid #337ab7 !important}.association_box{border:3px dotted #999}.association_box.oo-filled{border:3px solid #999}.association_box{background-color:white}.prompt{font-weight:bold}.sketch{position:relative}#tmp_canvas{position:absolute;left:0px;right:0;bottom:0;top:0;cursor:crosshair}.sketch,.sketch>canvas{touch-action:none;user-drag:none;-webkit-user-drag:none;user-select:none;-moz-user-select:none;-webkit-user-drag:none;-webkit-user-select:none;-ms-user-select:none}#colors .black .o_icon:before{color:#000000}#colors .blue .o_icon:before{color:#0000FF}#colors .green .o_icon:before{color:#008000}#colors .yellow .o_icon:before{color:#FFFF00}#colors .red .o_icon:before{color:#FF0000}#colors .purple .o_icon:before{color:#800080}.o_gap_item{padding:5px;margin:5px;background-repeat:no-repeat;background-position:center center}.o_gap_item.oo-choosed{position:relative;left:auto;top:auto;padding:3px;margin:0}.o_gap_item.oo-selected{border:3px solid #337ab7}.o_item_container_help,.o_items_container_help{font-size:90%;font-style:italic;color:#777;padding:5px}.items_container{padding:15px}.items_container .o_item{float:left}#o_qti_hotspots_edit{min-height:100px;min-width:400px;background-repeat:no-repeat}#o_qti_hotspots_edit.o_qti_hotspot-standard .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-standard .o_draw_rectangle{background-color:rgba(255,255,255,0.5);border-color:#6E6E6E}#o_qti_hotspots_edit.o_qti_hotspot-standard .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-standard .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(45,0,255,0.5);border-color:#0000ff}#o_qti_hotspots_edit.o_qti_hotspot-light .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-light .o_draw_rectangle{background-color:rgba(221,221,221,0);border-color:#7E7E7E}#o_qti_hotspots_edit.o_qti_hotspot-light .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-light .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(51,122,183,0.05);border-color:#337ab7}#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_draw_rectangle{background-color:rgba(110,110,110,0.5);border-color:#3E3E3E}#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(222,222,222,0.2);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-green .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-green .o_draw_rectangle{background-color:rgba(142,142,142,0.25);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-green .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-green .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(134,195,81,0.5);border-color:#518b33}#o_qti_hotspots_edit.o_qti_hotspot-purple .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-purple .o_draw_rectangle{background-color:rgba(142,142,142,0.33);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-purple .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-purple .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(234,168,255,0.5);border-color:#ab47cb}div.hotspotInteraction{overflow-x:auto}img.o_hotspot_responsive[usemap]{max-width:100%;width:auto;height:auto}.form-inline.o_qti_gaptext_add_first_alternative,.o_qti_gaptext_add_first_alternative.o_navbar-form{padding:9px 0 3px 0}.form-inline.o_qti_gaptext_add_alternative,.o_qti_gaptext_add_alternative.o_navbar-form{margin-bottom:3px}.o_qti_gaptext_alternatives{background-color:#eee;color:#555;border:1px solid #eee;border-radius:4px;padding:2px 5px}span.o_qti_gaptext_score_alternative{padding-left:2em;color:#555}.o_qti_item_body .extendedTextInteraction{margin:15px 0}.o_qti_item_body .extendedTextInteraction textarea{resize:vertical !important;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_qti_item_body .extendedTextInteraction pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_qti_item_body .extendedTextInteraction .o_qti_essay_last_save{padding:2px 2px;font-style:italic;font-size:90%;text-align:right}.extendedTextInteraction div.form-control.textarea_disabled{white-space:pre-wrap;height:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#555 !important}#o_qti_run_title{margin:0 15px 0.5em 15px}#o_qti_run_title h3{margin:15px 0 0 0}#o_qti_run_infos{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:10px 0;margin:0 15px 1em 15px}#o_qti_run_infos .progress{background-color:#eee}#o_qti_run_infos #o_qti_scoreinfo .progress-bar{background-color:#337ab7}.progress-striped #o_qti_run_infos #o_qti_scoreinfo .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}#o_qti_run_infos #o_qti_questioninfo .progress-bar{background-color:#337ab7}.progress-striped #o_qti_run_infos #o_qti_questioninfo .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}#o_qti_run_infos #o_qti_run_scoreinfo,#o_qti_run_infos #o_qti_run_scoreprogress{white-space:nowrap}#o_main_wrapper #o_main_container #o_qti_run #o_main_left #o_main_left_toggle{top:50px}#o_qti_results_infos{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:10px 0;margin:0 0 1em 0}#o_qti_results_infos .progress{background-color:#eee}#o_qti_results_infos #o_qti_run_scoreinfo,#o_qti_results_infos #o_qti_run_scoreprogress{white-space:nowrap}#o_qti_assessment_test_timer{border:1px solid #e7e7e7;border-radius:4px;padding:10px;margin:0 15px 1em 15px}#o_qti_assessment_test_timer.o_10_minutes{background-color:#fcf8e3}#o_qti_assessment_test_timer.o_5_minutes{background-color:#f2dede}#o_qti_assessment_test_timer.o_panic{background-color:#ce8383}#o_qti_assessment_test_timer.o_15_seconds{background-color:#fcf8e3}#o_qti_assessment_test_timer.o_panic{background-color:#f2dede}#o_qti_assessment_test_timer .o_qti_times_up{padding-left:2em;font-weight:bold}#o_qti_assessment_test_timer .o_qti_times_message{padding-left:2em;font-weight:bold}.o_draw_circle.o_qti_hotspot_correct,.o_draw_rectangle.o_qti_hotspot_correct{background-color:rgba(229,255,204,0.6)}#width_range_ui,#opacity_range_ui{width:120px}.o_slider_width_range,.o_slider_opacity_range{margin:3px 10px 0 0}.o_qti_hotspot_label{padding-left:48%}.o_assessmentsection_rubrics_wrapper{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:4px;padding:5px 10px;margin:0 0 0.5em 0}.o_assessmentsection_rubrics_correction_wrapper{background:#f8f8f8;border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;padding:5px 10px}.o_info.o_assessmentsection_rubrics{margin:5px -10px;position:relative;display:block}.o_info.o_assessmentsection_rubrics.o_hide{display:none}.o_info.o_assessmentsection_rubrics a.o_hide{position:absolute;bottom:0.5em;right:1em}.o_assessmentitem h1{margin-bottom:0}.o_assessmentitem div.badResponse,.o_assessmentitem span.badResponse{color:#d9534f;font-weight:bold}.o_assessmentitem input.badResponse{border:1px solid #d9534f}.o_assessmentitem .infoControl input{margin-right:0.5em}.o_assessmentitem .infoControl .infoControlContent{display:none}.o_assessmentitem .sliderInteraction{margin:1em}.o_assessmentitem .sliderInteraction .sliderVertical .sliderValue{margin:1em 0}.o_assessmentitem .sliderInteraction .sliderVertical .sliderWidget{height:200px}.o_assessmentitem .sliderInteraction .sliderHorizontal .sliderValue{text-align:center}.o_assessmentitem div.orderInteraction div.highlight{border:1px solid #d9534f}.o_assessmentitem div.orderInteraction div.box.vertical{width:50%;float:left;position:relative;padding:0;margin-top:5px}.o_assessmentitem div.orderInteraction div.box.vertical ul{min-height:200px}.o_assessmentitem div.orderInteraction div.box.horizontal ul{min-height:50px;width:100%}.o_assessmentitem div.orderInteraction div.box.source{padding:5px 10px;border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8}.o_assessmentitem div.orderInteraction div.box.source.horizontal{padding:5px 10px 15px 10px}.o_assessmentitem div.orderInteraction div.box.target ul{border:2px solid #5bc0de;border-radius:4px;background:#d9edf7}.o_assessmentitem div.orderInteraction div.box.target ul.oo-accepted{border-color:#1f7e9a}.o_assessmentitem div.orderInteraction div.box.target.vertical{padding:6px 0 0 10px}.o_assessmentitem div.orderInteraction div.box.target.vertical ul{padding:10px}.o_assessmentitem div.orderInteraction div.box.target.horizontal{padding-top:10px}.o_assessmentitem div.orderInteraction div.box.target.horizontal ul{padding:10px 10px 0 10px}.o_assessmentitem div.orderInteraction div.box.horizontal ul li{float:left;width:auto;margin-right:10px;min-width:50px}.o_assessmentitem div.orderInteraction div.box span.info{color:#666;font-style:italic;font-size:smaller}.o_assessmentitem div.orderInteraction ul{list-style-type:none;margin:0;padding:0}.o_assessmentitem .hottext{position:relative;margin:-2px 0.15em -2px 0.15em;white-space:nowrap}.o_assessmentitem .hottext input{margin:0 3px 0 2px;position:absolute;top:0.1em;left:0.05em}.o_assessmentitem .hottext input+label{display:inline;padding:0 0.1em 0 1.2em;background:#f8f8f8;border:1px solid #e7e7e7;border-radius:2px;color:#333;font-weight:normal;white-space:normal}.o_assessmentitem .hottext input:checked+label{color:#333;background:#d9edf7;border:1px solid #bce8f1}.o_assessmentitem .gap{font-weight:bold;border:1px dashed #000}.o_assessmentitem .textEntryInteraction input,.o_assessmentitem .textEntryInteraction span.o_input_value{margin:-1px 2px;line-height:90%;vertical-align:middle;font-size:13.72px;line-height:1.5;border:1px solid #999;background:#fff;padding:1px 1px;color:#333;max-width:100%}.o_assessmentitem .textEntryInteraction input:valid,.o_assessmentitem .textEntryInteraction input:disabled,.o_assessmentitem .textEntryInteraction input.o_input_value_wrapper,.o_assessmentitem .textEntryInteraction span.o_input_value:valid,.o_assessmentitem .textEntryInteraction span.o_input_value:disabled,.o_assessmentitem .textEntryInteraction span.o_input_value.o_input_value_wrapper{color:#333;-webkit-text-fill-color:#333;background:#d9edf7;border:1px solid #bce8f1}li.o_assessmentitem_order_item{padding:10px;margin-bottom:10px;border:2px dashed #999;border-radius:4px;background-color:#ffffff;background:#fcf8e3;list-style-type:none}li.o_assessmentitem_order_item:before,li.o_assessmentitem_order_item:after{content:" ";display:table}li.o_assessmentitem_order_item:after{clear:both}body>li.o_assessmentitem_order_item{display:block}.o_assessmentitem_wrapper .itemTitle{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:4px 4px 0 0;margin-top:0;margin-bottom:0;padding:5px 10px;line-height:1.5em;position:relative}.o_assessmentitem_wrapper .itemTitle .o_qti_item_max_score{position:absolute;left:49%}.o_assessmentitem_wrapper .o_qti_item_body{min-height:200px;margin:0;padding:5px 10px;border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;font-size:14px;line-height:1.8}.o_assessmentitem_wrapper .o_assessment_item_not_final.o_warning{margin:0}.o_assessmentitem_wrapper .modalFeedback h4:first-of-type,.o_assessmentitem_wrapper .modalFeedback .o_cal .fc-header-title h2:first-of-type,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback h2:first-of-type{padding-left:10px;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper h4,.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper h2{border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;padding-bottom:5px;margin-bottom:0}.o_assessmentitem_wrapper ul.o_testpartnavigation,.o_qti_menu_buttonstyle ul.o_testpartnavigation{list-style:none;padding:0;margin:0}.o_assessmentitem_wrapper li.o_assessmentitem,.o_qti_menu_buttonstyle li.o_assessmentitem{margin-bottom:2px}.o_assessmentitem_wrapper .o_assessmentitem_status,.o_qti_menu_buttonstyle .o_assessmentitem_status{float:right;display:block;padding:0.3em;margin-left:1em;border-radius:0.3em;border-width:1px;font-size:0.8em;line-height:1.2em;color:#fff}.o_assessmentitem_wrapper .o_assessmentitem_status.ended,.o_qti_menu_buttonstyle .o_assessmentitem_status.ended{background-color:#5bc0de}.o_assessmentitem_wrapper .o_assessmentitem_status.invalid,.o_qti_menu_buttonstyle .o_assessmentitem_status.invalid{background-color:#d9534f}.o_assessmentitem_wrapper .o_assessmentitem_status.answered,.o_qti_menu_buttonstyle .o_assessmentitem_status.answered{background-color:#5cb85c}.o_assessmentitem_wrapper .o_assessmentitem_status.notAnswered,.o_qti_menu_buttonstyle .o_assessmentitem_status.notAnswered{background-color:#f0ad4e}.o_assessmentitem_wrapper .o_assessmentitem_status.notPresented,.o_qti_menu_buttonstyle .o_assessmentitem_status.notPresented{background-color:#ddd}.o_assessmentitem_wrapper .o_assessmentitem_status.review,.o_qti_menu_buttonstyle .o_assessmentitem_status.review{background-color:#5bc0de}.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotAllowed,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewInvalid,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotAnswered,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotSeen,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotAllowed,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewInvalid,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotAnswered,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotSeen{background-color:#5bc0de;opacity:0.7}.o_assessmentitem_wrapper .o_assessmentitem_status i:before,.o_qti_menu_buttonstyle .o_assessmentitem_status i:before{color:#fff}.o_assessmentitem_controls{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:0 0 4px 4px;margin-top:0;margin-bottom:16px;padding:5px 10px}.o_assessmentitem_controls button,.o_assessmentitem_controls a{margin-bottom:0}.o_assessmentitem_controls .o_sel_assessment_item_submit span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_next_question span:after{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï”";padding-left:0.5em}.o_assessmentitem_controls .o_sel_question_menu span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_end_testpart span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_back_test_feedback span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï“";padding-right:0.5em}.o_assessmentitem_controls .o_sel_show_solution span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„©";padding-right:0.5em}.o_assessmentitem_controls .o_sel_solution_hide span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„©";padding-right:0.5em}.o_assessmentitem_controls .o_sel_skip_question span:before,.o_assessmentitem_controls .o_sel_back_question span:before,.o_assessmentitem_controls .o_sel_retry_question span:before{padding-right:0.5em;margin-bottom:0}.o_assessmentitem_control_view_solution{background:#f8f8f8;border:1px solid #e7e7e7;margin:0;padding:5px 10px}.o_assessmentitem_scoring{background:#f8f8f8;border:1px solid #e7e7e7;border-bottom:0;border-radius:4px 4px 0 0;margin-top:0;margin-bottom:0;padding:5px 10px}.o_assessmentitem_scoring_buttons{background:#f8f8f8;border:1px solid #e7e7e7;border-top:0;border-radius:0 0 4px 4px;margin-top:0;margin-bottom:16px;padding:5px 10px}.o_assessmentitem_scoring_override_window{width:300px}.itemPrompt{margin:1.5em 0;font-style:italic;color:#666666}.o_qti_item_body{margin:1em 0}.o_sel_assessment_item_hint{margin-top:1em}.o_assessment_test_results .o_sel_assessment_item_hint{display:none}tr.choiceinteraction td.control{padding:0.5em}tr.choiceinteraction td.choiceInteraction{padding:0.5em}.choiceInteraction label{font-weight:normal}.choiceInteraction input+i{background-color:red}.choiceInteraction div.o_qti_item_choice_option_flow{display:inline-block;padding:.5em;border:1px solid transparent}.choiceInteraction div.o_qti_item_choice_option_flow label span{font-weight:normal}.choiceInteraction div.o_qti_item_choice_option_flow label span>p{display:inline-block}.choiceInteraction.choiceright table tr td.choiceInteraction{background-color:#e7e7e7;border-bottom:3px solid white}.matchInteraction.choiceright table tr td.o_qti_item_kprim_text{background-color:#e7e7e7;border-bottom:3px solid white}table.o_qti_item_kprim td.o_qti_item_kprim_input_correct{background-color:#eaf6ea}table.o_qti_item_kprim td.o_qti_item_kprim_input_wrong{background-color:#fdf7f7}table.o_qti_item_kprim td.o_qti_item_kprim_input_correct,table.o_qti_item_kprim td.o_qti_item_kprim_input_wrong,table.o_qti_item_kprim th.o_qti_item_kprim_input_correct,table.o_qti_item_kprim th.o_qti_item_kprim_input_wrong{width:11%}table.o_qti_item_kprim td.o_qti_item_kprim_text,table.o_qti_item_kprim th.o_qti_item_kprim_text{width:88%}.matchInteraction input[type='text']{display:inline;width:auto}.matchInteraction div.bar_green{background-color:#5cb85c}.matchInteraction div.bar_red{background-color:#d9534f}.source-left,.target-left,.source-right,.target-right{width:50%;float:left;position:relative;padding:0;margin-top:5px}.o_match_dnd_sources{padding:10px 10px 0 10px;min-height:60px;border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8}.o_match_dnd_sources.oo-accepted{border-color:#1f7e9a}.o_match_dnd_source{padding:10px;margin-bottom:10px;border:2px dashed #999;border-radius:4px;background-color:#ffffff;background:#fcf8e3;cursor:move;cursor:grab;cursor:-moz-grab;cursor:-webkit-grab}.o_match_dnd_source:before,.o_match_dnd_source:after{content:" ";display:table}.o_match_dnd_source:after{clear:both}.o_match_dnd_source.oo-selected{border:2px dashed #f0ad4e;background:#fae3c4}.o_match_dnd_source.oo-drag{border:2px dashed #f0ad4e !important}.source-bottom .o_match_dnd_source,.source-top .o_match_dnd_source{margin:0 0 10px 0}.o_match_dnd_targets .oo-accepted{border:2px solid #1f7e9a;border-radius:4px}.o_match_dnd_target{padding:10px 10px 0 10px;margin:0 0 10px 10px;border:2px solid #5bc0de;border-radius:4px;background:#d9edf7}.o_match_dnd_target:before,.o_match_dnd_target:after{content:" ";display:table}.o_match_dnd_target:after{clear:both}.o_match_dnd_target .o_match_dnd_target_drop_zone{margin:0;padding:5px 0 0 15px;min-height:30px}.o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source{border:2px dashed #777}.target-bottom .o_match_dnd_target,.target-top .o_match_dnd_target{margin:0 0 10px 0}.target-bottom .o_match_dnd_target .o_match_dnd_target_drop_zone,.target-top .o_match_dnd_target .o_match_dnd_target_drop_zone{padding-left:0px}.target-bottom .o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source,.target-top .o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source{padding-left:15px}.table.o_match_true_false_edit th.o_sel_match_target_0,.table.o_match_true_false_edit th.o_sel_match_target_1,.table.o_match_true_false_edit th.o_sel_match_target_2{width:12%}.match_true_false input[type="checkbox"]{-webkit-appearance:radio;-moz-appearance:radio;-ms-appearance:radio;appearance:radio}.match_true_false .table>tbody>tr>td.o_match_true_false_unanswered,.match_true_false .table>tbody>tr>td.o_match_true_false_right,.match_true_false .table>tbody>tr>td.o_match_true_false_wrong{vertical-align:middle;width:11%}.match_true_false th.o_match_true_false_unanswered,.match_true_false th.o_match_true_false_right,.match_true_false th.o_match_true_false_wrong{width:11%}.match_true_false td.o_match_true_false_answer,.match_true_false th.o_match_true_false_answer{width:67%}.match_true_false td.o_match_true_false_unanswered{background-color:#fbfbfb}.match_true_false td.o_match_true_false_right{background-color:#eaf6ea}.match_true_false td.o_match_true_false_wrong{background-color:#fdf7f7}.o_assessmentitem .mathEntryInteraction{border:1px solid #ddedfc;background-color:#edf1f6;background:linear-gradient(to top, #edf1f6 0%, #f6f9fb 100%);border-radius:0.4em;padding:1em;margin:0.5em 0}.o_assessmentitem .mathEntryInteraction .inputPanel{line-height:1em;text-align:left}.o_assessmentitem .mathEntryInteraction .inputPanel input{margin:0;padding:0}.o_assessmentitem .mathEntryInteraction .previewPanel{text-align:center}.o_assessmentitem .mathEntryInteraction.horizontal{min-height:5em;width:40em}.o_assessmentitem .mathEntryInteraction.horizontal .inputPanel{width:45%;float:left;margin:2em 0}.o_assessmentitem .mathEntryInteraction.horizontal .previewPanel{width:50%;margin-left:40%}.o_assessmentitem .mathEntryInteraction.vertical{min-height:6em}.o_assessmentitem .mathEntryInteraction.vertical .inputPanel{padding:0 5em}.o_assessmentitem .mathEntryInteraction.vertical .inputPanel:before{content:'Input Maths: '}.o_assessmentitem .mathEntryInteraction.vertical .previewPanel{margin-top:2em;min-height:4em}.o_assessmentitem div.upConversionAjaxControlMessage{width:auto;text-align:center;display:inline;padding:0.5em 0 0.5em 20px}.o_assessmentitem div.success{background:#5cb85c}.o_assessmentitem div.failure{background-color:#f0ad4e}.o_assessmentitem div.error{background-color:#d9534f}.o_assessmentitem div.upConversionAjaxControlPreview{margin:0.5em 0;font-size:110%}.o_assessmentitem table.inputHelp{border-collapse:collapse;width:100%;font-size:90%}.o_assessmentitem table.inputHelp th{border:1px solid #999999;padding:0.2em 0.5em;background-color:#cad8e5}.o_assessmentitem table.inputHelp td{color:#999999;border:1px solid #999999;padding:0.2em 0.5em}.o_assessmentitem table.inputHelp kbd{color:black;font-size:100%;line-height:100%}.o_assessmentitem table.inputHelp .longComma{margin-right:0.5em}.o_togglebox_wrapper #modal-correct-solution div.o_togglebox_content{background-color:#fcf8e3;border-color:#8a6d3b}.o_candidatecomment{padding:0;margin:2em 0 1em 0;border:none}.o_candidatecomment legend{font-size:110%;font-weight:bold;color:#777;margin-bottom:0;border-bottom:0}.o_candidatecomment div.o_item_container_help{margin:0;padding:0}.o_candidatecomment textarea{display:block;color:#777}.o_qti_menu_menustyle ul.o_testpartnavigation{list-style:none;padding:0;margin:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:0 1em 0.5em 1em;margin:0 0 0.5em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection header{margin:0 0 1em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection header div.rubric{font-style:italic}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection ul.o_testpartnavigation_inner{list-style:none;padding:0;margin:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem{padding:0.1em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a{color:#777;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a:hover,.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a:focus{color:#333;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a{color:#337ab7;font-weight:bold;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a:hover,.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a:focus{color:#23527c;background-color:#eee;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem span{vertical-align:middle}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_status{display:inline;position:relative;left:-0.3em;background:transparent;border:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_status span{display:none}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts{float:right;display:block;padding:0.3em;border-radius:2px;background-color:#fafafa;color:#777;font-size:0.7em}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts.o_assessmentitem_attempts_limited{color:#f0ad4e}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts.o_assessmentitem_attempts_nomore{color:#5bc0de}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_marks{float:right;display:inline-block;font-size:0.8em;position:relative;top:0.3em;right:-0.5em}.o_qti_menu_menustyle ul.o_testpartnavigation .o_assessmentitem .questionTitle{margin-right:1em;overflow-wrap:break-word}.testFeedback h1:first-of-type{margin-top:0}ul.testPartDrilldown{list-style:none;padding:0;margin:0}ul.testPartDrilldown li.o_assessmentsection{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:0 1em 0.5em 1em}ul.testPartDrilldown li.o_assessmentsection header{margin:0 0 1em 0}ul.testPartDrilldown li.o_assessmentsection header div.rubric{font-style:italic}ul.testPartDrilldown li.o_assessmentsection ul.testPartDrilldownInner{list-style:none;padding:0;margin:0}ul.testPartDrilldown li.currentItem{border:1px solid #e7e7e7;border-radius:0.5em;padding:0 1em;margin-top:1em}.testItemControl{margin-top:0.5em}ul.o_qti_statistics_answers li span.o_qti_statistics_answer{background:#F5F5F5;padding:1px 3px;width:90%;display:inline-block}.o_assessment_test_results .o_qti_assessment_title{border-bottom:1px solid #ddd}.o_assessment_test_results table th{width:40%}.o_assessment_test_results .o_qti_sectionsummary .o_qti_section{text-align:center}.o_assessment_test_results .o_qti_sectionsummary .o_qti_section .o_qti_section_sublisting{padding:0 10%;min-height:3em}.o_assessment_test_results .o_qti_sections .o_qti_section{margin-top:40px}.o_assessment_test_results .o_qti_sections .o_qti_section h3{margin-bottom:20px}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_id{display:none}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment{margin:0;padding:5px 10px 10px 5px;border-top:1px solid #ddd;broder-bottom:1px solid #ddd}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h4,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2{font-size:100%;font-weight:bold;color:inherit}.o_assessment_test_results .o_qti_to_overview{text-align:right}.o_sel_assessment_item_feedbacks{min-height:250px}.o_alternative_question_types h4 select,.o_alternative_question_types .o_cal .fc-header-title h2 select,.o_cal .fc-header-title .o_alternative_question_types h2 select{display:inline-block;width:auto}@media print{canvas,div.hotspotInteraction>div>div{-webkit-print-color-adjust:exact;color-adjust:exact}.choiceInteraction label{font-weight:normal}.choiceinteraction input[type="radio"][disabled],.choiceinteraction input[type="checkbox"][disabled],.matchInteraction input[type="radio"][disabled],.matchInteraction input[type="checkbox"][disabled]{display:none}.choiceinteraction input+i,.matchInteraction input+i{font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.choiceInteraction input[type="radio"][disabled]+i:before,.matchInteraction input[type="radio"][disabled]+i:before,.matchInteraction.match_true_false input[type="checkbox"][disabled]+i:before{content:"ï„Œ"}.choiceInteraction input[type="radio"][disabled]:checked+i:before,.matchInteraction input[type="radio"][disabled]:checked+i:before,.matchInteraction.match_true_false input[type="checkbox"][disabled]:checked+i:before{content:""}.choiceInteraction input[type="checkbox"][disabled]+i:before,.matchInteraction input[type="checkbox"][disabled]+i:before{content:"ï‚–"}.choiceInteraction input[type="checkbox"][disabled]:checked+i:before,.matchInteraction input[type="checkbox"][disabled]:checked+i:before{content:"ï†"}}#o_dev_tool #o_dev_tool_mode{width:1em;height:1em;float:left;border:1px solid #000;margin-right:5px}a.o_dev{position:absolute;left:0;top:0;z-index:4000;background:#f0ad4e;border:1px solid #d59645;border-top:none;border-left:none;border-radius:0 0 4px 0;color:#fff}a.o_dev:hover{color:#d9534f}.o_dev_w{margin:1px}.o_dev_w .o_dev_h{color:#000;font-size:8px;line-height:10px;margin:0}.o_dev_w .o_dev_h span{background:#f4c37d;border:1px solid #f0ad4e;border-bottom:0}.o_dev_w .o_dev_c{position:relative;border:1px dotted #eee}.o_dev_w .o_dev_c .o_dev_i{position:absolute;top:0px;left:24px;height:auto;width:auto;padding:5px;border:1px solid black;display:none;margin:0px;z-index:999;font-size:11px;background-color:#BBF}.o_dev_w.o_dev_m>.o_dev_c{border:1px solid #f0ad4e;margin:0px;background-color:#f8e9d4}.o_wikimod_nav{margin-right:20px}.o_wikimod_nav .o_noti{margin:0}.o_wikimod_nav .o_portfolio_collector{position:relative;top:-5px}.o_wikimod_editform_wrapper{margin-top:30px}.o_wiki-file-deleted{text-decoration:line-through}div.o_wiki_wrapper a.wikiimg{text-decoration:none;color:inherit;font-weight:inherit}div.o_wiki_wrapper div.imgcaption{padding:0.3em 0em 0.2em 0.3em}div.o_wiki_wrapper div.imgleft{clear:left;float:left;margin:0.3em 0.3em 0.3em 0em}div.o_wiki_wrapper div.imgright{clear:right;float:right;margin:0.3em 0em 0.3em 0.3em}div.o_wiki_wrapper div.imgcenter{clear:both;overflow:hidden;text-align:center;margin:0.3em 0em 0.3em 0em}div.o_wiki_wrapper div.imgthumb{border:1px solid #bbbbbb;padding:0.3em}div.o_wiki_wrapper table.gallery{border:1px solid #ccc;margin:2px;padding:2px;background-color:white}div.o_wiki_wrapper table.gallery tr{vertical-align:middle}div.o_wiki_wrapper table.gallery td{background-color:#f9f9f9;border:solid 2px white;text-align:center;vertical-align:middle;width:150px}div.o_wiki_wrapper img.gallery{border:1px solid #bbbbbb;padding:0.3em}div.o_wiki_wrapper a.edit{font-style:italic;color:red}div.o_wiki_wrapper a.externallink:before{padding-right:2px}div.o_wiki_wrapper a.externallink:before:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï‚Ž"}.o_ep_icon_map:before{content:""}.o_ep_icon_collection:before{content:""}.o_ep_icon_page:before{content:""}.o_ep_icon_struct:before{content:""}.o_ep_icon_liveblog:before{content:"ï‚¡"}.o_artefact_closed:before{content:""}.o_portfolio_toc .o_ep_link{float:right;margin-right:0px}.o_portfolio_toc .o_ep_commentlink{float:right;margin-right:10%}.o_portfolio_toc li.level1{font-size:1.2em;margin:1.2em 0 0.2em 0;border-bottom:1px solid #ddd}.o_portfolio_toc li.level2{padding-left:20px;font-size:1.1em;border-bottom:1px dotted #ddd}.o_portfolio_toc li.level3{padding-left:40px}.o_eportfolio_page .o_eportfolio_structure>h5{border-bottom:1px solid #ddd;margin-top:1.2em}.o_eportfolio_maps .panel{font-family:'Century Gothic', 'Apple Gothic', sans-serif;box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .panel-heading{padding:5px 10px}.o_eportfolio_maps h4,.o_eportfolio_maps .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps h2{padding:11px 15px;background:rgba(255,255,230,0.7) none;border-radius:6px}.o_eportfolio_maps .table>tbody>tr>td{border-top:none}.o_eportfolio_maps .panel-body{border-top:none}.o_eportfolio_maps .panel>.panel-body+.table{border-top:none}.panel-footer .o_ep_options{display:inline-block}.o_eportfolio_map{padding:0 20px 2px 3px;border-radius:6px 10px 6px 0;font-family:'Century Gothic', 'Apple Gothic', sans-serif}.o_map_header{padding-left:5px}.o_eportfolio_map ul.nav-tabs li:not(.active) a{background-color:rgba(240,240,240,0.7);border-radius:4px 4px 0 0}.o_eportfolio_edit{border-radius:4px 4px 0 0}.o_ep_actualpage,.o_eportfolio_edit{padding:15px;background-color:#fff}.o_ep_content{margin-top:15px}.o_ep_filter .o_date.form-inline .form-group,.o_ep_filter .o_date.o_navbar-form .form-group{margin-left:8px}.o_eportfolio_share_policy_wrapper{border:1px solid #ddd;border-radius:4px}.o_eportfolio_share_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5}.o_eportfolio_share_policy{padding:10px 15px}.o_map-default{background:#fafafa;background:#fafafa -webkit-gradient(linear, 37% 20%, 53% 100%, from(#fafafa), to(#efefef));background:#fafafa -moz-linear-gradient(43% 71% 101deg, #efefef, #fafafa);background:#fafafa -o-linear-gradient(#fafafa, #efefef);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#fafafa', EndColorStr='#efefef');border:1px solid #efefef;border-left:3px solid rgba(188,188,188,0.8)}.o_eportfolio_maps .o_map-default h4,.o_eportfolio_maps .o_map-default .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-default h2{color:#444;background:none}.o_eportfolio_maps .o_map-default .panel-body,.o_eportfolio_maps .o_map-default td,.o_eportfolio_maps .o_map-default a{color:#000}.o_map-comic{background:#a2c3e8 none;font-family:'Comic Sans MS', 'Comic Sans', fantasy;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_map-leather{background-color:#957352;background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(248,248,248,0.7)), color-stop(100%, rgba(193,193,193,0.5))),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-webkit-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-moz-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-ms-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-o-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");font-family:Palatino, Georgia, serif;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-leather h4,.o_eportfolio_maps .o_map-leather .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-leather h2{background:rgba(243,230,225,0.3) none}.o_eportfolio_maps .o_map-leather .panel-body,.o_eportfolio_maps .o_map-leather td{color:#333}.o_eportfolio_maps .o_map-leather a{color:#fad9a4}.o_eportfolio_map.o_map-leather .o_map_header h4,.o_eportfolio_map.o_map-leather .o_map_header .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_map.o_map-leather .o_map_header h2,.o_eportfolio_map.o_map-leather .o_map_header p,.o_eportfolio_map.o_map-leather .o_map_header a,.o_eportfolio_map.o_map-leather .o_map_header span,.o_eportfolio_map.o_map-leather .o_map_header label{color:#333}.o_map-epmst-green{background-color:#ECF69A;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-green h4,.o_eportfolio_maps .o_map-epmst-green .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green h2{color:#444}.o_eportfolio_maps .o_map-epmst-green .panel-body,.o_eportfolio_maps .o_map-epmst-green td,.o_eportfolio_maps .o_map-epmst-green a{color:#000}.o_map-epmst-green2{background:#99E44D;background:#99E44D -webkit-gradient(linear, 37% 20%, 53% 100%, from(#99E44D), to(#CBF1A5));background:#99E44D -moz-linear-gradient(43% 71% 101deg, #CBF1A5, #99E44D);background:#99E44D -o-linear-gradient(#99E44D, #CBF1A5);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#99E44D', EndColorStr='#CBF1A5');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green2 h4,.o_eportfolio_maps .o_map-epmst-green2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green2 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green2 .panel-body,.o_eportfolio_maps .o_map-epmst-green2 td,.o_eportfolio_maps .o_map-epmst-green2 a{color:#000}.o_map-epmst-green3{background:#DFF0C1;background:#DFF0C1 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#DFF0C1), to(#A0D346));background:#DFF0C1 -moz-linear-gradient(43% 71% 101deg, #A0D346, #DFF0C1);background:#DFF0C1 -o-linear-gradient(#DFF0C1, #A0D346);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#DFF0C1', EndColorStr='#A0D346');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green3 h4,.o_eportfolio_maps .o_map-epmst-green3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green3 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green3 .panel-body,.o_eportfolio_maps .o_map-epmst-green3 td,.o_eportfolio_maps .o_map-epmst-green3 a{color:#000}.o_map-epmst-green4{background-color:#D7DBB5;border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green4 h4,.o_eportfolio_maps .o_map-epmst-green4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green4 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green4 .panel-body,.o_eportfolio_maps .o_map-epmst-green4 td,.o_eportfolio_maps .o_map-epmst-green4 a{color:#000}.o_map-epmst-red{background:#FFBA71;background:#FFBA71 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FFBA71), to(#FFBA99));background:#FFBA71 -moz-linear-gradient(43% 71% 101deg, #FFBA99, #FFBA71);background:#FFBA71 -o-linear-gradient(#FFBA71, #FFBA99);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFBA71', EndColorStr='#FFBA99');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red h4,.o_eportfolio_maps .o_map-epmst-red .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red h2{color:#444}.o_eportfolio_maps .o_map-epmst-red .panel-body,.o_eportfolio_maps .o_map-epmst-red td,.o_eportfolio_maps .o_map-epmst-red a{color:#000}.o_map-epmst-red2{background:#FF9772;background:#FF9772 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FF9772), to(#FF9780));background:#FF9772 -moz-linear-gradient(43% 71% 101deg, #FF9780, #FF9772);background:#FF9772 -o-linear-gradient(#FF9772, #FF9780);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FF9772', EndColorStr='#FF9780');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red2 h4,.o_eportfolio_maps .o_map-epmst-red2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red2 .panel-body,.o_eportfolio_maps .o_map-epmst-red2 td,.o_eportfolio_maps .o_map-epmst-red2 a{color:#000}.o_map-epmst-red3{background:#E8AFBB;background:#E8AFBB -webkit-gradient(linear, 37% 20%, 53% 100%, from(#E8AFBB), to(#E8AFA0));background:#E8AFBB -moz-linear-gradient(43% 71% 101deg, #E8AFA0, #E8AFBB);background:#E8AFBB -o-linear-gradient(#E8AFBB, #E8AFA0);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#E8AFBB', EndColorStr='#E8AFA0');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red3 h4,.o_eportfolio_maps .o_map-epmst-red3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red3 .panel-body,.o_eportfolio_maps .o_map-epmst-red3 td,.o_eportfolio_maps .o_map-epmst-red3 a{color:#000}.o_map-epmst-red4{background:#FFA800;background:#FFA800 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FFA800), to(#FFAF00));background:#FFA800 -moz-linear-gradient(43% 71% 101deg, #FFAF00, #FFA800);background:#FFA800 -o-linear-gradient(#FFA800, #FFAF00);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFA800', EndColorStr='#FFAF00');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red4 h4,.o_eportfolio_maps .o_map-epmst-red4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red4 .panel-body,.o_eportfolio_maps .o_map-epmst-red4 td,.o_eportfolio_maps .o_map-epmst-red4 a{color:#000}.o_map-epmst-blue{background:#00D2F8;background:#00D2F8 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#00D2F8), to(#4A9EAD));background:#00D2F8 -moz-linear-gradient(43% 71% 101deg, #4A9EAD, #00D2F8);background:#00D2F8 -o-linear-gradient(#00D2F8, #4A9EAD);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#00D2F8', EndColorStr='#4A9EAD');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue h4,.o_eportfolio_maps .o_map-epmst-blue .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue .panel-body,.o_eportfolio_maps .o_map-epmst-blue td,.o_eportfolio_maps .o_map-epmst-blue a{color:#000}.o_map-epmst-blue2{background-color:#C4F6FF;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue2 h4,.o_eportfolio_maps .o_map-epmst-blue2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue2 .panel-body,.o_eportfolio_maps .o_map-epmst-blue2 td,.o_eportfolio_maps .o_map-epmst-blue2 a{color:#000}.o_map-epmst-blue3{background-color:#B3E2F7;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue3{box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .o_map-epmst-blue3 h4,.o_eportfolio_maps .o_map-epmst-blue3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue3 .panel-body,.o_eportfolio_maps .o_map-epmst-blue3 td,.o_eportfolio_maps .o_map-epmst-blue3 a{color:#000}.o_map-epmst-blue4{background:#DEE7F7;background:#DEE7F7 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#DEE7F7), to(#C1E9FD));background:#DEE7F7 -moz-linear-gradient(43% 71% 101deg, #C1E9FD, #DEE7F7);background:#DEE7F7 -o-linear-gradient(#DEE7F7, #C1E9FD);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#DEE7F7', EndColorStr='#C1E9FD');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue4 h4,.o_eportfolio_maps .o_map-epmst-blue4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue4 .panel-body,.o_eportfolio_maps .o_map-epmst-blue4 td,.o_eportfolio_maps .o_map-epmst-blue4 a{color:#000}.o_portfolio div#o_main_toolbar.o_toolbar{margin-top:0px}.o_portfolio_home .o_portfolio_my li,.o_portfolio_home .o_portfolio_shared li{margin:2em 1em 2em 0;text-align:center;vertical-align:top}.o_portfolio_home .o_portfolio_my li.o_pf_trash_entry,.o_portfolio_home .o_portfolio_shared li.o_pf_trash_entry{border-right:5px dashed #eee;padding-right:2em}.o_portfolio_home .o_portfolio_my li a,.o_portfolio_home .o_portfolio_shared li a{display:block;width:9em}.o_portfolio_home .o_portfolio_my li a i,.o_portfolio_home .o_portfolio_shared li a i{display:inline-block;font-size:4em}.o_portfolio_home .o_portfolio_my li a span,.o_portfolio_home .o_portfolio_shared li a span{display:block;margin-top:0.8em}@media (max-width: 1199px){.o_portfolio_home .o_portfolio_my,.o_portfolio_home .o_portfolio_shared{font-size:90%}}@media (max-width: 767px){.o_portfolio_home .o_portfolio_my,.o_portfolio_home .o_portfolio_shared{font-size:80%}.o_portfolio_home .o_portfolio_my li.o_pf_trash_entry,.o_portfolio_home .o_portfolio_shared li.o_pf_trash_entry{border-right:none;padding-right:0}}.o_portfolio_home #o_my_last_binders .o_table_body{margin-top:0;padding-left:0}.o_portfolio_home #o_my_last_pages .o_table_body{margin-top:0}.o_portfolio_home #o_my_last_pages .o_table_toolbar{display:none}.o_portfolio_home #o_my_last_pages .o_portfolio_page{margin-top:0;margin-bottom:1em}.o_section_lead,.o_page_lead,.o_assignment_lead{padding:10px 10px;margin-bottom:10px;background-color:#f2f2f2;border-radius:3px;border:1px #d9d9d9 solid}.o_section_ended .o_section_lead{border-color:#eba5a3;background-color:#f4cecd}.o_media.o_media_right,.o_media.o_media_right_large{float:right;margin-left:2em;margin-bottom:2em}.o_media.o_media_left,.o_media.o_media_left_large{float:left;margin-right:2em;margin-bottom:2em}.o_media.o_media_left,.o_media.o_media_right{max-height:200px;max-width:50%}.o_media.o_media_left img,.o_media.o_media_right img{max-height:200px}.o_media.o_media_right_large,.o_media.o_media_left_large{max-height:300px;max-width:75%}.o_media.o_media_right_large img,.o_media.o_media_left_large img{max-height:300px}.o_media img{border-radius:3px;border:1px #d9d9d9 solid;background:#fff;height:auto;width:auto}@media (max-width: 767px){.o_page_lead .o_media.o_media_right,.o_page_lead .o_media.o_media_right_large{margin-left:1em;margin-bottom:1em}.o_page_lead .o_media.o_media_left,.o_page_lead .o_media.o_media_left_large{margin-right:1em;margin-bottom:1em}.o_page_lead .o_media.o_media_left,.o_page_lead .o_media.o_media_right{max-height:120px;max-width:30%}.o_page_lead .o_media.o_media_left img,.o_page_lead .o_media.o_media_right img{max-height:120px}.o_page_lead .o_media.o_media_right_large,.o_page_lead .o_media.o_media_left_large{max-height:180px;max-width:50%}.o_page_lead .o_media.o_media_right_large img,.o_page_lead .o_media.o_media_left_large img{max-height:180px}}.o_page_lead{padding:20px}.o_page_lead h2{margin-bottom:5px}.o_page_lead .o_portfolio_page_meta{margin-bottom:5px}.o_page_lead .o_page_summary{font-size:18px}.o_page_lead .o_media.o_desc_empty{max-height:300px;text-align:center}.o_page_lead .o_media.o_desc_empty img{max-height:300px}.o_page_lead .o_portfolio_status_block{border-top:1px solid #d9d9d9;padding-top:1em;margin-bottom:-1em}.o_page_lead .o_edit_page_meta{padding-right:2em}.o_page_lead .o_portfolio_status{display:inline-block;padding-right:2em}.o_page_lead.o_block_imagebg .o_portfolio_status{padding:2px;background-color:rgba(255,255,255,0.8)}.o_portfolio_status_block p.o_section_ended{font-size:120%}.o_page_assignment{font-size:12px}.o_page_assignment.o_togglebox_wrapper div.o_togglebox_content{margin:10px 0 20px 0;padding:20px;border-left:3px solid #d9534f;background-color:#f2dede}.o_page_assignment .o_page_assignement_info{position:relative;left:-1em}.o_page_export .o_page_assignment .o_opener,.o_binder_export .o_page_assignment .o_opener{visibility:hidden}.o_page_export .o_page_assignment .o_closer,.o_binder_export .o_page_assignment .o_closer{display:none}.o_portfolio_listing.o_rendertype_custom .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry{position:relative;display:inline-block;height:230px;width:400px;vertical-align:top;margin-right:10px}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry ul{padding-left:2em}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry .oo-accepted{box-shadow:10px 10px 10px pink}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry .o_binder_tools a{color:#333}.o_portfolio_listing.o_rendertype_custom .panel-imagebg .panel-body ul{margin:0;padding:0;list-style-type:none}.o_portfolio_listing.o_rendertype_custom .panel-imagebg .panel-body ul li{padding:2px}.o_binder.o_portfolio_assignments .panel-heading,.o_binder.o_portfolio_assignments .panel-body{border-left:3px solid #d9534f}.panel-default.o_portfolio_assignments .panel-heading,.panel-default.o_portfolio_assignments .panel-body{border-left:3px solid #d9534f}.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body{border-left:3px solid #d9534f}.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body .o_portfolio_page_meta_wrapper,.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body .o_portfolio_page_summary{padding-left:10px}.o_portfolio_page_summary .o_media.o_media_right,.o_portfolio_page_summary .o_media.o_media_right_large{margin-left:1em;margin-bottom:1em}.o_portfolio_page_summary .o_media.o_media_left,.o_portfolio_page_summary .o_media.o_media_left_large{margin-right:1em;margin-bottom:1em}.o_portfolio_page_summary .o_media.o_media_left,.o_portfolio_page_summary .o_media.o_media_right{max-height:150px}.o_portfolio_page_summary .o_media.o_media_left img,.o_portfolio_page_summary .o_media.o_media_right img{max-height:150px}.o_portfolio_page_summary .o_media.o_media_right_large,.o_portfolio_page_summary .o_media.o_media_left_large{max-height:230px}.o_portfolio_page_summary .o_media.o_media_right_large img,.o_portfolio_page_summary .o_media.o_media_left_large img{max-height:230px}.o_portfolio_categories .tag{font-size:80%;font-weight:normal}.o_portfolio_categories div,.o_portfolio_categories form{display:inline-block}.o_portfolio_categories_edit .bootstrap-tagsinput{margin-bottom:0;padding:0px 4px}.o_portfolio_last_modified+.o_portfolio_categories,.o_portfolio_page_meta+.o_portfolio_categories{margin-left:1em}.o_rendertype_classic .o_pf_page,.o_rendertype_classic .o_pf_assignment{padding-left:1em}.o_portfolio_timeline .o_timeline_up{text-align:center}.o_portfolio_timeline .o_timeline_down{text-align:center}.o_portfolio_timeline .axis path,.o_portfolio_timeline .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_portfolio_timeline .x.axis line,.o_portfolio_timeline .x.axis path{display:none}.o_portfolio_timeline path.o_timeline_curve{fill:none;stroke:#ccc;shape-rendering:crispEdges}.o_portfolio_timeline .y.axis .tick line,.o_portfolio_timeline .y.axis path.domain{stroke:#ddd}.o_portfolio_timeline text{fill:#888;stroke:none;font-size:10px}.o_portfolio_timeline .dot.o_pf_status_draft{fill:#f0ad4e}.o_portfolio_timeline .dot.o_pf_status_published{fill:#337ab7}.o_portfolio_timeline .dot.o_pf_status_inrevision{fill:#d9534f}.o_portfolio_timeline .dot.o_pf_status_closed{fill:#5cb85c}.o_portfolio_timeline .dot.o_pf_status_deleted{fill:#000}.o_pf_comments{margin-top:3em}.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file{background-color:#f8f8f8;padding:10px;border-radius:10px}.o_pf_content .o_forum,.gu-mirror .o_forum{border:1px #f8f8f8 solid;padding:10px;border-radius:10px}.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_forum,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_forum,.gu-mirror .o_wiki{background-color:#f8f8f8;padding:10px;border-radius:10px}.o_pf_content .o_efficiencystatement h3,.o_pf_content .o_efficiencystatement .h3,.o_pf_content .o_feed h3,.o_pf_content .o_feed .h3,.o_pf_content .o_forum h3,.o_pf_content .o_forum .h3,.o_pf_content .o_wiki h3,.o_pf_content .o_wiki .h3,.gu-mirror .o_efficiencystatement h3,.gu-mirror .o_efficiencystatement .h3,.gu-mirror .o_feed h3,.gu-mirror .o_feed .h3,.gu-mirror .o_forum h3,.gu-mirror .o_forum .h3,.gu-mirror .o_wiki h3,.gu-mirror .o_wiki .h3{font-size:14px}.o_pf_content .o_efficiencystatement .row,.o_pf_content .o_feed .row,.o_pf_content .o_forum .row,.o_pf_content .o_wiki .row,.gu-mirror .o_efficiencystatement .row,.gu-mirror .o_feed .row,.gu-mirror .o_forum .row,.gu-mirror .o_wiki .row{margin:0}.o_pf_content .o_efficiencystatement .o_block_with_datecomp,.o_pf_content .o_feed .o_block_with_datecomp,.o_pf_content .o_forum .o_block_with_datecomp,.o_pf_content .o_wiki .o_block_with_datecomp,.gu-mirror .o_efficiencystatement .o_block_with_datecomp,.gu-mirror .o_feed .o_block_with_datecomp,.gu-mirror .o_forum .o_block_with_datecomp,.gu-mirror .o_wiki .o_block_with_datecomp{margin-top:0.5em;margin-bottom:0}.o_pf_video_placeholder{background-color:#f8f8f8;border:1px solid #f8f8f8;border-radius:10px;display:table;min-width:400px;text-align:center;padding:40px 10px}.o_pf_video_placeholder i{display:table-cell;vertical-align:middle}.o_binder_page_listing .o_portfolio_page_links{background-color:#f8f8f8;border-radius:4px}.o_binder_page_listing .o_portfolio_page_links .o_portfolio_comment{float:right}.o_portfolio_toc .o_portfolio_toc_section{position:relative;padding-right:80px}.o_portfolio_toc .o_portfolio_section_meta{margin-top:-0.5em}.o_portfolio_toc .o_section_actions{position:absolute;top:-10px;right:0}.o_portfolio_toc .o_section_actions .o_section_move_up_and_down,.o_portfolio_toc .o_section_actions .o_section_dropdown{vertical-align:middle;display:inline-block}.o_portfolio_toc a.o_comment{color:#777;margin-left:1em}.o_portfolio_toc .o_section ul{padding-left:1em;line-height:24px}.o_portfolio div span.badge{padding:3px 7px}.o_portfolio div .o_portfolio_entry_draft{background-color:#f0ad4e}.o_portfolio div .o_portfolio_published{background-color:#337ab7}.o_portfolio div .o_portfolio_entry_revision{background-color:#d9534f}.o_portfolio div .o_portfolio_entry_closed{background-color:#5cb85c}.o_portfolio div .o_portfolio_entry_deleted{background-color:#000}.o_portfolio div .o_portfolio_entry_incoming{background-color:#5cb85c}.o_portfolio div .o_portfolio_entry_inprocess{background-color:#c8c8c8}.o_portfolio div .o_portfolio_entry_done{background-color:#5cb85c}.o_portfolio div .o_popover,.o_portfolio div .popover:hover{color:#333;text-decoration:none}.o_portfolio_content .o_portfolio_toc.o_portfolio_toc_withtimeline{width:70%;float:left}.o_portfolio_content .o_portfolio_timeline{width:29%;float:right}.o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline,.o_portfolio_content .o_portfolio_entries.o_portfolio_withtimeline{width:70%;float:left}.o_portfolio_content .o_portfolio_timeline{width:29%;float:right}.o_portfolio_page{background:#fcfcfc;border:1px solid #eee;border-radius:4px}.o_portfolio_page_meta_wrapper{background-position:left top;background-repeat:no-repeat}.o_portfolio_rights table .o_portfolio_section td:first-child{padding-left:1.5em}.o_portfolio_rights table .o_portfolio_page td:first-child{padding-left:2.5em}.o_portfolio_publication table{padding-bottom:10px}.o_portfolio_publication table td{padding:5px 5px 5px 0}.o_portfolio_publication .o_portfolio_ac{font-size:90%}.o_portfolio_publication .o_portfolio_ac table td:nth-of-type(2){width:200px;white-space:nowrap}.o_portfolio_publication .o_portfolio_ac table td:nth-of-type(3){width:40px;white-space:nowrap}.o_portfolio_publication ul ul{margin-left:2em;margin-bottom:5px}.o_portfolio_publication ul li{background:#fbfbfb;padding:3px;margin-bottom:2px}.o_portfolio_publication ul li li{background:#f2f2f2}.o_portfolio_publication ul li li li{background:#eee}.o_portfolio_publication ul li li .table{margin-bottom:0px}@media (max-width: 767px){.o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline,.o_portfolio_content .o_portfolio_entries.o_portfolio_withtimeline{width:100%;float:none}.o_portfolio_content .o_sel_timeline_off,.o_portfolio_content .o_sel_timeline_on,.o_portfolio_content .o_portfolio_timeline{display:none}.o_portfolio_content .o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline{width:100%;float:none}}.o_portfolio_media_browser .o_portfolio_medias{position:relative;margin-bottom:20px;margin-top:20px}.o_portfolio_media_browser .o_portfolio_medias:before,.o_portfolio_media_browser .o_portfolio_medias:after{content:" ";display:table}.o_portfolio_media_browser .o_portfolio_medias:after{clear:both}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media:last-child{margin-right:0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{border:1px solid #337ab7;position:relative;height:180px;width:180px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon span.o_visual_not_available,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after span.o_visual_not_available,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after span.o_visual_not_available,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after span.o_visual_not_available,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after span.o_visual_not_available{background-image:none}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:6em;text-align:center;color:#eee;line-height:140px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #337ab7;border-top:0;background-color:rgba(255,255,255,0.8)}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a{display:block;color:#337ab7;font-family:inherit;font-weight:inherit}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:hover{color:#286090}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a>i{display:none}@media (min-width: 768px) and (max-width: 991px){.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{width:80px;margin:0 10px 10px 0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{height:80px;width:80px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:2.5em;line-height:55px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_title{font-size:90%}}@media (max-width: 767px){.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{width:80px;margin:0 1px 1px 0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{height:80px;width:80px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:2.5em;line-height:55px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_title{font-size:90%}}.o_portfolio_status_legend{margin-top:3em}.o_portfolio_status_legend h6{margin-bottom:5px}.o_ed_htitle h1,.o_ed_htitle .h1{font-size:30px}.o_ed_htitle h2,.o_ed_htitle .h2{font-size:24px}.o_ed_htitle h3,.o_ed_htitle .h3{font-size:18px}.o_ed_htitle h4,.o_ed_htitle .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_ed_htitle h2,.o_ed_htitle .h4{font-size:14px}.o_ed_htitle h5,.o_ed_htitle .h5{font-size:12px}.o_ed_htitle h6,.o_ed_htitle .h6{font-size:12px}@media print{.o_binder h1{font-size:43.2px;margin-top:10cm}.o_portfolio_section{margin-bottom:1cm}.o_portfolio_section h3:first-of-type{font-size:36px}.o_page_lead{border:0;border-bottom:1px solid #d9d9d9;border-radius:0;background-color:none;padding:0;margin-bottom:10px}.o_page_lead .o_portfolio_status_block{border-top:0;margin-bottom:0}.o_page_lead .o_media img{border:0}.o_page_lead .o_portfolio_categories{display:block;margin-left:0}.o_page_lead .o_portfolio_status_block{padding-top:0}.o_page_lead .o_page_summary{margin-top:1em;font-style:italic}.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.o_pf_content .o_forum,.o_pf_content .o_image,.o_pf_content .o_video,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_forum,.o_pf_content .o_wiki{padding:0;border-radius:0;border:0}.o_pf_content .o_cit .o_desc p,.o_pf_content .o_text .o_desc p,.o_pf_content .o_file .o_desc p,.o_pf_content .o_forum .o_desc p,.o_pf_content .o_image .o_desc p,.o_pf_content .o_video .o_desc p,.o_pf_content .o_efficiencystatement .o_desc p,.o_pf_content .o_feed .o_desc p,.o_pf_content .o_forum .o_desc p,.o_pf_content .o_wiki .o_desc p{margin:0}.o_efficiencystatement table{font-size:90%}.o_artefact_metadata{page-break-inside:avoid;border:0;border-left:5px solid #eee;padding-left:10px;font-size:80%}.o_artefact_metadata table td,.o_artefact_metadata table th{border:0 !important;padding:2px !important}.o_artefact_metadata table th:first-of-type{width:20%}.o_pf_video_placeholder{background-color:#f8f8f8 !important;-webkit-print-color-adjust:exact;color-adjust:exact}.o_pf_video_placeholder.visible-print-block{display:table !important}}.o_evaluation_form .o_evaluation_block{margin-top:2em;margin-bottom:2em}.o_evaluation_form .o_rubric_name{font-weight:bold;margin-bottom:1em}.o_evaluation_form .o_evaluation_step_labels{margin-bottom:1em;font-weight:bold}.o_evaluation_form .o_evaluation_step_labels div,.o_evaluation_form .o_evaluation_step_labels span{display:inline-block;text-align:center;align-self:flex-end;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o_evaluation_form .o_slider_wrapper{height:33px;overflow:hidden}.o_evaluation_form .o_slider{margin-bottom:1em}.o_evaluation_form .o_slider label{padding:0}.o_evaluation_form .o_slider input{padding:0;margin:0;position:relative}.o_evaluation_form .o_slider.hover{background-color:#f5f5f5}.o_evaluation_form .o_evaluation_continous .o_evaluation_no_response div.radio{padding:0;margin:0}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps{display:flex;justify-content:space-between}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps label{padding:0;margin:0;text-align:center}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps .radio{background-color:#f9f9f9;padding:0px;margin-top:0px;text-align:center}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps .radio:hover{background-color:#f5f5f5}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_no_response div.radio{margin-top:2px}.o_evaluation_form .o_evaluation_discrete_radio .o_evaluation_step_labels{display:flex;justify-content:space-between}.o_evaluation_form .o_slider .ui-slider.ui-slider-horizontal.ui-widget-content{margin-top:0.3em;margin-bottom:10px}.o_evaluation_form .o_evaluation_left_label{text-align:right;font-weight:normal}.o_evaluation_form .o_evaluation_left_label.o_evaluation_left_label_la{text-align:left;padding-left:0px;font-weight:normal}.o_evaluation_form .o_evaluation_right_label{text-align:left;font-weight:normal}.o_evaluation_form .o_evaluation_text_legend{margin-bottom:1em}.o_evaluation_form .o_evaluation_legend{padding-left:0.5em;margin-bottom:0.5em}.o_evaluation_form .o_evaluation_fileupload{margin-bottom:2em}.o_evaluation_form .o_evaluation_mc_other{margin-top:-10px;margin-left:10px;margin-right:10px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_slider{margin-left:15px;margin-right:15px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_end_label{text-align:right;padding-right:20px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_continous .x .tick{visibility:hidden}.o_evaluation_form .o_ed_rubrictablehandler .table{margin-top:5px}.o_evaluation_form .svg-container{display:inline-block;position:relative;width:100%;padding-bottom:50%;vertical-align:top;overflow:hidden}.o_evaluation_form .svg-content-responsive{display:inline-block;position:absolute;top:10px;left:0}.d3chart .o_eva_bar{fill:#337ab7}.d3chart .o_rubric_sufficient{fill:#5cb85c}.d3chart .o_rubric_neutral{fill:#f0ad4e}.d3chart .o_rubric_insufficient{fill:#d9534f}.d3chart .o_rubric_unrated{fill:#337ab7}.o_qual_hm_legend{padding:5px}.o_qual_hm_legend li{font-size:90%}.o_qual_hm_legend .ident{font-weight:bold}.o_evaluation_discrete_slider .o_evaluation_step_labels{position:relative}.o_evaluation_discrete_slider .o_evaluation_step_labels div:first-child{position:absolute;left:0px;text-align:left}.o_evaluation_discrete_slider .o_evaluation_step_labels div{display:inline-block;text-align:center}.o_evaluation_discrete_slider .o_evaluation_step_labels div:last-child{position:absolute;right:0px;text-align:right}.o_slider_overview{width:100%;height:20px;position:relative}.o_slider_overview .o_slider_overview_line{top:5px;left:0px;position:absolute;width:100%;height:11px;border:1px solid #999;border-radius:4px}.o_slider_overview .o_slider_overview_point{position:absolute;width:10px;height:10px;background-color:#337ab7}.o_evaluation_editor_form{margin:10px 10px 0 10px}.o_evaluation_editor_form .o_slider_editor{margin-top:10px}@media (max-width: 992px){.o_evaluation_editor_form .o_slider_editor{margin-bottom:20px}}@media (max-width: 992px){.o_evaluation_editor_form .o_evaluation_step_label{text-align:unset;margin-bottom:5px;padding-top:unset}}.o_evaluation_editor_form .o_evaluation_step_labels{display:inline-block}.o_evaluation_editor_form .o_evaluation_step_labels input{width:100%}.o_evaluation_editor_form .o_slider_descrete_radio{display:flex;justify-content:space-between}.o_evaluation_editor_form .o_slider_descrete_radio .radio{background-color:#f9f9f9;padding:0px;margin-top:0px;text-align:center}.o_evaluation_editor_form .o_slider_descrete_radio .radio:hover{background-color:#f5f5f5}@media (max-width: 992px){.o_evaluation_editor_form input[type="text"]{margin-bottom:5px}}.o_evaluation_editor_form .o_slider_continous{padding-top:10px;padding-bottom:-10px}.o_evaluation_editor_form .o_slider_descrete{padding-top:5px;padding-bottom:-5px}.o_evaluation_editor_form .o_evaluation_example{font-size:90%}.o_evaluation_editor_form .o_slider_top{margin-top:23px}.o_evaluation_editor_form .o_slider_buttons .pull-right div:not(:first-child){display:inline-block}.o_evaluation_editor_form .o_slider_buttons .pull-right .btn{margin-top:-3px}.o_evaluation_editor_form .o_slider_weight{max-width:40px}@media (max-width: 768px){.o_evaluation_form .o_evaluation_left_label{text-align:left;margin-bottom:0.5em}.o_evaluation_form .o_evaluation_right_label{text-align:right}.o_evaluation_form .o_evaluation_no_response{text-align:left}.o_evaluation_form .o_evaluation_no_response .o_evaluation_no_resp_value{font-weight:bold}.o_evaluation_form .o_slider{margin-bottom:2em}.o_evaluation_form .o_slider div{padding-left:0}.o_evaluation_form .o_slider .o_evaluation_no_response{margin-top:0.7em}}@media (min-width: 768px){.o_evaluation_form .o_evaluation_no_resp_value{display:none}}@media print{.o_evaluation_discrete_radio .o_slider .o_evaluation_steps div.radio{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#f9f9f9 !important}.o_icon_rubric_insufficient::before{color:#d9534f !important}.o_icon_rubric_neutral::before{color:#f0ad4e !important}.o_icon_rubric_sufficient::before{color:#5cb85c !important}}.o_eva_report_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_eva_report_print #o_print_brand img{width:100%}.o_eva_report_print .o_eva_content{margin-top:4em}.o_eva_report_print .o_eva_overview .panel table{margin:0px 0px 1px 0px}.o_eva_report_print .o_evaluation_duration,.o_eva_report_print .o_participated_users{display:none}.o_surv_run.withCmds .o_eva_report{margin-top:-44px}.o_eva_report .o_eva_overview .o_eva_rubric .table{margin-top:5px}.o_eva_report .o_ed_rubrictablehandler .o_table_footer{font-weight:bold}.o_eva_report .o_rubric_avg{font-weight:bold;white-sprace:nowrap}.o_eva_report .o_rubric_table .o_table_wrapper{margin-bottom:10px}.o_eva_report .o_rubric_table_legend{display:block}.o_eva_report .o_rubric_table_legend .ident{font-weight:bold}.o_eva_report .o_rubric_table_legend .list-inline{margin-bottom:0px}.o_eva_report .o_rubric_table_legend.o_last{margin-bottom:15px}.o_evaluation_execution .o_evaluation_anonymous_info{display:inherit}.o_qual_main .o_labeled.o_qual_dc_status_preparation,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_preparation{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_ready,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_ready{background-color:#ffd351;border-color:#ffd351;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_running,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_running{background-color:#933;border-color:#933;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_finished,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_finished{background-color:#14892c;border-color:#14892c;color:#fff}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_preparation{background-color:#384e64}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_ready{background-color:#ffc61e}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_running{background-color:#732626}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_finished{background-color:#0e5c1e}.o_qual_main .o_qual_dc_list tbody tr td:nth-child(1){padding-top:3px}.o_qual_main .o_labeled_light.o_qual_dc_status_preparation_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_preparation_light{border-color:#4a6785;color:#4a6785}.o_qual_main .o_labeled_light.o_qual_dc_status_ready_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_ready_light{border-color:#ffd351;color:#333}.o_qual_main .o_labeled_light.o_qual_dc_status_running_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_running_light{border-color:#933;color:#933}.o_qual_main .o_labeled_light.o_qual_dc_status_finished_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_finished_light{border-color:#14892c;color:#14892c}.o_qual_main .o_qual_exec_list tbody tr td:nth-child(1){padding-top:3px}.o_qual_main .o_qual_exec_status_future_light{border-color:#4a6785;color:#4a6785}.o_qual_main .o_qual_exec_status_ready_light{border-color:#ffd351;color:#333}.o_qual_main .o_qual_exec_status_participating_light{border-color:#933;color:#933}.o_qual_main .o_qual_exec_status_participated_light{border-color:#14892c;color:#14892c}.o_qual_main .o_qual_exec_status_over_light{border-color:#aaa;color:#aaa}.o_qual_execute_header .o_qual_context_table,.o_qual_report_header .o_qual_context_table{margin-bottom:0}.o_qual_execute_header .o_qual_context_table th,.o_qual_report_header .o_qual_context_table th{width:40%;border-top:none;padding:4px 8px}.o_qual_execute_header .o_qual_context_table td,.o_qual_report_header .o_qual_context_table td{width:60%;border-top:none;padding:4px 8px}.o_qual_ana_table .o_table_body{padding:0}.o_qual_ana_filter .o_date_range{margin-bottom:0px}.o_qual_ana_filter .o_date_range .control-label{margin-bottom:5px}.o_qual_ana_filter .o_date_range .o_date{margin-bottom:15px;padding-right:12px}.o_qual_ana_filter .o_date_range .o_date_range_from{padding-right:12px}.o_qual_ana_filter .o_date_range .o_date_range_to{padding-right:0px}.o_qual_hm_basecolor{background-color:#337ab7}.o_qual_hm .o_circle_container{display:flex}.o_qual_hm .o_circle_box{display:flex;align-items:center;justify-content:center}.o_qual_hm .o_circle{border-radius:50%}.o_qual_hm .o_circle.o_rubric_insufficient{background-color:#d9534f !important}.o_qual_hm .o_circle.o_rubric_neutral{background-color:#f0ad4e !important}.o_qual_hm .o_circle.o_rubric_sufficient{background-color:#5cb85c !important}.o_qual_hm .o_avg{display:flex;align-items:center;margin-left:5px}.o_qual_trend_invisible{visibility:hidden}.o_qual_trend .o_qual_ana_trend_up{transform:rotate(315deg);-webkit-transform:rotate(315deg);-moz-transform:rotate(315deg);-ms-transform:rotate(315deg);-o-transform:rotate(315deg)}.o_qual_trend .o_qual_ana_trend_down{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg)}.o_qual_trend .o_rubric_insufficient{color:#d9534f}.o_qual_trend .o_rubric_neutral{color:#f0ad4e}.o_qual_trend .o_rubric_sufficient{color:#5cb85c}.o_qual_trend .o_qual_ana_unrated{color:#337ab7}.o_qual_filtered_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_qual_filtered_print #o_print_brand img{width:100%}.o_qual_filtered_print .o_qual_content{margin-top:4em}.o_qual_filtered_print .o_groupby_config,.o_qual_filtered_print .o_slider_trend_config,.o_qual_filtered_print .o_qual_hm tr td:last-child,.o_qual_filtered_print .o_qual_hm tr th:last-child{display:none}.o_evaluation_bar_chart_legend{padding:5px}.o_evaluation_bar_chart_legend li{font-size:90%}.o_evaluation_bar_chart_legend .ident{font-weight:bold}@media (max-width: 768px){.o_hm_group_select{padding-bottom:12px}.o_hm_panel_body{margin-bottom:-12px}}@media (min-width: 768px){.o_hm_trend_row{padding-top:12px}}@media print{.o_qual_hm .o_circle{-webkit-print-color-adjust:exact;color-adjust:exact}.o_qual_hm .o_circle.o_rubric_insufficient{background-color:#d9534f !important}.o_qual_hm .o_circle.o_rubric_neutral{background-color:#f0ad4e !important}.o_qual_hm .o_circle.o_rubric_sufficient{background-color:#5cb85c !important}.o_qual_hm .o_circle.o_qual_hm_basecolor{background-color:#337ab7 !important}.o_qual_trend{-webkit-print-color-adjust:exact;color-adjust:exact}.o_qual_trend .o_rubric_insufficient::before{color:#d9534f !important}.o_qual_trend .o_rubric_neutral::before{color:#f0ad4e !important}.o_qual_trend .o_rubric_sufficient::before{color:#5cb85c !important}.o_qual_trend .o_qual_ana_unrated::before{color:#337ab7 !important}}.o_cit{position:relative;margin:10px 0}.o_cit blockquote.o_quote{color:#555;font-size:18px;margin-top:6px;margin-bottom:0;padding:0 12px;font-style:italic;padding:5px 5px 0;border:0}.o_cit blockquote.o_quote p:last-child:after{content:'1)';top:-0.5em;font-size:75%;line-height:0;position:relative;vertical-align:baseline}.o_cit .o_cit_bibinfo{font-size:90%;margin-left:1em;position:relative}.o_cit .o_cit_bibinfo>div:first-child:before{content:'1)';position:absolute;top:0.5em;left:-1em;font-size:75%;line-height:0;vertical-align:baseline}.o_cit .title,.o_cit .url,.o_cit .authors,.o_cit .pages,.o_cit .date,.o_cit .dateAdded,.o_cit .place,.o_cit .institution,.o_cit .issue,.o_cit .publisher,.o_cit .publicationTitle,.o_cit .edition,.o_cit .series,.o_cit .volume{margin-right:0.5em}.o_cit .title{font-style:italic}.o_cit .publicationTitle{color:black}.o_cit .links{padding-left:2em}.o_cit .notes{padding-left:2em;color:grey}.o_cit .note{font-style:italic}.o_cit .note p:first-child{margin-top:0}.o_cit .note p:first-child{margin-bottom:0}.o_cit .listing.web .item{padding-left:0;text-indent:0}.o_cit .listing.web .title{display:block;font-weight:bold;font-style:normal}.o_cit .listing.web .publicationTitle{display:block;font-style:italic}.o_cit .listing.web .url{display:block}.o_cit .listing.web .links{padding-left:0}.o_cit .listing.web .notes{padding-left:0}.o_cit .general-info{border-top:1px solid #eee;padding-top:30px;margin-top:30px}.o_cit .copyright{display:none}@media print{.o_cit blockquote.o_quote{page-break-inside:avoid}}.o_video_poster{position:relative;display:inline-block;width:400px;max-width:100%;height:225px;background-size:cover;background-repeat:no-repeat;border:1px solid #eee}.o_video_poster_select{text-align:center}.o_video_poster_select .o_video_poster{margin:5px}.o_video_poster_select .o_video_poster a{position:absolute;left:0;top:0;width:100%;height:100%}.o_video_poster_select .o_video_poster a span{position:absolute;bottom:0;width:100%;display:block;line-height:3em;background:#f8f8f8;opacity:0.8}.o_video_poster_select .o_video_poster a:hover{border:1px solid #bbb}.o_video_poster_select .o_video_poster a:hover span{opacity:0.9}.o_video_peekview{text-align:center}.o_video_listing .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_video_listing .o_video_entry{position:relative;display:inline-block;height:230px;width:250px;vertical-align:top;margin-right:10px}.o_video_listing .o_video_poster{width:250px;max-width:100%;height:140px;border:1px solid #eee}.o_video_listing .o_timecode{position:absolute;bottom:2px;right:3px;padding:3px 4px;background:#333;color:#fff;font-size:12px;line-height:12px}.o_video_listing .o_meta{padding:2px;font-size:11px}.o_video_listing .o_meta h5{font-size:14px;margin-top:0;margin-bottom:5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o_video_listing .o_date{margin-left:10px;display:inline-block}.o_video_listing .o_date:before{content:'\002022';margin-right:10px;display:inline-block}.o_video_run h1{font-size:1.8rem;font-weight:normal}.o_video_run .o_author{margin-top:0.5em;margin-bottom:1em;line-height:normal;font-size:90%;color:#3c763d}.o_video_run .o_ratings_and_comments{margin-top:2em;border-top:1px solid #eee;padding-top:1em}.o_video_chapter_editor .o_table_wrapper.o_table_flexi .table,.o_video_marker_editor .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_video_marker_editor .o_video_question.mejs__overlay{overflow:scroll}.o_video_question.mejs__overlay.o_video_large_question{align-items:flex-start;padding:1em 1em 0 1em;z-index:5}.o_video_question.mejs__overlay.o_video_large_question #o_qti_container{border:1px solid #eee}.o_video_marker{position:absolute;background-color:#efefef;opacity:0.85;border-left:3px solid #5bc0de;padding:5px}.o_video_marker.o_video_marker_gray{border-left-color:#333}.o_video_marker.o_video_marker_blue{border-left-color:#bce8f1}.o_video_marker.o_video_marker_green{border-left-color:#5cb85c}.o_video_marker.o_video_marker_yellow{border-left-color:#f0ad4e}.o_video_marker.o_video_marker_red{border-left-color:#d9534f}.o_video_question.mejs__overlay{width:100%;height:100%;background-color:rgba(255,255,255,0.5)}.o_video_question #itemBody,.o_video_question .modalFeedback{background-color:white;opacity:1.0}.o_video_question .o_assessmentitem_wrapper .o_qti_item_body{min-height:50px}.o_video_question #o_qti_assessment_test_timer{border:none;padding:5px;margin:0}.o_video_question #o_qti_progress .progress{height:10px}.o_video_question #o_qti_container{background-color:white;padding:5px;border-radius:3px}.o_video_question .o_sel_additional_feedback{float:left;font-size:26px}.o_video_question .o_sel_additional_feedback .o_icon_passed{color:#5cb85c}.o_video_question .o_sel_additional_feedback .o_icon_failed{color:#d9534f}.mejs__time-rail .o_video_marker_gray{background:#333}.mejs__time-rail .o_video_marker_blue{background:#bce8f1}.mejs__time-rail .o_video_marker_green{background:#5cb85c}.mejs__time-rail .o_video_marker_yellow{background:#f0ad4e}.mejs__time-rail .o_video_marker_red{background:#d9534f}.mejs__controls .mejs__sourcechooser-button>button{background:transparent;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}.mejs__controls .mejs__sourcechooser-button>button:before{content:"";color:white;font-size:18px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector{visibility:visible !important;width:170px;padding-left:10px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label{font-weight:normal;font-size:10px;width:140px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label:hover{color:#eee}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label .type{display:none}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li input{visibility:hidden;margin:0;width:0}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li input:checked+label{color:#d9534f}.mejs__controls .mejs__captions-button .mejs__captions-selector{right:-26px}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label{font-weight:normal;font-size:10px}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label:hover{color:#eee}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label .type{display:none}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li input{visibility:hidden;margin:0;width:0}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li input:checked+label{color:#d9534f}.mejs__button.mejs__speed-button{width:36px}.mejs__controls .mejs__speed-button>button{background:transparent;width:36px;margin:11px 0 0 0;font-size:11px;line-height:normal;color:#ffffff}.mejs__controls .mejs__speed-button .mejs__speed-selector{height:150px;top:auto;bottom:40px}.mejs__controls .mejs__speed-button .mejs__speed-selector ul li label{font-weight:normal;font-size:10px}.mejs__chapters .mejs__chapter .mejs__chapter-block .ch-title,.mejs__chapters .mejs__chapter .mejs__chapter-block .ch-time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.mejs__time-marker{background-color:#5bc0de}.o_userbulk_changedcell{font-style:italic;font-weight:bold}.o_qpool_source_status{text-align:center}.o_qitem_author{white-space:nowrap}a.o_qpool_status{margin:0 2px 2px 2px;text-align:left}.o_labeled.o_qpool_status_draft,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_draft{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_labeled.o_qpool_status_review,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_review{background-color:#ffd351;border-color:#ffd351;color:#fff}.o_labeled.o_qpool_status_revised,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_revised{background-color:#933;border-color:#933;color:#fff}.o_labeled.o_qpool_status_finalVersion,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_finalVersion{background-color:#14892c;border-color:#14892c;color:#fff}.o_labeled.o_qpool_status_endOfLife,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_endOfLife{background-color:#aaa;border-color:#aaa;color:#fff}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_draft{background-color:#384e64}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_review{background-color:#ffc61e}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_revised{background-color:#732626}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_finalVersion{background-color:#0e5c1e}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_endOfLife{background-color:#919191}.o_labeled_light.o_qpool_status_draft_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_draft_light{border-color:#4a6785;color:#4a6785}.o_labeled_light.o_qpool_status_review_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_review_light{border-color:#ffd351;color:#333}.o_labeled_light.o_qpool_status_revised_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_revised_light{border-color:#933;color:#933}.o_labeled_light.o_qpool_status_finalVersion_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_finalVersion_light{border-color:#14892c;color:#14892c}.o_labeled_light.o_qpool_status_endOfLife_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_endOfLife_light{border-color:#aaa;color:#aaa}.btn-arrow-right.o_qpool_qitem_draft{background:#f8f8f8;border-bottom-color:#4a6785;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_review{background:#f8f8f8;border-bottom-color:#ffd351;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_revised{background:#f8f8f8;border-bottom-color:#933;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_final{background:#f8f8f8;border-bottom-color:#14892c;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_end_of_life{background:#f8f8f8;border-bottom-color:#aaa;border-bottom-width:3px}.btn-arrow-right.o_qpool_status_slected{background-color:#e7e7e7;color:#555}.btn-arrow-right,.btn-arrow-left{position:relative;padding-left:18px;padding-right:18px;margin-bottom:5px}.btn-arrow-right{padding-left:36px}.btn-arrow-left{padding-right:36px}.btn-arrow-right:before,.btn-arrow-right:after,.btn-arrow-left:before,.btn-arrow-left:after{content:"";position:absolute;top:5px;width:22.627417px;height:22.627417px;background:inherit;border:inherit;border-left-color:transparent;border-bottom-color:transparent;border-radius:0px 4px 0px 0px;-webkit-border-radius:0px 4px 0px 0px;-moz-border-radius:0px 4px 0px 0px}.btn-arrow-right:before,.btn-arrow-right:after{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-o-transform:rotate(45deg);-ms-transform:rotate(45deg)}.btn-arrow-left:before,.btn-arrow-left:after{transform:rotate(225deg);-webkit-transform:rotate(225deg);-moz-transform:rotate(225deg);-o-transform:rotate(225deg);-ms-transform:rotate(225deg)}.btn-arrow-right:before,.btn-arrow-left:before{left:-11px}.btn-arrow-right:after,.btn-arrow-left:after{right:-11px}.btn-arrow-right:after,.btn-arrow-left:before{z-index:1}.btn-arrow-right:before,.btn-arrow-left:after{background-color:white}body.o_dmz{background:transparent}body.o_dmz #o_bg{position:absolute;top:0;left:0;width:100%;height:100%;border-top:50px solid transparent;border-bottom:70px solid transparent;background:url("../light/images/learn-bg.jpg");background-size:cover;background-position:center center;background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 )}body.o_dmz #o_bg:after{content:" ";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to right, rgba(255,255,255,0.1) 0.2%,rgba(255,255,255,0.6) 60%,rgba(255,255,255,0.8) 100%);background-size:cover;background-position:center center;background-repeat:no-repeat}body.o_dmz #o_toplink{display:none}body.o_dmz #o_main_wrapper,body.o_dmz #o_main_wrapper #o_main_container{background:transparent}body.o_dmz label>select{font-weight:normal}.o_login{padding-bottom:20px;padding-left:10%;padding-right:10%;text-align:right}.o_login .o_login_intro{padding-left:10%}.o_login .o_login_intro h1{margin-bottom:40px;color:#337ab7}.o_login .o_login_intro .lead{color:#333}.o_login .o_login_intro .lead h1,.o_login .o_login_intro .lead h2,.o_login .o_login_intro .lead h3,.o_login .o_login_intro .lead h4,.o_login .o_login_intro .lead .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_login .o_login_intro .lead h2,.o_login .o_login_intro .lead h5{margin-bottom:20px;color:#337ab7}.o_login .o_login_messages,.o_login .o_login_box{display:inline-block;width:400px;text-align:left}.o_login .o_login_messages .o_infomessage_wrapper{background:rgba(255,255,255,0.5);border:1px solid transparent;border-radius:4px;padding:6px 12px}.o_login .o_login_messages .o_infomessage_wrapper .o_info,.o_login .o_login_messages .o_infomessage_wrapper .o_warning,.o_login .o_login_messages .o_infomessage_wrapper .o_note{margin:0}.o_login .o_login_box{padding-top:10px}.o_login .o_login_providers{margin-bottom:6px;border-radius:4px;-webkit-box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3);box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3)}.o_login .o_login_providers a span{display:block;font-size:9px;padding-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_login .o_login_providers .o_icon_provider_olat{font-size:1em}.o_login .o_login_provider{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3);box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3)}.o_login .o_login_form{position:relative;padding:10px 12px}.o_login .o_login_form .o_login_pwd{position:absolute;bottom:2em;right:12px}.o_login .o_login_form .o_form .o_desc{margin:0 0 30px 0;padding:0;border-left:0;background-color:transparent}.o_login .o_login_register{display:block;line-height:2em;font-size:18px;text-align:center;color:#fff;background-color:#5bc0de;border-color:#46b8da;border-radius:4px;margin-top:16px;padding:10px 12px}.o_login .o_login_register:hover,.o_login .o_login_register:focus,.o_login .o_login_register.focus,.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#269abc}.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{background-image:none}.o_login .o_login_register.disabled,.o_login .o_login_register.disabled:hover,.o_login .o_login_register.disabled:focus,.o_login .o_login_register.disabled.focus,.o_login .o_login_register.disabled:active,.o_login .o_login_register.disabled.active,.o_login .o_login_register[disabled],.o_login .o_login_register[disabled]:hover,.o_login .o_login_register[disabled]:focus,.o_login .o_login_register[disabled].focus,.o_login .o_login_register[disabled]:active,.o_login .o_login_register[disabled].active,fieldset[disabled] .o_login .o_login_register,fieldset[disabled] .o_login .o_login_register:hover,fieldset[disabled] .o_login .o_login_register:focus,fieldset[disabled] .o_login .o_login_register.focus,fieldset[disabled] .o_login .o_login_register:active,fieldset[disabled] .o_login .o_login_register.active{background-color:#5bc0de;border-color:#46b8da}.o_login .o_login_register .badge{color:#5bc0de;background-color:#fff}.o_login .o_login_register small{font-size:14px}.o_login .o_login_social{position:relative;padding:10px 12px}.o_login .o_login_social li{padding:10px 12px}.o_login .o_login_social li>a{display:block;line-height:2em;text-align:center;font-size:18px;border-radius:4px;padding:10px 12px}.o_login .o_login_social .btn-default.o_sel_auth_facebook{color:#fff;background-color:#4568b2;border-color:#3e5da0}.o_login .o_login_social .btn-default.o_sel_auth_facebook:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_facebook.dropdown-toggle{color:#fff;background-color:#37538d;border-color:#2d4374}.o_login .o_login_social .btn-default.o_sel_auth_facebook:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_facebook.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled],.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook.active{background-color:#4568b2;border-color:#3e5da0}.o_login .o_login_social .btn-default.o_sel_auth_facebook .badge{color:#4568b2;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_twitter{color:#fff;background-color:#2cc5ff;border-color:#13beff}.o_login .o_login_social .btn-default.o_sel_auth_twitter:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_twitter.dropdown-toggle{color:#fff;background-color:#00b4f8;border-color:#009ad4}.o_login .o_login_social .btn-default.o_sel_auth_twitter:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_twitter.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled],.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter.active{background-color:#2cc5ff;border-color:#13beff}.o_login .o_login_social .btn-default.o_sel_auth_twitter .badge{color:#2cc5ff;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_google{color:#fff;background-color:#e15f4f;border-color:#dd4b39}.o_login .o_login_social .btn-default.o_sel_auth_google:hover,.o_login .o_login_social .btn-default.o_sel_auth_google:focus,.o_login .o_login_social .btn-default.o_sel_auth_google.focus,.o_login .o_login_social .btn-default.o_sel_auth_google:active,.o_login .o_login_social .btn-default.o_sel_auth_google.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_google.dropdown-toggle{color:#fff;background-color:#d83825;border-color:#ba3120}.o_login .o_login_social .btn-default.o_sel_auth_google:active,.o_login .o_login_social .btn-default.o_sel_auth_google.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_google.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_google.disabled,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled],.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google.active{background-color:#e15f4f;border-color:#dd4b39}.o_login .o_login_social .btn-default.o_sel_auth_google .badge{color:#e15f4f;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_linkedin{color:#fff;background-color:#0181bd;border-color:#0170a4}.o_login .o_login_social .btn-default.o_sel_auth_linkedin:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_linkedin.dropdown-toggle{color:#fff;background-color:#015e8a;border-color:#014667}.o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_linkedin.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled],.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin.active{background-color:#0181bd;border-color:#0170a4}.o_login .o_login_social .btn-default.o_sel_auth_linkedin .badge{color:#0181bd;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_adfs{color:#fff;background-color:#337ab7;border-color:#2e6da4}.o_login .o_login_social .btn-default.o_sel_auth_adfs:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_adfs.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.o_login .o_login_social .btn-default.o_sel_auth_adfs:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_adfs.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled],.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs.active{background-color:#337ab7;border-color:#2e6da4}.o_login .o_login_social .btn-default.o_sel_auth_adfs .badge{color:#337ab7;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect{color:#fff;background-color:#337ab7;border-color:#2e6da4}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled],.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active{background-color:#337ab7;border-color:#2e6da4}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect .badge{color:#337ab7;background-color:#fff}.o_old_browser{display:none}.o_browser_ie10 .o_old_browser{display:block}@media (max-width: 767px){body.o_dmz #o_bg{background:none;display:none}.o_login{padding:0}.o_login .o_login_intro{padding:0;text-align:left}.o_login .o_login_box_wrapper{text-align:center;padding:0}.o_login .o_login_box{padding-left:0;padding-right:0}.o_login .o_login_box .o_login_providers,.o_login .o_login_box .o_login_provider{-webkit-box-shadow:none;box-shadow:none}.o_login .o_login_messages,.o_login .o_login_box{width:100%;display:block}}.o_home_main h1{text-align:center}.o_home_main .o_icon_rss{line-height:20px;vertical-align:middle}.o_showall{font-size:12px;text-align:right;margin-bottom:5px;margin-top:10px}.o_portlet{position:relative;background-color:#fcfcfc;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_portlet .o_header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_portlet .o_content{padding:6px 12px}.o_portlet .o_portlet_table{margin:-12px;margin-bottom:-6px;margin-top:0}.o_portlet .o_table_empty.o_info{padding:6px}.o_portlet .o_toolbox{position:absolute;top:-1px;right:-1px;z-index:2;background-color:#fff;border:1px solid #faebcc;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;padding:6px 12px}.o_portlet .o_toolbox div{display:inline}.o_portlet .o_edit_shim{position:absolute;height:100%;width:100%;z-index:1;background:#fcf8e3;opacity:0.8}.o_inactive .o_header a{float:right;margin-left:12px;margin-top:10px}.o_portlet_dyk_q{margin-top:5px;font-style:italic}.o_portlet_dyk_a{margin:5px 0}.o_portlet_dyk_next{margin:5px 0;text-align:right}.o_library_icon:before{content:""}.o_library ul{list-style:none;margin:0 0 15px 0;padding:0}.o_library ul ul{margin:0}.o_library_overview .o_library_newest_files ul li{float:left;margin-right:15px}.o_library_catalog_title h2,.o_library_catalog_title h3,.o_library_catalog_title h4,.o_library_catalog_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_catalog_title h2{margin-top:0}.o_library_item{margin-bottom:10px;position:relative}.o_library_item .o_library_visual,.o_library_item .o_library_extra,.o_library_item .o_library_meta{margin-top:15px}.o_library_item .o_library_visual{float:left;background-color:#fff;border-radius:4px;border:1px solid #ddd}.o_library_item .o_library_visual .o_thumbnail_available,.o_library_item .o_library_visual .o_thumbnail_unavailable{background-size:146px auto;width:150px !important;height:150px !important;background-repeat:no-repeat;background-position:50% 50%}.o_library_item .o_library_visual .o_thumbnail_available:before,.o_library_item .o_library_visual .o_thumbnail_unavailable:before{content:none}.o_library_item .o_library_visual .o_thumbnail_available{background-size:146px auto}.o_library_item .o_library_visual .o_thumbnail_unavailable{display:none}.o_library_item .o_library_extra{float:right;width:200px}.o_library_item .o_library_meta{clear:both}.o_library_item .o_library_meta .o_library_desc{padding-bottom:10px}.o_library_item .o_library_meta small{display:block;word-wrap:break-word}.o_library_item h4,.o_library_item .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_item h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:normal}.o_library_item .btn{display:block;margin-bottom:0.5em}.o_library_item .o_comments{display:inline-block}.o_library_item .table{table-layout:fixed;word-wrap:break-word;margin-bottom:0}.o_library_item p.o_library_show_more{text-align:right;margin:0;padding-top:20px}.o_library_item .o_library_more{padding-top:20px;display:none}.o_library_folder{margin-top:-20px}.o_library .o_ratings_and_comments .o_rating_title,.o_library .o_ratings_and_comments .o_rating_explanation{display:none}@media (min-width: 768px){.o_library_item .o_library_meta{clear:none;margin-left:150px;margin-right:200px;padding:0 10px}.o_library_item .o_library_more{display:none}.o_library_item .o_library_more table tbody{vertical-align:top}.o_library_item .o_library_more table tr,.o_library_item .o_library_more table th,.o_library_item .o_library_more table td{display:inline-block}.o_library_item .o_library_more table tr{width:49%}.o_library_item .o_library_more table th{width:30%}.o_library_item .o_library_more table td{width:70%}}.o_library_item_compact .o_library_extra{width:auto}.o_library_item_compact .o_library_meta{padding:0 10px 0 0;margin:0;overflow:hidden}.o_library_item_compact .btn{display:inline-block}.o_library_item_compact h4,.o_library_item_compact .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_item_compact h2{overflow:hidden;margin-right:70px}.o_library_item_compact h4 a,.o_library_item_compact .o_cal .fc-header-title h2 a,.o_cal .fc-header-title .o_library_item_compact h2 a{text-overflow:ellipsis;white-space:nowrap}.o_library_item_compact p.o_library_show_more{padding:20px;position:absolute;top:0;right:0}span.o_translation_i18nitem{position:relative !important}span.o_translation_i18nitem a.o_translation_i18nitem_launcher{position:absolute !important;z-index:100 !important;width:18px !important;height:20px !important;top:0 !important;left:5px !important;background:#fff;border:1px solid #337ab7 !important;border-radius:3px;text-align:center;padding:0 !important}.o_user_infos{position:relative}.o_user_infos .o_user_portrait{position:absolute;top:0;left:15px;width:100px;height:100px}.o_user_infos .o_user_infos_inner{margin:0 30px 0 100px}.o_user_infos .o_user_infos_inner table{margin:0 30px 15px 30px}.o_useradmin .o_user_infos .o_user_infos_inner{margin-right:45px}div.o_skype_button{display:inline-block}div.o_skype_button p{margin:0 0 0 0}div.o_skype_button p a img{margin:0 !important;vertical-align:middle !important}.o_useradmin div#o_main_toolbar.o_toolbar{margin-top:0px}.o_members_pagination{text-align:center}.o_bcard_logo{margin-left:10px;height:66px}.o_bcard_title_with_logo{clear:both;padding:20px 0 0 0}.o_visitingcard_image,.o_visitingcard_logo{height:66px}.o_visitingcard .o_icon_visitingcard{display:none}.o_visitingcard .o_portrait_avatar,.o_visitingcard .o_portrait_dummy,.o_visitingcard .o_portrait_dummy_female_big,.o_visitingcard .o_portrait_dummy_male_big,.o_visitingcard .o_portrait_anonymous{width:66px;height:66px;margin-right:10px}@media (max-width: 767px){.o_visitingcard .o_portrait_avatar,.o_visitingcard .o_portrait_dummy,.o_visitingcard .o_portrait_dummy_female_big,.o_visitingcard .o_portrait_dummy_male_big,.o_visitingcard .o_portrait_anonymous{width:50px;height:50px;margin:5px 5px 0 0}.o_visitingcard_image,.o_visitingcard_logo{height:50px}.o_visitingcard_logo,.o_bcard_logo{height:50px;margin:5px 0 0 5px}.o_visitingcard_logo img,.o_bcard_logo img{position:relative;transform:scale(.7575757576);top:-8px}}@media (max-width: 414px){.o_visitingcard_logo img{max-width:260px}}@media (max-width: 375px){.o_visitingcard_logo img{max-width:220px}}@media (max-width: 320px){.o_visitingcard_logo img{max-width:180px}.o_bcard_logo img{max-width:150px}}.o_gta_coach_selection .o_noti{display:inline-block;float:none;margin:0}.o_gta_coach_selection .o_gta_coach_selection_bar{position:relative}.o_gta_coach_selection .o_gta_coach_selection_bar .o_noti{position:absolute;top:3px;right:0}p.o_gta_reopen_warning{margin-top:-20px}.o_lecture_authorized_absence div.form-inline,.o_lecture_authorized_absence div.o_navbar-form{display:inline}.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_date,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_startTime,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_endTime,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_details,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_tools{width:1%}.o_lectures_teacher_overview .o_lectures_current_wrapper{border:1px solid transparent;background:#f8f8f8;border-radius:4px;margin:10px -10px 20px -10px;padding:10px}.o_lectures_teacher_overview .o_lectures_current_wrapper .o_button_group{margin-bottom:0}.o_lectures_teacher_overview .o_lectures_teacher_search .o_form .o_date{padding-right:10px;position:relative}.o_lectures_teacher_overview .o_lectures_teacher_search div.o_chelp_wrapper_and_buttons{position:absolute;top:0;right:0}.o_header_with_buttons .o_day_chooser{position:relative;float:right}.o_lectures_rollcall legend{margin-bottom:10px}.o_lectures_rollcall .o_desc,.o_lectures_rollcall .o_preparation{margin:0}.o_rollcall_next_previous_group{text-align:center}.o_rollcall_next_previous_group a.o_sel_close{float:left}.o_rollcall_next_previous_group a.o_sel_close span{display:none}.o_rollcall_next_previous_group .form-control{display:inline;width:auto}@media (max-width: 767px){.o_rollcall_next_previous_group a span{display:none}}.o_lecture_free{color:#777}.o_rollcall_portrait>div{margin:0 auto 10px auto;width:100px}.o_edubase_pv{overflow:hidden;padding-top:10px}.o_edubase_pv_fig{display:inline-block;vertical-align:top;width:110px;margin-right:3%}.o_edubase_run_enabled .o_edubase_page{font-size:12px;color:#777}.o_edubase_run_disabled .o_edubase_booksection{margin-right:3%;margin-bottom:3%;width:177px;display:inline-table}.o_edubase_run_disabled .o_edubase_page{font-size:12px;color:#777}.o_edubase_bs_buttons{padding-top:10px}.o_edubase_bs_book_id{margin-top:-2px}.o_edubase_bs_details{margin-left:-20px}.o_edubase_bs_details_label{visibility:hidden}.o_edubase_bs_cover object{margin-left:10px;margin-top:10px;height:120px}.o_edubase_bs_cover img{margin-left:10px;margin-top:10px;height:120px}.o_edubase_edit_books .o_icon_error{visibility:hidden}.o_edubase_edit_books .o_icon_help{margin-bottom:0px}.o_edubase_edit_books .row{margin-bottom:5px}.o_edusharing_container.o_in_iframe .edusharing_metadata_wrapper{margin-top:5px}.o_edusharing_container.o_in_iframe .edusharing_metadata.open{position:unset;margin:0;padding:0}.o_edusharing_container.o_in_iframe .edusharing_metadata.open:before{content:unset;border:unset;top:unset;position:unset;left:unset;width:unset;height:unset}.o_edusharing_container.o_hide_license .license{display:none}.o_edusharing_container.o_hide_infos .edusharing_metadata_wrapper{display:none}.o_edusharing_left{display:block;float:left;margin:5px 5px 5px 0}.o_edusharing_right{display:block;float:right;margin:5px 0 5px 5px}.o_edusharing_inline{display:inline-block;margin:0 5px}.o_edusharing_none{display:block;float:none;margin:5px 0}.eduContainer{width:180px;color:transparent}.edusharing_spinner_inner{width:30px;height:50px;display:inline-block}.edusharing_spinner1{background:url("../light/images/edusharing/hex1.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.1s;-moz-animation-delay:0.1s;animation-delay:0.1s}.edusharing_spinner2{background:url("../light/images/edusharing/hex2.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.25s;-moz-animation-delay:0.25s;animation-delay:0.25s}.edusharing_spinner3{background:url("../light/images/edusharing/hex3.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.5s;-moz-animation-delay:0.5s;animation-delay:0.5s}@-webkit-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-moz-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-ms-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-o-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5) rotate(90deg)}100%{transform:scale(1)}}body.o_doceditor_body{margin-bottom:0px}body.o_doceditor_body .o_container_offcanvas{max-width:100%}body.o_doceditor_body .container-fluid{padding-left:0px;padding-right:0px;margin-left:0px;margin-right:0px}body.o_doceditor_body #o_toplink{display:none}.o_doceditor{margin-top:10px}.o_doceditor .o_doceditor_config .nav button{margin-top:3px}.o_doceditor .navbar-collapse{border-top:0 !important}.o_doceditor .navbar-collapse.collapse{display:block !important}.o_doceditor .navbar-nav{margin:0}.o_doceditor .navbar-nav>li,.o_doceditor .navbar-nav{float:left !important}.o_doceditor .navbar-right{float:right !important}.o_doceditor .navbar-nav>li>.dropdown-menu{background-color:#f8f8f8;border-color:#e7e7e7;position:absolute;right:0;left:auto}.o_doceditor .navbar-nav>li>a{padding-top:10px !important;padding-bottom:10px !important;line-height:20px !important}.o_doceditor .o_collabora iframe,.o_doceditor .o_onlyoffice iframe,.o_doceditor .o_office365 iframe{width:100%;height:calc(100vh - 61px);height:calc(var(--doceditorvh, 1vh) * 100 - 61px);margin-top:10px;border-width:0px}.o_doceditor.o_web_document .o_collabora iframe,.o_doceditor.o_web_document .o_onlyoffice iframe,.o_doceditor.o_web_document .o_office365 iframe{width:100%;height:calc(100vh - 321px);height:calc(var(--doceditorvh, 1vh) * 100 - 321px);margin-top:10px;margin-bottom:10px;border-width:1px}.o_doceditor.o_web_document_edit .o_collabora iframe,.o_doceditor.o_web_document_edit .o_onlyoffice iframe,.o_doceditor.o_web_document_edit .o_office365 iframe{width:100%;height:calc(100vh - 276px);height:calc(var(--doceditorvh, 1vh) * 100 - 276px);margin-top:10px;margin-bottom:25px;border-width:1px}.o_doceditor .o_file_editor,.o_doceditor .o_doceditor_data_transfer{margin-right:15px;margin-left:15px}.o_web_content .o_doceditor{margin-top:0px}.o_taxonomy div#o_main_toolbar.o_toolbar{margin-top:0px}.o_taxonomy_listing.o_rendertype_custom .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_taxonomy_listing.o_rendertype_custom .o_taxonomy_row{position:relative;display:inline-block;height:225px;width:450px;vertical-align:top;margin-right:10px}.o_taxonomy_listing.o_rendertype_custom .o_taxonomy_row ul{padding-left:2em}.ui-widget{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:100%}.ui-widget-header{border-top:none;border-left:none;border-right:none;border-bottom:1px solid #eee;background:#fff;font-weight:bold}.ui-icon,.ui-widget-content .ui-icon,.ui-widget-header .ui-icon,.ui-state-default .ui-icon,.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-active .ui-icon,.ui-state-highlight .ui-icon,.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background:none;background-image:none}.ui-dialog{-webkit-box-shadow:0px 1px 8px -1px rgba(0,0,0,0.35);box-shadow:0px 1px 8px -1px rgba(0,0,0,0.35);background-color:#fefefe}.ui-dialog .ui-widget-header .ui-dialog-title{color:#337ab7;font-weight:500;font-family:inherit;line-height:1.1}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close:before{content:"ï€" !important}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close span{display:none}.ui-dialog .ui-widget-header .ui-button.ui-corner-all{border:none !important;background:#fff !important;float:right}.ui-dialog .ui-widget-content{border-color:#fff;padding:5px;overflow:auto;background:white !important}.ui-dialog .ui-dialog-titlebar{padding:4px 7px 4px 7px;background-color:#eee !important}.ui-dialog.ui-corner-all{border-radius:4px}.ui-dialog.ui-widget-content{border:1px solid transparent}.ui-dialog.o_modal-ui{max-width:100vw;max-height:100vh}.ui-dialog.o_modal-ui div.ui-dialog-buttonpane{display:none}@media (max-width: 767px){.ui-dialog.o_modal-ui{height:100vh !important;width:100vw !important}.ui-dialog.o_modal-ui div.ui-dialog-content{height:90vh !important}}.ui-slider.ui-slider-horizontal.ui-widget-content{border-color:#aaa;background:#f9f9f9}.ui-slider.ui-slider-horizontal.ui-widget-content.ui-state-disabled{opacity:0.65}.o_has_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:1px solid #337ab7;background-image:none;background-color:#337ab7}.o_no_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:3px solid #337ab7;background-image:none}.ui-datepicker{z-index:2000 !important;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.ui-datepicker .ui-widget-header .ui-corner-all,.ui-datepicker .ui-widget-header .ui-datepicker-next.ui-corner-all{border:none !important;background:#fff !important}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e:before{content:"ï¡";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w:before{content:"ï ";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e,.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w{font-family:'FontAwesome';display:inline-block;background-image:none;background-position:0 0;font-weight:normal;text-indent:0;color:white}.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-next-hover{top:2px}.ui-datepicker .ui-state-default{background:#eee}.ui-datepicker .ui-state-highlight,.ui-datepicker .ui-widget-content .ui-state-highlight{border:1px solid #2e6da4;background:#337ab7;color:#fff}.ui-datepicker.ui-corner-all{border-radius:4px}.ui-datepicker.ui-widget-content{border:1px solid transparent}label.mce-label{display:inline;max-width:150px;margin-bottom:0;font-weight:normal}.o_richtext_mce_without_path .mce-statusbar{border:none}.o_richtext_mce_without_path .mce-path{display:none !important}.o_richtext_mce_without_path .mce-menubtn.mce-fixed-width span{width:auto}.o_richtext_mce>.o_richtext_mce_modes{text-align:right;padding-right:4px}.o_richtext_mce>.o_richtext_mce_modes a{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}i.mce-ico.mce-i-media,i.mce-ico.mce-i-movie,i.mce-ico.mce-i-help,i.mce-ico.mce-i-gaptext,i.mce-ico.mce-i-gapnumerical,i.mce-ico.mce-i-hottext,i.mce-ico.mce-i-edit{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}i.mce-ico.mce-i-media:before{content:""}i.mce-ico.mce-i-movie:before{content:""}i.mce-ico.mce-i-gaptext:before{content:"ï…"}i.mce-ico.mce-i-gapnumerical:before{content:""}i.mce-ico.mce-i-hottext:before{content:"ï"}i.mce-ico.mce-i-math:before{content:'\03A3'}i.mce-ico.mce-i-edit:before{content:"ï„"}i.mce-ico.mce-i-help{width:9px;height:9px;padding-top:1px}i.mce-ico.mce-i-help:before{content:"ï™";color:white}.mce-tabs span.o_chelp_wrapper{float:right;margin:5px}.mce-wordcount:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0);content:"ï™"}.mce-danger .mce-wordcount:after{color:#d9534f;content:"ïª"}.mce-statusbar.mce-danger{background-color:#f2dede}.mce-textbox.mce-danger{border-color:#ce8383;background-color:#f2dede}@media (max-width: 470px){.mce-foot .mce-container-body.mce-abs-layout{left:-337px}}div.o_table_search>span.twitter-typeahead{padding-top:5px}.tag.label.label-info{margin-right:3px}@media print{a[href]:after{content:""}#o_header_wrapper,#o_offcanvas_right,#o_navbar_wrapper,#o_footer_wrapper,#o_toplink,#o_main_left,#o_main_right,#o_main_toolbar,#jsMath_PrintWarning,.o_segments,.o_table_toolbar,.o_breadcrumb,.o_bookmark,.o_noti,.o_opener,.o_hide,.o_noprint{display:none !important}.o_container_offcanvas{max-width:100%;margin-left:5px;margin-right:5px}.o_print_break_avoid{page-break-inside:avoid}.o_print_break_before{page-break-before:always}.o_print_break_after{clear:both;page-break-after:always}.btn{display:none}.o_form textarea,.o_form .form-control.textarea_disabled{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fff !important;height:auto !important;color:#000 !important;resize:none}#o_comment_form_link,.o_comments form{display:none !important}.o_avatar{display:none}body.o_dmz{background:white !important;-webkit-print-color-adjust:exact;color-adjust:exact}.modal-content{border:0}.modal-header{display:none}.modal-body{padding:0}.modal-dialog{margin:0 !important;width:100% !important;height:100% !important;background:#fff !important;-webkit-print-color-adjust:exact;color-adjust:exact}.progress{page-break-inside:avoid;-webkit-print-color-adjust:exact;color-adjust:exact;background-color:rgba(0,0,0,0.1) !important;border:1px solid rgba(0,0,0,0.5)}.progress-bar{-webkit-print-color-adjust:exact;background-color:#000 !important;border:10px solid #000}.ui-slider.ui-slider-horizontal.ui-widget-content{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f9f9f9 !important}.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{-webkit-print-color-adjust:exact;color-adjust:exact}.o_has_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{background-color:#337ab7 !important}.o_no_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:none !important}.radial-progress,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{page-break-inside:avoid;-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#eee !important}.radial-progress .circle .mask .fill{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#000 !important}.radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#fff !important}.radial-progress .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{opacity:0.3;transition:opacity 0.3}.radial-progress .inset .bgIcon:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon:before,.radial-progress .inset .o_icon_progress_danger:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .o_icon_progress_danger:before,.radial-progress .inset .o_icon_progress_success:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .o_icon_progress_success:before{opacity:0.3;transition:opacity 0.3;color:#777 !important}.radial-progress:not([data-progress="0"]) .inset .bgIcon{opacity:0.3;transition:opacity 0.3;color:#777 !important}body{margin:0;zoom:0.6}table,figure,figure{page-break-inside:avoid}h1,h2,h3,h4,.o_cal .fc-header-title h2,h5,h6{page-break-after:avoid}.o_disclaimer .o_disclaimer_content{max-height:none}}.o_highscore .o_position{text-align:center;font-size:1.2em;font-weight:bold}.o_highscore .o_position h2{font-size:3em;font-weight:700;line-height:1.2em}@media screen and (-webkit-min-device-pixel-ratio: 0){.o_highscore .o_position h2{background:linear-gradient(330deg, #e05252 0%, #99e052 25%, #52e0e0 50%, #9952e0 75%, #e05252 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline}.o_highscore .o_position h2:after{content:"\A";white-space:pre}}.o_highscore .o_position_relative{font-size:1em;font-weight:normal}.o_highscore .o_podium{position:relative;vertical-align:bottom;height:300px;margin-bottom:50px}.o_highscore .o_rank{width:30%;position:absolute;bottom:0;text-shadow:rgba(102,102,102,0.5) 0 -1px 0,rgba(255,255,255,0.6) 0 2px 1px}.o_highscore .o_rank:before{position:absolute;bottom:0;left:0;width:100%;text-align:center}.o_highscore .o_rank .o_name{position:absolute;top:100%;width:100%;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:1em;text-shadow:none}.o_highscore .o_rank .o_score{color:#777;font-size:90%;width:100%;text-align:center;position:absolute;top:-20px;text-shadow:none}.o_highscore .o_rank .o_singleportrait{position:absolute;width:100%;text-align:center;top:-125px}.o_highscore .o_rank .o_rank_portraits{position:relative;left:0;top:-210px;height:180px;width:200px;text-align:center;vertical-align:bottom;display:table-cell}.o_highscore .o_rank .o_rank_portraits ul{display:inline-block}.o_highscore .o_rank .o_rank_portraits .o_portrait{margin:5px}.o_highscore .o_first{height:150px;left:30%;border:1px solid #d9d9d9;border-top-left-radius:4px;border-top-right-radius:4px;background:gold;background:-moz-linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);background:-webkit-linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);background:linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 )}.o_highscore .o_first:before{content:"1";font-size:700%;line-height:150px;color:#666}.o_highscore .o_second{height:100px;left:0;background:silver;background:-moz-linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);background:-webkit-linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);background:linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 );border-left:1px solid #d9d9d9;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-top-left-radius:4px}.o_highscore .o_second:before{content:"2";font-size:500%;line-height:100px;color:#666}.o_highscore .o_third{height:80px;left:60%;background:#cd7f32;background:-moz-linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);background:-webkit-linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);background:linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 );border-right:1px solid #d9d9d9;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-top-right-radius:4px}.o_highscore .o_third:before{content:"3";font-size:300%;line-height:80px;color:#666}.o_highscore .o_histogram{position:relative;bottom:-40px;margin-bottom:40px}.o_highscore .o_histogram .d3chart{width:100%;padding-top:50px;height:300px}.o_highscore .o_histogram .d3chart text{fill:#888}.o_highscore .o_histogram .d3chart .axis path,.o_highscore .o_histogram .d3chart .axis line{stroke:#888}.o_highscore .o_histogram .d3chart .o_myself{fill:#337ab7}.o_highscore .o_histogram .d3chart .o_myself:hover{fill:#5094ce}.o_highscore .o_histogram .d3chart .o_other{fill:#777}.o_highscore .o_histogram .d3chart .o_other:hover{fill:#919191}.o_highscore .o_histogram .d3chart .o_empty{fill:#000}.o_listing .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_listing table th:nth-of-type(1),.o_listing table th :nth-of-type(2){width:5em} +**//*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff !important}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:hover,a:focus{color:#23527c;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail,.o_form .o_filepreview img,.o_feed .o_media{padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,.o_cal .fc-header-title h2,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h1 .small,h2 small,h2 .small,h3 small,h3 .small,h4 small,.o_cal .fc-header-title h2 small,h4 .small,.o_cal .fc-header-title h2 .small,h5 small,h5 .small,h6 small,h6 .small,.h1 small,.h1 .small,.h2 small,.h2 .small,.h3 small,.h3 .small,.h4 small,.h4 .small,.h5 small,.h5 .small,.h6 small,.h6 .small{font-weight:normal;line-height:1;color:#777}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,h1 .small,.h1 small,.h1 .small,h2 small,h2 .small,.h2 small,.h2 .small,h3 small,h3 .small,.h3 small,.h3 .small{font-size:65%}h4,.o_cal .fc-header-title h2,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.o_cal .fc-header-title h2 small,h4 .small,.o_cal .fc-header-title h2 .small,.h4 small,.h4 .small,h5 small,h5 .small,.h5 small,.h5 .small,h6 small,h6 .small,.h6 small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.o_cal .fc-header-title h2,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width: 768px){.lead{font-size:21px}}small,.small{font-size:85%}mark,.mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff}.bg-primary{background-color:#337ab7}a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ul ol,ol ul,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}.dl-horizontal dd:before,.dl-horizontal dd:after{content:" ";display:table}.dl-horizontal dd:after{clear:both}@media (min-width: 768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.428571429;color:#777}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,.blockquote-reverse small:before,.blockquote-reverse .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,.blockquote-reverse small:after,.blockquote-reverse .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:bold;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container:before,.container:after{content:" ";display:table}.container:after{clear:both}@media (min-width: 768px){.container{width:750px}}@media (min-width: 992px){.container{width:970px}}@media (min-width: 1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container-fluid:before,.container-fluid:after{content:" ";display:table}.container-fluid:after{clear:both}.row{margin-left:-15px;margin-right:-15px}.row:before,.row:after{content:" ";display:table}.row:after{clear:both}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-1{width:8.3333333333%}.col-xs-2{width:16.6666666667%}.col-xs-3{width:25%}.col-xs-4{width:33.3333333333%}.col-xs-5{width:41.6666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.3333333333%}.col-xs-8{width:66.6666666667%}.col-xs-9{width:75%}.col-xs-10{width:83.3333333333%}.col-xs-11{width:91.6666666667%}.col-xs-12{width:100%}.col-xs-pull-0{right:auto}.col-xs-pull-1{right:8.3333333333%}.col-xs-pull-2{right:16.6666666667%}.col-xs-pull-3{right:25%}.col-xs-pull-4{right:33.3333333333%}.col-xs-pull-5{right:41.6666666667%}.col-xs-pull-6{right:50%}.col-xs-pull-7{right:58.3333333333%}.col-xs-pull-8{right:66.6666666667%}.col-xs-pull-9{right:75%}.col-xs-pull-10{right:83.3333333333%}.col-xs-pull-11{right:91.6666666667%}.col-xs-pull-12{right:100%}.col-xs-push-0{left:auto}.col-xs-push-1{left:8.3333333333%}.col-xs-push-2{left:16.6666666667%}.col-xs-push-3{left:25%}.col-xs-push-4{left:33.3333333333%}.col-xs-push-5{left:41.6666666667%}.col-xs-push-6{left:50%}.col-xs-push-7{left:58.3333333333%}.col-xs-push-8{left:66.6666666667%}.col-xs-push-9{left:75%}.col-xs-push-10{left:83.3333333333%}.col-xs-push-11{left:91.6666666667%}.col-xs-push-12{left:100%}.col-xs-offset-0{margin-left:0%}.col-xs-offset-1{margin-left:8.3333333333%}.col-xs-offset-2{margin-left:16.6666666667%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-4{margin-left:33.3333333333%}.col-xs-offset-5{margin-left:41.6666666667%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-7{margin-left:58.3333333333%}.col-xs-offset-8{margin-left:66.6666666667%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-10{margin-left:83.3333333333%}.col-xs-offset-11{margin-left:91.6666666667%}.col-xs-offset-12{margin-left:100%}@media (min-width: 768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-1{width:8.3333333333%}.col-sm-2{width:16.6666666667%}.col-sm-3{width:25%}.col-sm-4{width:33.3333333333%}.col-sm-5{width:41.6666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.3333333333%}.col-sm-8{width:66.6666666667%}.col-sm-9{width:75%}.col-sm-10{width:83.3333333333%}.col-sm-11{width:91.6666666667%}.col-sm-12{width:100%}.col-sm-pull-0{right:auto}.col-sm-pull-1{right:8.3333333333%}.col-sm-pull-2{right:16.6666666667%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.3333333333%}.col-sm-pull-5{right:41.6666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.3333333333%}.col-sm-pull-8{right:66.6666666667%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.3333333333%}.col-sm-pull-11{right:91.6666666667%}.col-sm-pull-12{right:100%}.col-sm-push-0{left:auto}.col-sm-push-1{left:8.3333333333%}.col-sm-push-2{left:16.6666666667%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.3333333333%}.col-sm-push-5{left:41.6666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.3333333333%}.col-sm-push-8{left:66.6666666667%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.3333333333%}.col-sm-push-11{left:91.6666666667%}.col-sm-push-12{left:100%}.col-sm-offset-0{margin-left:0%}.col-sm-offset-1{margin-left:8.3333333333%}.col-sm-offset-2{margin-left:16.6666666667%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.3333333333%}.col-sm-offset-5{margin-left:41.6666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.3333333333%}.col-sm-offset-8{margin-left:66.6666666667%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.3333333333%}.col-sm-offset-11{margin-left:91.6666666667%}.col-sm-offset-12{margin-left:100%}}@media (min-width: 992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-1{width:8.3333333333%}.col-md-2{width:16.6666666667%}.col-md-3{width:25%}.col-md-4{width:33.3333333333%}.col-md-5{width:41.6666666667%}.col-md-6{width:50%}.col-md-7{width:58.3333333333%}.col-md-8{width:66.6666666667%}.col-md-9{width:75%}.col-md-10{width:83.3333333333%}.col-md-11{width:91.6666666667%}.col-md-12{width:100%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.3333333333%}.col-md-pull-2{right:16.6666666667%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.3333333333%}.col-md-pull-5{right:41.6666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.3333333333%}.col-md-pull-8{right:66.6666666667%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.3333333333%}.col-md-pull-11{right:91.6666666667%}.col-md-pull-12{right:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.3333333333%}.col-md-push-2{left:16.6666666667%}.col-md-push-3{left:25%}.col-md-push-4{left:33.3333333333%}.col-md-push-5{left:41.6666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.3333333333%}.col-md-push-8{left:66.6666666667%}.col-md-push-9{left:75%}.col-md-push-10{left:83.3333333333%}.col-md-push-11{left:91.6666666667%}.col-md-push-12{left:100%}.col-md-offset-0{margin-left:0%}.col-md-offset-1{margin-left:8.3333333333%}.col-md-offset-2{margin-left:16.6666666667%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.3333333333%}.col-md-offset-5{margin-left:41.6666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.3333333333%}.col-md-offset-8{margin-left:66.6666666667%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.3333333333%}.col-md-offset-11{margin-left:91.6666666667%}.col-md-offset-12{margin-left:100%}}@media (min-width: 1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-1{width:8.3333333333%}.col-lg-2{width:16.6666666667%}.col-lg-3{width:25%}.col-lg-4{width:33.3333333333%}.col-lg-5{width:41.6666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.3333333333%}.col-lg-8{width:66.6666666667%}.col-lg-9{width:75%}.col-lg-10{width:83.3333333333%}.col-lg-11{width:91.6666666667%}.col-lg-12{width:100%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.3333333333%}.col-lg-pull-2{right:16.6666666667%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.3333333333%}.col-lg-pull-5{right:41.6666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.3333333333%}.col-lg-pull-8{right:66.6666666667%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.3333333333%}.col-lg-pull-11{right:91.6666666667%}.col-lg-pull-12{right:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.3333333333%}.col-lg-push-2{left:16.6666666667%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.3333333333%}.col-lg-push-5{left:41.6666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.3333333333%}.col-lg-push-8{left:66.6666666667%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.3333333333%}.col-lg-push-11{left:91.6666666667%}.col-lg-push-12{left:100%}.col-lg-offset-0{margin-left:0%}.col-lg-offset-1{margin-left:8.3333333333%}.col-lg-offset-2{margin-left:16.6666666667%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.3333333333%}.col-lg-offset-5{margin-left:41.6666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.3333333333%}.col-lg-offset-8{margin-left:66.6666666667%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.3333333333%}.col-lg-offset-11{margin-left:91.6666666667%}.col-lg-offset-12{margin-left:100%}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>thead>tr>td,.table>tbody>tr>th,.table>tbody>tr>td,.table>tfoot>tr>th,.table>tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>th,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>thead>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>thead>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>thead>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>thead>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>thead>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width: 767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}input[type="range"]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;background-color:#fcfcfc;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;-o-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#fafafa;opacity:1}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio: 0){input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{line-height:34px}input[type="date"].input-sm,.input-group-sm>input[type="date"].form-control,.input-group-sm>input[type="date"].input-group-addon,.input-group-sm>.input-group-btn>input[type="date"].btn,input[type="time"].input-sm,.input-group-sm>input[type="time"].form-control,.input-group-sm>input[type="time"].input-group-addon,.input-group-sm>.input-group-btn>input[type="time"].btn,input[type="datetime-local"].input-sm,.input-group-sm>input[type="datetime-local"].form-control,.input-group-sm>input[type="datetime-local"].input-group-addon,.input-group-sm>.input-group-btn>input[type="datetime-local"].btn,input[type="month"].input-sm,.input-group-sm>input[type="month"].form-control,.input-group-sm>input[type="month"].input-group-addon,.input-group-sm>.input-group-btn>input[type="month"].btn{line-height:30px}input[type="date"].input-lg,.input-group-lg>input[type="date"].form-control,.input-group-lg>input[type="date"].input-group-addon,.input-group-lg>.input-group-btn>input[type="date"].btn,input[type="time"].input-lg,.input-group-lg>input[type="time"].form-control,.input-group-lg>input[type="time"].input-group-addon,.input-group-lg>.input-group-btn>input[type="time"].btn,input[type="datetime-local"].input-lg,.input-group-lg>input[type="datetime-local"].form-control,.input-group-lg>input[type="datetime-local"].input-group-addon,.input-group-lg>.input-group-btn>input[type="datetime-local"].btn,input[type="month"].input-lg,.input-group-lg>input[type="month"].form-control,.input-group-lg>input[type="month"].input-group-addon,.input-group-lg>.input-group-btn>input[type="month"].btn{line-height:46px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="radio"].disabled,fieldset[disabled] input[type="radio"],input[type="checkbox"][disabled],input[type="checkbox"].disabled,fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}.radio-inline.disabled,fieldset[disabled] .radio-inline,.checkbox-inline.disabled,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,fieldset[disabled] .radio label,.checkbox.disabled label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.input-group-lg>.form-control-static.form-control,.input-group-lg>.form-control-static.input-group-addon,.input-group-lg>.input-group-btn>.form-control-static.btn,.form-control-static.input-sm,.input-group-sm>.form-control-static.form-control,.input-group-sm>.form-control-static.input-group-addon,.input-group-sm>.input-group-btn>.form-control-static.btn{padding-left:0;padding-right:0}.input-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn,.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm,.input-group-sm>select.form-control,.input-group-sm>select.input-group-addon,.input-group-sm>.input-group-btn>select.btn,.form-group-sm .form-control{height:30px;line-height:30px}textarea.input-sm,.input-group-sm>textarea.form-control,.input-group-sm>textarea.input-group-addon,.input-group-sm>.input-group-btn>textarea.btn,.form-group-sm .form-control,select[multiple].input-sm,.input-group-sm>select[multiple].form-control,.input-group-sm>select[multiple].input-group-addon,.input-group-sm>.input-group-btn>select[multiple].btn,.form-group-sm .form-control{height:auto}.input-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn,.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg,.input-group-lg>select.form-control,.input-group-lg>select.input-group-addon,.input-group-lg>.input-group-btn>select.btn,.form-group-lg .form-control{height:46px;line-height:46px}textarea.input-lg,.input-group-lg>textarea.form-control,.input-group-lg>textarea.input-group-addon,.input-group-lg>.input-group-btn>textarea.btn,.form-group-lg .form-control,select[multiple].input-lg,.input-group-lg>select[multiple].form-control,.input-group-lg>select[multiple].input-group-addon,.input-group-lg>.input-group-btn>select[multiple].btn,.form-group-lg .form-control{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback,.input-group-lg>.form-control+.form-control-feedback,.input-group-lg>.input-group-addon+.form-control-feedback,.input-group-lg>.input-group-btn>.btn+.form-control-feedback{width:46px;height:46px;line-height:46px}.input-sm+.form-control-feedback,.input-group-sm>.form-control+.form-control-feedback,.input-group-sm>.input-group-addon+.form-control-feedback,.input-group-sm>.input-group-btn>.btn+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label ~ .form-control-feedback{top:25px}.has-feedback label.sr-only ~ .form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width: 768px){.form-inline .form-group,.o_navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control,.o_navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static,.o_navbar-form .form-control-static{display:inline-block}.form-inline .input-group,.o_navbar-form .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.o_navbar-form .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.o_navbar-form .input-group .input-group-btn,.form-inline .input-group .form-control,.o_navbar-form .input-group .form-control{width:auto}.form-inline .input-group>.form-control,.o_navbar-form .input-group>.form-control{width:100%}.form-inline .control-label,.o_navbar-form .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.o_navbar-form .radio,.form-inline .checkbox,.o_navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.o_navbar-form .radio label,.form-inline .checkbox label,.o_navbar-form .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.o_navbar-form .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"],.o_navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback,.o_navbar-form .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{content:" ";display:table}.form-horizontal .form-group:after{clear:both}@media (min-width: 768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width: 768px){.form-horizontal .form-group-lg .control-label{padding-top:14.3px}}@media (min-width: 768px){.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn.focus,.btn:active:focus,.btn:active.focus,.btn.active:focus,.btn.active.focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fcfcfc;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default.focus,.btn-default:active,.btn-default.active,.open>.btn-default.dropdown-toggle{color:#333;background-color:#e3e3e3;border-color:#adadad}.btn-default:active,.btn-default.active,.open>.btn-default.dropdown-toggle{background-image:none}.btn-default.disabled,.btn-default.disabled:hover,.btn-default.disabled:focus,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled.active,.btn-default[disabled],.btn-default[disabled]:hover,.btn-default[disabled]:focus,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled].active,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default:hover,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default.active{background-color:#fcfcfc;border-color:#ccc}.btn-default .badge{color:#fcfcfc;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary:hover,.btn-primary:focus,.btn-primary.focus,.btn-primary:active,.btn-primary.active,.open>.btn-primary.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary:active,.btn-primary.active,.open>.btn-primary.dropdown-toggle{background-image:none}.btn-primary.disabled,.btn-primary.disabled:hover,.btn-primary.disabled:focus,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled.active,.btn-primary[disabled],.btn-primary[disabled]:hover,.btn-primary[disabled]:focus,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary:hover,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary.active{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success.focus,.btn-success:active,.btn-success.active,.open>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.btn-success:active,.btn-success.active,.open>.btn-success.dropdown-toggle{background-image:none}.btn-success.disabled,.btn-success.disabled:hover,.btn-success.disabled:focus,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled.active,.btn-success[disabled],.btn-success[disabled]:hover,.btn-success[disabled]:focus,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled].active,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success:hover,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info.focus,.btn-info:active,.btn-info.active,.open>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info:active,.btn-info.active,.open>.btn-info.dropdown-toggle{background-image:none}.btn-info.disabled,.btn-info.disabled:hover,.btn-info.disabled:focus,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled.active,.btn-info[disabled],.btn-info[disabled]:hover,.btn-info[disabled]:focus,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled].active,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info:hover,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning.focus,.btn-warning:active,.btn-warning.active,.open>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open>.btn-warning.dropdown-toggle{background-image:none}.btn-warning.disabled,.btn-warning.disabled:hover,.btn-warning.disabled:focus,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled.active,.btn-warning[disabled],.btn-warning[disabled]:hover,.btn-warning[disabled]:focus,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning:hover,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger.focus,.btn-danger:active,.btn-danger.active,.open>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open>.btn-danger.dropdown-toggle{background-image:none}.btn-danger.disabled,.btn-danger.disabled:hover,.btn-danger.disabled:focus,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled.active,.btn-danger[disabled],.btn-danger[disabled]:hover,.btn-danger[disabled]:focus,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger:hover,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#337ab7;font-weight:normal;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:hover,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity 0.15s linear;-o-transition:opacity 0.15s linear;transition:opacity 0.15s linear}.fade.in{opacity:1}.collapse{display:none;visibility:hidden}.collapse.in{display:block;visibility:visible}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:0.35s;transition-duration:0.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fcfcfc;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#337ab7}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#777}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width: 768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar:before,.btn-toolbar:after{content:" ";display:table}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle,.btn-group-lg.btn-group>.btn+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret,.btn-group-lg>.btn .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret,.dropup .btn-group-lg>.btn .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{content:" ";display:table}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*="col-"]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.input-group-addon.btn{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.input-group-addon.btn{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav:before,.nav:after{content:" ";display:table}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified,.nav-tabs.nav-justified{width:100%}.nav-justified>li,.nav-tabs.nav-justified>li{float:none}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width: 768px){.nav-justified>li,.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified,.nav-tabs.nav-justified{border-bottom:0}.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs.nav-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width: 768px){.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs.nav-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none;visibility:hidden}.tab-content>.active{display:block;visibility:visible}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{content:" ";display:table}.navbar:after{clear:both}@media (min-width: 768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{content:" ";display:table}.navbar-header:after{clear:both}@media (min-width: 768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{content:" ";display:table}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media (min-width: 768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block !important;visibility:visible !important;height:auto !important;padding-bottom:0;overflow:visible !important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width: 480px) and (orientation: landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width: 768px){.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width: 768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width: 768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width: 768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width: 768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width: 767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width: 768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (min-width: 768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width: 767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width: 768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm,.btn-group-sm>.navbar-btn.btn{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs,.btn-group-xs>.navbar-btn.btn{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width: 768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width: 768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right ~ .navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width: 767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#333}.navbar-default .btn-link[disabled]:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:hover,fieldset[disabled] .navbar-default .btn-link:focus{color:#ccc}.navbar-inverse{background-color:#222;border-color:#090909}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#090909;color:#fff}@media (max-width: 767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#fff}.navbar-inverse .btn-link[disabled]:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:hover,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/ ";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.428571429;text-decoration:none;color:#337ab7;background-color:#fcfcfc;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>a:focus,.pagination>li>span:hover,.pagination>li>span:focus{color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:hover,.pagination>.active>a:focus,.pagination>.active>span,.pagination>.active>span:hover,.pagination>.active>span:focus{z-index:2;color:#fcfcfc;background-color:#337ab7;border-color:#337ab7;cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager:before,.pager:after{content:" ";display:table}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fcfcfc;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#777;background-color:#fcfcfc;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label:empty{display:none}.btn .label{position:relative;top:-1px}a.label:hover,a.label:focus{color:#fff;text-decoration:none;cursor:pointer}.label-default{background-color:#777}.label-default[href]:hover,.label-default[href]:focus{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge,.btn-group-xs>.btn .badge{top:0;padding:1px 5px}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.jumbotron,.o_repo_details .o_lead{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.o_repo_details .o_lead h1,.jumbotron .h1,.o_repo_details .o_lead .h1{color:inherit}.jumbotron p,.o_repo_details .o_lead p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr,.o_repo_details .o_lead>hr{border-top-color:#d5d5d5}.container .jumbotron,.container .o_repo_details .o_lead,.o_repo_details .container .o_lead,.container-fluid .jumbotron,.container-fluid .o_repo_details .o_lead,.o_repo_details .container-fluid .o_lead{border-radius:6px}.jumbotron .container,.o_repo_details .o_lead .container{max-width:100%}@media screen and (min-width: 768px){.jumbotron,.o_repo_details .o_lead{padding:48px 0}.container .jumbotron,.container .o_repo_details .o_lead,.o_repo_details .container .o_lead,.container-fluid .jumbotron,.container-fluid .o_repo_details .o_lead,.o_repo_details .container-fluid .o_lead{padding-left:60px;padding-right:60px}.jumbotron h1,.o_repo_details .o_lead h1,.jumbotron .h1,.o_repo_details .o_lead .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border 0.2s ease-in-out;-o-transition:border 0.2s ease-in-out;transition:border 0.2s ease-in-out}.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#333}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#337ab7}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4,.alert .o_cal .fc-header-title h2,.o_cal .fc-header-title .alert h2{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;-o-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar,.progress-bar-striped{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fcfcfc;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;color:#555;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fcfcfc;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{content:" ";display:table}.panel-body:after{clear:both}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table,.panel-collapse>.table,.panel-collapse>.table-responsive>.table,.panel-collapse>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption,.panel-collapse>.table caption,.panel-collapse>.table-responsive>.table caption,.panel-collapse>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child,.panel-collapse>.table:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child,.panel-collapse>.table:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body,.panel-collapse>.panel-body+.table,.panel-collapse>.panel-body+.table-responsive,.panel-collapse>.table+.panel-body,.panel-collapse>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td,.panel-collapse>.table>tbody:first-child>tr:first-child th,.panel-collapse>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered,.panel-collapse>.table-bordered,.panel-collapse>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel-collapse>.table-bordered>thead>tr>th:first-child,.panel-collapse>.table-bordered>thead>tr>td:first-child,.panel-collapse>.table-bordered>tbody>tr>th:first-child,.panel-collapse>.table-bordered>tbody>tr>td:first-child,.panel-collapse>.table-bordered>tfoot>tr>th:first-child,.panel-collapse>.table-bordered>tfoot>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel-collapse>.table-bordered>thead>tr>th:last-child,.panel-collapse>.table-bordered>thead>tr>td:last-child,.panel-collapse>.table-bordered>tbody>tr>th:last-child,.panel-collapse>.table-bordered>tbody>tr>td:last-child,.panel-collapse>.table-bordered>tfoot>tr>th:last-child,.panel-collapse>.table-bordered>tfoot>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel-collapse>.table-bordered>thead>tr:first-child>td,.panel-collapse>.table-bordered>thead>tr:first-child>th,.panel-collapse>.table-bordered>tbody>tr:first-child>td,.panel-collapse>.table-bordered>tbody>tr:first-child>th,.panel-collapse>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel-collapse>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel-collapse>.table-bordered>tbody>tr:last-child>td,.panel-collapse>.table-bordered>tbody>tr:last-child>th,.panel-collapse>.table-bordered>tfoot>tr:last-child>td,.panel-collapse>.table-bordered>tfoot>tr:last-child>th,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive,.panel-collapse>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);-o-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform 0.3s ease-out;-moz-transition:-moz-transform 0.3s ease-out;-o-transition:-o-transform 0.3s ease-out;transition:transform 0.3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box;outline:0}.modal-backdrop{position:absolute;top:0;right:0;left:0;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.428571429px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{content:" ";display:table}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width: 768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}.modal-sm{width:300px}}@media (min-width: 992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;visibility:visible;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-weight:normal;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important;visibility:hidden !important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none !important}@media (max-width: 767px){.visible-xs{display:block !important}table.visible-xs{display:table}tr.visible-xs{display:table-row !important}th.visible-xs,td.visible-xs{display:table-cell !important}}@media (max-width: 767px){.visible-xs-block{display:block !important}}@media (max-width: 767px){.visible-xs-inline{display:inline !important}}@media (max-width: 767px){.visible-xs-inline-block{display:inline-block !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm{display:block !important}table.visible-sm{display:table}tr.visible-sm{display:table-row !important}th.visible-sm,td.visible-sm{display:table-cell !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-block{display:block !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-inline{display:inline !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-inline-block{display:inline-block !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md{display:block !important}table.visible-md{display:table}tr.visible-md{display:table-row !important}th.visible-md,td.visible-md{display:table-cell !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-block{display:block !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-inline{display:inline !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-inline-block{display:inline-block !important}}@media (min-width: 1200px){.visible-lg{display:block !important}table.visible-lg{display:table}tr.visible-lg{display:table-row !important}th.visible-lg,td.visible-lg{display:table-cell !important}}@media (min-width: 1200px){.visible-lg-block{display:block !important}}@media (min-width: 1200px){.visible-lg-inline{display:inline !important}}@media (min-width: 1200px){.visible-lg-inline-block{display:inline-block !important}}@media (max-width: 767px){.hidden-xs{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.hidden-sm{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.hidden-md{display:none !important}}@media (min-width: 1200px){.hidden-lg{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}body .modal{position:absolute;overflow:visible}body div.tooltip-inner{max-width:400px}body div.popover{max-width:450px}body div.popover input{max-width:100%}body .modal-body.alert{border-radius:0}body .progress{margin-bottom:0}.panel-body:nth-child(n+2){border-top:1px solid #ddd}.panel .panel-heading[data-toggle="collapse"]{cursor:pointer}#o_ajax_busy_backdrop{bottom:0;z-index:1020}.form-control-feedback{top:10px}.form-horizontal .has-feedback .form-control-feedback{top:10px}.btn.btn-primary.o_disabled{color:#fff !important}body .progress-bar[aria-valuenow="1"],body .progress-bar[aria-valuenow="2"]{min-width:1px}td.text-left>div.form-inline>label.checkbox-inline>input[type='checkbox'],td.text-left>div.o_navbar-form>label.checkbox-inline>input[type='checkbox']{position:relative}@-moz-document url-prefix(){fieldset{display:table-cell}}@media screen and (max-width: 768px){@supports (-webkit-overflow-scrolling: touch){.form-control,.ui-widget input,.ui-widget select,.ui-widget textarea{font-size:16px}}}@font-face{font-family:'openolat';src:url("../light/fonts/openolat/openolat.eot?4yacgg");src:url("../light/fonts/openolat/openolat.woff") format("woff"),url("../light/fonts/openolat/openolat.ttf") format("truetype"),url("../light/fonts/openolat/openolat.svg") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:'FontAwesome';src:url("../../font-awesome/fonts/fontawesome-webfont.eot");src:url("../../font-awesome/fonts/fontawesome-webfont.woff2") format("woff2"),url("../../font-awesome/fonts/fontawesome-webfont.woff") format("woff"),url("../../font-awesome/fonts/fontawesome-webfont.ttf") format("truetype");font-weight:normal;font-style:normal}.o_icon,.o_progress_failed .inset:after,.o_progress_passed .inset:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_icon-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-15%}.o_icon-2x{font-size:2em}.o_icon-3x{font-size:3em}.o_icon-4x{font-size:4em}.o_icon-5x{font-size:5em}.o_icon-fw{width:1.2857142857em;text-align:center}.o_icon-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.o_icon-ul>li{position:relative}.o_icon-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em;text-align:center}.o_icon-li.o_icon-lg{left:-1.8571428571em}.o_icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.o_icon-pull-left{float:left}.o_icon-pull-right{float:right}.o_icon.o_icon-pull-left,.o_progress_failed .o_icon-pull-left.inset:after,.o_progress_passed .o_icon-pull-left.inset:after{margin-right:.3em}.o_icon.o_icon-pull-right,.o_progress_failed .o_icon-pull-right.inset:after,.o_progress_passed .o_icon-pull-right.inset:after{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.o_icon.pull-left,.o_progress_failed .pull-left.inset:after,.o_progress_passed .pull-left.inset:after{margin-right:.3em}.o_icon.pull-right,.o_progress_failed .pull-right.inset:after,.o_progress_passed .pull-right.inset:after{margin-left:.3em}.o_icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.o_icon-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.o_icon-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.o_icon-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.o_icon-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.o_icon-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.o_icon-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .o_icon-rotate-90,:root .o_icon-rotate-180,:root .o_icon-rotate-270,:root .o_icon-flip-horizontal,:root .o_icon-flip-vertical{filter:none}.o_icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.o_icon-stack-1x,.o_icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.o_icon-stack-1x{line-height:inherit}.o_icon-stack-2x{font-size:2em}.o_icon-inverse{color:#fff}.o_icon_absence:before{content:"ï€"}.o_icon_absence_authorized:before{content:"ï";color:#5cb85c}.o_icon_absence_leave:before{content:""}.o_icon_absence_unauthorized:before{content:"ïª";color:#d9534f}.o_icon_accepted:before{content:"ï…¤"}.o_icon_accessibility:before{content:""}.o_icon_actions:before{content:"ï‚…"}.o_icon_activate:before{content:"ï"}.o_icon_add_html:before{content:"ï„¡"}.o_icon_align_left:before{content:""}.o_icon_align_middle:before{content:""}.o_icon_align_right:before{content:""}.o_icon_archive_tool:before{content:""}.o_icon_assessment_mode:before{content:"ï„"}.o_icon_assessment_tool:before{content:"ï‚‘"}.o_icon_assignment:before{content:"";color:#d9534f}.o_icon_attempt_limit:before{content:""}.o_icon_accept:before{content:"";color:#5cb85c}.o_icon_add:before{content:"ï•"}.o_icon_add_member:before{content:""}.o_icon_add_search:before{content:""}.o_icon_audio:before{content:""}.o_icon_back:before{content:"ï“"}.o_icon_back_history:before{content:""}.o_icon_banned:before{content:"";color:#d9534f}.o_icon_bold:before{content:""}.o_icon_booking:before{content:"ïº"}.o_icon_bookmark:before{content:"";color:#bc2d0c}.o_icon_bookmark_add:before{content:"ï‚—";color:#bc2d0c}.o_icon_bookmark_header:before{content:""}.o_icon_browse:before{content:""}.o_icon_brush:before{content:""}.o_icon_browsercheck:before{content:"ï…¤"}.o_icon_busy:before{content:"ï„"}.o_icon_calendar:before{content:"ï³"}.o_icon_calendar_enabled:before{content:"ï†"}.o_icon_calendar_disabled:before{content:"ï‚–"}.o_icon_calendar:before{content:"ï³"}.o_icon_calendar_sync:before{content:""}.o_icon_cancelled:before{content:"ïž"}.o_icon_caret:before{content:""}.o_icon_caret_right:before{content:""}.o_icon_catalog:before{content:""}.o_icon_catalog_sub:before{content:"ï»"}.o_icon_certificate:before{content:"ï‚£"}.o_icon_chat:before{content:""}.o_icon_check:before{content:""}.o_icon_check_off:before{content:"ï‚–"}.o_icon_check_on:before{content:"ï†"}.o_icon_checkbox:before{content:"ï‚–"}.o_icon_checkbox_checked:before{content:"ï…Š"}.o_icon_circle:before{content:""}.o_icon_circle_color:before{content:"ï„‘"}.o_icon_citation:before{content:"ï„"}.o_icon_cleanup:before{content:""}.o_icon_clear_all:before{content:""}.o_icon_close:before{content:"ï€"}.o_icon_close_resource:before{content:""}.o_icon_close_tab:before{content:"ï€"}.o_icon_close_tool:before{content:"ï€"}.o_icon_close_tree:before{content:""}.o_icon_close_togglebox:before,.o_togglebox_wrapper .o_opener.o_in i:before,.o_search_result .o_opener.o_in i:before{content:""}.o_icon_code:before{content:"ï„¡"}.o_icon_coach:before{content:"ï†"}.o_icon_color_picker:before{content:"ïƒ"}.o_icon_column:before{content:""}.o_icon_columns:before{content:""}.o_icon_container:before{content:""}.o_icon_copy:before{content:""}.o_icon_course_previous:before{content:"ï“"}.o_icon_course_next:before{content:"ï”"}.o_icon_courseareas:before{content:""}.o_icon_coursedb:before{content:""}.o_icon_courseeditor:before{content:"ï„"}.o_icon_coursefolder:before{content:"ï„”"}.o_icon_courserun:before{content:""}.o_icon_comments:before{content:""}.o_icon_comments_none:before{content:""}.o_icon_compress:before{content:"ï¦"}.o_icon_compulsory:before{content:"ï©"}.o_icon_content_popup:before{content:"ï‚Ž"}.o_icon_correct_answer:before{content:"";color:#5cb85c}.o_icon_correct_response:before{content:"ï";color:#5cb85c}.o_icon_correction:before{content:"ï€"}.o_icon_curriculum_element:before{content:""}.o_icon_customize:before{content:""}.o_icon_deactivate:before{content:"ïž"}.o_icon_delete_item:before{content:""}.o_icon_delete:before{content:"ï–";color:#A87E7E}.o_icon_deleted:before{content:""}.o_icon_details:before{content:""}.o_icon_description:before{content:"ïš"}.o_icon_dev:before{content:""}.o_icon_disabled:before{content:"ï„Œ"}.o_icon_dispensation_authorized:before{content:"ï";color:#5cb85c}.o_icon_dispensation_unauthorized:before{content:"ï±";color:#f0ad4e}.o_icon_download:before{content:""}.o_icon_edit:before{content:"ï„"}.o_icon_edit_file:before{content:"ï„"}.o_icon_edit_metadata:before{content:""}.o_icon_element_after:before{content:"ï£"}.o_icon_element_before:before{content:"ï¢"}.o_icon_enabled:before{content:"ï„‘"}.o_icon_enlarge:before{content:""}.o_icon_eportfolio_add:before{content:"ï„®"}.o_icon_eportfolio_link:before{content:"ï„®"}.o_icon_eraser:before{content:"ï„"}.o_icon_error:before{content:"ïª";color:#d9534f}.o_icon_exclamation:before{content:""}.o_icon_expand:before{content:"ï¥"}.o_icon_expenditure:before{content:""}.o_icon_export:before{content:"ï…"}.o_icon_extend:before{content:""}.o_icon_external_link:before{content:"ï‚Ž"}.o_icon_extra_time:before{content:""}.o_icon_failed:before{content:"ï—"}.o_icon_files:before{content:""}.o_icon_fileupload:before{content:""}.o_icon_filter:before{content:"ï‚°"}.o_icon_graduate:before{content:"ï†"}.o_icon_group:before,.o_BusinessGroup_icon:before{content:""}.o_icon_header:before{content:""}.o_icon_help:before{content:"ï™";cursor:help}.o_icon_home:before{content:""}.o_icon_image:before{content:""}.o_icon_impress:before{content:"ïš"}.o_icon_important:before{content:"ï±";color:#f0ad4e}.o_icon_import:before{content:"ï‚“"}.o_icon_incorrect_response:before{content:"ïœ";color:#d9534f}.o_icon_info:before{content:"ïš";color:#5bc0de}.o_icon_info_msg:before{content:"ïª";color:#d9534f}.o_icon_info_resource:before{content:"ïš"}.o_icon_inheritance_root:before{content:"ï‚«"}.o_icon_inheritance_inherited:before{content:""}.o_icon_inheritance_none:before{content:"ï„Œ"}.o_icon_inline_editable:before{content:"ï„"}.o_icon_institution:before{content:""}.o_icon_italic:before{content:""}.o_icon_landingpage:before{content:"ï…€"}.o_icon_language:before{content:""}.o_icon_layout:before{content:""}.o_icon_learning_path:before{content:""}.o_icon_lecture:before{content:"ï€"}.o_icon_left:before{content:""}.o_icon_levels:before{content:""}.o_icon_line:before{content:""}.o_icon_link:before{content:"ïƒ"}.o_icon_link_extern:before{content:"ï‚Ž"}.o_icon_list:before{content:""}.o_icon_list_num:before{content:""}.o_icon_lifecycle:before{content:""}.o_icon_lifecycle_date:before{content:"ï³"}.o_icon_locked:before{content:""}.o_icon_log:before{content:"ï…œ"}.o_icon_login:before{content:"ï‚"}.o_icon_logout:before{content:"ï‚‹"}.o_icon_mandatory:before{content:"ï©";color:#f0ad4e}.o_icon_managed:before{content:"ï¹";color:#777}.o_icon_manual:before{content:"ï€";cursor:help}.o_icon_mail:before{content:""}.o_icon_math:before{content:"\03a3"}.o_icon_media:before{content:""}.o_icon_mediacenter:before{content:"ï¼"}.o_icon_membersmanagement:before{content:""}.o_icon_menuhandel:before{content:""}.o_icon_message:before{content:"ïƒ "}.o_icon_mobile:before{content:"ï„‹"}.o_icon_move:before{content:"ï‡"}.o_icon_order:before{content:"ï½"}.o_icon_move_down:before{content:""}.o_icon_move_left:before{content:"ï„€"}.o_icon_move_right:before{content:"ï„"}.o_icon_move_up:before{content:"ï„‚"}.o_icon_ms_done:before{content:""}.o_icon_ms_pending:before{content:"ï‹"}.o_icon_new:before{content:"ï©";color:#5cb85c}.o_icon_new_document:before{content:"ï…œ"}.o_icon_new_folder:before{content:"ï»"}.o_icon_new_portfolio:before{content:"ï€"}.o_icon_news:before{content:"ïš"}.o_icon_next:before{content:""}.o_icon_next_step:before{content:"ï„"}.o_icon_next_page:before{content:"ï„"}.o_icon_next_toolbar:before{content:""}.o_icon_node_after:before{content:"ï…µ"}.o_icon_node_before:before{content:"ï…¶"}.o_icon_node_under:before{content:"ï„’"}.o_icon_node_up_down:before{content:"ï½"}.o_icon_notes:before{content:""}.o_icon_notice_authorized:before{content:"ï";color:#5cb85c}.o_icon_notice_unauthorized:before{content:"ï±";color:#f0ad4e}.o_icon_notification:before{content:"ï‚ž"}.o_icon_number_of:before{content:""}.o_icon_ok:before{content:"";color:#5cb85c}.o_icon_open_tree:before{content:""}.o_icon_open_togglebox:before,.o_togglebox_wrapper .o_opener i:before,.o_search_result .o_opener i:before{content:""}.o_icon_openolat:before,.o_icon_provider_olat:before{content:"\E600";font-family:openolat;font-size:10px}.o_icon_options:before{content:""}.o_icon_origin:before{content:""}.o_icon_others:before{content:""}.o_icon_owner:before{content:""}.o_icon_pageing:before{content:"ï…"}.o_icon_paragraph:before{content:"ï‡"}.o_icon_passed:before{content:"ï˜"}.o_icon_password:before{content:""}.o_icon_pending:before{content:"ï„"}.o_icon_phone:before{content:"ï‚•"}.o_icon_post:before{content:""}.o_icon_presence:before{content:""}.o_icon_preview:before{content:"ï®"}.o_icon_previous:before{content:"ï„·"}.o_icon_previous_page:before{content:"ï„€"}.o_icon_previous_step:before{content:"ï„€"}.o_icon_previous_toolbar:before{content:""}.o_icon_print:before{content:""}.o_icon_private:before{content:""}.o_icon_progress_success:before{content:"";color:#e5efe5}.o_icon_progress_danger:before{content:"ï€";color:#efe5e5}.o_icon_provider_adfs:before{content:"ï…º"}.o_icon_provider_facebook:before{content:"ï‚š"}.o_icon_provider_google:before{content:"ï† "}.o_icon_provider_guest:before{content:""}.o_icon_provider_ldap:before{content:""}.o_icon_provider_linkedin:before{content:""}.o_icon_provider_oauth:before{content:""}.o_icon_provider_openid:before{content:""}.o_icon_provider_performx:before{content:""}.o_icon_provider_shibboleth:before{content:""}.o_icon_provider_tequila:before{content:""}.o_icon_provider_twitter:before{content:"ï‚™"}.o_icon_publish:before{content:"ï¤"}.o_icon_pull:before{content:""}.o_icon_quota:before{content:""}.o_icon_qrcode:before{content:""}.o_icon_quickview:before{content:"ï®"}.o_icon_radio_off:before{content:"ï„Œ"}.o_icon_radio_on:before{content:"ï"}.o_icon_rating_on:before,.o_rating .o_rating_items.o_enabled .o_icon:hover:before{content:""}.o_icon_rating_off:before{content:""}.o_icon_read:before{content:"ï„Œ"}.o_icon_readonly:before{content:"ï„";color:red}.o_icon_readwrite:before{content:"ï„"}.o_icon_recycle:before{content:""}.o_icon_rectangle:before{content:"ï‚–"}.o_icon_redo:before{content:""}.o_icon_refresh:before{content:""}.o_icon_reject:before{content:"ï€";color:#d9534f}.o_icon_rejected:before{content:"ï…¥"}.o_icon_reminder:before{content:""}.o_icon_remove:before{content:"ï€"}.o_icon_remove_filters:before{content:"ï—"}.o_icon_reopen:before{content:"ï„’"}.o_icon_replace:before{content:""}.o_icon_reply:before{content:"ï„’"}.o_icon_reply_with_quote:before{content:"ï„¢"}.o_icon_report:before{content:""}.o_icon_reset:before{content:"ïˆ"}.o_icon_response_feedback:before{content:""}.o_icon_restore:before{content:"ï…¤"}.o_icon_results_visible:before{content:"ï®"}.o_icon_results_hidden:before{content:"ï°"}.o_icon_reviewer:before{content:""}.o_icon_right:before{content:"ï‚©"}.o_icon_rss:before{content:"ï‚ž"}.o_icon_rss_unsubscribe:before{content:"ï‚ž";color:#996633}.o_icon_role:before{content:""}.o_icon_rubric:before{content:""}.o_icon_rubric_insufficient:before{content:"ï—";color:#d9534f}.o_icon_rubric_sufficient:before{content:"ï˜";color:#5cb85c}.o_icon_rubric_neutral:before{content:"ïª";color:#f0ad4e}.o_icon_save:before{content:""}.o_icon_search:before{content:""}.o_icon_select:before{content:""}.o_icon_send:before{content:"ïƒ "}.o_icon_settings:before{content:"ï‚…"}.o_icon_share:before{content:"ï¤"}.o_icon_show_more:before{content:"ï…"}.o_icon_show_less:before{content:"ï…‘"}.o_icon_show_send:before{content:""}.o_icon_shuffle:before{content:"ï´"}.o_icon_sign_out:before{content:"ï‚‹"}.o_icon_slide_down:before{content:"ï¸"}.o_icon_slide_up:before{content:"ï·"}.o_icon_spacer:before{content:"ï¾"}.o_icon_split:before{content:""}.o_icon_sort:before{content:""}.o_icon_sort_asc:before{content:""}.o_icon_sort_desc:before{content:"ïƒ"}.o_icon_sort_amount_asc:before{content:"ï… "}.o_icon_sort_amount_desc:before{content:"ï…¡"}.o_icon_sort_menu:before{content:"ï… "}.o_icon_start:before{content:"ï”"}.o_icon_status_available:before{content:"ï„‘";color:#063}.o_icon_status_chat:before{content:"ïµ"}.o_icon_status_dnd:before{content:"";color:#cc3}.o_icon_status_unavailable:before{content:"ïœ";color:#963}.o_icon_status_not_ready:before{content:"ïž"}.o_icon_status_not_started:before{content:"ï„Œ"}.o_icon_status_in_progress:before{content:"ï‹"}.o_icon_status_in_review:before{content:""}.o_icon_status_done:before{content:"ï˜"}.o_icon_status_undone:before{content:"ï"}.o_icon_statistics_tool:before{content:"ï‚€"}.o_icon_submit:before{content:""}.o_icon_table:before{content:""}.o_icon_table_custom:before{content:""}.o_icon_table_large:before{content:""}.o_icon_tags:before{content:""}.o_icon_textinput:before{content:""}.o_icon_time:before{content:""}.o_icon_timelimit:before{content:""}.o_icon_timelimit_start:before{content:""}.o_icon_timelimit_half:before{content:""}.o_icon_timelimit_end:before{content:""}.o_icon_timetable:before{content:""}.o_icon_toggle:before{content:"ï„‘"}.o_icon_toggle_on:before{content:""}.o_icon_toggle_off:before{content:""}.o_icon_to_read:before{content:"ï„‘"}.o_icon_tool:before{content:""}.o_icon_tool_pdf:before{content:"ï‡"}.o_icon_tools:before{content:"ï‚"}.o_icon_top:before{content:"ï·"}.o_icon_translation_item:before{content:""}.o_icon_translation_package:before{content:"ï„•"}.o_icon_unlocked:before{content:"ï‚œ"}.o_icon_undo:before{content:""}.o_icon_user:before{content:""}.o_icon_user_vip:before{content:"ï†"}.o_icon_user_anonymous:before{content:""}.o_icon_update:before{content:""}.o_icon_upload:before{content:"ï‚“"}.o_icon_version:before{content:""}.o_icon_video:before{content:""}.o_icon_visitingcard.o_icon_waiting:before{content:""}.o_icon_warn:before{content:"ï±";color:#f0ad4e}.o_icon_width_expand:before{content:"ï¥"}.o_icon_width_collapse:before{content:"ï¦"}.o_icon_wizard:before{content:"ïƒ"}.o_icon_xing:before{content:"ï…¨";color:#cfdc00}.o_BinderTemplate_icon:before{content:""}.o_CourseModule_icon:before,.o_course_icon:before{content:""}.o_EPStructuredMapTemplate_icon:before{content:"ï„®"}.o_FileResource-BLOG_icon:before{content:"ï‚¡"}.o_FileResource-IMSCP_icon:before{content:""}.o_FileResource-FORM_icon:before{content:""}.o_FileResource-PODCAST_icon:before{content:""}.o_FileResource-SHAREDFOLDER:before{content:"ï‚Ž"}.o_FileResource-SCORMCP_icon:before{content:""}.o_FileResource-SURVEY_icon:before{content:"ï„š"}.o_FileResource-TEST_icon:before{content:"ï„"}.o_FileResource-IMSQTI21_icon:before{content:"ï…‹"}.o_FileResource-WIKI_icon:before{content:""}.o_FileResource-SHAREDFOLDER_icon:before{content:"ï„•"}.o_FileResource-GLOSSARY_icon:before{content:"ï†"}.o_FileResource-PDF_icon:before{content:"ï‡"}.o_FileResource-XLS_icon:before{content:""}.o_FileResource-PPT_icon:before{content:""}.o_FileResource-DOC_icon:before{content:""}.o_FileResource-ANIM_icon:before{content:""}.o_FileResource-IMAGE_icon:before{content:""}.o_FileResource-SOUND_icon:before{content:""}.o_FileResource-MOVIE_icon:before{content:""}.o_FileResource-FILE_icon:before{content:""}.o_FileResource-VIDEO_icon:before{content:""}.o_CourseModule_icon_closed:before{content:"ïž"}.o_icon_repo_status_preparation:before{content:"ï€"}.o_icon_repo_status_review:before{content:""}.o_icon_repo_status_coachpublished:before{content:""}.o_icon_repo_status_published:before{content:""}.o_icon_repo_status_closed:before{content:"ïž"}.o_icon_repo_status_trash:before{content:""}.o_icon_repo_status_deleted:before{content:""}.o_sp_icon:before{content:""}.o_st_icon:before{content:""}.o_tu_icon:before{content:"ï‚Ž"}.o_bc_icon:before{content:"ï„•"}.o_lti_icon:before{content:"ï‚Ž"}.o_cp_icon:before{content:""}.o_cp_item:before{content:""}.o_scorm_icon:before{content:""}.o_en_icon:before{content:"ï‚"}.o_fo_icon:before{content:""}.o_co_icon:before{content:""}.o_infomsg_icon:before{content:"ïš"}.o_cal_icon:before{content:"ï³"}.o_wiki_icon:before{content:""}.o_podcast_icon:before{content:""}.o_pf_icon:before{content:""}.o_blog_icon:before{content:"ï‚¡"}.o_ep_icon:before{content:""}.o_ep_icon_v1:before{content:"ï„®"}.o_iqtest_icon:before{content:"ï„"}.o_iqself_icon:before{content:"ï„"}.o_iqsurv_icon:before{content:"ï„š"}.o_survey_icon:before{content:""}.o_qtiassessment_icon:before{content:"ï…‹"}.o_ta_icon:before{content:"ï‚®"}.o_gta_icon:before{content:"ï‚®"}.o_ms_icon:before{content:""}.o_dialog_icon:before{content:""}.o_projectbroker_icon:before{content:"ï„Œ"}.o_ll_icon:before{content:"ïƒ"}.o_den_icon:before{content:""}.o_cmembers_icon:before{content:""}.o_cl_icon:before{content:"ï†"}.o_vc_icon:before{content:""}.o_video_icon:before{content:""}.o_vitero_icon:before{content:""}.o_openmeetings_icon:before{content:""}.o_gotomeeting_icon:before{content:""}.o_card2brain_icon:before{content:"\E800";font-family:openolat;font-size:120%}.o_edubase_icon:before{content:"\E885";font-family:openolat}.o_livestream_icon:before{content:""}.o_unkown_icon:before{content:""}.o_portlet_infomsg_icon:before{content:"ïš"}.o_portlet_quickstart_icon:before{content:""}.o_portlet_bookmark_icon:before{content:""}.o_portlet_groups_icon:before{content:""}.o_portlet_notes_icon:before{content:""}.o_portlet_noti_icon:before{content:"ï‚ž"}.o_portlet_eff_icon:before{content:"ï‚£"}.o_portlet_repository_student_icon:before{content:""}.o_portlet_repository_teacher_icon:before{content:"ï†"}.o_portlet_iframe_icon:before{content:""}.o_portlet_sysinfo_icon:before{content:""}.o_portlet_dyk_icon:before{content:""}.o_portlet_infomessages_icon:before{content:""}.o_portlet_cal_icon:before{content:"ï³"}.o_portlet_institutions_icon:before{content:""}.o_portlet_links_icon:before{content:"ïƒ"}.o_portlet_shibboleth_icon:before{content:"ï‚"}.o_icon_qpool:before{content:""}.o_icon_pool_private:before{content:"ï‚–"}.o_icon_pool_public:before{content:"ï†"}.o_icon_pool_my_items:before{content:""}.o_icon_pool_favorits:before{content:""}.o_icon_pool_collection:before{content:""}.o_icon_pool_pool:before{content:""}.o_icon_pool_share:before{content:""}.o_icon_qitem_commands:before{content:"ï‚…"}.o_icon_qitem_convert:before{content:""}.o_icon_qitem_copy:before{content:""}.o_icon_qitem_delete:before{content:""}.o_icon_qitem_draft:before{content:"ï€"}.o_icon_qitem_endOfLife:before{content:""}.o_icon_qitem_finalVersion:before{content:""}.o_icon_qitem_export:before{content:""}.o_icon_qitem_hide_metadata:before{content:""}.o_icon_qitem_import:before{content:"ï‚“"}.o_icon_qitem_new:before{content:"ï•"}.o_icon_qitem_review:before{content:""}.o_icon_qitem_revised:before{content:""}.o_icon_qitem_share:before{content:"ï¤"}.o_icon_qitem_show_metadata:before{content:""}.o_icon_qitem_status:before{content:"ï¡"}.o_forum_message_icon:before{content:""}.o_calendar_icon:before{content:"ï³"}.o_icon_pf_section_draft:before{content:"ï°";color:#f0ad4e}.o_icon_pf_section_progress:before{content:"";color:#f0ad4e}.o_icon_pf_section_submitted:before{content:"";color:#337ab7}.o_icon_pf_section_closed:before{content:"";color:#5cb85c}.o_icon_pf_binder:before{content:""}.o_icon_pf_entry:before{content:"ï…›"}.o_icon_pf_entry_draft:before{content:"ï„‘";color:#f0ad4e}.o_icon_pf_entry_published:before{content:"ï„‘";color:#337ab7}.o_icon_pf_entry_revision:before{content:"ï„‘";color:#d9534f}.o_icon_pf_entry_closed:before{content:"ï„‘";color:#5cb85c}.o_icon_pf_entry_deleted:before{content:"";color:#000}.o_icon_pf_history:before{content:""}.o_icon_pf_my_shares:before{content:"ï‡ "}.o_icon_pf_new_entry:before{content:"ï€"}.o_icon_pf_quick_links:before{content:"ï¤"}.o_icon_pf_page:before{content:""}.o_icon_pf_section:before{content:""}.o_icon_pf_shared_with_me:before{content:""}.o_icon_pf_trash:before{content:""}.o_forum_status_thread_icon:before{content:""}.o_forum_status_sticky_closed_icon:before{content:"ïž"}.o_forum_status_sticky_icon:before{content:""}.o_forum_status_closed_icon:before{content:"ïž";color:#a94442}.o_forum_status_opened_icon:before{content:"ïž";color:#3c763d}.o_forum_status_hidden_icon:before{content:"ï°";color:#a94442}.o_forum_status_visible_icon:before{content:"ï®";color:#3c763d}.o_forum_all_icon:before{content:""}.o_forum_all_flat_icon:before{content:""}.o_forum_one_icon:before{content:"ï®"}.o_forum_marked_icon:before{content:""}.o_forum_new_icon:before{content:"ï©"}.o_mi_qpool_import:before{content:""}.o_mi_qtidrawing:before{content:""}.o_mi_qtisection:before{content:""}.o_mi_qtisc:before{content:""}.o_mi_qtimatch:before{content:""}.o_mi_qtimatch_draganddrop:before{content:"ï‰"}.o_mi_qtimatch_truefalse:before{content:""}.o_mi_qtimc:before{content:"ï†"}.o_mi_qtikprim:before{content:"ï…Š"}.o_mi_qtifib:before{content:"ï…"}.o_mi_qtinumerical:before{content:""}.o_mi_qtihotspot:before{content:""}.o_mi_qtihottext:before{content:"ï"}.o_mi_qtiessay:before{content:""}.o_mi_qtiunkown:before{content:""}.o_mi_qtiupload:before{content:"ï‚“"}.o_as_mode_leadtime:before{content:""}.o_as_mode_assessment:before{content:"ï‹"}.o_as_mode_followup:before{content:"ïž"}.o_as_mode_closed:before{content:'-'}.o_as_mode_stop:before{content:"ï"}.o_icon_qti_notPresented:before{content:"";color:#ddd}.o_icon_qti_notAnswered:before{content:"ï…„";color:#f0ad4e}.o_icon_qti_answered:before{content:"ï˜";color:#5cb85c}.o_icon_qti_ended:before{content:"ïž";color:#5bc0de}.o_icon_qti_invalid:before{content:"ïª";color:#d9534f}.o_icon_qti_review:before{content:"ï®";color:#5bc0de}.o_icon_qti_reviewNotSeen:before,.o_icon_qti_reviewNotAnswered:before,.o_icon_qti_reviewInvalid:before{content:"ï°";color:#5bc0de}.o_icon_qti_end_testpart:before{content:""}.o_icon_qti_close_test:before{content:"ï‹“"}.o_icon_qti_cancel:before{content:"ï"}.o_icon_qti_suspend:before{content:"ïŒ"}.o_icon_qti_close_results:before{content:"ï‹“"}.o_icon_qti_hint:before{content:"ï™"}.o_icon_qti_summary_notAnswered:before{content:"ï„‘";color:#f0ad4e}.o_icon_qti_summary_ended:before{content:"ï—";color:#d9534f}.o_icon_qti_summary_correct:before{content:"ï˜";color:#5cb85c}.o_lectures_current:before{content:"ï„‘";color:#f0ad4e}.o_lectures_next:before{content:""}.o_lectures_pending:before{content:"ï„‘";color:#d9534f}.o_lectures_closed:before{content:"ï„‘"}.o_lectures_rollcall_ok:before{content:"ï„‘";color:#5cb85c}.o_lectures_rollcall_warning:before{content:"ï‚";color:#f0ad4e}.o_lectures_rollcall_danger:before{content:"ï„Œ";color:#d9534f}.o_lectures_rollcall_free:before{content:"ï„‘";color:#969696}.o_lectures_rollcall_notice:before{content:"ï„‘";color:#969696}.o_lectures_rollcall_pending:before{content:"";color:#b8b8b8}.o_lectures_attended:before{content:"ï„‘";color:#5cb85c}.o_lectures_authorized:before{content:"ï„‘";color:#f0ad4e}.o_lectures_absent:before{content:"ï„‘";color:#d9534f}.o_absences_col_warning:before{content:"ï±"}.o_absences_col_alert:before{content:"ïª"}.o_icon_taxonomy:before{content:""}.o_icon_taxonomy_level:before{content:""}.o_icon_taxonomy_level_leaf:before{content:"ï„•"}.o_icon_taxonomy_templates:before{content:""}.o_icon_taxonomy_levels:before{content:""}.o_black_led:before{content:"ï„‘";color:#337ab7}.o_green_led:before{content:"ï„‘";color:#5cb85c}.o_yellow_led:before{content:"ï„‘";color:#f0ad4e}.o_red_led:before{content:"ï„‘";color:#d9534f}.o_grader_active:before{content:"ï";color:#5cb85c}.o_grader_inactive:before{content:"ïž";color:#d9534f}.o_grader_absence:before{content:"";color:#f0ad4e}.o_grad_assignment_unassigned:before{content:"ïª";color:#d9534f}.o_grad_assignment_assigned:before{content:"ï‚–"}.o_grad_assignment_inprocess:before{content:""}.o_grad_assignment_done:before{content:"ï†"}.o_icon_identity_permanent:before{content:""}.o_icon_identity_pending:before{content:""}.o_icon_identity_login_denied:before{content:"ïž"}.o_icon_identity_deleted:before{content:""}.o_ac_token_icon:before{content:"ï‚„"}.o_ac_free_icon:before{content:"ï«"}.o_ac_group_icon:before{content:""}.o_ac_membersonly_icon:before{content:""}.o_ac_guests_icon:before{content:""}.o_ac_paypal_icon:before{content:""}.o_ac_status_canceled_icon:before{content:"ï¨";color:#f0ad4e}.o_ac_status_error_icon:before{content:"ï€";color:#d9534f}.o_ac_status_new_icon:before{content:"ï©";color:#337ab7}.o_ac_status_success_icon:before{content:"";color:#5cb85c}.o_ac_status_waiting_icon:before{content:"";color:#337ab7}.o_ac_order_status_new_icon:before{content:"ï©";color:#337ab7}.o_ac_order_status_prepayment_icon:before{content:"";color:#5bc0de}.o_ac_order_status_payed_icon:before{content:"";color:#5cb85c}.o_ac_order_status_canceled_icon:before{content:"ï¨";color:#f0ad4e}.o_ac_order_status_error_icon:before{content:"ï€";color:#d9534f}.o_ac_order_status_warning_icon:before{content:"";color:#f0ad4e}.o_scorm_org:before{content:""}.o_scorm_item:before{content:""}.o_scorm_completed:before,.o_scorm_passed:before{content:"ï˜"}.o_scorm_failed:before{content:"ï±"}.o_scorm_incomplete:before{content:"ï±"}.o_scorm_not_attempted:before{background:none}.o_midpub:before{content:"ï˜"}.o_midwarn:before{content:"ï±"}.o_midlock:before{content:""}.o_miderr:before{content:"ïª"}.o_middel:before{content:"ï„"}i.o_lp_not_accessible:before{content:"ïž"}i.o_lp_ready:before{content:"ïž"}i.o_lp_in_progress:before{content:"ï‹"}i.o_lp_done:before{content:""}.o_filetype_file:before,.o_filetype_ico:before{content:""}.o_filetype_folder:before{content:"ï„”"}.o_filetype_folder_open:before{content:"ï„•"}.o_filetype_zip:before,.o_filetype_gz:before,.o_filetype_tar:before,.o_filetype_tgz:before{content:""}.o_filetype_css:before,.o_filetype_js:before,.o_filetype_java:before,.o_filetype_numbers:before,.o_filetype_ods:before,.o_filetype_xml:before,.o_filetype_xsl:before{content:""}.o_filetype_bat_icon:before,.o_filetype_bat:before,.o_filetype_exe:before,.o_filetype_app:before,.o_filetype_sh:before{content:""}.o_filetype_xls:before,.o_filetype_xlsx:before{content:""}.o_filetype_png:before,.o_filetype_tiff:before,.o_filetype_webp:before,.o_filetype_gif:before,.o_filetype_ico:before,.o_filetype_jpeg:before,.o_filetype_bmp:before,.o_filetype_odg:before,.o_filetype_eps:before,.o_filetype_jpg:before{content:""}.o_filetype_psd:before,.o_filetype_avi:before,.o_filetype_dvi:before,.o_filetype_mp4:before,.o_filetype_m4v:before,.o_filetype_webm:before,.o_filetype_ogg:before,.o_filetype_video:before,.o_filetype_mov:before,.o_filetype_mpeg:before,.o_filetype_mpg:before,.o_filetype_qt:before,.o_filetype_ra:before,.o_filetype_ram:before,.o_filetype_swf:before,.o_filetype_flv:before{content:""}.o_filetype_midi:before,.o_filetype_audio:before,.o_filetype_mp3:before,.o_filetype_m3u:before,.o_filetype_wav:before{content:""}.o_filetype_ps:before,.o_filetype_pdf:before{content:"ï‡"}.o_filetype_key:before,.o_filetype_odp:before,.o_filetype_ppt:before,.o_filetype_pptx:before{content:""}.o_filetype_odf:before,.o_filetype_rtf:before,.o_filetype_readme:before,.o_filetype_README:before,.o_filetype_log:before,.o_filetype_txt:before,.o_filetype_htm:before,.o_filetype_html:before{content:""}.o_filetype_odt:before,.o_filetype_pages:before,.o_filetype_doc:before,.o_filetype_docx:before{content:""}.o_icon_share_social:before{content:"ï…"}.o_icon_apple:before{content:"ï…¹"}.o_icon_facebook:before{content:"ï‚‚"}.o_icon_twitter:before{content:"ï‚"}.o_icon_google:before{content:""}.o_icon_delicious:before{content:""}.o_icon_digg:before{content:""}.o_icon_mailto:before{content:""}.o_icon_link:before{content:"ïƒ"}.o_icon_yahoo:before{content:""}.o_icon_eva_disclaimer:before{content:""}.o_icon_eva_end_show:before{content:"ï¾"}.o_icon_eva_end_hide:before{content:"ï…¸"}.o_icon_eva_export:before{content:""}.o_icon_eva_pdf:before{content:"ï‡"}.o_icon_eva_print:before{content:""}.o_icon_eva_session_info:before{content:"ï„©"}.o_icon_eva_mc:before{content:"ï†"}.o_icon_eva_sc:before{content:""}.o_icon_eva_sc:before{content:""}.o_icon_surv_reset:before{content:"ï„"}.o_icon_qual_ana_hide_filter:before{content:""}.o_icon_qual_ana_pres_edit:before{content:"ï‚"}.o_icon_qual_ana_export:before{content:""}.o_icon_qual_ana_pres_delete:before{content:"ïž"}.o_icon_qual_ana_pdf:before{content:"ï‡"}.o_icon_qual_ana_print:before{content:""}.o_icon_qual_ana_show_filter:before{content:""}.o_icon_qual_ana_trend:before{content:"ïˆ"}.o_icon_qual_ana_trend_arrow:before{content:"ï‚©"}.o_icon_qual_dc_create:before{content:"ï•"}.o_icon_qual_dc_delete:before{content:""}.o_icon_qual_dc_finished:before{content:"ï˜"}.o_icon_qual_dc_preparation:before{content:"ï„"}.o_icon_qual_dc_ready:before{content:"ï€"}.o_icon_qual_dc_running:before{content:"ï…„"}.o_icon_qual_exec_future:before{content:"ïœ"}.o_icon_qual_exec_over:before{content:"ï—"}.o_icon_qual_exec_participating:before{content:"ï…„"}.o_icon_qual_exec_participated:before{content:"ï˜"}.o_icon_qual_exec_ready:before{content:"ï€"}.o_icon_qual_gen_ce_add:before{content:"ï•"}.o_icon_qual_gen_create:before{content:"ï•"}.o_icon_qual_gen_delete:before{content:""}.o_icon_qual_gen_disabled:before{content:"ïž"}.o_icon_qual_gen_enabled:before{content:""}.o_icon_qual_gen_re_add:before{content:"ï•"}.o_icon_qual_part_user_add:before{content:""}.o_icon_qual_part_user_add_course:before{content:""}.o_icon_qual_part_user_add_curele:before{content:""}.o_icon_qual_part_execute:before{content:"ï‹"}.o_icon_lic_add:before{content:"ï•"}.o_icon_lic_public_domain:before{content:"\E810";font-family:openolat;font-size:120%}.o_icon_lic_cc0:before{content:"\E811";font-family:openolat;font-size:120%}.o_icon_lic_by:before{content:"\E812";font-family:openolat;font-size:120%}.o_icon_lic_by_sa:before{content:"\E813";font-family:openolat;font-size:120%}.o_icon_lic_by_nd:before{content:"\E814";font-family:openolat;font-size:120%}.o_icon_lic_by_nc:before{content:"\E815";font-family:openolat;font-size:120%}.o_icon_lic_by_nc_sa:before{content:"\E817";font-family:openolat;font-size:120%}.o_icon_lic_by_nc_nd:before{content:"\E819";font-family:openolat;font-size:120%}.o_icon_lic_all_rights_reserved:before{content:""}.o_icon_lic_freetext:before{content:""}.o_icon_lic_general:before{content:""}.o_icon_lic_youtube:before{content:"ï…¦"}a.o_icon:hover,.o_progress_failed a.inset:hover:after,.o_progress_passed a.inset:hover:after,a.o_icon:focus,.o_progress_failed a.inset:focus:after,.o_progress_passed a.inset:focus:after{text-decoration:none}img.o_emoticons_angel{background:url(../light/images/emoticons/smiley-angel.png);width:16px;height:16px}img.o_emoticons_angry{background:url(../light/images/emoticons/smiley-mad.png);width:16px;height:16px}img.o_emoticons_blushing{background:url(../light/images/emoticons/smiley-red.png);width:16px;height:16px}img.o_emoticons_confused{background:url(../light/images/emoticons/smiley-confuse.png);width:16px;height:16px}img.o_emoticons_cool{background:url(../light/images/emoticons/smiley-cool.png);width:16px;height:16px}img.o_emoticons_cry{background:url(../light/images/emoticons/smiley-cry.png);width:16px;height:16px}img.o_emoticons_devil{background:url(../light/images/emoticons/smiley-evil.png);width:16px;height:16px}img.o_emoticons_grin{background:url(../light/images/emoticons/smiley-grin.png);width:16px;height:16px}img.o_emoticons_kiss{background:url(../light/images/emoticons/smiley-kiss.png);width:16px;height:16px}img.o_emoticons_ohoh{background:url(../light/images/emoticons/smiley-eek.png);width:16px;height:16px}img.o_emoticons_sad{background:url(../light/images/emoticons/smiley-sad.png);width:16px;height:16px}img.o_emoticons_sick{background:url(../light/images/emoticons/smiley-sad-blue.png);width:16px;height:16px}img.o_emoticons_smile{background:url(../light/images/emoticons/smiley.png);width:16px;height:16px}img.o_emoticons_tongue{background:url(../light/images/emoticons/smiley-razz.png);width:16px;height:16px}img.o_emoticons_ugly{background:url(../light/images/emoticons/smiley-money.png);width:16px;height:16px}img.o_emoticons_weird{background:url(../light/images/emoticons/smiley-nerd.png);width:16px;height:16px}img.o_emoticons_wink{background:url(../light/images/emoticons/smiley-wink.png);width:16px;height:16px}img.o_emoticons_worried{background:url(../light/images/emoticons/smiley-roll-blue.png);width:16px;height:16px}img.o_emoticons_up{background:url(../light/images/emoticons/thumb-up.png);width:16px;height:16px}img.o_emoticons_down{background:url(../light/images/emoticons/thumb.png);width:16px;height:16px}.o_block_bottom,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry,.o_header_with_buttons,.o_search_result{margin-bottom:1em}.o_block_top,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry{margin-top:1em}.o_block_small_bottom,.o_block_small{margin-bottom:0.5em}.o_block_small_top,.o_block_small{margin-top:0.5em}.o_block_large_bottom,.o_block_large,.o_block_with_datecomp,.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left,.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right,.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle,.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill,.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file,.o_pf_content .o_forum,.gu-mirror .o_forum,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_wiki,.o_login .o_login_footer_wrapper,.o_portlet{margin-bottom:2em}.o_block_large_top,.o_block_large,.o_block_with_datecomp,.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left,.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right,.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle,.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill,.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file,.o_pf_content .o_forum,.gu-mirror .o_forum,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_wiki,.o_login .o_login_footer_wrapper,.o_portlet{margin-top:2em}.o_block_move_up{margin-top:-1em}.o_block_move_up_small{margin-top:-0.5em}.o_block_move_up_large{margin-top:-2em}.o_block_inline,.o_block_inline_left,.o_block_inline_both,.o_block_inline_right{display:inline-block;vertical-align:top}.o_block_inline_left,.o_block_inline_both{margin-left:0.5em}.o_block_inline_right,.o_block_inline_both{margin-right:0.5em}.o_block_centered_wrapper{display:table;width:100%;height:100%}.o_block_centered_content{display:table-cell;vertical-align:middle;text-align:center}.o_block_imagebg{background-repeat:no-repeat;background-position:center;background-size:cover}.o_block_imagebg span{padding:2px;background-color:rgba(255,255,255,0.8)}.o_block_imagebg h1,.o_block_imagebg h2,.o_block_imagebg h3,.o_block_imagebg h4,.o_block_imagebg .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_block_imagebg h2,.o_block_imagebg h5,.o_block_imagebg p{padding:2px;background-color:rgba(255,255,255,0.8);display:inline-block}.o_block_imagebg h1:after,.o_block_imagebg h2:after,.o_block_imagebg h3:after,.o_block_imagebg h4:after,.o_block_imagebg .o_cal .fc-header-title h2:after,.o_cal .fc-header-title .o_block_imagebg h2:after,.o_block_imagebg h5:after,.o_block_imagebg p:after{content:' ';display:block}.o_scrollblock,div.b_scrollblock{overflow-x:auto;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_button_group{text-align:center}.o_button_group a,.o_button_group input,.o_button_group button,.o_button_group .btn-group{margin-right:5px;margin-bottom:0.5em}.o_button_group a:last-child,.o_button_group input:last-child,.o_button_group button:last-child,.o_button_group .btn-group:last-child{margin-right:0}.o_button_group .btn-group a,.o_button_group .btn-group input,.o_button_group .btn-group button{margin-right:0;margin-bottom:0}.o_button_group .dropdown-menu{text-align:left}.o_button_group_left{text-align:left}.o_button_group_right{text-align:right}.o_button_group_top{margin-top:0}.o_header_with_buttons:before,.o_header_with_buttons:after{content:" ";display:table}.o_header_with_buttons:after{clear:both}.o_header_with_buttons h1,.o_header_with_buttons h2,.o_header_with_buttons h3,.o_header_with_buttons h4,.o_header_with_buttons .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_header_with_buttons h2,.o_header_with_buttons h5,.o_header_with_buttons h6{display:inline-block}.o_header_with_buttons .o_button_group{margin-bottom:0;float:right}.o_header_with_buttons h1+.o_button_group{margin-top:28px}.o_header_with_buttons h2+.o_button_group{margin-top:24px}.o_header_with_buttons h3+.o_button_group{margin-top:20px}.o_header_with_buttons h4+.o_button_group,.o_header_with_buttons .o_cal .fc-header-title h2+.o_button_group,.o_cal .fc-header-title .o_header_with_buttons h2+.o_button_group{margin-top:10px}.o_header_with_buttons h5+.o_button_group{margin-top:6.6666666667px}.o_header_with_buttons h6+.o_button_group{margin-top:5px}#o_main_center .o_header_with_buttons h2+.o_button_group{margin-top:0}.panel-heading.o_header_with_buttons{margin-bottom:0}.o_button_textstyle:before{content:'['}.o_button_textstyle:after{content:']'}.panel-imagebg{background-repeat:no-repeat;background-position:center;background-size:cover}.panel-imagebg.panel-default>.panel-heading{background-color:rgba(255,255,255,0.8);border-bottom:transparent}.panel-imagebg .panel-body span{padding:2px;background-color:rgba(255,255,255,0.8)}.panel-placeholder{border-width:2px;border-style:dashed;border-color:#ccc;border-radius:10px;background-color:#fcfcfc}.panel-placeholder .panel-body{padding:10px}.panel-placeholder .panel-body:nth-child(n+2){border-top:none}.panel-placeholder .panel-body h3:nth-child(1),.panel-placeholder .panel-body h4:nth-child(1),.panel-placeholder .panel-body .o_cal .fc-header-title h2:nth-child(1),.o_cal .fc-header-title .panel-placeholder .panel-body h2:nth-child(1),.panel-placeholder .panel-body h5:nth-child(1){margin-top:0}.panel-placeholder .panel-body .o_button_group{margin-bottom:0}.panel-placeholder .panel-heading{border-top-right-radius:8px;border-top-left-radius:8px;border-width:2px;border-style:dashed;border-color:#ccc;border-top:none;border-left:none;border-right:none;color:#888;font-weight:bold}.panel-placeholder .panel-footer{border-bottom-right-radius:8px;border-bottom-left-radius:8px;border-width:2px;border-style:dashed;border-color:#ccc;border-bottom:none;border-left:none;border-right:none}.o_xsmall,.b_xsmall,p.b_xsmall,div.b_xsmall{font-size:11px}.o_small,.b_small,p.b_small,div.b_small,.o_comments .o_comment_wrapper h5,.o_comments .o_comment_wrapper .o_comment,.o_bc_meta,.tooltip,.o_htmleditor .o_metadata .o_lastmodified,.o_noti,.o_block_with_datecomp .o_meta,.o_togglebox_wrapper div.o_togglebox_content .o_hide,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label,.o_course_run .o_toc .o_entry,.o_assessment_test_results .o_qti_to_overview{font-size:12px}.o_large,.b_large,p.b_large,div.b_large{font-size:18px}.o_xlarge,.b_xlarge,p.b_xlarge,div.b_xlarge{font-size:20px}.o_disabled,.b_disabled,p.b_disabled,div.b_disabled{color:#777 !important;cursor:default}.o_disabled:hover,.b_disabled:hover{color:#777 !important}.o_dimmed,.b_dimmed,p.b_dimmed,div.b_dimmed{opacity:.4;filter:alpha(opacity=40)}.o_selected,.b_selected,p.b_selected,div.b_selected{font-weight:bold}.o_deleted,.b_deleted,p.b_deleted,div.b_deleted{text-decoration:line-through}.o_highlight_on_hover:hover{background-color:#f5f5f5}.o_clickable{cursor:pointer}.o_ochre{color:#c8a959}.o_blue{color:#12223F}.o_undecorated:hover,.o_undecorated:focus,.o_disabled:hover,.b_disabled:hover,#o_main_wrapper #o_toplink:hover,#o_footer_powered a:hover,#o_share a:hover,#o_share_social_container a:hover,.o_toolbar .o_tools_container a:hover,.o_button_toggle:hover,.o_im_message_group .o_im_from:hover,.o_noti .o_label:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover,.o_catalog .o_level .o_meta .o_title a:hover,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover,.o_repo_details .o_social .o_comments:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:hover,.o_login .o_login_register:hover,.o_disabled:focus,.b_disabled:focus,#o_main_wrapper #o_toplink:focus,#o_footer_powered a:focus,#o_share a:focus,#o_share_social_container a:focus,.o_toolbar .o_tools_container a:focus,.o_button_toggle:focus,.o_im_message_group .o_im_from:focus,.o_noti .o_label:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:focus,.o_catalog .o_level .o_meta .o_title a:focus,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:focus,.o_repo_details .o_social .o_comments:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:focus,.o_login .o_login_register:focus{text-decoration:none}.o_copy_code,.b_copy_code,p.b_copy_code,div.b_copy_code,code,pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}.o_copy_code input,.o_copy_code textarea,.b_copy_code input,code input,pre input,.b_copy_code textarea,code textarea,pre textarea{border:0;width:90%;background:transparent}.o_nowrap,.b_copy_code,p.b_copy_code,div.b_copy_code,code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o_titled_wrapper .o_content{margin-top:20px}.o_video,.o_video video,.b_video,.o_video_wrapper{display:inline-block;max-width:100%;height:auto;max-width:100%}.o_image,.o_image img,img,.b_image{display:inline-block;max-width:100%;height:auto;max-width:100%}.o_figure_caption_bottom{display:inline-block;min-width:50%}.o_figure_caption_bottom figure{display:table}.o_image_vertical_center_helper{display:inline-block;height:100%;vertical-align:middle}.o_image_vertical_center_helper+.o_image img{vertical-align:middle}.o_with_hyphens{-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o_page_margins{padding:25px}.o_dragable,.o_page_fragment_edit .o_page_tools_dd:before,.o_page_drop{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.o_dragable:active,.o_page_fragment_edit .o_page_tools_dd:active:before,.o_page_drop:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_draging,.gu-mirror{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_draging:active,.gu-mirror:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_hidden{visibility:hidden}h1{color:#337ab7}h2{color:#337ab7}h3{color:#337ab7}h4,.o_cal .fc-header-title h2{color:#337ab7}h5{color:#337ab7}h5{color:#337ab7}fieldset legend{color:#333}.o_user_content_block a{color:#337ab7;text-decoration:none}.o_user_content_block a:hover,.o_user_content_block a:focus{color:#23527c;text-decoration:underline}.b_border_box,p.b_border_box,div.b_border_box{border:1px solid #777;padding:1em;border-top-right-radius:3px;border-top-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}table td{line-height:1.428571429;vertical-align:top}table.b_default td,table.b_default th{padding:8px;vertical-align:top}table.b_grid{width:99.5%;background:transparent;border-collapse:separate}table.b_grid td,table.b_grid th{padding:8px;border:1px solid #777}table.b_grid thead td,table.b_grid th{background:#eee;font-weight:bold}table.b_border{width:99.5%;background:transparent;border-collapse:collapse}table.b_border td,table.b_border th{padding:8px;border:1px solid #777}table.b_border thead td,table.b_border th{background:#eee;font-weight:bold}table.b_borderless{width:99.5%;background:transparent;border-collapse:separate}table.b_borderless td,table.b_borderless th{padding:8px;border:0 !important}table.b_borderless thead td,table.b_borderless th{font-weight:bold}table.b_full{width:99.5%}table.b_middle{background:transparent}table.b_middle td{vertical-align:middle}table.b_gray{border-collapse:collapse}table.b_gray td,table.b_gray th{padding:8px;background:#eee;border:1px solid #fbfbfb}table.b_gray thead td,table.b_gray th{background:#d5d5d5;font-weight:bold}table.b_gray tbody tr:nth-child(even) td{background:#fbfbfb;border:1px solid #eee}table.b_gray.b_no_stripes tbody tr:nth-child(even) td{background:#eee;border:1px solid #fbfbfb}@media print{table.b_gray td,table.b_gray th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eee !important}table.b_gray thead td,table.b_gray th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#d5d5d5 !important}table.b_gray tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fbfbfb !important}}table.b_blue{border-collapse:collapse}table.b_blue td,table.b_blue th{padding:8px;background:#d9edf7;border:1px solid #eef7fb}table.b_blue thead td,table.b_blue th{background:#afd9ee;font-weight:bold}table.b_blue tbody tr:nth-child(even) td{background:#eef7fb;border:1px solid #d9edf7}table.b_blue.b_no_stripes tbody tr:nth-child(even) td{background:#d9edf7;border:1px solid #eef7fb}@media print{table.b_blue td,table.b_blue th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#d9edf7 !important}table.b_blue thead td,table.b_blue th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#afd9ee !important}table.b_blue tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eef7fb !important}}table.b_green{border-collapse:collapse}table.b_green td,table.b_green th{padding:8px;background:#dff0d8;border:1px solid #eef7ea}table.b_green thead td,table.b_green th{background:#c1e2b3;font-weight:bold}table.b_green tbody tr:nth-child(even) td{background:#eef7ea;border:1px solid #dff0d8}table.b_green.b_no_stripes tbody tr:nth-child(even) td{background:#dff0d8;border:1px solid #eef7ea}@media print{table.b_green td,table.b_green th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#dff0d8 !important}table.b_green thead td,table.b_green th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#c1e2b3 !important}table.b_green tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eef7ea !important}}table.b_yellow{border-collapse:collapse}table.b_yellow td,table.b_yellow th{padding:8px;background:#fcf8e3;border:1px solid #fefefa}table.b_yellow thead td,table.b_yellow th{background:#f7ecb5;font-weight:bold}table.b_yellow tbody tr:nth-child(even) td{background:#fefefa;border:1px solid #fcf8e3}table.b_yellow.b_no_stripes tbody tr:nth-child(even) td{background:#fcf8e3;border:1px solid #fefefa}@media print{table.b_yellow td,table.b_yellow th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fcf8e3 !important}table.b_yellow thead td,table.b_yellow th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f7ecb5 !important}table.b_yellow tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fefefa !important}}table.b_red{border-collapse:collapse}table.b_red td,table.b_red th{padding:8px;background:#f2dede;border:1px solid #f9f0f0}table.b_red thead td,table.b_red th{background:#e4b9b9;font-weight:bold}table.b_red tbody tr:nth-child(even) td{background:#f9f0f0;border:1px solid #f2dede}table.b_red.b_no_stripes tbody tr:nth-child(even) td{background:#f2dede;border:1px solid #f9f0f0}@media print{table.b_red td,table.b_red th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f2dede !important}table.b_red thead td,table.b_red th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#e4b9b9 !important}table.b_red tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f9f0f0 !important}}table.a_responsive{width:auto !important}@media (max-width: 768px){.a_responsive td{display:block}}.b_align_normal{text-align:left}.b_align_center{text-align:center}.b_align_inverse{text-align:right}.b_align_justified{text-align:justify}a.b_link_extern{color:#337ab7}a.b_link_extern:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï‚Ž"}a.b_link_mailto{color:#337ab7}a.b_link_mailto:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:""}a.b_link_forward{color:#337ab7}a.b_link_forward:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï¤"}img.b_float_left{float:left;margin:0 2em 2em 0}img.b_float_left_clear{clear:both;margin:0 2em 2em 0;display:block}img.b_float_right{float:right;margin:0 0 2em 2em}img.b_float_right_clear{clear:both;display:block;margin:0 0 2em auto}img.b_float_left_clear_nomargin{float:left;display:block;margin:0 0 0 0}img.b_centered{clear:both;display:block;margin:0 auto 2em auto}img.b_circle{border-radius:50%}img.b_with_border{border:1px solid #ddd;padding:3px;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}p.b_figure_title{margin:20px 0 5px 0;font-size:85%;font-family:inherit}p.b_figure_caption{clear:both;margin:5px 0 20px 0}caption,figcaption,.o_caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left;font-style:italic}.b_clear_float,p.b_clear_float,div.b_clear_float{clear:both}figure.align-left{float:left}figure.align-right{float:right}figure.image{display:inline-block;border:1px solid gray;margin:0 2px 0 1px;background:#f5f2f0}figure.image img{margin:8px 8px 0 8px}figure.image figcaption{margin:6px 8px 6px 8px;text-align:center}img.align-left{float:left}img.align-right{float:right}.mce-toc{border:1px solid gray}.mce-toc h2{margin:4px}.mce-toc li{list-style-type:none}figure.image.align-center{display:block;text-align:center}figure.image.align-left{float:none;display:block;text-align:left}figure.image.align-left figcaption{text-align:left}figure.image.align-right{float:none;display:block;text-align:right}figure.image.align-right figcaption{text-align:right}figure.image{margin:2em 0 2em 0;border:0;background:none}figure.image img.b_float_left,figure.image img.b_float_left_clear,figure.image img.b_float_right,figure.image img.b_float_right_clear,figure.image img.b_float_left_clear_nomargin,figure.image img.b_centered{float:none;display:inline-block;margin:0}figure.image figcaption{font-size:90%;font-style:italic}.radial-progress,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{margin:10px;width:120px;height:120px;background-color:#eee;border-radius:50%;font-size:21.6px;display:inline-block;position:relative}.radial-progress .circle,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle{display:block}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask,.radial-progress .circle .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .fill,.radial-progress .circle .shadow,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .shadow{display:block;width:100%;height:100%;position:absolute;border-radius:50%}.radial-progress .circle .shadow,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .shadow{box-shadow:none inset}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask,.radial-progress .circle .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .fill{-webkit-backface-visibility:hidden;transition:-webkit-transform 1s;transition:-ms-transform 1s;transition:transform 1s;border-radius:50%}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask{clip:rect(0px, 120px, 120px, 60px)}.radial-progress .circle .mask .fill{clip:rect(0px, 60px, 120px, 0px);background-color:#337ab7}.radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{display:block;width:90px;height:90px;position:absolute;border-radius:50%;margin-left:15px;margin-top:15px;overflow:hidden;background-color:#fff;box-shadow:none;font-size:80px;line-height:80px;text-align:center}.radial-progress .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{position:absolute;top:5px;left:-5px;opacity:0;transition:opacity 0;transition-delay:1s}.radial-progress .percentage,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage{height:80%;width:80%;position:absolute;top:10%;left:10%;display:table;line-height:1}.radial-progress .percentage .centeredWrapper,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .centeredWrapper{display:table-cell;vertical-align:middle;text-align:center}.radial-progress .percentage .centeredWrapper .number{display:block;margin-right:-0.4em;font-weight:800;color:#337ab7}.radial-progress .percentage .centeredWrapper .addon{display:block;color:#777;margin-top:0.2em;margin-bottom:-0.4em}.radial-progress .percentage .centeredWrapper .addon>span{display:block;font-size:0.6em;font-weight:bold}.radial-progress .percentage .centeredWrapper .addon>span+span{display:block;margin-top:2px;font-size:0.5em}.radial-progress[data-progress="0"] .circle .mask.full,.radial-progress[data-progress="0"] .circle .fill{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.radial-progress[data-progress="0"] .circle .fill.fix{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.radial-progress[data-progress="1"] .circle .mask.full,.radial-progress[data-progress="1"] .circle .fill{-webkit-transform:rotate(1.8deg);-ms-transform:rotate(1.8deg);transform:rotate(1.8deg)}.radial-progress[data-progress="1"] .circle .fill.fix{-webkit-transform:rotate(3.6deg);-ms-transform:rotate(3.6deg);transform:rotate(3.6deg)}.radial-progress[data-progress="2"] .circle .mask.full,.radial-progress[data-progress="2"] .circle .fill{-webkit-transform:rotate(3.6deg);-ms-transform:rotate(3.6deg);transform:rotate(3.6deg)}.radial-progress[data-progress="2"] .circle .fill.fix{-webkit-transform:rotate(7.2deg);-ms-transform:rotate(7.2deg);transform:rotate(7.2deg)}.radial-progress[data-progress="3"] .circle .mask.full,.radial-progress[data-progress="3"] .circle .fill{-webkit-transform:rotate(5.4deg);-ms-transform:rotate(5.4deg);transform:rotate(5.4deg)}.radial-progress[data-progress="3"] .circle .fill.fix{-webkit-transform:rotate(10.8deg);-ms-transform:rotate(10.8deg);transform:rotate(10.8deg)}.radial-progress[data-progress="4"] .circle .mask.full,.radial-progress[data-progress="4"] .circle .fill{-webkit-transform:rotate(7.2deg);-ms-transform:rotate(7.2deg);transform:rotate(7.2deg)}.radial-progress[data-progress="4"] .circle .fill.fix{-webkit-transform:rotate(14.4deg);-ms-transform:rotate(14.4deg);transform:rotate(14.4deg)}.radial-progress[data-progress="5"] .circle .mask.full,.radial-progress[data-progress="5"] .circle .fill{-webkit-transform:rotate(9deg);-ms-transform:rotate(9deg);transform:rotate(9deg)}.radial-progress[data-progress="5"] .circle .fill.fix{-webkit-transform:rotate(18deg);-ms-transform:rotate(18deg);transform:rotate(18deg)}.radial-progress[data-progress="6"] .circle .mask.full,.radial-progress[data-progress="6"] .circle .fill{-webkit-transform:rotate(10.8deg);-ms-transform:rotate(10.8deg);transform:rotate(10.8deg)}.radial-progress[data-progress="6"] .circle .fill.fix{-webkit-transform:rotate(21.6deg);-ms-transform:rotate(21.6deg);transform:rotate(21.6deg)}.radial-progress[data-progress="7"] .circle .mask.full,.radial-progress[data-progress="7"] .circle .fill{-webkit-transform:rotate(12.6deg);-ms-transform:rotate(12.6deg);transform:rotate(12.6deg)}.radial-progress[data-progress="7"] .circle .fill.fix{-webkit-transform:rotate(25.2deg);-ms-transform:rotate(25.2deg);transform:rotate(25.2deg)}.radial-progress[data-progress="8"] .circle .mask.full,.radial-progress[data-progress="8"] .circle .fill{-webkit-transform:rotate(14.4deg);-ms-transform:rotate(14.4deg);transform:rotate(14.4deg)}.radial-progress[data-progress="8"] .circle .fill.fix{-webkit-transform:rotate(28.8deg);-ms-transform:rotate(28.8deg);transform:rotate(28.8deg)}.radial-progress[data-progress="9"] .circle .mask.full,.radial-progress[data-progress="9"] .circle .fill{-webkit-transform:rotate(16.2deg);-ms-transform:rotate(16.2deg);transform:rotate(16.2deg)}.radial-progress[data-progress="9"] .circle .fill.fix{-webkit-transform:rotate(32.4deg);-ms-transform:rotate(32.4deg);transform:rotate(32.4deg)}.radial-progress[data-progress="10"] .circle .mask.full,.radial-progress[data-progress="10"] .circle .fill{-webkit-transform:rotate(18deg);-ms-transform:rotate(18deg);transform:rotate(18deg)}.radial-progress[data-progress="10"] .circle .fill.fix{-webkit-transform:rotate(36deg);-ms-transform:rotate(36deg);transform:rotate(36deg)}.radial-progress[data-progress="11"] .circle .mask.full,.radial-progress[data-progress="11"] .circle .fill{-webkit-transform:rotate(19.8deg);-ms-transform:rotate(19.8deg);transform:rotate(19.8deg)}.radial-progress[data-progress="11"] .circle .fill.fix{-webkit-transform:rotate(39.6deg);-ms-transform:rotate(39.6deg);transform:rotate(39.6deg)}.radial-progress[data-progress="12"] .circle .mask.full,.radial-progress[data-progress="12"] .circle .fill{-webkit-transform:rotate(21.6deg);-ms-transform:rotate(21.6deg);transform:rotate(21.6deg)}.radial-progress[data-progress="12"] .circle .fill.fix{-webkit-transform:rotate(43.2deg);-ms-transform:rotate(43.2deg);transform:rotate(43.2deg)}.radial-progress[data-progress="13"] .circle .mask.full,.radial-progress[data-progress="13"] .circle .fill{-webkit-transform:rotate(23.4deg);-ms-transform:rotate(23.4deg);transform:rotate(23.4deg)}.radial-progress[data-progress="13"] .circle .fill.fix{-webkit-transform:rotate(46.8deg);-ms-transform:rotate(46.8deg);transform:rotate(46.8deg)}.radial-progress[data-progress="14"] .circle .mask.full,.radial-progress[data-progress="14"] .circle .fill{-webkit-transform:rotate(25.2deg);-ms-transform:rotate(25.2deg);transform:rotate(25.2deg)}.radial-progress[data-progress="14"] .circle .fill.fix{-webkit-transform:rotate(50.4deg);-ms-transform:rotate(50.4deg);transform:rotate(50.4deg)}.radial-progress[data-progress="15"] .circle .mask.full,.radial-progress[data-progress="15"] .circle .fill{-webkit-transform:rotate(27deg);-ms-transform:rotate(27deg);transform:rotate(27deg)}.radial-progress[data-progress="15"] .circle .fill.fix{-webkit-transform:rotate(54deg);-ms-transform:rotate(54deg);transform:rotate(54deg)}.radial-progress[data-progress="16"] .circle .mask.full,.radial-progress[data-progress="16"] .circle .fill{-webkit-transform:rotate(28.8deg);-ms-transform:rotate(28.8deg);transform:rotate(28.8deg)}.radial-progress[data-progress="16"] .circle .fill.fix{-webkit-transform:rotate(57.6deg);-ms-transform:rotate(57.6deg);transform:rotate(57.6deg)}.radial-progress[data-progress="17"] .circle .mask.full,.radial-progress[data-progress="17"] .circle .fill{-webkit-transform:rotate(30.6deg);-ms-transform:rotate(30.6deg);transform:rotate(30.6deg)}.radial-progress[data-progress="17"] .circle .fill.fix{-webkit-transform:rotate(61.2deg);-ms-transform:rotate(61.2deg);transform:rotate(61.2deg)}.radial-progress[data-progress="18"] .circle .mask.full,.radial-progress[data-progress="18"] .circle .fill{-webkit-transform:rotate(32.4deg);-ms-transform:rotate(32.4deg);transform:rotate(32.4deg)}.radial-progress[data-progress="18"] .circle .fill.fix{-webkit-transform:rotate(64.8deg);-ms-transform:rotate(64.8deg);transform:rotate(64.8deg)}.radial-progress[data-progress="19"] .circle .mask.full,.radial-progress[data-progress="19"] .circle .fill{-webkit-transform:rotate(34.2deg);-ms-transform:rotate(34.2deg);transform:rotate(34.2deg)}.radial-progress[data-progress="19"] .circle .fill.fix{-webkit-transform:rotate(68.4deg);-ms-transform:rotate(68.4deg);transform:rotate(68.4deg)}.radial-progress[data-progress="20"] .circle .mask.full,.radial-progress[data-progress="20"] .circle .fill{-webkit-transform:rotate(36deg);-ms-transform:rotate(36deg);transform:rotate(36deg)}.radial-progress[data-progress="20"] .circle .fill.fix{-webkit-transform:rotate(72deg);-ms-transform:rotate(72deg);transform:rotate(72deg)}.radial-progress[data-progress="21"] .circle .mask.full,.radial-progress[data-progress="21"] .circle .fill{-webkit-transform:rotate(37.8deg);-ms-transform:rotate(37.8deg);transform:rotate(37.8deg)}.radial-progress[data-progress="21"] .circle .fill.fix{-webkit-transform:rotate(75.6deg);-ms-transform:rotate(75.6deg);transform:rotate(75.6deg)}.radial-progress[data-progress="22"] .circle .mask.full,.radial-progress[data-progress="22"] .circle .fill{-webkit-transform:rotate(39.6deg);-ms-transform:rotate(39.6deg);transform:rotate(39.6deg)}.radial-progress[data-progress="22"] .circle .fill.fix{-webkit-transform:rotate(79.2deg);-ms-transform:rotate(79.2deg);transform:rotate(79.2deg)}.radial-progress[data-progress="23"] .circle .mask.full,.radial-progress[data-progress="23"] .circle .fill{-webkit-transform:rotate(41.4deg);-ms-transform:rotate(41.4deg);transform:rotate(41.4deg)}.radial-progress[data-progress="23"] .circle .fill.fix{-webkit-transform:rotate(82.8deg);-ms-transform:rotate(82.8deg);transform:rotate(82.8deg)}.radial-progress[data-progress="24"] .circle .mask.full,.radial-progress[data-progress="24"] .circle .fill{-webkit-transform:rotate(43.2deg);-ms-transform:rotate(43.2deg);transform:rotate(43.2deg)}.radial-progress[data-progress="24"] .circle .fill.fix{-webkit-transform:rotate(86.4deg);-ms-transform:rotate(86.4deg);transform:rotate(86.4deg)}.radial-progress[data-progress="25"] .circle .mask.full,.radial-progress[data-progress="25"] .circle .fill{-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.radial-progress[data-progress="25"] .circle .fill.fix{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.radial-progress[data-progress="26"] .circle .mask.full,.radial-progress[data-progress="26"] .circle .fill{-webkit-transform:rotate(46.8deg);-ms-transform:rotate(46.8deg);transform:rotate(46.8deg)}.radial-progress[data-progress="26"] .circle .fill.fix{-webkit-transform:rotate(93.6deg);-ms-transform:rotate(93.6deg);transform:rotate(93.6deg)}.radial-progress[data-progress="27"] .circle .mask.full,.radial-progress[data-progress="27"] .circle .fill{-webkit-transform:rotate(48.6deg);-ms-transform:rotate(48.6deg);transform:rotate(48.6deg)}.radial-progress[data-progress="27"] .circle .fill.fix{-webkit-transform:rotate(97.2deg);-ms-transform:rotate(97.2deg);transform:rotate(97.2deg)}.radial-progress[data-progress="28"] .circle .mask.full,.radial-progress[data-progress="28"] .circle .fill{-webkit-transform:rotate(50.4deg);-ms-transform:rotate(50.4deg);transform:rotate(50.4deg)}.radial-progress[data-progress="28"] .circle .fill.fix{-webkit-transform:rotate(100.8deg);-ms-transform:rotate(100.8deg);transform:rotate(100.8deg)}.radial-progress[data-progress="29"] .circle .mask.full,.radial-progress[data-progress="29"] .circle .fill{-webkit-transform:rotate(52.2deg);-ms-transform:rotate(52.2deg);transform:rotate(52.2deg)}.radial-progress[data-progress="29"] .circle .fill.fix{-webkit-transform:rotate(104.4deg);-ms-transform:rotate(104.4deg);transform:rotate(104.4deg)}.radial-progress[data-progress="30"] .circle .mask.full,.radial-progress[data-progress="30"] .circle .fill{-webkit-transform:rotate(54deg);-ms-transform:rotate(54deg);transform:rotate(54deg)}.radial-progress[data-progress="30"] .circle .fill.fix{-webkit-transform:rotate(108deg);-ms-transform:rotate(108deg);transform:rotate(108deg)}.radial-progress[data-progress="31"] .circle .mask.full,.radial-progress[data-progress="31"] .circle .fill{-webkit-transform:rotate(55.8deg);-ms-transform:rotate(55.8deg);transform:rotate(55.8deg)}.radial-progress[data-progress="31"] .circle .fill.fix{-webkit-transform:rotate(111.6deg);-ms-transform:rotate(111.6deg);transform:rotate(111.6deg)}.radial-progress[data-progress="32"] .circle .mask.full,.radial-progress[data-progress="32"] .circle .fill{-webkit-transform:rotate(57.6deg);-ms-transform:rotate(57.6deg);transform:rotate(57.6deg)}.radial-progress[data-progress="32"] .circle .fill.fix{-webkit-transform:rotate(115.2deg);-ms-transform:rotate(115.2deg);transform:rotate(115.2deg)}.radial-progress[data-progress="33"] .circle .mask.full,.radial-progress[data-progress="33"] .circle .fill{-webkit-transform:rotate(59.4deg);-ms-transform:rotate(59.4deg);transform:rotate(59.4deg)}.radial-progress[data-progress="33"] .circle .fill.fix{-webkit-transform:rotate(118.8deg);-ms-transform:rotate(118.8deg);transform:rotate(118.8deg)}.radial-progress[data-progress="34"] .circle .mask.full,.radial-progress[data-progress="34"] .circle .fill{-webkit-transform:rotate(61.2deg);-ms-transform:rotate(61.2deg);transform:rotate(61.2deg)}.radial-progress[data-progress="34"] .circle .fill.fix{-webkit-transform:rotate(122.4deg);-ms-transform:rotate(122.4deg);transform:rotate(122.4deg)}.radial-progress[data-progress="35"] .circle .mask.full,.radial-progress[data-progress="35"] .circle .fill{-webkit-transform:rotate(63deg);-ms-transform:rotate(63deg);transform:rotate(63deg)}.radial-progress[data-progress="35"] .circle .fill.fix{-webkit-transform:rotate(126deg);-ms-transform:rotate(126deg);transform:rotate(126deg)}.radial-progress[data-progress="36"] .circle .mask.full,.radial-progress[data-progress="36"] .circle .fill{-webkit-transform:rotate(64.8deg);-ms-transform:rotate(64.8deg);transform:rotate(64.8deg)}.radial-progress[data-progress="36"] .circle .fill.fix{-webkit-transform:rotate(129.6deg);-ms-transform:rotate(129.6deg);transform:rotate(129.6deg)}.radial-progress[data-progress="37"] .circle .mask.full,.radial-progress[data-progress="37"] .circle .fill{-webkit-transform:rotate(66.6deg);-ms-transform:rotate(66.6deg);transform:rotate(66.6deg)}.radial-progress[data-progress="37"] .circle .fill.fix{-webkit-transform:rotate(133.2deg);-ms-transform:rotate(133.2deg);transform:rotate(133.2deg)}.radial-progress[data-progress="38"] .circle .mask.full,.radial-progress[data-progress="38"] .circle .fill{-webkit-transform:rotate(68.4deg);-ms-transform:rotate(68.4deg);transform:rotate(68.4deg)}.radial-progress[data-progress="38"] .circle .fill.fix{-webkit-transform:rotate(136.8deg);-ms-transform:rotate(136.8deg);transform:rotate(136.8deg)}.radial-progress[data-progress="39"] .circle .mask.full,.radial-progress[data-progress="39"] .circle .fill{-webkit-transform:rotate(70.2deg);-ms-transform:rotate(70.2deg);transform:rotate(70.2deg)}.radial-progress[data-progress="39"] .circle .fill.fix{-webkit-transform:rotate(140.4deg);-ms-transform:rotate(140.4deg);transform:rotate(140.4deg)}.radial-progress[data-progress="40"] .circle .mask.full,.radial-progress[data-progress="40"] .circle .fill{-webkit-transform:rotate(72deg);-ms-transform:rotate(72deg);transform:rotate(72deg)}.radial-progress[data-progress="40"] .circle .fill.fix{-webkit-transform:rotate(144deg);-ms-transform:rotate(144deg);transform:rotate(144deg)}.radial-progress[data-progress="41"] .circle .mask.full,.radial-progress[data-progress="41"] .circle .fill{-webkit-transform:rotate(73.8deg);-ms-transform:rotate(73.8deg);transform:rotate(73.8deg)}.radial-progress[data-progress="41"] .circle .fill.fix{-webkit-transform:rotate(147.6deg);-ms-transform:rotate(147.6deg);transform:rotate(147.6deg)}.radial-progress[data-progress="42"] .circle .mask.full,.radial-progress[data-progress="42"] .circle .fill{-webkit-transform:rotate(75.6deg);-ms-transform:rotate(75.6deg);transform:rotate(75.6deg)}.radial-progress[data-progress="42"] .circle .fill.fix{-webkit-transform:rotate(151.2deg);-ms-transform:rotate(151.2deg);transform:rotate(151.2deg)}.radial-progress[data-progress="43"] .circle .mask.full,.radial-progress[data-progress="43"] .circle .fill{-webkit-transform:rotate(77.4deg);-ms-transform:rotate(77.4deg);transform:rotate(77.4deg)}.radial-progress[data-progress="43"] .circle .fill.fix{-webkit-transform:rotate(154.8deg);-ms-transform:rotate(154.8deg);transform:rotate(154.8deg)}.radial-progress[data-progress="44"] .circle .mask.full,.radial-progress[data-progress="44"] .circle .fill{-webkit-transform:rotate(79.2deg);-ms-transform:rotate(79.2deg);transform:rotate(79.2deg)}.radial-progress[data-progress="44"] .circle .fill.fix{-webkit-transform:rotate(158.4deg);-ms-transform:rotate(158.4deg);transform:rotate(158.4deg)}.radial-progress[data-progress="45"] .circle .mask.full,.radial-progress[data-progress="45"] .circle .fill{-webkit-transform:rotate(81deg);-ms-transform:rotate(81deg);transform:rotate(81deg)}.radial-progress[data-progress="45"] .circle .fill.fix{-webkit-transform:rotate(162deg);-ms-transform:rotate(162deg);transform:rotate(162deg)}.radial-progress[data-progress="46"] .circle .mask.full,.radial-progress[data-progress="46"] .circle .fill{-webkit-transform:rotate(82.8deg);-ms-transform:rotate(82.8deg);transform:rotate(82.8deg)}.radial-progress[data-progress="46"] .circle .fill.fix{-webkit-transform:rotate(165.6deg);-ms-transform:rotate(165.6deg);transform:rotate(165.6deg)}.radial-progress[data-progress="47"] .circle .mask.full,.radial-progress[data-progress="47"] .circle .fill{-webkit-transform:rotate(84.6deg);-ms-transform:rotate(84.6deg);transform:rotate(84.6deg)}.radial-progress[data-progress="47"] .circle .fill.fix{-webkit-transform:rotate(169.2deg);-ms-transform:rotate(169.2deg);transform:rotate(169.2deg)}.radial-progress[data-progress="48"] .circle .mask.full,.radial-progress[data-progress="48"] .circle .fill{-webkit-transform:rotate(86.4deg);-ms-transform:rotate(86.4deg);transform:rotate(86.4deg)}.radial-progress[data-progress="48"] .circle .fill.fix{-webkit-transform:rotate(172.8deg);-ms-transform:rotate(172.8deg);transform:rotate(172.8deg)}.radial-progress[data-progress="49"] .circle .mask.full,.radial-progress[data-progress="49"] .circle .fill{-webkit-transform:rotate(88.2deg);-ms-transform:rotate(88.2deg);transform:rotate(88.2deg)}.radial-progress[data-progress="49"] .circle .fill.fix{-webkit-transform:rotate(176.4deg);-ms-transform:rotate(176.4deg);transform:rotate(176.4deg)}.radial-progress[data-progress="50"] .circle .mask.full,.radial-progress[data-progress="50"] .circle .fill{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.radial-progress[data-progress="50"] .circle .fill.fix{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.radial-progress[data-progress="51"] .circle .mask.full,.radial-progress[data-progress="51"] .circle .fill{-webkit-transform:rotate(91.8deg);-ms-transform:rotate(91.8deg);transform:rotate(91.8deg)}.radial-progress[data-progress="51"] .circle .fill.fix{-webkit-transform:rotate(183.6deg);-ms-transform:rotate(183.6deg);transform:rotate(183.6deg)}.radial-progress[data-progress="52"] .circle .mask.full,.radial-progress[data-progress="52"] .circle .fill{-webkit-transform:rotate(93.6deg);-ms-transform:rotate(93.6deg);transform:rotate(93.6deg)}.radial-progress[data-progress="52"] .circle .fill.fix{-webkit-transform:rotate(187.2deg);-ms-transform:rotate(187.2deg);transform:rotate(187.2deg)}.radial-progress[data-progress="53"] .circle .mask.full,.radial-progress[data-progress="53"] .circle .fill{-webkit-transform:rotate(95.4deg);-ms-transform:rotate(95.4deg);transform:rotate(95.4deg)}.radial-progress[data-progress="53"] .circle .fill.fix{-webkit-transform:rotate(190.8deg);-ms-transform:rotate(190.8deg);transform:rotate(190.8deg)}.radial-progress[data-progress="54"] .circle .mask.full,.radial-progress[data-progress="54"] .circle .fill{-webkit-transform:rotate(97.2deg);-ms-transform:rotate(97.2deg);transform:rotate(97.2deg)}.radial-progress[data-progress="54"] .circle .fill.fix{-webkit-transform:rotate(194.4deg);-ms-transform:rotate(194.4deg);transform:rotate(194.4deg)}.radial-progress[data-progress="55"] .circle .mask.full,.radial-progress[data-progress="55"] .circle .fill{-webkit-transform:rotate(99deg);-ms-transform:rotate(99deg);transform:rotate(99deg)}.radial-progress[data-progress="55"] .circle .fill.fix{-webkit-transform:rotate(198deg);-ms-transform:rotate(198deg);transform:rotate(198deg)}.radial-progress[data-progress="56"] .circle .mask.full,.radial-progress[data-progress="56"] .circle .fill{-webkit-transform:rotate(100.8deg);-ms-transform:rotate(100.8deg);transform:rotate(100.8deg)}.radial-progress[data-progress="56"] .circle .fill.fix{-webkit-transform:rotate(201.6deg);-ms-transform:rotate(201.6deg);transform:rotate(201.6deg)}.radial-progress[data-progress="57"] .circle .mask.full,.radial-progress[data-progress="57"] .circle .fill{-webkit-transform:rotate(102.6deg);-ms-transform:rotate(102.6deg);transform:rotate(102.6deg)}.radial-progress[data-progress="57"] .circle .fill.fix{-webkit-transform:rotate(205.2deg);-ms-transform:rotate(205.2deg);transform:rotate(205.2deg)}.radial-progress[data-progress="58"] .circle .mask.full,.radial-progress[data-progress="58"] .circle .fill{-webkit-transform:rotate(104.4deg);-ms-transform:rotate(104.4deg);transform:rotate(104.4deg)}.radial-progress[data-progress="58"] .circle .fill.fix{-webkit-transform:rotate(208.8deg);-ms-transform:rotate(208.8deg);transform:rotate(208.8deg)}.radial-progress[data-progress="59"] .circle .mask.full,.radial-progress[data-progress="59"] .circle .fill{-webkit-transform:rotate(106.2deg);-ms-transform:rotate(106.2deg);transform:rotate(106.2deg)}.radial-progress[data-progress="59"] .circle .fill.fix{-webkit-transform:rotate(212.4deg);-ms-transform:rotate(212.4deg);transform:rotate(212.4deg)}.radial-progress[data-progress="60"] .circle .mask.full,.radial-progress[data-progress="60"] .circle .fill{-webkit-transform:rotate(108deg);-ms-transform:rotate(108deg);transform:rotate(108deg)}.radial-progress[data-progress="60"] .circle .fill.fix{-webkit-transform:rotate(216deg);-ms-transform:rotate(216deg);transform:rotate(216deg)}.radial-progress[data-progress="61"] .circle .mask.full,.radial-progress[data-progress="61"] .circle .fill{-webkit-transform:rotate(109.8deg);-ms-transform:rotate(109.8deg);transform:rotate(109.8deg)}.radial-progress[data-progress="61"] .circle .fill.fix{-webkit-transform:rotate(219.6deg);-ms-transform:rotate(219.6deg);transform:rotate(219.6deg)}.radial-progress[data-progress="62"] .circle .mask.full,.radial-progress[data-progress="62"] .circle .fill{-webkit-transform:rotate(111.6deg);-ms-transform:rotate(111.6deg);transform:rotate(111.6deg)}.radial-progress[data-progress="62"] .circle .fill.fix{-webkit-transform:rotate(223.2deg);-ms-transform:rotate(223.2deg);transform:rotate(223.2deg)}.radial-progress[data-progress="63"] .circle .mask.full,.radial-progress[data-progress="63"] .circle .fill{-webkit-transform:rotate(113.4deg);-ms-transform:rotate(113.4deg);transform:rotate(113.4deg)}.radial-progress[data-progress="63"] .circle .fill.fix{-webkit-transform:rotate(226.8deg);-ms-transform:rotate(226.8deg);transform:rotate(226.8deg)}.radial-progress[data-progress="64"] .circle .mask.full,.radial-progress[data-progress="64"] .circle .fill{-webkit-transform:rotate(115.2deg);-ms-transform:rotate(115.2deg);transform:rotate(115.2deg)}.radial-progress[data-progress="64"] .circle .fill.fix{-webkit-transform:rotate(230.4deg);-ms-transform:rotate(230.4deg);transform:rotate(230.4deg)}.radial-progress[data-progress="65"] .circle .mask.full,.radial-progress[data-progress="65"] .circle .fill{-webkit-transform:rotate(117deg);-ms-transform:rotate(117deg);transform:rotate(117deg)}.radial-progress[data-progress="65"] .circle .fill.fix{-webkit-transform:rotate(234deg);-ms-transform:rotate(234deg);transform:rotate(234deg)}.radial-progress[data-progress="66"] .circle .mask.full,.radial-progress[data-progress="66"] .circle .fill{-webkit-transform:rotate(118.8deg);-ms-transform:rotate(118.8deg);transform:rotate(118.8deg)}.radial-progress[data-progress="66"] .circle .fill.fix{-webkit-transform:rotate(237.6deg);-ms-transform:rotate(237.6deg);transform:rotate(237.6deg)}.radial-progress[data-progress="67"] .circle .mask.full,.radial-progress[data-progress="67"] .circle .fill{-webkit-transform:rotate(120.6deg);-ms-transform:rotate(120.6deg);transform:rotate(120.6deg)}.radial-progress[data-progress="67"] .circle .fill.fix{-webkit-transform:rotate(241.2deg);-ms-transform:rotate(241.2deg);transform:rotate(241.2deg)}.radial-progress[data-progress="68"] .circle .mask.full,.radial-progress[data-progress="68"] .circle .fill{-webkit-transform:rotate(122.4deg);-ms-transform:rotate(122.4deg);transform:rotate(122.4deg)}.radial-progress[data-progress="68"] .circle .fill.fix{-webkit-transform:rotate(244.8deg);-ms-transform:rotate(244.8deg);transform:rotate(244.8deg)}.radial-progress[data-progress="69"] .circle .mask.full,.radial-progress[data-progress="69"] .circle .fill{-webkit-transform:rotate(124.2deg);-ms-transform:rotate(124.2deg);transform:rotate(124.2deg)}.radial-progress[data-progress="69"] .circle .fill.fix{-webkit-transform:rotate(248.4deg);-ms-transform:rotate(248.4deg);transform:rotate(248.4deg)}.radial-progress[data-progress="70"] .circle .mask.full,.radial-progress[data-progress="70"] .circle .fill{-webkit-transform:rotate(126deg);-ms-transform:rotate(126deg);transform:rotate(126deg)}.radial-progress[data-progress="70"] .circle .fill.fix{-webkit-transform:rotate(252deg);-ms-transform:rotate(252deg);transform:rotate(252deg)}.radial-progress[data-progress="71"] .circle .mask.full,.radial-progress[data-progress="71"] .circle .fill{-webkit-transform:rotate(127.8deg);-ms-transform:rotate(127.8deg);transform:rotate(127.8deg)}.radial-progress[data-progress="71"] .circle .fill.fix{-webkit-transform:rotate(255.6deg);-ms-transform:rotate(255.6deg);transform:rotate(255.6deg)}.radial-progress[data-progress="72"] .circle .mask.full,.radial-progress[data-progress="72"] .circle .fill{-webkit-transform:rotate(129.6deg);-ms-transform:rotate(129.6deg);transform:rotate(129.6deg)}.radial-progress[data-progress="72"] .circle .fill.fix{-webkit-transform:rotate(259.2deg);-ms-transform:rotate(259.2deg);transform:rotate(259.2deg)}.radial-progress[data-progress="73"] .circle .mask.full,.radial-progress[data-progress="73"] .circle .fill{-webkit-transform:rotate(131.4deg);-ms-transform:rotate(131.4deg);transform:rotate(131.4deg)}.radial-progress[data-progress="73"] .circle .fill.fix{-webkit-transform:rotate(262.8deg);-ms-transform:rotate(262.8deg);transform:rotate(262.8deg)}.radial-progress[data-progress="74"] .circle .mask.full,.radial-progress[data-progress="74"] .circle .fill{-webkit-transform:rotate(133.2deg);-ms-transform:rotate(133.2deg);transform:rotate(133.2deg)}.radial-progress[data-progress="74"] .circle .fill.fix{-webkit-transform:rotate(266.4deg);-ms-transform:rotate(266.4deg);transform:rotate(266.4deg)}.radial-progress[data-progress="75"] .circle .mask.full,.radial-progress[data-progress="75"] .circle .fill{-webkit-transform:rotate(135deg);-ms-transform:rotate(135deg);transform:rotate(135deg)}.radial-progress[data-progress="75"] .circle .fill.fix{-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.radial-progress[data-progress="76"] .circle .mask.full,.radial-progress[data-progress="76"] .circle .fill{-webkit-transform:rotate(136.8deg);-ms-transform:rotate(136.8deg);transform:rotate(136.8deg)}.radial-progress[data-progress="76"] .circle .fill.fix{-webkit-transform:rotate(273.6deg);-ms-transform:rotate(273.6deg);transform:rotate(273.6deg)}.radial-progress[data-progress="77"] .circle .mask.full,.radial-progress[data-progress="77"] .circle .fill{-webkit-transform:rotate(138.6deg);-ms-transform:rotate(138.6deg);transform:rotate(138.6deg)}.radial-progress[data-progress="77"] .circle .fill.fix{-webkit-transform:rotate(277.2deg);-ms-transform:rotate(277.2deg);transform:rotate(277.2deg)}.radial-progress[data-progress="78"] .circle .mask.full,.radial-progress[data-progress="78"] .circle .fill{-webkit-transform:rotate(140.4deg);-ms-transform:rotate(140.4deg);transform:rotate(140.4deg)}.radial-progress[data-progress="78"] .circle .fill.fix{-webkit-transform:rotate(280.8deg);-ms-transform:rotate(280.8deg);transform:rotate(280.8deg)}.radial-progress[data-progress="79"] .circle .mask.full,.radial-progress[data-progress="79"] .circle .fill{-webkit-transform:rotate(142.2deg);-ms-transform:rotate(142.2deg);transform:rotate(142.2deg)}.radial-progress[data-progress="79"] .circle .fill.fix{-webkit-transform:rotate(284.4deg);-ms-transform:rotate(284.4deg);transform:rotate(284.4deg)}.radial-progress[data-progress="80"] .circle .mask.full,.radial-progress[data-progress="80"] .circle .fill{-webkit-transform:rotate(144deg);-ms-transform:rotate(144deg);transform:rotate(144deg)}.radial-progress[data-progress="80"] .circle .fill.fix{-webkit-transform:rotate(288deg);-ms-transform:rotate(288deg);transform:rotate(288deg)}.radial-progress[data-progress="81"] .circle .mask.full,.radial-progress[data-progress="81"] .circle .fill{-webkit-transform:rotate(145.8deg);-ms-transform:rotate(145.8deg);transform:rotate(145.8deg)}.radial-progress[data-progress="81"] .circle .fill.fix{-webkit-transform:rotate(291.6deg);-ms-transform:rotate(291.6deg);transform:rotate(291.6deg)}.radial-progress[data-progress="82"] .circle .mask.full,.radial-progress[data-progress="82"] .circle .fill{-webkit-transform:rotate(147.6deg);-ms-transform:rotate(147.6deg);transform:rotate(147.6deg)}.radial-progress[data-progress="82"] .circle .fill.fix{-webkit-transform:rotate(295.2deg);-ms-transform:rotate(295.2deg);transform:rotate(295.2deg)}.radial-progress[data-progress="83"] .circle .mask.full,.radial-progress[data-progress="83"] .circle .fill{-webkit-transform:rotate(149.4deg);-ms-transform:rotate(149.4deg);transform:rotate(149.4deg)}.radial-progress[data-progress="83"] .circle .fill.fix{-webkit-transform:rotate(298.8deg);-ms-transform:rotate(298.8deg);transform:rotate(298.8deg)}.radial-progress[data-progress="84"] .circle .mask.full,.radial-progress[data-progress="84"] .circle .fill{-webkit-transform:rotate(151.2deg);-ms-transform:rotate(151.2deg);transform:rotate(151.2deg)}.radial-progress[data-progress="84"] .circle .fill.fix{-webkit-transform:rotate(302.4deg);-ms-transform:rotate(302.4deg);transform:rotate(302.4deg)}.radial-progress[data-progress="85"] .circle .mask.full,.radial-progress[data-progress="85"] .circle .fill{-webkit-transform:rotate(153deg);-ms-transform:rotate(153deg);transform:rotate(153deg)}.radial-progress[data-progress="85"] .circle .fill.fix{-webkit-transform:rotate(306deg);-ms-transform:rotate(306deg);transform:rotate(306deg)}.radial-progress[data-progress="86"] .circle .mask.full,.radial-progress[data-progress="86"] .circle .fill{-webkit-transform:rotate(154.8deg);-ms-transform:rotate(154.8deg);transform:rotate(154.8deg)}.radial-progress[data-progress="86"] .circle .fill.fix{-webkit-transform:rotate(309.6deg);-ms-transform:rotate(309.6deg);transform:rotate(309.6deg)}.radial-progress[data-progress="87"] .circle .mask.full,.radial-progress[data-progress="87"] .circle .fill{-webkit-transform:rotate(156.6deg);-ms-transform:rotate(156.6deg);transform:rotate(156.6deg)}.radial-progress[data-progress="87"] .circle .fill.fix{-webkit-transform:rotate(313.2deg);-ms-transform:rotate(313.2deg);transform:rotate(313.2deg)}.radial-progress[data-progress="88"] .circle .mask.full,.radial-progress[data-progress="88"] .circle .fill{-webkit-transform:rotate(158.4deg);-ms-transform:rotate(158.4deg);transform:rotate(158.4deg)}.radial-progress[data-progress="88"] .circle .fill.fix{-webkit-transform:rotate(316.8deg);-ms-transform:rotate(316.8deg);transform:rotate(316.8deg)}.radial-progress[data-progress="89"] .circle .mask.full,.radial-progress[data-progress="89"] .circle .fill{-webkit-transform:rotate(160.2deg);-ms-transform:rotate(160.2deg);transform:rotate(160.2deg)}.radial-progress[data-progress="89"] .circle .fill.fix{-webkit-transform:rotate(320.4deg);-ms-transform:rotate(320.4deg);transform:rotate(320.4deg)}.radial-progress[data-progress="90"] .circle .mask.full,.radial-progress[data-progress="90"] .circle .fill{-webkit-transform:rotate(162deg);-ms-transform:rotate(162deg);transform:rotate(162deg)}.radial-progress[data-progress="90"] .circle .fill.fix{-webkit-transform:rotate(324deg);-ms-transform:rotate(324deg);transform:rotate(324deg)}.radial-progress[data-progress="91"] .circle .mask.full,.radial-progress[data-progress="91"] .circle .fill{-webkit-transform:rotate(163.8deg);-ms-transform:rotate(163.8deg);transform:rotate(163.8deg)}.radial-progress[data-progress="91"] .circle .fill.fix{-webkit-transform:rotate(327.6deg);-ms-transform:rotate(327.6deg);transform:rotate(327.6deg)}.radial-progress[data-progress="92"] .circle .mask.full,.radial-progress[data-progress="92"] .circle .fill{-webkit-transform:rotate(165.6deg);-ms-transform:rotate(165.6deg);transform:rotate(165.6deg)}.radial-progress[data-progress="92"] .circle .fill.fix{-webkit-transform:rotate(331.2deg);-ms-transform:rotate(331.2deg);transform:rotate(331.2deg)}.radial-progress[data-progress="93"] .circle .mask.full,.radial-progress[data-progress="93"] .circle .fill{-webkit-transform:rotate(167.4deg);-ms-transform:rotate(167.4deg);transform:rotate(167.4deg)}.radial-progress[data-progress="93"] .circle .fill.fix{-webkit-transform:rotate(334.8deg);-ms-transform:rotate(334.8deg);transform:rotate(334.8deg)}.radial-progress[data-progress="94"] .circle .mask.full,.radial-progress[data-progress="94"] .circle .fill{-webkit-transform:rotate(169.2deg);-ms-transform:rotate(169.2deg);transform:rotate(169.2deg)}.radial-progress[data-progress="94"] .circle .fill.fix{-webkit-transform:rotate(338.4deg);-ms-transform:rotate(338.4deg);transform:rotate(338.4deg)}.radial-progress[data-progress="95"] .circle .mask.full,.radial-progress[data-progress="95"] .circle .fill{-webkit-transform:rotate(171deg);-ms-transform:rotate(171deg);transform:rotate(171deg)}.radial-progress[data-progress="95"] .circle .fill.fix{-webkit-transform:rotate(342deg);-ms-transform:rotate(342deg);transform:rotate(342deg)}.radial-progress[data-progress="96"] .circle .mask.full,.radial-progress[data-progress="96"] .circle .fill{-webkit-transform:rotate(172.8deg);-ms-transform:rotate(172.8deg);transform:rotate(172.8deg)}.radial-progress[data-progress="96"] .circle .fill.fix{-webkit-transform:rotate(345.6deg);-ms-transform:rotate(345.6deg);transform:rotate(345.6deg)}.radial-progress[data-progress="97"] .circle .mask.full,.radial-progress[data-progress="97"] .circle .fill{-webkit-transform:rotate(174.6deg);-ms-transform:rotate(174.6deg);transform:rotate(174.6deg)}.radial-progress[data-progress="97"] .circle .fill.fix{-webkit-transform:rotate(349.2deg);-ms-transform:rotate(349.2deg);transform:rotate(349.2deg)}.radial-progress[data-progress="98"] .circle .mask.full,.radial-progress[data-progress="98"] .circle .fill{-webkit-transform:rotate(176.4deg);-ms-transform:rotate(176.4deg);transform:rotate(176.4deg)}.radial-progress[data-progress="98"] .circle .fill.fix{-webkit-transform:rotate(352.8deg);-ms-transform:rotate(352.8deg);transform:rotate(352.8deg)}.radial-progress[data-progress="99"] .circle .mask.full,.radial-progress[data-progress="99"] .circle .fill{-webkit-transform:rotate(178.2deg);-ms-transform:rotate(178.2deg);transform:rotate(178.2deg)}.radial-progress[data-progress="99"] .circle .fill.fix{-webkit-transform:rotate(356.4deg);-ms-transform:rotate(356.4deg);transform:rotate(356.4deg)}.radial-progress[data-progress="100"] .circle .mask.full,.radial-progress[data-progress="100"] .circle .fill{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.radial-progress[data-progress="100"] .circle .fill.fix{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}.radial-progress:not([data-progress="0"]) .inset .bgIcon{opacity:1}.radial-progress+.o_progress_label_wrapper,.o_coursetable.o_rendertype_classic .o_progress .radial-progress+.o_progress_label_wrapper{margin-left:0.5em}.radial-progress-sm{width:60px;height:60px;font-size:14.4px}.radial-progress-sm .circle .mask{clip:rect(0px, 60px, 60px, 30px)}.radial-progress-sm .circle .mask .fill{clip:rect(0px, 30px, 60px, 0px)}.radial-progress-sm .inset{width:45px;height:45px;margin-left:7.5px;margin-top:7.5px;font-size:80px;line-height:35px;font-size:40px}.radial-progress-sm .inset .bgIcon{position:absolute;top:5px}.radial-progress-lg{width:180px;height:180px;font-size:32.4px}.radial-progress-lg .circle .mask{clip:rect(0px, 180px, 180px, 90px)}.radial-progress-lg .circle .mask .fill{clip:rect(0px, 90px, 180px, 0px)}.radial-progress-lg .inset{width:135px;height:135px;margin-left:22.5px;margin-top:22.5px;font-size:115px;line-height:125px}.radial-progress-lg .inset .bgIcon{position:absolute;top:5px}.radial-progress-inline,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{width:20px;height:20px;margin:0;vertical-align:bottom;display:inline-block}.radial-progress-inline .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask{clip:rect(0px, 20px, 20px, 10px)}.radial-progress-inline .circle .mask .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 10px, 20px, 0px)}.radial-progress-inline .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{width:14px;height:14px;margin-left:3px;margin-top:3px}.radial-progress-inline .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{display:none}.radial-progress-pie .percentage .centeredWrapper .number,.radial-progress-pie .percentage .centeredWrapper .o_progress_label{color:#fff;text-shadow:1px 1px 2px #000000}.radial-progress-success .circle .mask .fill,.radial-progress-success .circle .fill{background-color:#5cb85c}.radial-progress-success .inset .percentage .number span{color:#5cb85c}.radial-progress-info .circle .mask .fill,.radial-progress-info .circle .fill{background-color:#5bc0de}.radial-progress-info .inset .percentage .number span{color:#5bc0de}.radial-progress-danger .circle .mask .fill,.radial-progress-danger .circle .fill{background-color:#d9534f}.radial-progress-danger .inset .percentage .number span{color:#d9534f}.radial-progress-warning .circle .mask .fill,.radial-progress-warning .circle .fill{background-color:#f0ad4e}.radial-progress-warning .inset .percentage .number span{color:#f0ad4e}.o_toolbar .o_tool .o_progress{width:37px;height:33px;position:relative;display:inline-block;overflow:visible}.o_toolbar .o_tool .o_progress .radial-progress{width:45px;height:45px;font-size:12px;position:absolute;top:-5px;left:0;margin:0}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask{clip:rect(0px, 45px, 45px, 22.5px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 22.5px, 45px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset{width:37px;height:37px;margin-left:4px;margin-top:4px;font-size:37px;line-height:37px;background:#f8f8f8}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .number{color:#777;margin-right:-0.3em}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .addon{margin-top:-0.1em;margin-bottom:-0.3em}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .addon>span{font-size:0.8em;font-weight:normal}.o_toolbar .o_tool .o_progress .radial-progress .percentage .o_progress_label{display:none}@media (max-width: 991px){.o_toolbar .o_tool .o_progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress{width:35px;height:31px}.o_toolbar .o_tool .o_progress .radial-progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{width:41px;height:41px;font-size:11px;top:-3px}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask{clip:rect(0px, 41px, 41px, 20.5px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 20.5px, 41px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset{width:35px;height:35px;margin-left:3px;margin-top:3px;font-size:35px;line-height:35px}.o_coursetable.o_rendertype_custom .o_completion .o_progress{display:inline-block}.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{position:relative;top:0;left:-4px;margin:0}}@media (max-width: 767px){.o_toolbar .o_tool .o_progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress{width:22px;height:22px}.o_toolbar .o_tool .o_progress .radial-progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{width:26px;height:26px;top:-2px}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask{clip:rect(0px, 26px, 26px, 13px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 13px, 26px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset{width:20px;height:20px;margin-left:3px;margin-top:3px}.o_toolbar .o_tool .o_progress .radial-progress .inset:after,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset:after{display:none}.o_toolbar .o_tool .o_progress .radial-progress .percentage,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .percentage{display:none}}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset:after{display:none}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage{position:relative;left:28px}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .number{font-size:14px;line-height:1.428571429;font-weight:normal;color:#333}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .addon{display:none}.o_progress_failed .radial-progress-inline .inset,.o_progress_failed .o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .o_progress_failed .radial-progress .inset,.o_progress_passed .radial-progress-inline .inset,.o_progress_passed .o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .o_progress_passed .radial-progress .inset{display:none}.o_progress_failed .radial-progress-toolbar .inset,.o_progress_passed .radial-progress-toolbar .inset{font-size:37px;line-height:37px}.o_progress_failed .inset:after{content:"ï€";color:#efe5e5}.o_progress_passed .inset:after{content:"";color:#e5efe5}html{position:relative;min-height:100%}body{min-height:100%;margin-bottom:80px}#o_main_wrapper{background:#fff;z-index:3}#o_main_wrapper #o_main_container{background:#fff}#o_main_wrapper #o_main_container #o_main_left{float:left;z-index:2;position:relative;background:#fff}#o_main_wrapper #o_main_container #o_main_left #o_main_left_content{padding:0 0 0 15px}#o_main_wrapper #o_main_container #o_main_left #o_main_left_toggle{position:absolute;display:none;right:0;top:70px;margin-right:-30px;font-size:25px;line-height:35px;text-align:center;width:30px;height:35px;z-index:3;border:1px solid #ddd;border-left:none;border-bottom-right-radius:4px;border-top-right-radius:4px;background-color:#fbfbfb;-webkit-box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);color:#337ab7}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas{background:#fbfbfb;-webkit-box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);min-width:250px}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas #o_main_left_content{padding:0 0 0 0}#o_main_wrapper #o_main_container #o_main_right{float:right;z-index:2;position:relative;background:inherit}#o_main_wrapper #o_main_container #o_main_right #o_main_right_content{padding:0 15px 0 0}#o_main_wrapper #o_main_container #o_main_center{position:relative;z-index:1;background:inherit}#o_main_wrapper #o_main_container #o_main_center h2:first-child{margin-top:0}@media screen and (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center{margin-left:0 !important}}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:0 15px}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content #o_main_center_content_inner{padding-bottom:15px}#o_main_wrapper #o_toplink{position:absolute;bottom:0;right:15px;text-align:center;z-index:3}@media (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:15px}}#o_back_wrapper,#o_preview_wrapper{margin-top:10px}#o_back_wrapper.o_toolbar .o_breadcrumb .breadcrumb,#o_preview_wrapper.o_toolbar .o_breadcrumb .breadcrumb{font-size:14px}body.o_message #o_main_center_content_inner{min-height:150px;max-width:500px;padding:15px;margin:60px auto}#o_footer_wrapper{position:absolute;bottom:0;width:100%;height:70px;overflow:hidden;background-color:#f5f5f5;color:#999;line-height:16px;font-size:12px}#o_footer_wrapper a{color:#999}#o_footer_wrapper a:hover{color:#000}#o_footer_container{position:relative;padding-top:10px;min-height:70px;background:#f5f5f5;z-index:1}#o_footer_user{position:absolute;left:15px;top:10px;z-index:1}#o_footer_user #o_counter{white-space:nowrap}#o_footer_user #o_username{white-space:nowrap;margin-right:1em}#o_footer_version{position:absolute;right:15px;top:10px;text-align:right;z-index:1}@media (max-width: 767px){#o_footer_version{padding-top:10px;text-align:left}}#o_footer_powered{position:absolute;top:30px;right:15px;z-index:1}#o_footer_powered img{opacity:.6;filter:alpha(opacity=60);width:120px}#o_footer_powered img:hover{opacity:1;filter:alpha(opacity=100)}#o_footer_impressum{position:absolute;top:10px;width:100%;text-align:center;z-index:-1}#o_footer_impressum i{display:none}#o_footer_textline{position:absolute;top:30px;width:100%;text-align:center;z-index:-1}#o_share{margin-top:10px}#o_share a{opacity:.6;filter:alpha(opacity=60)}#o_share a:hover{opacity:1;filter:alpha(opacity=100)}#o_share a,#o_share_social_container a{color:#999;margin:0 0.25em 0 0}#o_share a:hover,#o_share_social_container a:hover{color:#000}@media (max-width: 767px){#o_counter,#o_footer_version,#o_share{display:none}#o_footer_impressum{top:30px;text-align:left}#o_footer_textline{top:50px;text-align:left}#o_footer_powered{top:10px}#o_footer_powered a:after{content:"\221E";font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold;font-size:14px}#o_footer_powered img{display:none}}#o_navbar_wrapper{z-index:4;border-top:1px solid #e7e7e7;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1)}#o_navbar_wrapper #o_navbar_container{position:relative}a.o_disabled.navbar-text{margin:0}.o_navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid #e7e7e7;background-color:#f8f8f8}.o_navbar:before,.o_navbar:after{content:" ";display:table}.o_navbar:after{clear:both}.o_navbar .o_navbar_tabs li{max-width:150px}.o_navbar .o_navbar_tabs li a{padding-right:30px}.o_navbar .o_navbar_tabs li a:first-child span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o_navbar .o_navbar_tabs .o_icon-fw{position:absolute;top:15px;left:0.5em;padding-top:3px;width:1em;height:1em;display:none}.o_navbar .o_navbar_tabs .o_navbar_tab_close{position:absolute;top:15px;right:0.5em;padding:0;width:1em;height:1em}.o_navbar .o_navbar_tabs .o_navbar_tab_close i:before{color:#d9534f}.o_navbar .o_navbar_tabs .o_navbar_tab_close:hover i:before{color:#c9302c}.o_navbar .o_custom_navbar-brand{background-position:5px 0;background-repeat:no-repeat;height:50px;width:120px}.o_navbar #o_navbar_langchooser{color:#777;padding:7px 15px}.o_navbar #o_navbar_langchooser form span+div{display:inline}.o_navbar #o_navbar_tools_permanent #o_navbar_print a,.o_navbar #o_navbar_tools_permanent #o_navbar_impress a,.o_navbar #o_navbar_tools_permanent #o_navbar_help a{color:#777;padding-right:0}.o_navbar #o_navbar_tools_permanent #o_navbar_login a{color:#f0ad4e}.o_navbar .o_navbar_tools>#o_navbar_tools_permanent>li>a>span{display:none}@media (min-width: 768px){.o_navbar .o_navbar_tools li.o_portrait>a>span{display:inline}}.o_navbar #o_navbar_tools_personal .o_navbar_tool a,.o_navbar #o_navbar_tools_permanent .o_navbar_tool a{padding-right:5px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu a,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu a{padding-left:45px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .dropdown-menu a,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu .dropdown-menu a{padding-left:15px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .o_portrait,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu .o_portrait{position:absolute;left:7px;top:10px}.o_navbar #o_navbar_tools_personal .o_logout,.o_navbar #o_navbar_tools_permanent .o_logout{color:#d9534f}.o_navbar.o_navbar-offcanvas .o_navbar_tab_close{top:10px;right:10px}.o_navbar.o_navbar-offcanvas .o_navbar-right a{padding:3px 20px;color:#9d9d9d}.o_navbar.o_navbar-offcanvas .o_navbar-right a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-right a:focus{color:#fff;background-color:transparent}.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout{color:#d9534f}.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout:hover,.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout:focus{color:#c9302c}.o_navbar.o_navbar-offcanvas .o_navbar-right a .o_icon-lg{font-size:1.0em;vertical-align:baseline}.o_navbar.o_navbar-offcanvas .o_navbar-right .divider{height:1px;margin:9px 0;overflow:hidden;background-color:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-header{padding-left:15px}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-toggle{display:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-menu{box-shadow:none;position:relative;top:0;left:0;display:block;float:none;background-color:#222;color:#9d9d9d;font-size:14px;border:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-menu .divider{background:none}.o_navbar.o_navbar-offcanvas .o_navbar-nav a{color:#9d9d9d;text-shadow:none}.o_navbar.o_navbar-offcanvas .o_navbar-nav a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav a:focus{background-color:transparent;color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a:focus{background-color:#090909;color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .o_navbar-link{color:#9d9d9d}.o_navbar.o_navbar-offcanvas .o_navbar-nav .o_navbar-link:hover{color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a{color:#777}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}#o_navbar_impress a span,#o_navbar_search_opener a span{display:none}body.o_dmz #o_navbar_print a span,body.o_dmz #o_navbar_impress a span,body.o_dmz #o_navbar_help a span,body.o_dmz #o_navbar_search_opener a span{display:inline}.o_navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;-webkit-overflow-scrolling:touch}.o_navbar-collapse:before,.o_navbar-collapse:after{content:" ";display:table}.o_navbar-collapse:after{clear:both}.o_navbar-collapse.o_collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.o_navbar-offcanvas .o_navbar-collapse{width:auto;box-shadow:none;margin-top:10px;margin-right:-15px;margin-left:-15px}.o_navbar-brand{float:left;font-size:18px;line-height:20px;height:50px;color:#777}.o_navbar-brand:hover,.o_navbar-brand:focus{text-decoration:none;color:#5e5e5e;background-color:transparent}.o_navbar-toggle{position:relative;margin-right:15px;margin-left:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;border:1px solid #ddd;border-radius:4px;background-color:transparent;background-image:none}.o_navbar-toggle:hover,.o_navbar-toggle:focus{outline:none;background-color:#ddd}.o_navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px;background-color:#888}.o_navbar-toggle .icon-bar+.icon-bar{margin-top:4px}#o_navbar_left-toggle{float:left}#o_navbar_right-toggle{float:right}.o_navbar-link{color:#777}.o_navbar-link:hover{color:#333}.o_navbar-nav{margin:7.5px -15px}.o_navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px;color:#777}.o_navbar-nav>li>a:hover,.o_navbar-nav>li>a:focus{color:#333;background-color:transparent}.o_navbar-nav>.active>a,.o_navbar-nav>.active>a:hover,.o_navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar-nav>.disabled>a,.o_navbar-nav>.disabled>a:hover,.o_navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.o_navbar-nav>.open>a,.o_navbar-nav>.open>a:hover,.o_navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}.o_collapse .o_navbar-nav{float:left;margin:0}.o_collapse .o_navbar-nav>li{float:left}.o_collapse .o_navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.o_collapse .o_navbar-nav.o_navbar-right:last-child{margin-right:-15px}.o_collapse.o_navbar-collapse .o_navbar-left{float:left !important}.o_collapse.o_navbar-collapse .o_navbar-right{float:right !important}.o_navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (max-width: 767px){.o_navbar-form .form-group{margin-bottom:5px}}.o_collapse .o_navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.o_collapse .o_navbar-form.o_navbar-right:last-child{margin-right:-15px}.o_navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.o_navbar-fixed-bottom .o_navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.o_navbar-btn{margin-top:8px;margin-bottom:8px}.o_navbar-btn.btn-sm,.btn-group-sm>.o_navbar-btn.btn{margin-top:10px;margin-bottom:10px}.o_navbar-btn.btn-xs,.btn-group-xs>.o_navbar-btn.btn{margin-top:14px;margin-bottom:14px}.o_navbar-text{margin-top:15px;margin-bottom:15px;color:#777}.o_collapse .o_navbar-text{float:left;margin-left:15px;margin-right:15px}.o_collapse .o_navbar-text.o_navbar-right:last-child{margin-right:0}.o_dropdown_tab{position:relative}.o_dropdown_tab>a:first-child{padding-right:30px}.o_dropdown_tab>a:first-child .o_icon-fw{display:none;position:absolute;top:0;left:10px;padding-top:3px;line-height:20px}.o_dropdown_tab>a:first-child span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o_dropdown_tab .o_navbar_tab_close{position:absolute;top:0px;right:10px;padding-left:0px;padding-right:0px;color:#d9534f;background-color:inherit}.o_dropdown_tab .o_navbar_tab_close:focus,.o_dropdown_tab .o_navbar_tab_close:hover{color:#c9302c;background-color:inherit}#o_navbar_more .dropdown-menu .divider:last-child{display:none}@media (min-width: 768px){#o_navbar_more .dropdown-menu{max-width:300px}}@media (max-width: 767px){#o_navbar_more>li{position:inherit}#o_navbar_more .dropdown-menu{left:0px;right:0px}#o_navbar_more .dropdown-menu a,#o_navbar_more .dropdown-menu i{line-height:30px}#o_navbar_more .dropdown-menu .o_navbar_tab_close{line-height:inherit}}.o_body_popup #o_topnav_printview{display:inline-block}.o_body_popup #o_topnav_close{float:right}.o_body_popup #o_topnav_close span{display:block}.o_body_popup #o_navbar_tools_permanent li>a{background-color:transparent}.o_toolbar{position:relative;margin-bottom:25px;margin-top:-10px;border:1px solid #e7e7e7}.o_toolbar:before,.o_toolbar:after{content:" ";display:table}.o_toolbar:after{clear:both}@media (min-width: 768px){.o_toolbar{border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}}.o_toolbar.o_toolbar_with_segments{margin-bottom:35px}.o_toolbar .o_breadcrumb:before,.o_toolbar .o_breadcrumb:after{content:" ";display:table}.o_toolbar .o_breadcrumb:after{clear:both}.o_toolbar .o_breadcrumb .breadcrumb{margin-bottom:0;padding:5px 9px;font-size:11px;line-height:15px;border-radius:0;background:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close{float:right;position:relative;margin:0 0 0 15px;vertical-align:middle}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a{line-height:15px;color:#d9534f}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a:hover{color:#b52b27}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a i{font-size:16px}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a span{display:none}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close:before{content:none}.o_toolbar .o_tools_container{text-align:center;min-height:37px;position:relative;background-color:#f8f8f8;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_toolbar .o_tools_container:before,.o_toolbar .o_tools_container:after{content:" ";display:table}.o_toolbar .o_tools_container:after{clear:both}@media (max-width: 991px){.o_toolbar .o_tools_container{min-height:35px}}@media (max-width: 767px){.o_toolbar .o_tools_container{min-height:22px;text-align:left}}.o_toolbar .o_tools_container span.o_tool_text{color:#777;display:inline-block}.o_toolbar .o_tools_container a{color:#777;display:inline-block}.o_toolbar .o_tools_container a:hover{color:#333}.o_toolbar .o_tools_container a.o_disabled{color:#aaa !important}.o_toolbar .o_tools_container a.o_disabled:hover{color:#aaa !important}.o_toolbar .o_tools_container a.active{color:#337ab7;background-color:transparent}.o_toolbar .o_tools_container a.btn-primary{color:#fff}.o_toolbar .o_tools_container .dropdown-menu a{display:block}.o_toolbar .o_tools_container .dropdown-menu a.active{color:#337ab7;background-color:transparent}.o_toolbar .o_breadcrumb+.o_tools_container{border-top:1px solid #e7e7e7}.o_toolbar .o_tools{margin-top:8px;margin-bottom:5px}.o_toolbar .o_tool,.o_toolbar .o_text{position:relative;margin:0 10px}.o_toolbar .o_tool:first-child,.o_toolbar .o_text:first-child{margin-left:0}.o_toolbar .o_tool:last-child,.o_toolbar .o_text:last-child{margin-right:0}.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:18px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:block;font-size:12px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{position:absolute;right:50%;top:-18px;margin-right:-12px;font-size:13px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:16px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{font-size:11px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{top:-16.5px;margin-right:-11px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:20px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:none}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{display:block;position:relative;top:0;left:0;margin-right:0}}.o_toolbar .o_tool .o_chelp,.o_toolbar .o_text .o_chelp{position:relative;top:-1em;vertical-align:top;color:#fff}.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{padding:0;margin-top:5px;border:1px solid #ccc;background-color:#eee}.o_toolbar .o_tool_next a,.o_toolbar .o_tool_previous a{color:#777}.o_toolbar .o_tool_next a:hover,.o_toolbar .o_tool_previous a:hover{color:#333}.o_toolbar .o_tool_next a.o_disabled,.o_toolbar .o_tool_previous a.o_disabled{color:#aaa !important}.o_toolbar .o_tool_next a.o_disabled:hover,.o_toolbar .o_tool_previous a.o_disabled:hover{color:#aaa !important}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:21px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{margin-top:4px}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:18px}}@media (max-width: 767px){.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{margin-top:0}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:20px}}.o_toolbar .o_tool_previous{margin-left:10px;border-bottom-left-radius:4px;border-top-left-radius:4px;border-right:0}.o_toolbar .o_tool_next{border-bottom-right-radius:4px;border-top-right-radius:4px}.o_toolbar .o_tool_dropdown{margin:0 10px}.o_toolbar .o_tool_dropdown:first-child{margin-left:0}.o_toolbar .o_tool_dropdown:last-child{margin-right:0}.o_toolbar .o_tool_dropdown a.dropdown-toggle{position:relative}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:18px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label{display:block;font-size:12px;text-align:center}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{position:absolute;right:50%;top:4px;margin-right:-20px;font-size:14px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:16px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label,.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{font-size:11px}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{top:4px;margin-right:-18px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown a.dropdown-toggle{padding:0 10px 0 5px}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:20px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label{display:none}}.o_toolbar .o_tool_dropdown .dropdown-menu{text-align:left}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{line-height:16px;font-size:70% !important;padding:0 18px 0 4px;position:relative;top:-2px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:12px !important;margin:0 0 3px 0}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{position:absolute;right:5px;top:2px;margin-right:0}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{line-height:14px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:10px !important}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{right:5px;top:2px;margin-right:0;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{padding:0 18px 0 4px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:20px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{right:15px;top:2px;margin-right:0}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled span.o_inner_text,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled span.o_label,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light span.o_inner_text,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light span.o_label{display:none}}.o_toolbar .o_tool_dropdown .dropdown-toggle.o_with_labeled .o_inner_wrapper.o_labeled+.o_icon_caret{color:#fff !important}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled{padding:0;margin:0}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled .o_labeled{text-align:left}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled>li>a{padding:5px 5px;margin:1px}.o_toolbar .o_tools_left{float:left}.o_toolbar .o_tools_right{float:right}.o_toolbar .o_tools_right_edge{float:right}.o_toolbar .o_tools_center{float:both;margin-left:auto;margin-right:auto}.o_toolbar .o_tools_segments{margin:0 auto -1.1em auto}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}@media (max-width: 991px){.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools.o_tools_segments{margin:0 auto -1.1em auto}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}.o_toolbar .o_tool span{max-width:10em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_toolbar .o_tools_segments .o_tool span{display:block}.o_toolbar .o_tool,.o_toolbar .o_text,.o_toolbar .o_tool_dropdown{margin:0 5px}}@media (max-width: 767px){.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools .o_chelp{top:0;vertical-align:top}.o_toolbar .o_tools.o_tools_segments{margin:0 auto -1.1em auto;text-align:center}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}.o_toolbar .o_tools_center{float:left}.o_toolbar .o_tool,.o_toolbar .o_text,.o_toolbar .o_tool_dropdown{margin:0 0;position:static}.o_toolbar .o_tool_dropdown .dropdown-menu{left:0px;right:0px}.o_toolbar .o_tool_dropdown .dropdown-menu a,.o_toolbar .o_tool_dropdown .dropdown-menu i{line-height:30px}.o_toolbar .o_tool_dropdown .dropdown-menu .o_navbar_tab_close{line-height:inherit}}#o_main_container .o_toolbar_message{display:table;margin:0 auto 25px auto}#o_main_container .o_toolbar_message.o_warning{padding-top:5px;padding-bottom:5px;border:1px solid #8a6d3b;border-radius:3px}.o_edit_mode .o_toolbar .o_tools_container{background:repeating-linear-gradient(300deg, #fff0d9, #fff0d9 10px, #fcfcfc 10px, #fcfcfc 20px)}.o_edit_mode .o_toolbar .o_edit_mode .o_tools_container{background:#f8f8f8}body{overflow-x:hidden}.o_container_offcanvas{position:relative;max-width:1324px}#o_container_page_width_toggler{position:absolute;top:25px;margin-top:-.75em;right:10px;z-index:5;display:none}@media (min-width: 1364px){#o_container_page_width_toggler{display:block}#o_container_page_width_toggler #o_go_standard_width{display:none}#o_container_page_width_toggler #o_go_full_width{display:block}body.o_width_full .o_container_offcanvas{max-width:100%;margin-left:20px;margin-right:20px}body.o_width_full #o_container_page_width_toggler #o_go_standard_width{display:block}body.o_width_full #o_container_page_width_toggler #o_go_full_width{display:none}}body.o_dmz #o_container_page_width_toggler{display:none !important}#o_offcanvas_right{position:absolute;top:0;right:-250px;width:250px;padding:15px 15px;background-color:#222;color:#9d9d9d;border:1px solid #090909;-webkit-box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);min-height:100%;z-index:10;display:none}#o_offcanvas_right:before,#o_offcanvas_right:after{content:" ";display:table}#o_offcanvas_right:after{clear:both}@media screen and (max-width: 767px){.row-offcanvas{position:relative;-webkit-transition:all .25s ease-out;-moz-transition:all .25s ease-out;transition:all .25s ease-out}.row-offcanvas-right{right:0}.row-offcanvas-right .sidebar-offcanvas{right:-50%}.row-offcanvas-right.active{right:50%}.row-offcanvas-left{left:0}.row-offcanvas-left .sidebar-offcanvas{left:-50%}.row-offcanvas-left.active{left:50%}.sidebar-offcanvas{position:absolute;top:0;width:50%}}.o_info,.b_info,p.b_info,div.b_info,.o_form .o_info,.o_togglebox_wrapper div.o_togglebox_content,div.o_qti_item_itemfeedback,.o_assessmentitem_wrapper .modalFeedback .o_info{margin:20px 0;padding:20px;border-left:3px solid #777;background-color:#eee}.o_info h2,.o_info h3,.o_info h4,.o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_info h2,.o_info h5,.b_info h2,.o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback h2,.o_assessmentitem_wrapper .modalFeedback .o_info h2,.b_info h3,.o_form .o_info h3,.o_togglebox_wrapper div.o_togglebox_content h3,div.o_qti_item_itemfeedback h3,.o_assessmentitem_wrapper .modalFeedback .o_info h3,.b_info h4,.o_form .o_info h4,.o_togglebox_wrapper div.o_togglebox_content h4,div.o_qti_item_itemfeedback h4,.o_assessmentitem_wrapper .modalFeedback .o_info h4,.b_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_info h2,.o_form .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback .o_cal .fc-header-title h2,.o_cal .fc-header-title div.o_qti_item_itemfeedback h2,.o_assessmentitem_wrapper .modalFeedback .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info h2,.b_info h5,.o_form .o_info h5,.o_togglebox_wrapper div.o_togglebox_content h5,div.o_qti_item_itemfeedback h5,.o_assessmentitem_wrapper .modalFeedback .o_info h5{color:#777}.o_note,.b_note,p.b_note,div.b_note,.o_form .o_desc,.o_course_run .o_statusinfo,.o_course_stats .o_desc,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment{margin:20px 0;padding:20px;border-left:3px solid #31708f;background-color:#d9edf7}.o_note h2,.o_note h3,.o_note h4,.o_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_note h2,.o_note h5,.b_note h2,.o_form .o_desc h2,.o_course_run .o_statusinfo h2,.o_course_stats .o_desc h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h2,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2,.b_note h3,.o_form .o_desc h3,.o_course_run .o_statusinfo h3,.o_course_stats .o_desc h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h3,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h3,.b_note h4,.o_form .o_desc h4,.o_course_run .o_statusinfo h4,.o_course_stats .o_desc h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h4,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h4,.b_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_note h2,.o_form .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_desc h2,.o_course_run .o_statusinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_statusinfo h2,.o_course_stats .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_stats .o_desc h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h2,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2,.b_note h5,.o_form .o_desc h5,.o_course_run .o_statusinfo h5,.o_course_stats .o_desc h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h5,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h5{color:#31708f}.o_important,.b_important,p.b_important,div.b_important,.o_bc_empty,.o_course_run .o_no_scoreinfo{margin:20px 0;padding:20px;border-left:3px solid #F4D000;background-color:#FFF1A4}.o_important h2,.o_important h3,.o_important h4,.o_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_important h2,.o_important h5,.b_important h2,.o_bc_empty h2,.o_course_run .o_no_scoreinfo h2,.b_important h3,.o_bc_empty h3,.o_course_run .o_no_scoreinfo h3,.b_important h4,.o_bc_empty h4,.o_course_run .o_no_scoreinfo h4,.b_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_important h2,.o_bc_empty .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_bc_empty h2,.o_course_run .o_no_scoreinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_no_scoreinfo h2,.b_important h5,.o_bc_empty h5,.o_course_run .o_no_scoreinfo h5{color:#F4D000}.o_success,.b_success,p.b_success,div.b_success,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback{margin:20px 0;padding:20px;border-left:3px solid #3c763d;background-color:#dff0d8}.o_success h2,.o_success h3,.o_success h4,.o_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_success h2,.o_success h5,.b_success h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h2,.b_success h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h3,.b_success h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h4,.b_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_success h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h2,.b_success h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h5{color:#3c763d}.o_warning,.b_warning,p.b_warning,div.b_warning,.o_instruction,.o_form .o_warning,p.o_gta_reopen_warning{margin:20px 0;padding:20px;border-left:3px solid #8a6d3b;background-color:#fcf8e3}.o_warning h2,.o_warning h3,.o_warning h4,.o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_warning h2,.o_warning h5,.b_warning h2,.o_instruction h2,.o_form .o_warning h2,p.o_gta_reopen_warning h2,.b_warning h3,.o_instruction h3,.o_form .o_warning h3,p.o_gta_reopen_warning h3,.b_warning h4,.o_instruction h4,.o_form .o_warning h4,p.o_gta_reopen_warning h4,.b_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_warning h2,.o_instruction .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_instruction h2,.o_form .o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_warning h2,p.o_gta_reopen_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title p.o_gta_reopen_warning h2,.b_warning h5,.o_instruction h5,.o_form .o_warning h5,p.o_gta_reopen_warning h5{color:#8a6d3b}.o_error,.b_error,p.b_error,div.b_error,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback{margin:20px 0;padding:20px;border-left:3px solid #a94442;background-color:#f2dede}.o_error h2,.o_error h3,.o_error h4,.o_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_error h2,.o_error h5,.b_error h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h2,.b_error h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h3,.b_error h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h4,.b_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_error h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h2,.b_error h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h5{color:#a94442}.o_instruction{margin-top:0px;border-left:none;padding-top:10px;padding-bottom:10px}.o_instruction>.o_button_group{margin-bottom:0px}div.o_callout_overlay{position:fixed;top:0;left:0;width:100%;height:100%;zoom:1;background:#000;opacity:0;filter:alpha(opacity=0)}.o_alert_info{position:fixed;top:-100%;left:0;display:none;z-index:2000;width:100%;text-align:center}.o_alert_info .alert{position:relative;width:auto;margin:0 auto;text-align:left;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.o_alert_info .alert .o_alert_close{float:right;color:#777}.o_alert_info .alert .o_alert_close:hover{color:#555}@media (min-width: 768px){.o_alert_info .alert{width:600px}}#o_msg_sticky,#o_msg_sticky_preview{position:relative;color:#a94442;background-color:#f2dede;border:1px solid #ebccd1;padding:10px 16px 10px 60px;min-height:40px;margin:-20px 0 20px 0}#o_msg_sticky .o_icon_info_msg,#o_msg_sticky_preview .o_icon_info_msg{position:absolute;left:10px;top:5px;font-size:40px}#o_msg_sticky.o_msg_sticky_fullscreen,#o_msg_sticky_preview.o_msg_sticky_fullscreen{margin-top:0}@media (min-width: 768px){.modal .o_modal_fullwidth{width:90%}}@media (min-width: 992px){.modal .o_modal_fullwidth{width:80%}}.modal .modal-header h4,.modal .modal-header .o_cal .fc-header-title h2,.o_cal .fc-header-title .modal .modal-header h2{color:#337ab7;font-weight:500;font-family:inherit;line-height:1.1}.o_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_tree a{color:#777;background-color:none}.o_tree a:hover,.o_tree a:focus{color:#333}.o_tree .o_tree_link{background-color:none}.o_tree .o_tree_link:hover,.o_tree .o_tree_link:focus{background-color:#f8f8f8}.o_tree .o_tree_link:first-child{background-color:transparent}.o_tree .o_tree_link:last-child:hover,.o_tree .o_tree_link:last-child:focus{background-color:#f8f8f8}.o_tree .o_insertion_point>a>span{padding:5px;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_tree .o_insertion_source>a>span.o_tree_item,.o_tree .o_insertion_source>a>span.o_dnd_item{border-bottom:solid #f90 4px;background-color:#fefbf6}.o_tree ul{margin:0;padding:0;list-style-type:none}.o_tree ul li{margin:0;padding:0;white-space:nowrap}.o_tree ul li div{position:relative;border-bottom:1px solid #ddd}.o_tree ul li div.popover{position:absolute;left:auto;right:0}.o_tree ul li div a.o_tree_oc_l0{position:absolute;top:10px;left:-4px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l0,.o_tree ul .o_tree_level_close.b_tree_oc_l0{z-index:10}.o_tree ul li div a.o_tree_oc_l1{position:absolute;top:10px;left:11px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l1,.o_tree ul .o_tree_level_close.b_tree_oc_l1{z-index:10}.o_tree ul li div a.o_tree_oc_l2{position:absolute;top:10px;left:26px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l2,.o_tree ul .o_tree_level_close.b_tree_oc_l2{z-index:10}.o_tree ul li div a.o_tree_oc_l3{position:absolute;top:10px;left:41px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l3,.o_tree ul .o_tree_level_close.b_tree_oc_l3{z-index:10}.o_tree ul li div a.o_tree_oc_l4{position:absolute;top:10px;left:56px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l4,.o_tree ul .o_tree_level_close.b_tree_oc_l4{z-index:10}.o_tree ul li div a.o_tree_oc_l5{position:absolute;top:10px;left:71px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l5,.o_tree ul .o_tree_level_close.b_tree_oc_l5{z-index:10}.o_tree ul li div a.o_tree_oc_l6{position:absolute;top:10px;left:86px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l6,.o_tree ul .o_tree_level_close.b_tree_oc_l6{z-index:10}.o_tree ul li div a.o_tree_oc_l7{position:absolute;top:10px;left:101px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l7,.o_tree ul .o_tree_level_close.b_tree_oc_l7{z-index:10}.o_tree ul li div a.o_tree_oc_l8{position:absolute;top:10px;left:116px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l8,.o_tree ul .o_tree_level_close.b_tree_oc_l8{z-index:10}.o_tree ul li div a.o_tree_oc_l9{position:absolute;top:10px;left:131px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l9,.o_tree ul .o_tree_level_close.b_tree_oc_l9{z-index:10}.o_tree ul li div a.o_tree_oc_l10{position:absolute;top:10px;left:146px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l10,.o_tree ul .o_tree_level_close.b_tree_oc_l10{z-index:10}.o_tree ul li div a.o_tree_oc_l11{position:absolute;top:10px;left:161px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l11,.o_tree ul .o_tree_level_close.b_tree_oc_l11{z-index:10}.o_tree ul li div span.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_tree ul li div span.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_tree ul li div span.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_tree ul li div span.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_tree ul li div span.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_tree ul li div span.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_tree ul li div span.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_tree ul li div span.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_tree ul li div span.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_tree ul li div span.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_tree ul li div span.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_tree ul li div span.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_tree ul span.o_tree_leaf{display:none}.o_tree ul span.o_tree_link>input[type=checkbox]{margin-right:5px}.o_tree ul li .badge{position:absolute;font-size:70%}.o_tree ul li .badge:before{content:none}.o_tree ul li .badge.o_badge_1{top:3px;right:1px}.o_tree ul li .badge.o_badge_2{bottom:3px;right:1px}.o_tree ul li .badge.o_badge_3{top:3px;right:25px}.o_tree ul li .badge.o_badge_4{bottom:3px;right:25px}.o_tree ul li div.o_dnd_sibling{margin:0;padding:0;border-bottom:none}.o_tree ul li .active.o_tree_link{background-color:none;font-weight:bold}.o_tree ul li .active.o_tree_link a{color:#337ab7}.o_tree ul li .active.o_tree_link:hover,.o_tree ul li .active.o_tree_link:focus{background-color:#eee}.o_tree ul li .active.o_tree_link:hover a,.o_tree ul li .active.o_tree_link:focus a{color:#23527c}.o_tree ul li .active_parent.o_tree_link{font-weight:bold}.o_tree ul li .active_parent.o_tree_link a{color:#777}.o_tree ul li .active_parent.o_tree_link a:hover,.o_tree ul li .active_parent.o_tree_link a:focus{color:#333}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l0{left:6px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l1{left:21px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l2{left:36px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l3{left:51px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l4{left:66px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l5{left:81px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l6{left:96px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l7{left:111px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l8{left:126px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l9{left:141px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l10{left:156px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l11{left:171px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l0{padding:10px 2px 10px 20px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l1{padding:10px 2px 10px 35px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l2{padding:10px 2px 10px 50px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l3{padding:10px 2px 10px 65px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l4{padding:10px 2px 10px 80px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l5{padding:10px 2px 10px 95px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l6{padding:10px 2px 10px 110px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l7{padding:10px 2px 10px 125px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l8{padding:10px 2px 10px 140px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l9{padding:10px 2px 10px 155px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l10{padding:10px 2px 10px 170px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l11{padding:10px 2px 10px 185px}.o_tree .o_dnd_item{cursor:move;z-index:100}.o_tree .o_dnd_proxy{opacity:.4;filter:alpha(opacity=40);background-color:#f0ad4e;padding:5px 10px 5px 10px;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_tree .o_dnd_item.o_dnd_over{background-color:#ffff60}.o_tree .o_dnd_sibling{height:7px;width:100%}.o_tree .o_dnd_sibling.o_dnd_over{background:transparent url(../light/images/arrow_dd.png) top left no-repeat}.o_tree .o_dnd_l1{margin-left:0 !important}.o_tree .o_dnd_l2{margin-left:1em !important}.o_tree .o_dnd_l3{margin-left:2em !important}.o_tree .o_dnd_l4{margin-left:3em !important}.o_tree .o_dnd_l5{margin-left:4em !important}.o_tree .o_dnd_l6{margin-left:5em !important}.o_tree .o_dnd_l7{margin-left:6em !important}.o_tree .o_dnd_l8{margin-left:7em !important}.o_tree .o_dnd_l9{margin-left:8em !important}.o_tree .o_dnd_l10{margin-left:9em !important}.o_tree .o_dnd_l11{margin-left:10em !important}.o_tree.o_tree_insert_tool span.o_tree_link a{display:block}.o_offcanvas .o_tree{border:0}.o_selection_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_selection_tree ul{margin:0;padding:0;list-style-type:none}.o_selection_tree li{margin:0;padding:0;white-space:nowrap}.o_selection_tree li div{position:relative;margin-bottom:-1px;border-bottom:1px solid #ddd}.o_selection_tree li>div>span.o_tree_l0,.o_selection_tree li>div>div.checkbox.o_tree_l0,.o_selection_tree li>div>div.radio.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_selection_tree li>div>span.o_tree_l1,.o_selection_tree li>div>div.checkbox.o_tree_l1,.o_selection_tree li>div>div.radio.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_selection_tree li>div>span.o_tree_l2,.o_selection_tree li>div>div.checkbox.o_tree_l2,.o_selection_tree li>div>div.radio.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_selection_tree li>div>span.o_tree_l3,.o_selection_tree li>div>div.checkbox.o_tree_l3,.o_selection_tree li>div>div.radio.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_selection_tree li>div>span.o_tree_l4,.o_selection_tree li>div>div.checkbox.o_tree_l4,.o_selection_tree li>div>div.radio.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_selection_tree li>div>span.o_tree_l5,.o_selection_tree li>div>div.checkbox.o_tree_l5,.o_selection_tree li>div>div.radio.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_selection_tree li>div>span.o_tree_l6,.o_selection_tree li>div>div.checkbox.o_tree_l6,.o_selection_tree li>div>div.radio.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_selection_tree li>div>span.o_tree_l7,.o_selection_tree li>div>div.checkbox.o_tree_l7,.o_selection_tree li>div>div.radio.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_selection_tree li>div>span.o_tree_l8,.o_selection_tree li>div>div.checkbox.o_tree_l8,.o_selection_tree li>div>div.radio.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_selection_tree li>div>span.o_tree_l9,.o_selection_tree li>div>div.checkbox.o_tree_l9,.o_selection_tree li>div>div.radio.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_selection_tree li>div>span.o_tree_l10,.o_selection_tree li>div>div.checkbox.o_tree_l10,.o_selection_tree li>div>div.radio.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_selection_tree li>div>span.o_tree_l11,.o_selection_tree li>div>div.checkbox.o_tree_l11,.o_selection_tree li>div>div.radio.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_breadcrumb{position:relative}.o_breadcrumb .o_breadcrumb_close{float:right;position:relative;margin:0 0 0 15px;vertical-align:middle}.o_breadcrumb .o_breadcrumb_close a{line-height:15px;color:#d9534f}.o_breadcrumb .o_breadcrumb_close a:hover{color:#b52b27}.o_breadcrumb .o_breadcrumb_close a i{font-size:16px}.o_breadcrumb .o_breadcrumb_close a span{display:none}.o_breadcrumb .o_breadcrumb_close:before{content:none}.o_form .o_icon_mandatory{margin-right:0.25em}.o_form .o_form_chelp{padding-left:0.25em;margin-right:-1.25em}.o_form .o_form_example{font-size:90%}.o_form .o_error{margin-top:1px;margin-bottom:0;padding:10px}.o_form hr.o_spacer_noline{border-top:1px solid transparent}.o_form hr.o_spacer.form,.o_form hr.o_spacer_noline.form{margin-top:0px;margin-bottom:0px}.o_form .form-group.o_omit_margin{margin-bottom:0}.o_form .o_date{position:relative;padding-right:34px}.o_form .o_date.form-inline .form-group,.o_form .o_date.o_navbar-form .form-group{margin-left:0}.o_form .o_date.form-inline .form-group.o_second_date,.o_form .o_date.o_navbar-form .form-group.o_second_date,.o_form .o_date.form-inline .o_date_ms.form-group,.o_form .o_date.o_navbar-form .o_date_ms.form-group,.o_form .o_date.form-inline .form-group.o_date_separator,.o_form .o_date.o_navbar-form .form-group.o_date_separator{margin-left:25px}.o_form .btn-group .o_date{display:inline-block}.o_form input.o_date_ms{width:3em}.o_form .has-feedback .o_date.form-inline .form-control.o_date_ms,.o_form .has-feedback .o_date.o_navbar-form .form-control.o_date_ms{padding-right:0}.o_form .o_form_element.form-inline .o_form_element.form-group,.o_form .o_form_element.o_navbar-form .o_form_element.form-group{margin-left:25px}.o_form .input-group.o_date_picker{width:11em}.o_form .has-feedback .o_date_picker .form-control{padding-right:0}.o_form .o_filepreview{margin-bottom:10px}.o_form .o_fileinput{cursor:pointer;position:relative}.o_form .o_fileinput .o_fakechooser{position:relative;z-index:1}.o_form .o_fileinput .o_realchooser{position:absolute;top:0;right:0;z-index:2;opacity:0;filter:alpha(opacity=0)}.o_form .o_fileinput .o_realchooser.o_chooser_with_delete{right:38px}.o_form .o_fileElement.has-error .o_icon_error.form-control-feedback{display:none}.o_form .form-control.textarea.o_fixed_font_with{resize:vertical !important;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_form .form-control.textarea_disabled.o_fixed_font_with{white-space:pre-wrap;height:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#555 !important;background:#fafafa}.o_form .form-control.textarea_disabled{resize:both;overflow:auto;white-space:pre-wrap;background:#fafafa}.o_form_inline_mandatory_compact i{width:20px}.o_form_inline_mandatory_compact select.form-control{width:calc(100% - 25px)}.o_day_chooser .o_day_previous{display:inline-block}.o_day_chooser .o_day_previous a{border-bottom-right-radius:0;border-top-right-radius:0;border-right:0}.o_day_chooser .o_day_date{display:inline-block;border-radius:0}.o_day_chooser .o_day_date input,.o_day_chooser .o_day_date .input-group-addon{border-radius:0}.o_day_chooser .o_day_next{display:inline-block}.o_day_chooser .o_day_next a{border-bottom-left-radius:0;border-top-left-radius:0;border-left:0}.o_centered_form{text-align:center}.o_centered_form fieldset.o_form{display:inline-block;text-align:left}.o_choice_checkrow,.o_choice_textrow{vertical-align:text-top;padding-bottom:2px}.o_choice_textrow{padding-left:1em}.o_togglecheck a{white-space:nowrap}.o_catalog .o_catalog_delete_img{position:relative;top:-0.5em}.o_button_dirty{color:#fff;background-color:#f0ad4e;border-color:#eea236}.o_button_dirty:hover,.o_button_dirty:focus,.o_button_dirty.focus,.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{background-image:none}.o_button_dirty.disabled,.o_button_dirty.disabled:hover,.o_button_dirty.disabled:focus,.o_button_dirty.disabled.focus,.o_button_dirty.disabled:active,.o_button_dirty.disabled.active,.o_button_dirty[disabled],.o_button_dirty[disabled]:hover,.o_button_dirty[disabled]:focus,.o_button_dirty[disabled].focus,.o_button_dirty[disabled]:active,.o_button_dirty[disabled].active,fieldset[disabled] .o_button_dirty,fieldset[disabled] .o_button_dirty:hover,fieldset[disabled] .o_button_dirty:focus,fieldset[disabled] .o_button_dirty.focus,fieldset[disabled] .o_button_dirty:active,fieldset[disabled] .o_button_dirty.active{background-color:#f0ad4e;border-color:#eea236}.o_button_dirty .badge{color:#f0ad4e;background-color:#fff}.o_button_toggle{border:1px solid #777;border-top-right-radius:9px;border-top-left-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px;background:#eee;display:inline-block;height:18px;line-height:16px;font-size:16px;text-align:left;padding:0 0.5em 0 1px;margin:0}.o_button_toggle i{color:#777;text-shadow:1px 0 2px rgba(0,0,0,0.25)}.o_button_toggle span{line-height:16px;vertical-align:top;font-size:60%;color:#777;text-transform:uppercase}.o_button_toggle.o_on{text-align:right;padding:0 1px 0 0.5em}.o_button_toggle.o_on i{color:#337ab7;text-shadow:-1px 0 2px rgba(0,0,0,0.25)}.o_table_wrapper{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_table_wrapper.o_table_flexi .o_table_body{margin-top:20px}.o_table_wrapper.o_table_flexi .table{margin-top:20px}.o_table_wrapper.o_table_flexi .table td ul{margin:0}.o_table_wrapper.o_table_flexi.o_table_no_margin .table{margin:0}.o_table_wrapper.o_table_flexi tfoot{border-top:solid #ddd 2px}.o_table_wrapper.o_table_flexi .o_multiselect{width:20px}.o_table_wrapper.o_table_edit table tbody{border-top:solid #f90 4px;background-color:#fefbf6}.o_table_wrapper .o_table_search{max-width:50em}.o_table_wrapper .o_table_footer .o_table_checkall>a{font-weight:normal;margin-right:10px}.o_table_wrapper .o_table_footer .o_table_checkall.input-sm,.o_table_wrapper .o_table_footer .input-group-sm>.o_table_checkall.form-control,.o_table_wrapper .o_table_footer .input-group-sm>.o_table_checkall.input-group-addon,.o_table_wrapper .o_table_footer .input-group-sm>.input-group-btn>.o_table_checkall.btn{padding:5px 6px}.o_table_wrapper .o_table_footer .o_table_pagination{text-align:center}.o_table_wrapper .o_table_rows_infos{float:left;padding-left:0;padding-right:20px;margin:20px 0}.o_table_wrapper .o_row_selected td{background-color:#dff0d8 !important}.o_table_wrapper .o_table{margin-bottom:0}.o_table_wrapper .o_marked{font-weight:bold}.o_table_wrapper .table{margin-bottom:0}.o_table_wrapper th a,.o_table_wrapper th a:hover{color:#333;text-decoration:none}.o_table_search a.btn.o_reset_quick_search{width:38px;margin-left:-38px;z-index:5;color:grey}.o_table_search>label{display:inline}.o_breadcrumb.o_table_flexi_breadcrumb ol.breadcrumb{margin:5px 0 0 0}div.o_table_flexi div.o_table_flexi_leaf{margin-left:1.55em}div.o_table_flexi div.o_table_flexi_l0{padding-left:0px}div.o_table_flexi div.o_table_flexi_l1{padding-left:15px}div.o_table_flexi div.o_table_flexi_l2{padding-left:30px}div.o_table_flexi div.o_table_flexi_l3{padding-left:45px}div.o_table_flexi div.o_table_flexi_l4{padding-left:60px}div.o_table_flexi div.o_table_flexi_l5{padding-left:75px}div.o_table_flexi div.o_table_flexi_l6{padding-left:90px}div.o_table_flexi div.o_table_flexi_l7{padding-left:105px}div.o_table_flexi div.o_table_flexi_l8{padding-left:120px}div.o_table_flexi div.o_table_flexi_l9{padding-left:135px}div.o_table_flexi div.o_table_flexi_l10{padding-left:150px}div.o_table_flexi div.o_table_flexi_l11{padding-left:165px}@media (max-width: 767px){.o_table_wrapper .o_table_rows_infos{clear:both}}a.o_orderby,a.o_orderby:hover{color:#333;text-decoration:none}a.o_orderby.o_orderby_asc,a.o_orderby.o_orderby_desc,a.o_orderby:hover.o_orderby_asc,a.o_orderby:hover.o_orderby_desc{border-bottom:1px solid #ddd}.o_table_row_count{padding-top:6px;padding-bottom:6px;vertical-align:middle}.o_table_row_details td{background-color:white !important}.o_table_config{font-size:12px}.o_table_buttons{text-align:center}.o_table_buttons input{margin-right:1em}.o_table_buttons input:last-child{margin-right:0}.o_table_tools{margin-left:6px}.o_table_tools_indications,.o_table_tools_indications_filter_only{margin-left:10px;padding-top:3px;font-size:80%}.o_table_tools_indications a,.o_table_tools_indications_filter_only a{color:#d9534f}.o_table_toolbar_left .o_table_tools_indications{text-align:right}.o_table_count{max-width:20em;float:left;padding:0 15px}.o_table_filter .control-label{margin-right:0.5em}.o_table_filter .control-label:after{content:':'}.o_table_filter>div{display:inline-block}.o_table_filter>div label{font-weight:normal}table tr.o_no_border td,table tr.o_no_border th{border-top:0}.o_info .table-bordered td,o_note .table-bordered td,o_important .table-bordered td,o_warning .table-bordered td,o_error .table-bordered td{border-color:#333}.panel .o_table_layout{border-top:1px solid #ddd;padding-top:6px}.panel .o_table_count{padding:0 15px}.o_table_header_fw{width:40px}#o_navbar_imclient .o_im_messages{float:left}#o_navbar_imclient #o_im_message,#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_summary{float:left;position:relative;padding:15px 3px}#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_message{padding-left:15px}#o_navbar_imclient #o_im_summary .badge{color:#fff;background-color:#777}#o_navbar_imclient #o_im_status li>a>span{display:inline}#o_navbar_imclient #o_im_status div.o_chelp_wrapper{right:0.5em}#o_navbar_imclient #o_im_message a:hover,#o_navbar_imclient #o_im_message a:focus{text-decoration:none}#o_navbar_imclient #o_im_message .o_icon_message{color:#d9534f}#o_navbar_imclient #o_im_message .o_icon_message:hover{color:#f4c37d}.o_im_load_history{margin-bottom:6px}.o_im_load_history .o_label{font-size:12px;padding-right:0.5em;line-height:1.5em;color:#777}.o_im_chat_history{height:170px;font-size:90%;border:1px solid #eee;margin:0 0 1em 0;overflow:scroll;overflow-x:auto}.o_im_message_group{padding:3px 3px 3px 40px;min-height:40px;position:relative;border-top:1px solid #eee;background:#fff}.o_im_message_group.o_odd{background:#F4F4F4}.o_im_message_group .o_portrait{position:absolute;top:3px;left:3px}.o_im_message_group .o_im_from{color:#777;font-size:12px;font-weight:bold}.o_im_message_group .o_im_from:hover{color:#5e5e5e}.o_im_message_group div.o_im_body{padding:3px 0 3px 0;font-size:12px}.o_im_message_group div.o_im_body .o_date{float:right;color:#777;font-size:9px}.o_groupchat_roster{font-size:12px}.o_groupchat_roster li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333}.o_groupchat_roster li.o_vip{color:#3c763d}.o_groupchat_roster li.o_anonymous{color:#31708f}.o_im_buddieslist .o_im_buddieslist_toggler .btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_im_buddieslist ul{font-size:12px}.o_im_buddieslist ul ul{padding-left:1em}.o_im_buddieslist ul a{color:#337ab7}.o_im_buddieslist ul a:hover{color:#23527c}.o_flag{position:relative;top:1px;display:inline-block;line-height:1;width:16px;height:16px;background-repeat:no-repeat;background-position:0 100%}option.o_with_flag{padding-left:23px;min-height:16px;background-repeat:no-repeat;background-position:2px 50%}.o_flag_en{background-image:url("../light/images/flags/gb.png")}.o_flag_de{background-image:url("../light/images/flags/de.png")}.o_flag_fr{background-image:url("../light/images/flags/fr.png")}.o_flag_it{background-image:url("../light/images/flags/it.png")}.o_flag_es{background-image:url("../light/images/flags/es.png")}.o_flag_da{background-image:url("../light/images/flags/dk.png")}.o_flag_cs{background-image:url("../light/images/flags/cz.png")}.o_flag_el{background-image:url("../light/images/flags/gr.png")}.o_flag_ee{background-image:url("../light/images/flags/ee.png")}.o_flag_ru{background-image:url("../light/images/flags/ru.png")}.o_flag_pl{background-image:url("../light/images/flags/pl.png")}.o_flag_zh_CN{background-image:url("../light/images/flags/cn.png")}.o_flag_zh_TW{background-image:url("../light/images/flags/tw.png")}.o_flag_lt{background-image:url("../light/images/flags/lt.png")}.o_flag_fa{background-image:url("../light/images/flags/ir.png")}.o_flag_pt_PT{background-image:url("../light/images/flags/pt.png")}.o_flag_pt_BR{background-image:url("../light/images/flags/br.png")}.o_flag_tr{background-image:url("../light/images/flags/tr.png")}.o_flag_hu{background-image:url("../light/images/flags/hu.png")}.o_flag_sq{background-image:url("../light/images/flags/al.png")}.o_flag_in{background-image:url("../light/images/flags/id.png")}.o_flag_ar{background-image:url("../light/images/flags/eg.png")}.o_flag_rm{background-image:url("../light/images/flags/rm.png")}.o_flag_af{background-image:url("../light/images/flags/za.png")}.o_flag_vi{background-image:url("../light/images/flags/vn.png")}.o_flag_mn{background-image:url("../light/images/flags/mn.png")}.o_flag_iw{background-image:url("../light/images/flags/il.png")}.o_flag_ko{background-image:url("../light/images/flags/kr.png")}.o_flag_nl_NL{background-image:url("../light/images/flags/nl.png")}.o_flag_jp{background-image:url("../light/images/flags/jp.png")}.o_flag_nb_NO{background-image:url("../light/images/flags/no.png")}.o_flag_et_EE{background-image:url("../light/images/flags/ee.png")}.o_flag_bg{background-image:url("../light/images/flags/bg.png")}.o_flag_hi_IN_ASIA{background-image:url("../light/images/flags/in.png")}.o_flag_ar_LB{background-image:url("../light/images/flags/lb.png")}.o_flag_gl_ES{background-image:url("../light/images/flags/galicia.png")}.o_flag_sk{background-image:url("../light/images/flags/sk.png")}.o_rating .o_rating_title{font-size:12px}.o_rating .o_rating_items{white-space:nowrap}.o_rating .o_rating_items .o_icon,.o_rating .o_rating_items .o_progress_failed .inset:after,.o_progress_failed .o_rating .o_rating_items .inset:after,.o_rating .o_rating_items .o_progress_passed .inset:after,.o_progress_passed .o_rating .o_rating_items .inset:after{color:#f0ad4e}.o_rating .o_rating_items .o_legend{margin-left:1em;font-size:12px;line-height:normal}.o_rating.o_rating_personal .o_rating_items .o_icon,.o_rating.o_rating_personal .o_rating_items .o_progress_failed .inset:after,.o_progress_failed .o_rating.o_rating_personal .o_rating_items .inset:after,.o_rating.o_rating_personal .o_rating_items .o_progress_passed .inset:after,.o_progress_passed .o_rating.o_rating_personal .o_rating_items .inset:after{color:#337ab7}.o_rating .o_rating_explanation{font-size:12px;color:#777}@media (max-width: 991px){.o_rating .o_rating_title,.o_rating .o_rating_explanation{display:none}}.o_comments .o_comment_wrapper .o_avatar{float:left;margin:0 1em 0 0}.o_comments .o_comment_wrapper .o_reply,.o_comments .o_comment_wrapper .o_delete{float:right}.o_comments .o_comment_wrapper .o_comment_wrapper{margin-left:16px}.o_ratings_and_comments .o_rating_wrapper{vertical-align:middle;display:inline-block}.o_ratings_and_comments a.o_comments{margin-left:10px;position:relative;top:0.1em}.o_ratings_and_comments div.o_notifications{float:right}.d3chart .bar{shape-rendering:crispEdges}.d3chart .bar_default_light{fill:#64a0d3}.d3chart .bar_default,.d3chart .bubble_default{fill:#337ab7}.d3chart .bar_default_dark{fill:#23527c}.d3chart .axis{font:12px sans-serif}.d3chart .axis path,.d3chart .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_forum_peekview .o_quote_wrapper,.o_forum_peekview .b_quote_wrapper{display:none}.o_forum_thread_sticky{font-weight:bold}.o_forum_switch{font-size:12px}.o_forum_toolbar{margin-bottom:6px;float:left}.o_forum_fulltextsearch{float:right}@media (max-width: 767px){.o_forum_fulltextsearch{float:left}.o_forum_toolbar .o_forum_tool span{display:none}}.o_forum{padding-bottom:50px}.o_forum .o_mark,.o_forum .o_ep_collect{float:right;position:relative;width:2em;margin-left:12px}.o_forum .o_portrait{float:left;margin-right:16px}.o_forum .o_portrait_avatar{width:70px;height:70px}.o_forum .o_newindicator{font-size:10px;color:#5cb85c;text-transform:uppercase;padding-left:1em;vertical-align:text-top;white-space:nowrap}.o_forum .o_author,.o_forum .o_date{display:inline-block;color:#777}.o_forum .o_date{font-size:12px}.o_forum .o_modified{color:#8a6d3b;font-size:12px;font-style:italic}.o_forum .o_forum_message{margin-bottom:20px;background-color:#fcfcfc;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_forum .o_forum_message_new{-webkit-box-shadow:0 1px 10px rgba(92,184,92,0.3);box-shadow:0 1px 10px rgba(92,184,92,0.3)}.o_forum .o_forum_message_highlight{-webkit-box-shadow:0 1px 10px rgba(240,173,78,0.5);box-shadow:0 1px 10px rgba(240,173,78,0.5)}.o_forum .o_forum_message_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:3px;border-top-left-radius:3px}.o_forum .o_forum_message_title{margin-top:0}.o_forum .o_forum_message_body{padding:10px 15px}.o_forum .o_forum_message_attachments{border-top:1px solid #ddd;padding:10px 15px;font-size:12px;background-color:#f7f7f9}.o_forum .o_attachment{position:relative;max-width:250px;vertical-align:top;margin:6px 12px 10px 0}.o_forum .o_attachment img{margin-top:6px}.o_forum .o_filename{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_forum .o_icon_enlarge{position:absolute;left:1em;bottom:1em;text-shadow:1px 1px 2px #fff, -1px 1px 2px #fff, 1px -1px 2px #fff, -1px -1px 2px #fff}@media (min-width: 768px) and (max-width: 991px){.o_forum .o_attachments{font-size:10px}.o_forum .o_attachment{max-width:200px}.o_forum .o_attachment img{max-width:150px}.o_forum .o_filename{max-width:200px}}@media (max-width: 767px){.o_forum .o_attachments{font-size:9px}.o_forum .o_attachment{max-width:150px}.o_forum .o_attachment img{max-width:100px}.o_forum .o_filename{max-width:150px}}.o_quote_wrapper,.b_quote_wrapper{position:relative;margin:10px 0}.o_quote_author,.b_quote_author{color:#777;font-size:12px}.o_quote_author:before,.b_quote_author:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„Ž";font-size:21px;padding-right:0.5em}blockquote.o_quote,blockquote.b_quote{color:#555;font-size:12px;margin-top:6px;padding:0 12px}a.o_chelp{display:inline-block;padding:1px 3px;text-align:center;vertical-align:middle;white-space:nowrap;font-size:10px;font-weight:normal;line-height:15px;color:#fff;background-color:#337ab7;border:1px solid #2e6da4;border-radius:2px;cursor:help;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}a.o_chelp:active,a.o_chelp:hover,a.o_chelp:focus{text-decoration:none;color:#fff;background-color:#2a6598;border-color:#204d74}a.o_chelp i{font-size:10px !important}.o_chelp_wrapper{position:relative;float:right;display:inline-block;line-height:normal;margin-bottom:10px;margin-left:10px}.o_form_chelp,.o_chelp_tooltip{color:#737373}.o_draw_circle{border:2px solid #337ab7;border-radius:50%;position:absolute !important;box-sizing:border-box}.o_draw_rectangle{border:2px solid #337ab7;position:absolute !important;box-sizing:border-box}.o_iframedisplay iframe{width:100%}.o_content_cloneable{position:relative}.o_singlepage .o_edit{position:absolute;top:0;right:25px}.o_content_popup{position:absolute;top:0;right:0}.o_module_cp_wrapper{position:relative}.o_module_cp_wrapper .o_tools{position:absolute;top:0;right:0;text-align:right;vertical-align:middle}.o_module_cp_wrapper .o_tools .o_search_wrapper{display:inline-block;position:relative;top:-2px}.o_module_cp_wrapper .o_tools .o_search_wrapper .form-group{margin-bottom:0}.o_module_cp_wrapper .o_tools .o_search_wrapper .form-control-static{padding-top:0;padding-bottom:0}ul.o_dropdown{margin:-5px -14px}ul.o_dropdown .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}ul.o_dropdown>li>a{display:block;padding:5px 14px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;background:#fcfcfc;white-space:nowrap}ul.o_dropdown>li>a:hover,ul.o_dropdown>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}ul.o_dropdown>li>i.o_icon_check{display:inline-block;padding-left:14px}ul.o_dropdown>li>i.o_icon_check+a{display:inline-block;padding-left:5px}.badge.o_scorm_completed{background-color:#3c763d}.badge.o_scorm_failed{background-color:#a94442}.badge.o_scorm_incomplete{background-color:#8a6d3b}.badge.o_scorm_not_attempted{background:none}.o_bc_meta h5,.o_bc_meta .o_author,.o_bc_meta .o_comment,.tooltip h5,.tooltip .o_author,.tooltip .o_comment{color:#fff;margin:5px 0}.o_bc_meta .o_thumbnail,.tooltip .o_thumbnail{width:200px;height:200px;display:inline-block;background-color:#fff;margin:0 -5px}.o_htmleditor .o_metadata{border:1px solid #999;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom:0;background:#eee;position:relative;top:1px;padding:5px}.o_htmleditor .o_metadata #o_filename{float:left}.o_htmleditor .o_metadata .o_lastmodified{float:right;color:#777;line-height:1.428571429}.o_htmleditor #o_save{margin-top:10px;text-align:center}.o_htmleditor #o_save input{margin-right:1em}.o_htmleditor #o_save input:last-child{margin-right:0}.o_notifications_news_wrapper .o_notifications_news_subscription{margin:10px 0}.o_notifications_news_wrapper .o_notifications_news_subscription h4 i,.o_notifications_news_wrapper .o_notifications_news_subscription .o_cal .fc-header-title h2 i,.o_cal .fc-header-title .o_notifications_news_wrapper .o_notifications_news_subscription h2 i{display:none}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_context{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content{margin-left:1.5em;position:relative}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_icon,.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_progress_failed .inset:after,.o_progress_failed .o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .inset:after,.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_progress_passed .inset:after,.o_progress_passed .o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .inset:after{position:absolute;left:-1.5em;line-height:1.5em;top:0}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_date{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_url{margin-left:1.5em}.o_noti{margin:6px 0 6px 12px;float:right;color:#777}.o_noti .o_label{color:#777;cursor:help}@media (max-width: 767px){.o_noti .o_label span{display:none}}.panel-body .o_noti{margin:0}.o_portrait{display:inline-block}.o_portrait img{border-radius:50%;border:none;background-color:#eee;background-position:50% 50%;background-repeat:no-repeat;background-size:cover}.o_portrait_name{margin-top:6px}.o_block_inline .o_portait,.o_block_inline .o_portrait_name,.o_block_inline .o_portrait_image,.o_block_inline_right .o_portait,.o_block_inline_right .o_portrait_name,.o_block_inline_right .o_portrait_image,.o_block_inline_left .o_portait,.o_block_inline_left .o_portrait_name,.o_block_inline_left .o_portrait_image,.o_block_inline_both .o_portait,.o_block_inline_both .o_portrait_name,.o_block_inline_both .o_portrait_image{display:inline-block}.o_portrait_avatar,.o_portrait_dummy,.o_portrait_dummy_female_big,.o_portrait_dummy_male_big,.o_portrait_anonymous{width:100px;height:100px}.o_portrait_dummy{background-image:url("../light/images/portrait/dummy.png") !important}.o_portrait_dummy_female_big{background-image:url("../light/images/portrait/dummy_female_big.png") !important}.o_portrait_dummy_male_big{background-image:url("../light/images/portrait/dummy_male_big.png") !important}.o_portrait_anonymous{background-image:url("../light/images/portrait/anonymous.png") !important}.o_portrait_avatar_small,.o_portrait_dummy_small,.o_portrait_dummy_female_small,.o_portrait_dummy_male_small,.o_portrait_anonymous_small{width:30px;height:30px}.o_portrait_dummy_small{background-image:url("../light/images/portrait/dummy_small.png") !important}.o_portrait_dummy_female_small{background-image:url("../light/images/portrait/dummy_female_small.png") !important}.o_portrait_dummy_male_small{background-image:url("../light/images/portrait/dummy_male_small.png") !important}.o_portrait_anonymous_small{background-image:url("../light/images/portrait/anonymous_small.png") !important}.o_datecomp{position:relative;width:40px;height:52px;border:1px solid #555;margin-right:12px;text-align:center;vertical-align:middle}.o_datecomp div.o_year{position:absolute;left:0;width:100%;top:-20px;height:20px;line-height:20px;font-size:10px}.o_datecomp div.o_month{height:20px;line-height:20px;font-size:12px;background-color:#337ab7;color:#fff}.o_datecomp div.o_day{height:30px;line-height:30px;font-size:18px;border-top:1px solid #555;background-color:#fff;color:#333}.o_block_with_datecomp .o_head{position:relative;padding-left:52px}.o_block_with_datecomp .o_datecomp{position:absolute;top:0.2em;left:0}.o_block_with_datecomp .o_title{margin-top:0}.o_block_with_datecomp .o_meta{color:#777}.o_block_with_datecomp .o_content{border-left:5px solid #eee;padding:0 20px}.o_block_with_datecomp .o_block_footer{padding-left:25px}ul.o_certificates li{padding:5px 0}ul.o_certificates li a.o_sel_certificate_delete{padding-left:2em}.o_cal_toptoolbar{margin-bottom:6px}.o_cal_toptoolbar .o_cal_toptoolbar_help{float:left;margin-right:12px}.o_cal_toptoolbar .o_noti{margin-top:0}.o_feed .o_date,.o_feed .o_author{color:#777}.o_feed .o_subscription a{margin-right:1.5em}.o_feed .o_subscription .form-group{margin-bottom:5px}.o_feed .o_subscription .form-control{border:0;background:none;padding:0;height:auto;-webkit-box-shadow:none;box-shadow:none}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper{float:left}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_title,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_explanation,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_legend{display:none}.o_feed .o_blog_posts .o_ratings_and_comments a.o_comments span{display:none}.o_feed .o_content:before,.o_feed .o_content:after{content:" ";display:table}.o_feed .o_content:after{clear:both}.o_feed .o_enclosure{clear:both}.o_glossary .o_register{text-align:center}.o_glossary .o_meta{font-size:90%;color:#777;font-style:italic}.o_glossary dl dt:first-letter{font-size:21px}.o_glossary dl dt small{color:#777}.o_tm_glossary{border-bottom:1px dotted #666699 !important}.o_tm_yellow{background-color:#FFFF66}.o_tm_blue{background-color:#33FFFF}.o_tm_red{background-color:#FF3333}.o_tm_green{background-color:#99FF00}.o_coaching div#o_main_toolbar.o_toolbar{margin-top:0px}.o_eff_statement_details .o_user_infos{margin-top:20px}div.o_assessment_user_type_filter{display:inline-block;padding:0.5em;border:1px solid #eee;border-radius:4px}div.o_assessment_user_type_filter div.form-inline,div.o_assessment_user_type_filter div.o_navbar-form{margin-left:5px;display:inline-block}div.panel.o_assessment_modes .o_table_body{margin-top:0}div.panel.o_assessment_modes .o_table_wrapper{margin-bottom:5px}div.o_assessment_mode_row{padding:0 15px}div.o_assessment_mode_row.o_assessment_today{padding:0 20px 0 12px;border-left:3px solid #3c763d;background-color:#dff0d8}div.o_assessment_mode_row.o_assessment_end_soon.o_assessment_today{padding:0 20px 0 12px;border-left:3px solid #a94442;background-color:#f2dede}.vitero_iframe{width:100%;height:100%;border:none;min-height:60em}.o_reminder_rule{padding:5px 0}.o_segments.btn-group a span{overflow:hidden;display:block;text-overflow:ellipsis}.o_segments_content{margin-top:20px}.o_segments.o_segments_linked .btn,.o_segments.o_segments_linked .btn:hover,.o_segments.o_segments_linked .btn:active,.o_segments.o_segments_linked .btn:focus{border:none;border-radius:0;box-shadow:none;background:none}.o_segments.o_segments_linked .btn-primary{color:#000;font-size:24px;background:none}.o_segments.o_segments_linked .btn-default,.o_segments.o_segments_linked .btn-default:hover,.o_segments.o_segments_linked .btn-default:active,.o_segments.o_segments_linked .btn-default:focus{color:#337ab7;background:none}.o_segments.o_segments_linked .o_segment_separator{color:#000}.o_tabbed_pane .o_tabbed_pane_content{padding:20px 0 6px 0}.o_togglebox_wrapper .o_opener{position:relative;left:-0.5em}.o_togglebox_wrapper div.o_togglebox_content{position:relative;margin:0}.o_togglebox_wrapper div.o_togglebox_content .o_hide{position:absolute;bottom:0.5em;right:1em}.o_toolboxes ul{margin:0 0 1.5em 0;padding:0 0 0 1.5em}.o_qrcode{width:256px;height:256px}#o_ajax_busy{position:absolute;left:50%;top:20em;margin-left:-2.5em;height:5em;width:5em;color:#fff;z-index:1201;display:none}#o_body.o_ajax_busy{cursor:busy}.o_exception .o_visual{position:relative;background-image:url("../light/images/lion-500x333.jpg");filter:grayscale(50%);-webkit-filter:grayscale(50%);-moz-filter:grayscale(50%);-ms-filter:grayscale(50%);-o-filter:grayscale(50%);width:500px;height:333px;background-repeat:no-repeat;background-position:50% 50%;background-size:contain;margin:0 0 10px 16px}@media (min-width: 768px) and (max-width: 991px){.o_exception .o_visual{width:375px;height:249px}}@media (min-width: 500px) and (max-width: 767px){.o_exception .o_visual{width:250px;height:166px}}@media (max-width: 500px){.o_exception .o_visual{background-size:cover}}.o_exception .jumbotron h1,.o_exception .o_repo_details .o_lead h1,.o_repo_details .o_exception .o_lead h1{color:#d9534f}ul.o_assessment_docs{margin-bottom:0}ul.o_assessment_docs>li{margin-bottom:0.33em}ul.o_assessment_docs>li:last-child{margin-bottom:0em}.o_mail_message .o_mail_meta{background:#fafafa;border:1px solid #eee;padding:5px 10px}.o_mail_message .o_mail_meta h3{margin-top:0}.o_mail_message .o_mail_date,.o_mail_message .o_mail_from,.o_mail_message .o_mail_recipients{color:#777;font-size:90%}.o_mail_message .o_mail_date .o_label,.o_mail_message .o_mail_from .o_label,.o_mail_message .o_mail_recipients .o_label{font-weight:bold;margin-right:1em}.o_mail_message .o_mail_date .o_group span,.o_mail_message .o_mail_from .o_group span,.o_mail_message .o_mail_recipients .o_group span{font-weight:bold}.o_mail_message .o_mail_date .o_group span:after,.o_mail_message .o_mail_from .o_group span:after,.o_mail_message .o_mail_recipients .o_group span:after{content:':';margin-right:0.5em}.o_mail_message .o_mail_date i,.o_mail_message .o_mail_from i,.o_mail_message .o_mail_recipients i{margin-left:1em}.o_mail_message .o_mail_date ul.list-inline,.o_mail_message .o_mail_from ul.list-inline,.o_mail_message .o_mail_recipients ul.list-inline{display:inline}.o_mail_message .o_mail_date ul.list-inline li,.o_mail_message .o_mail_from ul.list-inline li,.o_mail_message .o_mail_recipients ul.list-inline li{padding-right:0;padding-left:0}.o_mail_message .o_more{margin-left:1em}.o_mail_message .o_showAllLink{float:right;font-size:80%}.progress .o_progress_marker{position:absolute;height:100%;top:0;width:3px;background:red}.o_progress.o_progress_inline{display:inline-block;white-space:nowrap}.o_progress.o_progress_inline .progress{vertical-align:bottom}.o_progress .o_progress_label,.o_progress .o_progress_info{display:inline-block;vertical-align:top}.o_progress .o_progress_info{margin-left:0.5em}.o_progress .progress{position:relative;display:inline-block;text-shadow:1px 1px 2px #000000;font-size:12px;line-height:20px;color:#fff}.o_progress .progress .o_progress_label_wrapper{position:absolute;top:0;left:0;padding-left:0.4em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.o_progress .progress:not(.o_progress-sm)+.o_progress_label_wrapper{margin-left:0.5em}.o_progress .o_progress-lg{height:40px}.o_progress .o_progress-lg .o_progress_label_wrapper{padding-left:1em;line-height:40px}.o_progress .o_progress-sm{vertical-align:bottom;height:5px}.o_progress .o_progress-sm+span{position:absolute;top:0;left:15px;font-size:80%}.o_web_content{padding-bottom:15px}.o_labeled_light,a.o_labeled_light,.o_labeled,a.o_labeled{display:inline-block;text-transform:uppercase;text-align:center;text-decoration:none;vertical-align:middle;font-size:75%;line-height:1;white-space:nowrap;border:1px solid;border-radius:3px;padding:2px 5px;background-color:#777;color:#fff;position:relative}.o_labeled_light,a.o_labeled_light{font-weight:bold;background-color:#f8f8f8}.o_ms_button{max-width:100%;width:100%;display:flex}.o_ms_button span:not(.o_ms_carret){text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.o_ms_button .o_ms_carret{margin:auto 0 auto auto}.o_ms_list{width:100%;height:auto;max-height:300px;overflow-x:hidden;top:unset}.o_disclaimer .o_disclaimer_content{max-height:50vh;overflow:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;background:#fbfbfb;padding:10px;border:1px solid #c2c2c2}.o_files_size_okay{color:#61E868}.o_files_size_warning{color:#FFB100}.o_files_size_large{color:#E82A0C}.tt-input{width:400px}.tt-menu{width:400px;margin-top:6px;padding:0 0 0;color:#555;background-color:#fcfcfc;border:1px solid #66afe9;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;-webkit-box-shadow:0 0 8px rgba(102,175,233,0.6);box-shadow:0 0 8px rgba(102,175,233,0.6)}.tt-suggestion{padding:6px 12px;font-size:14px;line-height:1.428571429}.tt-suggestion.tt-cursor,.tt-suggestion:hover{color:#fff;background-color:#337ab7}.tt-suggestion p{margin:0}.tt-menu div.o_icon_error:before{content:''}.o_search_link_extended,.o_search_link_simple{margin-top:12px;display:inline-block}.o_search_results_stats{color:#777;padding-left:1.5em}.o_search_highlight{margin-left:12px;font-size:12px}.o_search_result_title h4,.o_search_result_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_search_result_title h2{display:inline-block;margin-right:12px;margin-bottom:6px}.o_search_result_title h4 .o_icon-fw,.o_search_result_title .o_cal .fc-header-title h2 .o_icon-fw,.o_cal .fc-header-title .o_search_result_title h2 .o_icon-fw{text-align:left}.o_search_result_highlight{font-weight:bold;background-color:transparent}.o_search_result_context{display:inline-block;color:#3c763d;margin-right:1em}.o_search_result_license{display:inline-block;color:#777}.o_search_result_excerpt{color:#555}.o_search_result .o_opener{font-size:12px}.o_search_result .o_opener i{width:1em}.o_search_result_details .o_togglebox_wrapper.o_block{margin-top:0;margin-bottom:0}.o_search_result_details .o_togglebox_wrapper .o_togglebox_content{color:#777;font-size:12px;background:#fff;padding:6px 12px}.o_search_result_details .o_togglebox_wrapper .o_search_result_license i{font-size:20px}@media (max-width: 767px){.o_search_result_details{display:none}}.wizard{border:1px solid #d4d4d4;border-radius:2px;background-color:#f9f9f9;position:relative;overflow:hidden;margin-bottom:15px}.wizard ul{list-style:none outside none;padding:0;margin:0;width:4000px}.wizard ul li{float:left;margin:0;padding:0 20px 0 30px;height:46px;line-height:46px;position:relative;background:#ededed;color:#333;font-size:16px;cursor:default}.wizard ul li .chevron{border:24px solid transparent;border-left:14px solid #d4d4d4;border-right:0;display:block;position:absolute;right:-14px;top:0;z-index:1}.wizard ul li .chevron:before{border:24px solid transparent;border-left:14px solid #ededed;border-right:0;content:"";display:block;position:absolute;right:1px;top:-24px}.wizard ul li.active{background:#f1f6fc;color:#333}.wizard ul li.active .chevron:before{border-left:14px solid #f1f6fc}.wizard ul li .badge{margin-right:8px}.wizard ul li:first-child{border-radius:4px 0 0 4px;padding-left:20px}.o_process{position:relative;padding-left:25px}.o_process .o_step{position:relative;height:auto;padding-top:10px;padding-left:30px;padding-bottom:10px}.o_process .o_bar{position:absolute;top:10px;left:8px;height:100%;border-left:4px solid #777}.o_process .o_bar:after{position:absolute;top:0;left:-10px;height:16px;width:16px;border:4px solid #777;border-radius:16px;background:#fff;content:" "}.o_process .o_title{margin-top:-1px;color:#777 !important}.o_process .o_title:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;left:-24px}.o_process .o_title a:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";width:1em}.o_process .o_title a.collapsed:before{content:""}.o_process .o_step.o_active .o_bar,.o_process .o_step.o_active .o_bar:after{border-color:#337ab7}.o_process .o_step.o_active .o_title{color:#337ab7 !important}.o_process .o_step.o_active .o_title:before{content:"";color:#337ab7}.o_process .o_step.o_done .o_bar,.o_process .o_step.o_done .o_bar:after{border-color:#5094ce}.o_process .o_step.o_done .o_title{color:#5094ce !important}.o_process .o_step.o_done .o_title:before{content:"";color:#5cb85c}.o_process .o_meta{color:#777;font-size:12px;margin-top:-0.5em}.o_cal_orange{background:#ffc266;border-color:#ff9900;color:#5D5D5D}.o_cal_orange .o_cal_wv_event_header{background:#ff9900}.o_cal_orange a{color:#5D5D5D !important}.o_cal_class.o_cal_orange{border-left:20px solid #ffc266}.o_cal_green{background:#66c266;border-color:#009900;color:#FFF}.o_cal_green .o_cal_wv_event_header{background:#009900}.o_cal_green a{color:#FFF !important}.o_cal_class.o_cal_green{border-left:20px solid #66c266}.o_cal_blue{background:#4d6e9f;border-color:#2e5894;color:#FFF}.o_cal_blue .o_cal_wv_event_header{background:#2e5894}.o_cal_blue a{color:#FFF !important}.o_cal_class.o_cal_blue{border-left:20px solid #4d6e9f}.o_cal_yellow{background:#ffe066;border-color:#ffcc00;color:#5D5D5D}.o_cal_yellow .o_cal_wv_event_header{background:#ffcc00}.o_cal_yellow a{color:#5D5D5D !important}.o_cal_class.o_cal_yellow{border-left:20px solid #ffe066}.o_cal_red{background:#c26666;border-color:#990000;color:#FFF}.o_cal_red .o_cal_wv_event_header{background:#990000}.o_cal_red a{color:#FFF !important}.o_cal_class.o_cal_red{border-left:20px solid #c26666}.o_cal_rebeccapurple{background:#663399;border-color:#663399;color:#FFF}.o_cal_rebeccapurple .o_cal_wv_event_header{background:#663399}.o_cal_rebeccapurple a{color:#FFF !important}.o_cal_class.o_cal_rebeccapurple{border-left:20px solid #639}.o_cal_fuchsia{background:#FF00FF;border-color:#dd00dd;color:#FFF}.o_cal_fuchsia .o_cal_wv_event_header{background:#FF00FF}.o_cal_fuchsia a{color:#FFF !important}.o_cal_class.o_cal_fuchsia{border-left:20px solid #f0f}.o_cal_olive{background:#808000;border-color:#636300;color:#FFF}.o_cal_olive .o_cal_wv_event_header{background:#808000}.o_cal_olive a{color:#FFF !important}.o_cal_class.o_cal_olive{border-left:20px solid olive}.o_cal_navy{background:#000080;border-color:#000057;color:#FFF}.o_cal_navy .o_cal_wv_event_header{background:#000080}.o_cal_navy a{color:#FFF !important}.o_cal_class.o_cal_navy{border-left:20px solid navy}.o_cal_maroon{background:#800000;border-color:#740000;color:#FFF}.o_cal_maroon .o_cal_wv_event_header{background:#800000}.o_cal_maroon a{color:#FFF !important}.o_cal_class.o_cal_maroon{border-left:20px solid maroon}.o_cal_lime{background:#00FF00;border-color:#00e200;color:#004d00}.o_cal_lime .o_cal_wv_event_header{background:#00FF00}.o_cal_lime a{color:#004d00 !important}.o_cal_class.o_cal_lime{border-left:20px solid lime}.o_cal_grey{background:#DDDAAA;border-color:#5D5D5D;color:#FFF}.o_cal_grey .o_cal_wv_event_header{background:#5D5D5D}.o_cal_grey a{color:#FFF !important}.o_cal_class.o_cal_grey{border-left:20px solid #DDDAAA}.o_sel_calendar_print_chooser{padding-right:4em}.o_cal_config_enabled,.o_cal_config_disabled{position:relative;float:left;display:inline}.o_cal_config_calendar{margin:0 5px;padding:1px 6px 1px 4px;position:relative;width:200px;overflow:hidden;float:left;display:inline}.o_cal_config_color{display:block;width:16px;height:16px;border-radius:8px}.o_cal_colorchooser_selected:before{content:""}#o_cal_colorchooser div{border:1px solid #337ab7;margin:5px;display:inline-block}#o_cal_colorchooser div:hover{border:1px solid #333}#o_cal_colorchooser a{width:20px;height:20px;display:inline-block}.o_cal_embedded_course_container .o_content_popup{top:0}.o_cal_wv_event_tooltip_content .o_cal_description{background-color:#f8f8f8;padding:10px 7px;margin:10px -7px}.o_cal_wv_event_tooltip_content .o_cal_tooltip_buttons{text-align:center;margin-top:20px}.o_cal_event_managed .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_not_managed .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_managed.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:" "}.o_cal_event_not_managed.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:" "}.fc-button{color:#333;background-color:#fcfcfc;border-color:#ccc}.fc-button:hover,.fc-button:focus,.fc-button.focus,.fc-button:active,.fc-button.active,.open>.fc-button.dropdown-toggle{color:#333;background-color:#e3e3e3;border-color:#adadad}.fc-button:active,.fc-button.active,.open>.fc-button.dropdown-toggle{background-image:none}.fc-button.disabled,.fc-button.disabled:hover,.fc-button.disabled:focus,.fc-button.disabled.focus,.fc-button.disabled:active,.fc-button.disabled.active,.fc-button[disabled],.fc-button[disabled]:hover,.fc-button[disabled]:focus,.fc-button[disabled].focus,.fc-button[disabled]:active,.fc-button[disabled].active,fieldset[disabled] .fc-button,fieldset[disabled] .fc-button:hover,fieldset[disabled] .fc-button:focus,fieldset[disabled] .fc-button.focus,fieldset[disabled] .fc-button:active,fieldset[disabled] .fc-button.active{background-color:#fcfcfc;border-color:#ccc}.fc-button .badge{color:#fcfcfc;background-color:#333}.fc-button.fc-state-default{text-shadow:none}.fc-button.fc-state-active{color:#fff;background-color:#337ab7;border-color:#2e6da4}.fc-button.fc-state-active:hover,.fc-button.fc-state-active:focus,.fc-button.fc-state-active.focus,.fc-button.fc-state-active:active,.fc-button.fc-state-active.active,.open>.fc-button.fc-state-active.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.fc-button.fc-state-active:active,.fc-button.fc-state-active.active,.open>.fc-button.fc-state-active.dropdown-toggle{background-image:none}.fc-button.fc-state-active.disabled,.fc-button.fc-state-active.disabled:hover,.fc-button.fc-state-active.disabled:focus,.fc-button.fc-state-active.disabled.focus,.fc-button.fc-state-active.disabled:active,.fc-button.fc-state-active.disabled.active,.fc-button.fc-state-active[disabled],.fc-button.fc-state-active[disabled]:hover,.fc-button.fc-state-active[disabled]:focus,.fc-button.fc-state-active[disabled].focus,.fc-button.fc-state-active[disabled]:active,.fc-button.fc-state-active[disabled].active,fieldset[disabled] .fc-button.fc-state-active,fieldset[disabled] .fc-button.fc-state-active:hover,fieldset[disabled] .fc-button.fc-state-active:focus,fieldset[disabled] .fc-button.fc-state-active.focus,fieldset[disabled] .fc-button.fc-state-active:active,fieldset[disabled] .fc-button.fc-state-active.active{background-color:#337ab7;border-color:#2e6da4}.fc-button.fc-state-active .badge{color:#337ab7;background-color:#fff}.fc-listYear-button:before,.fc-listMonth-button:before,.fc-listWeek-button:before,.fc-listDay-button:before{content:"";margin-right:5px;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:80%;webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}table.fc-list-table .fc-list-item{background-color:white;color:#5D5D5D !important}table.fc-list-table .fc-list-item a,table.fc-list-table .fc-list-item span{color:#5D5D5D !important}body.o_cal_print fieldset{border:none;margin-bottom:2em}body.o_cal_print legend{font-size:2em;font-weight:bold}body.o_cal_print legend span{display:block;font-size:14px;font-weight:normal}body.o_cal_print ul.o_cal_wv_list{list-style-type:none;padding:0}body.o_cal_print ul.o_cal_wv_list>li{page-break-inside:avoid;margin-bottom:2em}body.o_cal_print ul.o_cal_wv_list .o_cal_date{font-size:1.25em;font-weight:bold;padding:0.5em 0 0.5em 0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events{list-style-type:none;padding:0.5em 0 0 0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event{position:relative;left:30px;page-break-inside:avoid;clear:both;margin-bottom:1.5em;padding-right:30px}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_time{float:left;font-weight:bold;margin-right:1em}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_subject{font-weight:bold}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_subject p{margin:0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_location,body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_description,body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_freebusy{clear:both}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_freebusy{font-style:italic}body.o_cal_print .o_cal_class{position:absolute;left:-30px;width:20px}body.o_cal_print #o_cal_config legend{font-size:1.25em}body.o_cal_print #o_cal_config .o_cal_config_calendar{margin:0;padding:0}body.o_cal_print #o_cal_config .o_cal_config_calendar{position:relative;left:30px;float:none;padding-right:30px}.o_page_content_editor{padding-bottom:2em}.o_page_content_editor .o_toolbar{border:none}.o_page_content_editor .o_page_part,.gu-mirror{border:2px solid transparent}.o_page_content_editor .o_page_part:hover,.gu-mirror:hover{border:2px dotted #78acd9}.o_page_fragment_edit{position:relative;display:grid}.o_page_fragment_edit .o_page_tools_above{height:25px;width:100%;background:#78acd9;position:absolute;z-index:3;left:0;top:-25px;box-shadow:3px -8px 10px 0px rgba(0,0,0,0.2)}.o_page_fragment_edit .o_page_tools_above .o_page_add_above{position:absolute;left:0;right:0;margin-left:auto;margin-right:auto;width:26px;top:-19px;height:19px;background-color:#78acd9;border-radius:10px 10px 0 0}.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_icon,.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_progress_failed .inset:after,.o_progress_failed .o_page_fragment_edit .o_page_tools_above .o_page_add_above .inset:after,.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_progress_passed .inset:after,.o_progress_passed .o_page_fragment_edit .o_page_tools_above .o_page_add_above .inset:after{color:#fff;background-color:#78acd9}.o_page_fragment_edit .o_page_tools_above .o_sel_add_element_above{display:inline-block;padding:3px 5px 0 7px}.o_page_fragment_edit .o_page_tools_above .o_page_others_above{padding-right:25px;line-height:25px;vertical-align:middle}.o_page_fragment_edit .o_page_tools_above .o_page_others_above .o_page_type{display:none}.o_page_fragment_edit .o_page_tools_above .o_page_others_above a{float:right;color:#fff;padding-right:1em}.o_page_fragment_edit .o_page_tools_above .o_page_others_above a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_tools{position:absolute;z-index:4;top:0;right:0;width:25px;height:100%;background:#78acd9}.o_page_fragment_edit .o_page_tools_dd:before{content:' ';width:25px;height:100%;position:absolute;left:0;top:0;border:3px #78acd9 solid;border-bottom:28px #78acd9 solid;background-image:-webkit-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:-moz-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:-ms-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);-webkit-background-size:3px 3px;-moz-background-size:3px 3px;background-size:3px 3px}.o_page_fragment_edit .o_page_tools_dd a{position:absolute;display:inline-block;width:25px;height:25px;line-height:25px;text-align:center;vertical-align:middle;background:#78acd9;color:#fff}.o_page_fragment_edit .o_page_tools_dd a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_tools_dd a.o_disabled{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_tools_dd a.o_disabled:hover{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_tools_dd a.o_sel_move_up_element{z-index:4;top:-25px}.o_page_fragment_edit .o_page_tools_dd a.o_sel_move_down_element{bottom:0}.o_page_fragment_edit .o_page_part.o_page_edit{padding-right:23px;border:2px solid #78acd9;box-shadow:5px 5px 10px 0px rgba(0,0,0,0.2);background-color:white}.o_page_fragment_edit .o_page_part.o_page_edit:hover{border:2px solid #78acd9}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar{position:absolute;z-index:5;left:5px;top:-25px;display:inline-block;height:25px;line-height:25px;vertical-align:middle}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a{color:#fff}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a.o_disabled{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a.o_disabled:hover{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_title .o_page_edit_toolbar li{font-weight:bold}.o_page_fragment_edit .o_page_part.o_page_edit .o_richtext_mce textarea{border:0}.o_page_fragment_edit .o_page_add_below{position:absolute;z-index:3;position:absolute;z-index:3;left:0;right:0;margin-left:auto;margin-right:auto;width:26px;bottom:-20px;height:22px;background-color:#78acd9;border-radius:0 0 10px 10px}.o_page_fragment_edit .o_page_add_below .o_icon,.o_page_fragment_edit .o_page_add_below .o_progress_failed .inset:after,.o_progress_failed .o_page_fragment_edit .o_page_add_below .inset:after,.o_page_fragment_edit .o_page_add_below .o_progress_passed .inset:after,.o_progress_passed .o_page_fragment_edit .o_page_add_below .inset:after{color:#fff;background-color:#78acd9}.o_page_fragment_edit .o_page_add_below .o_sel_add_element_below{display:inline-block;padding:0 5px 5px 5px;margin:0px 0px 0px 2px}.o_page_fragment_edit.gu-mirror .o_page_add_below,.o_page_fragment_edit.gu-mirror .o_page_add_above,.o_page_fragment_edit.gu-transit .o_page_add_below,.o_page_fragment_edit.gu-transit .o_page_add_above{display:none}.o_page_container_slot.col-md-3 .o_page_others_above a span,.o_page_container_slot.col-md-4 .o_page_others_above a span{display:none}.o_page_container_slot.col-md-3 .o_page_edit_toolbar ul>li,.o_page_container_slot.col-md-4 .o_page_edit_toolbar ul>li{padding-right:0}div.o_page_content_editor .gu-mirror,.o_page_content_editor .gu-transit{box-shadow:none}.o_page_container{box-sizing:border-box;padding:10px}.o_page_container{background-color:transparent}.o_page_container .o_page_container{background-color:transparent}.o_page_container .o_page_container .o_page_container{background-color:transparent}.o_page_container_slot{box-sizing:border-box;margin:0 -1px -1px 0;padding:10px}.o_page_container .o_page_container_slot{border:2px dotted #eee}.o_page_container:hover .o_page_container_slot{border:2px dotted #ef00ef}.o_page_add_in_container_grp{margin-bottom:0}.o_page_part.o_page_part_view,.o_page_fragment_edit{touch-action:none;user-select:none;-webkit-touch-callout:none;-moz-user-select:none;-ms-user-select:none}.o_page_part.oo-accepted,.o_page_part.oo-accepted-top,.o_page_content_editor.o_page_drop.oo-accepted,.o_page_content_editor.o_page_drop.oo-accepted-top{border:2px dotted #e80c96}.o_page_part.o_page_drop.oo-accepted:after,.o_page_container_slot.o_page_drop.oo-accepted .o_page_container_slot-inner:after{display:block;height:25px;margin:10px;border:2px dotted #a0a0b0;border-radius:5px;content:''}.o_page_part.o_page_drop.oo-accepted-top:before,.o_page_container_slot.o_page_drop.oo-accepted-top .o_page_container_slot-inner:before{display:block;height:25px;margin:10px 10px 10px 10px;border:2px dotted #a0a0b0;border-radius:5px;content:''}.o_page_part.oo-dragging{opacity:0.4;background-color:white;border:2px dotted #e80c96;box-shadow:0px 0px 20px #aaa}.gu-transit{border:2px dotted #e80c96;opacity:0.4;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";filter:alpha(opacity=40)}.gu-mirror{border:2px dotted #78acd9;opacity:0.8;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";filter:alpha(opacity=80)}.o_page_add_callout a span{display:none}.o_page_add_callout ul.list-inline{margin-bottom:0}.o_page_table_edition .o_table_title,.o_page_table_edition .o_table_caption{padding:5px}.o_page_with_side_options_wrapper{display:flex;align-items:stretch;flex-direction:row}.o_page_side_options_target{background-color:#f9f9f9;flex-grow:4}.o_page_side_options{flex-grow:0;background-color:#78acd9;border-left:1px solid #b9b9b9;border-bottom:1px solid #b9b9b9;padding:5px;z-index:2}@media (max-width: 767px){.o_page_with_side_options_wrapper{flex-direction:column-reverse}}.o_page_content .o_image,.o_page_content .o_video,.o_page_content_editor .o_image,.o_page_content_editor .o_video{width:100%}.o_page_content .o_image img,.o_page_content .o_video img,.o_page_content_editor .o_image img,.o_page_content_editor .o_video img{border:1px #f8f8f8 solid;border-radius:10px}.o_page_content .o_image .o_artefact_metadata,.o_page_content .o_video .o_artefact_metadata,.o_page_content_editor .o_image .o_artefact_metadata,.o_page_content_editor .o_video .o_artefact_metadata{text-align:left}.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left{float:left}.o_page_content .o_image.o_image_align_left+.o_image_clear,.o_page_content .o_video.o_image_align_left+.o_image_clear,.o_page_content_editor .o_image.o_image_align_left+.o_image_clear,.o_page_content_editor .o_video.o_image_align_left+.o_image_clear{clear:both}.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right{float:right}.o_page_content .o_image.o_image_align_right+.o_image_clear,.o_page_content .o_video.o_image_align_right+.o_image_clear,.o_page_content_editor .o_image.o_image_align_right+.o_image_clear,.o_page_content_editor .o_video.o_image_align_right+.o_image_clear{clear:both}.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle{clear:both;margin-left:50%;text-align:center;transform:translate(-50%, 0%)}.o_page_content .o_image.o_image_align_leftfloat,.o_page_content .o_video.o_image_align_leftfloat,.o_page_content_editor .o_image.o_image_align_leftfloat,.o_page_content_editor .o_video.o_image_align_leftfloat{float:left;padding-right:10px;padding-bottom:10px}.o_page_content .o_image.o_image_align_rightfloat,.o_page_content .o_video.o_image_align_rightfloat,.o_page_content_editor .o_image.o_image_align_rightfloat,.o_page_content_editor .o_video.o_image_align_rightfloat{float:right;padding-left:10px;padding-bottom:10px}.o_page_content .o_image.o_image_size_style_small,.o_page_content .o_video.o_image_size_style_small,.o_page_content_editor .o_image.o_image_size_style_small,.o_page_content_editor .o_video.o_image_size_style_small{width:25%}.o_page_content .o_image.o_image_size_style_small img,.o_page_content .o_video.o_image_size_style_small img,.o_page_content_editor .o_image.o_image_size_style_small img,.o_page_content_editor .o_video.o_image_size_style_small img{width:100%}.o_page_content .o_image.o_image_size_style_medium,.o_page_content .o_video.o_image_size_style_medium,.o_page_content_editor .o_image.o_image_size_style_medium,.o_page_content_editor .o_video.o_image_size_style_medium{width:40%}.o_page_content .o_image.o_image_size_style_medium img,.o_page_content .o_video.o_image_size_style_medium img,.o_page_content_editor .o_image.o_image_size_style_medium img,.o_page_content_editor .o_video.o_image_size_style_medium img{width:100%}.o_page_content .o_image.o_image_size_style_large,.o_page_content .o_video.o_image_size_style_large,.o_page_content_editor .o_image.o_image_size_style_large,.o_page_content_editor .o_video.o_image_size_style_large{width:60%}.o_page_content .o_image.o_image_size_style_large img,.o_page_content .o_video.o_image_size_style_large img,.o_page_content_editor .o_image.o_image_size_style_large img,.o_page_content_editor .o_video.o_image_size_style_large img{width:100%}.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill{width:100%;float:none !important;display:block}.o_page_content .o_image.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content .o_video.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content_editor .o_image.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content_editor .o_video.o_image_size_style_fill .o_figure_caption_bottom{display:block}.o_page_content .o_image.o_image_size_style_fill img,.o_page_content .o_video.o_image_size_style_fill img,.o_page_content_editor .o_image.o_image_size_style_fill img,.o_page_content_editor .o_video.o_image_size_style_fill img{width:100%;display:block}.o_page_content .o_image img.o_image_classic,.o_page_content .o_video img.o_image_classic,.o_page_content_editor .o_image img.o_image_classic,.o_page_content_editor .o_video img.o_image_classic{padding:0;border:0;border-radius:0}.o_page_content .o_image img.o_image_border,.o_page_content .o_video img.o_image_border,.o_page_content_editor .o_image img.o_image_border,.o_page_content_editor .o_video img.o_image_border{padding:3px;border:solid 1px #CCC}.o_page_content .o_image img.o_image_shadow,.o_page_content .o_video img.o_image_shadow,.o_page_content_editor .o_image img.o_image_shadow,.o_page_content_editor .o_video img.o_image_shadow{padding:0;border:0;-moz-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);-webkit-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19)}.o_page_content .o_image img.o_image_frame,.o_page_content .o_video img.o_image_frame,.o_page_content_editor .o_image img.o_image_frame,.o_page_content_editor .o_video img.o_image_frame{padding:0;border:0;border-radius:0;-moz-box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);-webkit-box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);margin:15px}.o_page_content .o_image img.o_image_polaroid,.o_page_content .o_video img.o_image_polaroid,.o_page_content_editor .o_image img.o_image_polaroid,.o_page_content_editor .o_video img.o_image_polaroid{padding:0;border-radius:0;border:1px solid #dcdcdc;background:#fff;padding:10px 10px 45px 10px;-webkit-box-shadow:3px 3px 3px rgba(0,0,0,0.2);-moz-box-shadow:3px 3px 3px rgba(0,0,0,0.2);box-shadow:3px 3px 3px rgba(0,0,0,0.2)}.o_page_content .o_image img.o_image_round,.o_page_content .o_video img.o_image_round,.o_page_content_editor .o_image img.o_image_round,.o_page_content_editor .o_video img.o_image_round{padding:3px;border:solid 1px #CCC;border-radius:50%}.o_page_content .o_image .o_image_title_dark,.o_page_content .o_video .o_image_title_dark,.o_page_content_editor .o_image .o_image_title_dark,.o_page_content_editor .o_video .o_image_title_dark{color:#000}.o_page_content .o_image .o_image_title_bright,.o_page_content .o_video .o_image_title_bright,.o_page_content_editor .o_image .o_image_title_bright,.o_page_content_editor .o_video .o_image_title_bright{color:#f9f9f9}.o_page_content .o_image .o_image_title,.o_page_content .o_video .o_image_title,.o_page_content_editor .o_image .o_image_title,.o_page_content_editor .o_video .o_image_title{position:relative}.o_page_content .o_image .o_image_title .o_image_title_top,.o_page_content .o_image .o_image_title .o_image_title_centered,.o_page_content .o_image .o_image_title .o_image_title_bottom,.o_page_content .o_video .o_image_title .o_image_title_top,.o_page_content .o_video .o_image_title .o_image_title_centered,.o_page_content .o_video .o_image_title .o_image_title_bottom,.o_page_content_editor .o_image .o_image_title .o_image_title_top,.o_page_content_editor .o_image .o_image_title .o_image_title_centered,.o_page_content_editor .o_image .o_image_title .o_image_title_bottom,.o_page_content_editor .o_video .o_image_title .o_image_title_top,.o_page_content_editor .o_video .o_image_title .o_image_title_centered,.o_page_content_editor .o_video .o_image_title .o_image_title_bottom{position:absolute;left:50%;margin-right:-50%;transform:translate(-50%, -50%)}.o_page_content .o_image .o_image_title .o_image_title_top,.o_page_content .o_video .o_image_title .o_image_title_top,.o_page_content_editor .o_image .o_image_title .o_image_title_top,.o_page_content_editor .o_video .o_image_title .o_image_title_top{top:10%}.o_page_content .o_image .o_image_title .o_image_title_centered,.o_page_content .o_video .o_image_title .o_image_title_centered,.o_page_content_editor .o_image .o_image_title .o_image_title_centered,.o_page_content_editor .o_video .o_image_title .o_image_title_centered{top:50%}.o_page_content .o_image .o_image_title .o_image_title_bottom,.o_page_content .o_video .o_image_title .o_image_title_bottom,.o_page_content_editor .o_image .o_image_title .o_image_title_bottom,.o_page_content_editor .o_video .o_image_title .o_image_title_bottom{bottom:10%}.o_page_content .o_image.o_image_size_style_none .o_image_title_top,.o_page_content .o_image.o_image_size_style_none .o_image_title_centered,.o_page_content .o_image.o_image_size_style_none .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_none .o_image_title_top,.o_page_content .o_video.o_image_size_style_none .o_image_title_centered,.o_page_content .o_video.o_image_size_style_none .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_bottom{font-size:24px}.o_page_content .o_image.o_image_size_style_small .o_image_title_top,.o_page_content .o_image.o_image_size_style_small .o_image_title_centered,.o_page_content .o_image.o_image_size_style_small .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_small .o_image_title_top,.o_page_content .o_video.o_image_size_style_small .o_image_title_centered,.o_page_content .o_video.o_image_size_style_small .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_bottom{font-size:18px}.o_page_content .o_image.o_image_size_style_medium .o_image_title_top,.o_page_content .o_image.o_image_size_style_medium .o_image_title_centered,.o_page_content .o_image.o_image_size_style_medium .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_medium .o_image_title_top,.o_page_content .o_video.o_image_size_style_medium .o_image_title_centered,.o_page_content .o_video.o_image_size_style_medium .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_bottom{font-size:32px}.o_page_content .o_image.o_image_size_style_large .o_image_title_top,.o_page_content .o_image.o_image_size_style_large .o_image_title_centered,.o_page_content .o_image.o_image_size_style_large .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_large .o_image_title_top,.o_page_content .o_video.o_image_size_style_large .o_image_title_centered,.o_page_content .o_video.o_image_size_style_large .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_bottom{font-size:40px}.o_page_content .o_image.o_image_size_style_fill .o_image_title_top,.o_page_content .o_image.o_image_size_style_fill .o_image_title_centered,.o_page_content .o_image.o_image_size_style_fill .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_fill .o_image_title_top,.o_page_content .o_video.o_image_size_style_fill .o_image_title_centered,.o_page_content .o_video.o_image_size_style_fill .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_bottom{font-size:56px}.o_page_add_contents{clear:both;margin-top:30px}.o_ce_html_raw.o_html_col2,.o_ce_html_paragraph.o_html_col2{column-count:2;column-gap:1em}.o_ce_html_raw.o_html_col3,.o_ce_html_paragraph.o_html_col3{column-count:3;column-gap:1em}.o_ce_html_raw.o_html_col4,.o_ce_html_paragraph.o_html_col4{column-count:4;column-gap:1em}table.o_ce_table caption{caption-side:bottom}.o_ce_add_main_btns{margin-top:0}.o_ce_add{border:none;margin-bottom:0px}.o_ce_add .o_ce_tools{display:flex;flex-direction:row;flex-wrap:wrap;width:100%}.o_ce_add .o_ce_tools .o_ce_tool{padding:0px;margin:0px;width:33%}.o_ce_add .o_ce_tools .o_ce_tool a{padding:6px 3px;margin:0px;display:block;width:100%;height:100%}.o_ce_add .o_ce_tools .o_ce_tool a:hover{padding:5px 2px;border:1px solid #e7e7e7;border-radius:4px}.o_ce_add_list .o_ce_add_list_item{border-style:none;padding:0px;margin:0px -15px}.o_ce_add_list .o_ce_add_list_item a{padding:5px 25px;margin:0px;display:block;width:100%;height:100%}.o_ce_add_list .o_ce_add_list_item a:hover{text-decoration:none;background-color:#f5f5f5}.o_visual{position:absolute;top:0;left:0;overflow:hidden;height:120px;width:180px;vertical-align:middle}@media (min-width: 768px) and (max-width: 991px){.o_visual{height:80px;width:120px}}@media (max-width: 767px){.o_visual{height:50px;width:75px}}.o_visual img{width:100%;height:auto}.o_visual .o_visual_not_available{width:100%;height:100%;background-image:url("../light/images/no_preview.png");background-repeat:no-repeat;background-position:50% 50%;background-size:contain}.o_coursetable.o_rendertype_custom .o_table_row{position:relative;border:1px solid #ccc;border-radius:4px;background:#fcfcfc;margin-bottom:10px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual{box-sizing:content-box;border-top-left-radius:4px;border-bottom-left-radius:4px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual .o_visual_not_available{background-color:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_access{position:absolute;top:0;right:0;height:120px;width:180px;overflow:hidden;border-left:1px solid #ccc;padding-top:0.25em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_completion{text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{padding:0 1em;height:20px;line-height:20px;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{position:relative;left:2px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score .o_label{color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social{position:absolute;width:100%;bottom:32px;height:20px;padding-left:1em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_title,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating o_rating_legend,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_explanation{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings{padding:0 0 0 1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label{margin-bottom:0.8em;font-weight:bold}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{right:0;border-bottom-right-radius:4px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start{color:#fff;background-color:#337ab7;border-color:#2e6da4}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#337ab7;border-color:#2e6da4}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#337ab7;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{color:#fff;background-color:#f0ad4e;border-color:#eea236}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{color:#fff;background-color:#ec971f;border-color:#d58512}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active{background-color:#f0ad4e;border-color:#eea236}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book .badge{color:#f0ad4e;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#5cb85c;border-color:#4cae4c}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#5cb85c;border-color:#4cae4c}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#5cb85c;background-color:#fff}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{height:80px;width:120px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_comments,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_label{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{width:60px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:60px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:120px;margin:0 180px 0 180px;position:relative;padding:1em 0.5em 0.25em 1em;background:#fcfcfc;border-left:1px solid #ccc;overflow:hidden}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{margin:0;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{display:block;color:#337ab7}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover{color:#286090}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author{margin-top:0.5em;line-height:normal;font-size:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d;background:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle{position:absolute;top:5px;right:40px;z-index:2px;background:#fcfcfc;padding:0 3px 3px 3px;border-radius:0px 0px 3px 3px;font-size:90%;line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active{color:#3c763d}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active:hover{color:#2b542c}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{margin-top:0.5em;background:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark{position:absolute;top:-1px;right:15px}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:80px;margin:0 120px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:50px;margin:0 0 0 75px;padding:0 0 0 1em}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{line-height:50px}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{border-right:37px solid transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_go_xs{position:absolute;top:0;right:0;padding:0 1em;height:50px;width:37px;line-height:50px;color:#fff;background-color:#337ab7;border-top-right-radius:4px;border-bottom-right-radius:4px}.o_coursetable.o_rendertype_classic .o_rating_explanation{display:none}.o_coursetable.o_rendertype_classic .o_start,.o_coursetable.o_rendertype_classic .o_book{white-space:nowrap}.o_coursetable.o_rendertype_classic .o_repoentry_type{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac ul{display:inline-block}.o_catalog .o_level{position:relative;margin-bottom:10px;padding:0;border-top:1px solid #ccc;border-bottom:1px solid #ccc}.o_catalog .o_level .o_visual{height:180px}.o_catalog .o_level .o_meta{position:relative;min-height:180px;height:180px;overflow:hidden;margin:0 0 0 180px;padding:1em 0.5em 0.5em 2em}.o_catalog .o_level .o_meta .o_title{margin:0}.o_catalog .o_level .o_meta .o_title a{display:block;color:#337ab7}.o_catalog .o_level .o_meta .o_title a:hover{color:#286090}.o_catalog .o_level .o_meta .o_desc{padding:1em 0 0.5em 0}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_level .o_visual{height:120px}.o_catalog .o_level .o_meta{min-height:120px;height:120px;margin:0 0 0 120px}}@media (max-width: 767px){.o_catalog .o_level .o_visual{height:75px}.o_catalog .o_level .o_meta{min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em}.o_catalog .o_level .o_meta .o_title{line-height:75px}.o_catalog .o_level .o_meta .o_desc{display:none}}.o_catalog .o_sublevels_list .o_sublevel{position:relative;border:1px solid #ccc;margin-bottom:10px}.o_catalog .o_sublevels_list .o_sublevel .o_visual{height:75px;width:75px}.o_catalog .o_sublevels_list .o_sublevel .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_catalog .o_sublevels_list .o_sublevel .o_title{margin:0}.o_catalog .o_sublevels_list .o_sublevel .o_meta{border-left:1px solid #ccc;min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em;overflow:hidden}.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_title{line-height:75px}.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_desc{display:none}.o_catalog .o_sublevels_list .o_sublevel .o_meta h4.o_title>a,.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_cal .fc-header-title h2.o_title>a,.o_cal .fc-header-title .o_catalog .o_sublevels_list .o_sublevel .o_meta h2.o_title>a{font-family:inherit;font-weight:inherit}.o_catalog .o_sublevels_list .o_sublevel .o_meta h4.o_title>a>i,.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_cal .fc-header-title h2.o_title>a>i,.o_cal .fc-header-title .o_catalog .o_sublevels_list .o_sublevel .o_meta h2.o_title>a>i{display:none}.o_catalog .o_sublevels_list .o_sublevel.o_fill_sublevels{border:1px solid transparent}.o_catalog .o_sublevels_list .o_sublevel.o_fill_sublevels .o_meta{border-left:1px solid transparent}.o_catalog .o_sublevels{position:relative;margin-bottom:20px}.o_catalog .o_sublevels:before,.o_catalog .o_sublevels:after{content:" ";display:table}.o_catalog .o_sublevels:after{clear:both}.o_catalog .o_sublevels .o_sublevel{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_catalog .o_sublevels .o_sublevel:last-child{margin-right:0}.o_catalog .o_sublevels .o_sublevel .o_visual{border:1px solid #ccc;position:relative;height:180px}.o_catalog .o_sublevels .o_sublevel .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_catalog .o_sublevels .o_sublevel .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #ccc;border-top:0;background-color:rgba(255,255,255,0.8)}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a{display:block;color:#337ab7;font-family:inherit;font-weight:inherit}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover{color:#286090}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a>i{display:none}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 10px 10px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (max-width: 767px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 1px 1px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px;width:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (min-width: 768px){.o_catalog .o_sublevels_list,.o_catalog .o_sublevels_compact{-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2;columns:2}}.o_repo_details{position:relative}.o_repo_details .o_lead{margin-bottom:10px}.o_repo_details .o_lead .o_author{margin-top:0.5em;margin-bottom:1em;font-size:120%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d}.o_repo_details .o_lead .o_media{float:right;margin-left:2em;margin-bottom:2em}.o_repo_details .o_lead .o_media.o_desc_empty{float:none;margin-left:0;margin-bottom:0}.o_repo_details .o_lead h1{font-size:37px}.o_repo_details .o_lead h1 i{display:none}.o_repo_details .o_overview i{margin-right:0.5em}.o_repo_details .o_overview div{margin-bottom:0.25em}.o_repo_details .o_start_wrapper{clear:both;margin:2em 0 -10px 0;text-align:right}.o_repo_details .o_start_wrapper .o_start_inner{display:inline-block}.o_repo_details .o_start,.o_repo_details .o_book{max-width:400px;display:inline-block}.o_repo_details .o_social:before,.o_repo_details .o_social:after{content:" ";display:table}.o_repo_details .o_social:after{clear:both}.o_repo_details .o_social .o_rating_wrapper{float:left}.o_repo_details .o_social .o_comments{margin-left:1em}@media (max-width: 767px){.o_repo_details .o_lead p{font-size:16px}.o_repo_details .o_lead .o_media{margin-left:0;float:none;text-align:center}.o_repo_details .o_start_wrapper{text-align:center}.o_repo_details .o_start_wrapper .o_start_inner{display:block}.o_repo_details .o_start,.o_repo_details .o_book{max-width:100%;display:block}}@media (max-width: 613px){.o_repo_details .o_subcolumn{width:100%}}.o_meta .o_closed{padding:2px 5px;margin:5px 0}.o_overview .o_closed{padding:12px 15px;margin:15px 0}.o_ac_configuration span.o_ac_infos{font-weight:normal;color:grey}.o_ac_configuration div.o_ac_method{background-color:#efefef;padding:5px;border-radius:3px}.o_ac_configuration div.o_ac_methods.form-group{padding-bottom:0;margin-bottom:0}.o_repo_with_explanation{padding-bottom:0;margin-bottom:0}.o_repo_explanation{color:#f0ad4e}tr.o_entry_closed,tr.o_entry_closed td,tr.o_entry_closed td span,tr.o_entry_unpublished,tr.o_entry_unpublished td,tr.o_entry_unpublished td span{text-decoration:line-through}a.o_repo_tools_status{cursor:pointer;margin:0 2px 2px 2px;text-align:left}.o_labeled.o_repo_status_preparation,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_preparation{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_labeled.o_repo_status_review,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_review{background-color:#FCCA46;border-color:#FCCA46;color:#fff}.o_labeled.o_repo_status_coachpublished,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_coachpublished{background-color:#1DC63F;border-color:#1DC63F;color:#fff}.o_labeled.o_repo_status_published,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_published{background-color:#14892c;border-color:#14892c;color:#fff}.o_labeled.o_repo_status_closed,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_closed{background-color:#99583D;border-color:#99583D;color:#fff}.o_labeled.o_repo_status_trash,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_trash{background-color:#5A5958;border-color:#5A5958;color:#fff}.o_labeled.o_repo_status_deleted,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_deleted{background-color:#888;border-color:#888;color:#fff}.o_labeled.o_repo_role,.o_toolbar .o_tools_container a.o_labeled.o_repo_role{background-color:#777;border-color:#777;color:#fff}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_preparation{background-color:#384e64}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_review{background-color:#fbbc14}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_coachpublished{background-color:#169a31}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_published{background-color:#0e5c1e}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_closed{background-color:#75432e}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_trash{background-color:#40403f}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_deleted{background-color:#6f6f6f}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_role{background-color:#919191;border-color:#919191}.o_labeled_light.o_repo_status_preparation,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_preparation{border-color:#4a6785;color:#4a6785}.o_labeled_light.o_repo_status_review,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_review{border-color:#FCCA46;color:#FCCA46}.o_labeled_light.o_repo_status_coachpublished,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_coachpublished{border-color:#1DC63F;color:#1DC63F}.o_labeled_light.o_repo_status_published,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_published{border-color:#14892c;color:#14892c}.o_labeled_light.o_repo_status_closed,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_closed{border-color:#99583D;color:#99583D}.o_labeled_light.o_repo_status_trash,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_trash{border-color:#5A5958;color:#5A5958}.o_labeled_light.o_repo_status_deleted,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_deleted{border-color:#888;color:#888}.badge.o_midpub{background-color:#3c763d}.badge.o_midwarn{background-color:#8a6d3b}.badge.o_midlock{background-color:#31708f}.badge.o_miderr{background-color:#a94442}.badge.o_middel{background-color:#777}.o_course_editor_legend .badge{font-size:80%}.o_course_editor_legend .badge:before{content:none}.o_course_edit_overview_table tr.o_deleted,.o_course_edit_overview_table tr.o_deleted td,.o_course_edit_overview_table tr.o_deleted td span,.o_course_edit_overview_table tr.o_deleted td a{color:#aaa}.o_lp_tree.o_tree{border:1px solid #e7e7e7}.o_lp_tree.o_tree ul li div{border-bottom:none}.o_lp_tree.o_tree .o_tree_link:last-child:hover,.o_lp_tree.o_tree .o_tree_link:last-child:focus{background-color:transparent}.o_lp_tree.o_tree li div a.o_tree_oc_l0{left:8px}.o_lp_tree.o_tree li div span.o_tree_l0{padding:10px 2px 10px 2px;margin-left:22px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l1{left:23px}.o_lp_tree.o_tree li div span.o_tree_l1{padding:10px 2px 10px 2px;margin-left:37px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l2{left:38px}.o_lp_tree.o_tree li div span.o_tree_l2{padding:10px 2px 10px 2px;margin-left:52px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l3{left:53px}.o_lp_tree.o_tree li div span.o_tree_l3{padding:10px 2px 10px 2px;margin-left:67px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l4{left:68px}.o_lp_tree.o_tree li div span.o_tree_l4{padding:10px 2px 10px 2px;margin-left:82px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l5{left:83px}.o_lp_tree.o_tree li div span.o_tree_l5{padding:10px 2px 10px 2px;margin-left:97px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l6{left:98px}.o_lp_tree.o_tree li div span.o_tree_l6{padding:10px 2px 10px 2px;margin-left:112px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l7{left:113px}.o_lp_tree.o_tree li div span.o_tree_l7{padding:10px 2px 10px 2px;margin-left:127px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l8{left:128px}.o_lp_tree.o_tree li div span.o_tree_l8{padding:10px 2px 10px 2px;margin-left:142px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l9{left:143px}.o_lp_tree.o_tree li div span.o_tree_l9{padding:10px 2px 10px 2px;margin-left:157px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l10{left:158px}.o_lp_tree.o_tree li div span.o_tree_l10{padding:10px 2px 10px 2px;margin-left:172px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l11{left:173px}.o_lp_tree.o_tree li div span.o_tree_l11{padding:10px 2px 10px 2px;margin-left:187px;z-index:9}.o_lp_tree.o_tree .o_tree_link>a>i.o_icon,.o_lp_tree.o_tree .o_progress_failed .o_tree_link>a>i.inset:after,.o_progress_failed .o_lp_tree.o_tree .o_tree_link>a>i.inset:after,.o_lp_tree.o_tree .o_progress_passed .o_tree_link>a>i.inset:after,.o_progress_passed .o_lp_tree.o_tree .o_tree_link>a>i.inset:after{display:none}.o_lp_tree.o_tree li.children_visible{background:rgba(0,0,0,0.025)}.o_lp_tree.o_tree li{position:relative}.o_lp_tree.o_tree li:before{content:' ';position:absolute;top:25px;left:8px;height:29px;width:2px}.o_lp_tree.o_tree li:after{position:absolute;top:13px;left:3px;height:12px;width:12px;display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_lp_tree.o_tree li:before{border-left:2px solid #888}.o_lp_tree.o_tree li:after{content:"ï„Œ";color:#888}.o_lp_tree.o_tree li.o_lp_not_accessible:before{border-left:2px dotted #919191}.o_lp_tree.o_tree li.o_lp_not_accessible:after{content:"ïž";color:#919191}.o_lp_tree.o_tree li.o_lp_ready:before{border-left:2px dotted #919191}.o_lp_tree.o_tree li.o_lp_ready:after{content:"ï„Œ";color:#FCCA46}.o_lp_tree.o_tree li.o_lp_in_progress:before{border-left:2px solid #FCCA46}.o_lp_tree.o_tree li.o_lp_in_progress:after{content:"ï€";color:#FCCA46}.o_lp_tree.o_tree li.o_lp_done:before{border-left:2px solid #3c763d}.o_lp_tree.o_tree li.o_lp_done:after{content:"ï˜";color:#3c763d}.o_lp_tree.o_tree li.o_last_node:before{border:none}.o_lp_tree.o_tree li.o_lp_not_in_sequence:not(:last-child):not(.o_last_node):before,.o_lp_tree.o_tree li.o_lp_contains_no_sequence.children_visible:not(.o_last_node):before,.o_lp_tree.o_tree li.o_lp_contains_no_sequence.children_visible:not(.o_last_node) li.o_lp_not_in_sequence:not(.o_last_node):before{border-left:2px solid #888}.o_lp_list i.o_status.o_lp_not_accessible::before{color:#919191;content:"ïž"}.o_lp_list i.o_status.o_lp_ready::before{color:#919191;content:"ï„Œ"}.o_lp_list i.o_status.o_lp_in_progress::before{color:#FCCA46;content:"ï€"}.o_lp_list i.o_status.o_lp_done::before{color:#3c763d;content:"ï˜"}.o_lp_identity .o_user_infos{margin-top:20px}.o_course_progress{position:absolute;left:0;width:100%}.o_course_progress .progress{height:3px;line-height:3px;-webkit-box-shadow:none;box-shadow:none;border-top-left-radius:0;border-top-right-radius:0}.o_course_progress{top:-37px}@media (max-width: 991px){.o_course_progress{top:-37px}}@media (max-width: 767px){.o_course_progress{top:-37px}}.o_with_toolbar .o_course_progress{top:23px}@media (max-width: 991px){.o_with_toolbar .o_course_progress{top:17px}}@media (max-width: 767px){.o_with_toolbar .o_course_progress{top:5px}}.o_with_breadcrumb .o_course_progress{top:-2px}@media (max-width: 991px){.o_with_breadcrumb .o_course_progress{top:-2px}}@media (max-width: 767px){.o_with_breadcrumb .o_course_progress{top:-2px}}.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:49px}@media (max-width: 991px){.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:44px}}@media (max-width: 767px){.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:32px}}.gugs>.o_course_progress{top:10px}.o_passed{color:#3c763d;font-weight:bold}.o_passed a:hover{color:#2b542c}.o_passed th{color:#333}.o_failed{color:#a94442;font-weight:bold}.o_failed a:hover{color:#66512c}.o_failed th{color:#333}.o_unknown{color:#8a6d3b;font-weight:bold}.o_unknown a:hover{color:#66512c}.o_unknown th{color:#333}.o_noinfo{color:#777}.o_course_run .o_toc .o_entry .o_shorttitle{border-bottom:1px solid #777}.o_course_run .o_toc .o_entry .o_displaytitle{margin-top:5px;color:#777}.o_course_run .o_toc .o_entry .o_objectives{margin-top:10px;font-style:italic}.o_course_run .o_in_review{font-style:italic;position:relative}.o_course_run.o_titled_wrapper>h2 i{display:none}.o_course_run .o_cal_toptoolbar{margin-right:26px}.o_course_run .o_titled_wrapper .o_cal_toptoolbar{margin-right:0px}.o_tree.o_course_menu div.o_tree_l0>a:first-child{background-color:none}.o_st_peekview ul li{margin-bottom:0.5em}.o_cl_line{margin-bottom:10px;padding-bottom:5px}.o_cl_line.o_even{background-color:#f9f9f9}.o_ll_container h5{margin-bottom:5px}.o_ll_container h5 a.o_desc{color:#337ab7}.o_ll_container h5 a.o_desc small{display:none}.o_ll_container h5 a.o_desc:hover{color:#286090;text-decoration:none}.o_ll_container h5 a.o_desc:hover small{color:#5e5e5e;display:inline}.o_ll_container div.o_comment{color:#777}.o_course_pagination{position:absolute;top:-26px;right:15px;background-color:#f8f8f8;border:1px solid #e7e7e7;border-top:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px;padding:2px;display:flex;justify-content:flex-end}.o_course_pagination :not(:first-child){margin-left:5px}.o_course_pagination .o_previous a,.o_course_pagination .o_next a{width:50px}.o_course_pagination .o_confirm a.o_course_pagination_status_done{color:#3c763d}.o_course_pagination .btn-xs,.o_course_pagination .btn-group-xs>.btn{padding:0px 4px}.o_cmembers .o_cmember{margin:12px 0;display:table}.o_cmembers .o_cmember .o_portrait{padding-right:10px;display:table-cell;vertical-align:top;min-width:60px}.o_cmembers .o_cmember .o_portrait img{width:50px;height:50px}.o_cmembers .o_cmember .o_cmember_info_wrapper{display:table-cell;vertical-align:middle;color:#777}.o_cmembers .o_cmember .o_cmember_info_wrapper .o_mail{margin-left:6px}.o_cmembers .o_cmember .o_curriculum_displayname,.o_cmembers .o_cmember .o_curriculum_root_el_identifier,.o_cmembers .o_cmember .o_curriculum_root_el_displayname{font-size:12px}.o_cmembers .o_cmember a.o_mail{display:none}.o_cmembers .o_cmember:hover a.o_mail{display:inline}.o_cmembers_print{color:#000}.o_cmembers_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_cmembers_print #o_print_brand img{width:100%}.o_cmembers_print .o_portrait{width:100px;height:100px;position:relative}.o_cmembers_print .o_portrait img{border-radius:0px;max-width:100%;max-height:100%;width:auto;height:auto;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto}.o_cmembers_print .o_cmember{padding-left:0px;padding-right:15px;margin-bottom:20px}.o_cmembers_print .o_cmember .o_cmember_info_wrapper{word-wrap:break-word}.o_cmembers_print .o_cmember .o_prop.o_zipCode{float:left;padding-right:0.5em}.o_cmembers_print h1{font-size:18pt;color:#000}.o_cmembers_print h3{font-size:14pt;margin-top:5px;font-weight:normal;color:#000}.o_cmembers_print h4,.o_cmembers_print .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_cmembers_print h2{font-size:11pt;font-weight:strong;color:#000;padding-bottom:10px;border-bottom:1px solid #eee}.o_cmembers_print .o_cmember_info_wrapper{font-size:7pt;color:#000}.o_cmembers_print .o_cmember_info_wrapper strong{font-size:8pt}.tag.label.label-info{margin-right:3px}.input-group.o_tag_inputgroup .form-control{height:auto}div.o_correction_navigation .o_correction_navigation_back{float:left;line-height:32px}div.o_correction_navigation .o_correction_navigation_previous{position:absolute;right:50%;margin-right:102px}div.o_correction_navigation #o_cocurrent_item_SELBOX{width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:absolute;left:50%;margin-left:-100px}div.o_correction_navigation .o_correction_navigation_next{position:absolute;left:50%;margin-left:102px}@media (max-width: 767px){div.o_correction_navigation .o_correction_navigation_previous span,div.o_correction_navigation .o_correction_navigation_next span{display:none}}.o_ms_stack_panel .o_toolbar{margin-top:0px}.o_ms_bold{font-weight:bold}.o_ms_legend{padding:5px}.o_ms_legend li{display:block;font-size:90%}.o_ms_legend .ident{font-weight:bold}.o_browser_ie10 .o_paella_wrapper iframe,.o_browser_ie11 .o_paella_wrapper iframe{display:none}.o_browser_ie10 .o_paella_wrapper .o_paella_error,.o_browser_ie11 .o_paella_wrapper .o_paella_error{display:block}.o_paella_wrapper iframe{width:100%;height:400px}@media (max-width: 768px){.o_paella_wrapper iframe{height:300px}}.o_paella_wrapper .o_paella_error{display:none}.o_curriculum_el_listing tr.o_curriculum_element_inactive,.o_curriculum_el_listing tr.o_curriculum_element_inactive td,.o_curriculum_el_listing tr.o_curriculum_element_inactive td span,.o_curriculum_el_listing tr.o_curriculum_element_inactive td a{color:#777}.o_curriculum_el_listing tr.o_curriculum_element_unfiltered,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td span,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td a{color:#aaa}.o_curriculum_el_listing tr.o_curriculum_element_deleted,.o_curriculum_el_listing tr.o_curriculum_element_deleted td,.o_curriculum_el_listing tr.o_curriculum_element_deleted td span,.o_curriculum_el_listing tr.o_curriculum_element_deleted td a{color:#777;text-decoration:line-through}.o_curriculumtable tr.o_curriculum_element_l0 td:nth-thild(first){padding-left:0px}.o_curriculumtable tr.o_curriculum_element_l1 td:nth-thild(first){padding-left:15px}.o_curriculumtable tr.o_curriculum_element_l2 td:nth-thild(first){padding-left:30px}.o_curriculumtable tr.o_curriculum_element_l3 td:nth-thild(first){padding-left:45px}.o_curriculumtable tr.o_curriculum_element_l4 td:nth-thild(first){padding-left:60px}.o_curriculumtable tr.o_curriculum_element_l5 td:nth-thild(first){padding-left:75px}.o_curriculumtable tr.o_curriculum_element_l6 td:nth-thild(first){padding-left:90px}.o_curriculumtable tr.o_curriculum_element_l7 td:nth-thild(first){padding-left:105px}.o_curriculumtable tr.o_curriculum_element_l8 td:nth-thild(first){padding-left:120px}.o_curriculumtable tr.o_curriculum_element_l9 td:nth-thild(first){padding-left:135px}.o_curriculumtable tr.o_curriculum_element_l10 td:nth-thild(first){padding-left:150px}.o_curriculumtable tr.o_curriculum_element_l11 td:nth-thild(first){padding-left:165px}.o_curriculumtable tr.o_curriculum_element_inactive,.o_curriculumtable tr.o_curriculum_element_inactive td,.o_curriculumtable tr.o_curriculum_element_inactive td span{color:#777}.o_curriculumtable tr.o_curriculum_element_deleted,.o_curriculumtable tr.o_curriculum_element_deleted td,.o_curriculumtable tr.o_curriculum_element_deleted td span{color:#777;text-decoration:line-through}.o_curriculumtable.o_rendertype_custom .container-fluid{padding-left:0;padding-right:0}.o_curriculumtable.o_rendertype_custom .o_table_row{position:relative;vertical-align:top;margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row:before,.o_curriculumtable.o_rendertype_custom .o_table_row:after{content:" ";display:table}.o_curriculumtable.o_rendertype_custom .o_table_row:after{clear:both}.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{background:none;border:none;position:relative}.o_curriculumtable.o_rendertype_custom .o_table_row .o_ext_id{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_hierarchy_info{display:none;position:absolute;top:0;right:30px;font-size:70%;z-index:5;background:gold}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_title{margin-top:0;margin-bottom:0;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_title small{white-space:nowrap}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars{padding-left:6px;color:#777}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle.o_active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars.o_active{color:#3c763d}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle.o_active:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars.o_active:hover{color:#2b542c}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_desc{padding:6px 6px 16px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_empty{font-style:italic;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{position:relative;padding-left:132px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:50px;padding-left:87px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_visual{left:0;border:none;background-color:#fff;max-height:80px;max-width:120px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_author,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_location,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_lifecycle{color:#3c763d}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state{position:absolute;right:0;bottom:30px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_failed{font-weight:normal}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_state,.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_score{display:inline-block}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_state+.o_score:before{content:', '}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion{display:inline-block;min-width:89px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion .progress{height:14px;margin-bottom:-2px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion .progress-bar{font-size:10px;line-height:unset}.o_curriculumtable.o_rendertype_custom .o_table_row .o_bookmark{position:absolute;top:-1px;right:2px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access{position:absolute;bottom:0;right:0;overflow:hidden;width:180px;height:30px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start{right:0;color:#fff;background-color:#337ab7;border-color:#2e6da4}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#337ab7;border-color:#2e6da4}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#337ab7;background-color:#fff}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#5cb85c;border-color:#4cae4c}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#449d44;border-color:#398439}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#5cb85c;border-color:#4cae4c}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#5cb85c;background-color:#fff}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_author,.o_curriculumtable.o_rendertype_custom .o_table_row .o_bookmark,.o_curriculumtable.o_rendertype_custom .o_table_row .o_lifecycle,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_desc,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_desc,.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state,.o_curriculumtable.o_rendertype_custom .o_table_row .o_details{display:none}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_row_inner_wrapper{background:#f6f6f6;border:1px solid #eee}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_element_title{background:transparent;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_element_title{background:#ebebeb;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry{display:inline-block;width:50%;border-right:12px solid transparent;margin-top:0 !important}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry_title{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_row_inner_wrapper{background:#f6f6f6;border:1px solid #eee}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_element_title{background:transparent;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_element_title{background:#ebebeb;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_calendars{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{background:#f6f6f6;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{background:none;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_entry{min-height:50px}}@media print{.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state{position:relative;bottom:0}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access{display:none}}table.table.o_qti_item_kprim>thead>tr>th,table.table.o_qti_item_kprim>tbody>tr>td{border:none}td.o_qti_item_kprim_input,th.o_qti_item_kprim_input{text-align:center}td.o_qti_item_kprim_input .radio,th.o_qti_item_kprim_input .radio{display:inline}td.o_qti_item_kprim_text{width:80%}div.o_qti_menu_section,div.o_qti_menu_section_clickable,div.o_qti_menu_section_active{margin-top:10px}div.o_qti_menu_item a,div.o_qti_menu_section a{text-decoration:none}div.o_qti_menu_item{padding:.1em}div.o_qti_menu_item_active{padding:.1em;font-weight:bold}div.o_qti_item_itemfeedback{background-color:#ffffff;border-color:#000000}div.o_qti_item_choice_option_flow{display:inline-block;padding:.5em;border:1px solid transparent}.d3chart .bar_green{fill:#5cb85c}.d3chart .bar_red{fill:#d9534f}.d3chart .bar_grey{fill:lightgrey}.d3chart circle.bubble_green{fill:#5cb85c}div.o_qti_statistics ul{list-style-type:none;padding:0;margin:0;font-size:90%}div.o_qti_statistics ul strong{font-weight:normal}div.o_qti_statistics ul li{padding-left:48px;margin-left:0;margin-bottom:10px}div.o_qti_statistics ul li.o_qti_statistics-ncorrect:before{font-size:125%;content:'\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-correct:before{font-size:125%;content:'\2713\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kplus:before{font-size:125%;content:'\2713\00A0\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kminus:before{font-size:125%;content:'\2A2F\00A0\2713\00A0\00A0'}div.o_qti_statistics ul li img{vertical-align:top}div.o_qti_statistics table.o_qti_statistics_figures tr{float:left}div.o_qti_statistics table.o_qti_statistics_figures tr:nth-child(2n+1){clear:left;padding-right:20px}div.o_qti_statistics table.o_qti_statistics_figures td{width:200px;padding-left:0;vertical-align:bottom}div.o_qti_statistics table.o_qti_statistics_figures td+td{width:100px}div.o_qti_statistics .o_qti_statistics_answer{background:#F5F5F5;padding:1px 2px;width:90%}div.o_qti_statistics div.o_qti_statistics_legend{padding-top:10px;width:470px;border:1px solid #ddd;border-radius:4px}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_green{background-color:#9dd53a}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_red{background-color:#f85032}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_grey{background-color:lightgrey}div.o_qti_metadatas .panel-body{border-top:none}.o_qti_menu_item_attempts:after,.o_qti_menu_item_attempts_marked:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_qti_menu_item_attempts:after{content:"ï„"}.o_qti_menu_item_attempts_marked:after{content:"";color:#337ab7}.o_qti_print div.o_qti_statistics{width:680px}@media print{div.o_qti_statistics{width:680px}}ul.sessionControl{list-style:none;margin:1em;text-align:center}ul.sessionControl li{display:inline;padding:0.2em}.association{margin:20px 20px 20px 40px;background:transparent url("../light/images/association_bg.png") repeat-x center center}.o_associate_item{padding:5px;margin:0 15px 10px 0;border:2px solid #999}.o_associate_item.oo-selected{border:2px solid #337ab7}.o_associate_item.oo-choosed{border:none !important}.o_associate_item.oo-drag{border:2px solid #337ab7 !important}.association_box{border:3px dotted #999}.association_box.oo-filled{border:3px solid #999}.association_box{background-color:white}.prompt{font-weight:bold}.sketch{position:relative}#tmp_canvas{position:absolute;left:0px;right:0;bottom:0;top:0;cursor:crosshair}.sketch,.sketch>canvas{touch-action:none;user-drag:none;-webkit-user-drag:none;user-select:none;-moz-user-select:none;-webkit-user-drag:none;-webkit-user-select:none;-ms-user-select:none}#colors .black .o_icon:before{color:#000000}#colors .blue .o_icon:before{color:#0000FF}#colors .green .o_icon:before{color:#008000}#colors .yellow .o_icon:before{color:#FFFF00}#colors .red .o_icon:before{color:#FF0000}#colors .purple .o_icon:before{color:#800080}.o_gap_item{padding:5px;margin:5px;background-repeat:no-repeat;background-position:center center}.o_gap_item.oo-choosed{position:relative;left:auto;top:auto;padding:3px;margin:0}.o_gap_item.oo-selected{border:3px solid #337ab7}.o_item_container_help,.o_items_container_help{font-size:90%;font-style:italic;color:#777;padding:5px}.items_container{padding:15px}.items_container .o_item{float:left}#o_qti_hotspots_edit{min-height:100px;min-width:400px;background-repeat:no-repeat}#o_qti_hotspots_edit.o_qti_hotspot-standard .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-standard .o_draw_rectangle{background-color:rgba(255,255,255,0.5);border-color:#6E6E6E}#o_qti_hotspots_edit.o_qti_hotspot-standard .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-standard .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(45,0,255,0.5);border-color:#0000ff}#o_qti_hotspots_edit.o_qti_hotspot-light .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-light .o_draw_rectangle{background-color:rgba(221,221,221,0);border-color:#7E7E7E}#o_qti_hotspots_edit.o_qti_hotspot-light .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-light .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(51,122,183,0.05);border-color:#337ab7}#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_draw_rectangle{background-color:rgba(110,110,110,0.5);border-color:#3E3E3E}#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(222,222,222,0.2);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-green .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-green .o_draw_rectangle{background-color:rgba(142,142,142,0.25);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-green .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-green .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(134,195,81,0.5);border-color:#518b33}#o_qti_hotspots_edit.o_qti_hotspot-purple .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-purple .o_draw_rectangle{background-color:rgba(142,142,142,0.33);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-purple .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-purple .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(234,168,255,0.5);border-color:#ab47cb}div.hotspotInteraction{overflow-x:auto}img.o_hotspot_responsive[usemap]{max-width:100%;width:auto;height:auto}.form-inline.o_qti_gaptext_add_first_alternative,.o_qti_gaptext_add_first_alternative.o_navbar-form{padding:9px 0 3px 0}.form-inline.o_qti_gaptext_add_alternative,.o_qti_gaptext_add_alternative.o_navbar-form{margin-bottom:3px}.o_qti_gaptext_alternatives{background-color:#eee;color:#555;border:1px solid #eee;border-radius:4px;padding:2px 5px}span.o_qti_gaptext_score_alternative{padding-left:2em;color:#555}.o_qti_item_body .extendedTextInteraction{margin:15px 0}.o_qti_item_body .extendedTextInteraction textarea{resize:vertical !important;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_qti_item_body .extendedTextInteraction pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_qti_item_body .extendedTextInteraction .o_qti_essay_last_save{padding:2px 2px;font-style:italic;font-size:90%;text-align:right}.extendedTextInteraction div.form-control.textarea_disabled{white-space:pre-wrap;height:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#555 !important}#o_qti_run_title{margin:0 15px 0.5em 15px}#o_qti_run_title h3{margin:15px 0 0 0}#o_qti_run_infos{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:10px 0;margin:0 15px 1em 15px}#o_qti_run_infos .progress{background-color:#eee}#o_qti_run_infos #o_qti_scoreinfo .progress-bar{background-color:#337ab7}.progress-striped #o_qti_run_infos #o_qti_scoreinfo .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}#o_qti_run_infos #o_qti_questioninfo .progress-bar{background-color:#337ab7}.progress-striped #o_qti_run_infos #o_qti_questioninfo .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}#o_qti_run_infos #o_qti_run_scoreinfo,#o_qti_run_infos #o_qti_run_scoreprogress{white-space:nowrap}#o_main_wrapper #o_main_container #o_qti_run #o_main_left #o_main_left_toggle{top:50px}#o_qti_results_infos{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:10px 0;margin:0 0 1em 0}#o_qti_results_infos .progress{background-color:#eee}#o_qti_results_infos #o_qti_run_scoreinfo,#o_qti_results_infos #o_qti_run_scoreprogress{white-space:nowrap}#o_qti_assessment_test_timer{border:1px solid #e7e7e7;border-radius:4px;padding:10px;margin:0 15px 1em 15px}#o_qti_assessment_test_timer.o_10_minutes{background-color:#fcf8e3}#o_qti_assessment_test_timer.o_5_minutes{background-color:#f2dede}#o_qti_assessment_test_timer.o_panic{background-color:#ce8383}#o_qti_assessment_test_timer.o_15_seconds{background-color:#fcf8e3}#o_qti_assessment_test_timer.o_panic{background-color:#f2dede}#o_qti_assessment_test_timer .o_qti_times_up{padding-left:2em;font-weight:bold}#o_qti_assessment_test_timer .o_qti_times_message{padding-left:2em;font-weight:bold}.o_draw_circle.o_qti_hotspot_correct,.o_draw_rectangle.o_qti_hotspot_correct{background-color:rgba(229,255,204,0.6)}#width_range_ui,#opacity_range_ui{width:120px}.o_slider_width_range,.o_slider_opacity_range{margin:3px 10px 0 0}.o_qti_hotspot_label{padding-left:48%}.o_assessmentsection_rubrics_wrapper{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:4px;padding:5px 10px;margin:0 0 0.5em 0}.o_assessmentsection_rubrics_correction_wrapper{background:#f8f8f8;border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;padding:5px 10px}.o_info.o_assessmentsection_rubrics{margin:5px -10px;position:relative;display:block}.o_info.o_assessmentsection_rubrics.o_hide{display:none}.o_info.o_assessmentsection_rubrics a.o_hide{position:absolute;bottom:0.5em;right:1em}.o_assessmentitem h1{margin-bottom:0}.o_assessmentitem div.badResponse,.o_assessmentitem span.badResponse{color:#d9534f;font-weight:bold}.o_assessmentitem input.badResponse{border:1px solid #d9534f}.o_assessmentitem .infoControl input{margin-right:0.5em}.o_assessmentitem .infoControl .infoControlContent{display:none}.o_assessmentitem .sliderInteraction{margin:1em}.o_assessmentitem .sliderInteraction .sliderVertical .sliderValue{margin:1em 0}.o_assessmentitem .sliderInteraction .sliderVertical .sliderWidget{height:200px}.o_assessmentitem .sliderInteraction .sliderHorizontal .sliderValue{text-align:center}.o_assessmentitem div.orderInteraction div.highlight{border:1px solid #d9534f}.o_assessmentitem div.orderInteraction div.box.vertical{width:50%;float:left;position:relative;padding:0;margin-top:5px}.o_assessmentitem div.orderInteraction div.box.vertical ul{min-height:200px}.o_assessmentitem div.orderInteraction div.box.horizontal ul{min-height:50px;width:100%}.o_assessmentitem div.orderInteraction div.box.source{padding:5px 10px;border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8}.o_assessmentitem div.orderInteraction div.box.source.horizontal{padding:5px 10px 15px 10px}.o_assessmentitem div.orderInteraction div.box.target ul{border:2px solid #5bc0de;border-radius:4px;background:#d9edf7}.o_assessmentitem div.orderInteraction div.box.target ul.oo-accepted{border-color:#1f7e9a}.o_assessmentitem div.orderInteraction div.box.target.vertical{padding:6px 0 0 10px}.o_assessmentitem div.orderInteraction div.box.target.vertical ul{padding:10px}.o_assessmentitem div.orderInteraction div.box.target.horizontal{padding-top:10px}.o_assessmentitem div.orderInteraction div.box.target.horizontal ul{padding:10px 10px 0 10px}.o_assessmentitem div.orderInteraction div.box.horizontal ul li{float:left;width:auto;margin-right:10px;min-width:50px}.o_assessmentitem div.orderInteraction div.box span.info{color:#666;font-style:italic;font-size:smaller}.o_assessmentitem div.orderInteraction ul{list-style-type:none;margin:0;padding:0}.o_assessmentitem .hottext{position:relative;margin:-2px 0.15em -2px 0.15em;white-space:nowrap}.o_assessmentitem .hottext input{margin:0 3px 0 2px;position:absolute;top:0.1em;left:0.05em}.o_assessmentitem .hottext input+label{display:inline;padding:0 0.1em 0 1.2em;background:#f8f8f8;border:1px solid #e7e7e7;border-radius:2px;color:#333;font-weight:normal;white-space:normal}.o_assessmentitem .hottext input:checked+label{color:#333;background:#d9edf7;border:1px solid #bce8f1}.o_assessmentitem .gap{font-weight:bold;border:1px dashed #000}.o_assessmentitem .textEntryInteraction input,.o_assessmentitem .textEntryInteraction span.o_input_value{margin:-1px 2px;line-height:90%;vertical-align:middle;font-size:13.72px;line-height:1.5;border:1px solid #999;background:#fff;padding:1px 1px;color:#333;max-width:100%}.o_assessmentitem .textEntryInteraction input:valid,.o_assessmentitem .textEntryInteraction input:disabled,.o_assessmentitem .textEntryInteraction input.o_input_value_wrapper,.o_assessmentitem .textEntryInteraction span.o_input_value:valid,.o_assessmentitem .textEntryInteraction span.o_input_value:disabled,.o_assessmentitem .textEntryInteraction span.o_input_value.o_input_value_wrapper{color:#333;-webkit-text-fill-color:#333;background:#d9edf7;border:1px solid #bce8f1}li.o_assessmentitem_order_item{padding:10px;margin-bottom:10px;border:2px dashed #999;border-radius:4px;background-color:#ffffff;background:#fcf8e3;list-style-type:none}li.o_assessmentitem_order_item:before,li.o_assessmentitem_order_item:after{content:" ";display:table}li.o_assessmentitem_order_item:after{clear:both}body>li.o_assessmentitem_order_item{display:block}.o_assessmentitem_wrapper .itemTitle{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:4px 4px 0 0;margin-top:0;margin-bottom:0;padding:5px 10px;line-height:1.5em;position:relative}.o_assessmentitem_wrapper .itemTitle .o_qti_item_max_score{position:absolute;left:49%}.o_assessmentitem_wrapper .o_qti_item_body{min-height:200px;margin:0;padding:5px 10px;border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;font-size:14px;line-height:1.8}.o_assessmentitem_wrapper .o_assessment_item_not_final.o_warning{margin:0}.o_assessmentitem_wrapper .modalFeedback h4:first-of-type,.o_assessmentitem_wrapper .modalFeedback .o_cal .fc-header-title h2:first-of-type,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback h2:first-of-type{padding-left:10px;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper h4,.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper h2{border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;padding-bottom:5px;margin-bottom:0}.o_assessmentitem_wrapper ul.o_testpartnavigation,.o_qti_menu_buttonstyle ul.o_testpartnavigation{list-style:none;padding:0;margin:0}.o_assessmentitem_wrapper li.o_assessmentitem,.o_qti_menu_buttonstyle li.o_assessmentitem{margin-bottom:2px}.o_assessmentitem_wrapper .o_assessmentitem_status,.o_qti_menu_buttonstyle .o_assessmentitem_status{float:right;display:block;padding:0.3em;margin-left:1em;border-radius:0.3em;border-width:1px;font-size:0.8em;line-height:1.2em;color:#fff}.o_assessmentitem_wrapper .o_assessmentitem_status.ended,.o_qti_menu_buttonstyle .o_assessmentitem_status.ended{background-color:#5bc0de}.o_assessmentitem_wrapper .o_assessmentitem_status.invalid,.o_qti_menu_buttonstyle .o_assessmentitem_status.invalid{background-color:#d9534f}.o_assessmentitem_wrapper .o_assessmentitem_status.answered,.o_qti_menu_buttonstyle .o_assessmentitem_status.answered{background-color:#5cb85c}.o_assessmentitem_wrapper .o_assessmentitem_status.notAnswered,.o_qti_menu_buttonstyle .o_assessmentitem_status.notAnswered{background-color:#f0ad4e}.o_assessmentitem_wrapper .o_assessmentitem_status.notPresented,.o_qti_menu_buttonstyle .o_assessmentitem_status.notPresented{background-color:#ddd}.o_assessmentitem_wrapper .o_assessmentitem_status.review,.o_qti_menu_buttonstyle .o_assessmentitem_status.review{background-color:#5bc0de}.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotAllowed,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewInvalid,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotAnswered,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotSeen,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotAllowed,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewInvalid,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotAnswered,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotSeen{background-color:#5bc0de;opacity:0.7}.o_assessmentitem_wrapper .o_assessmentitem_status i:before,.o_qti_menu_buttonstyle .o_assessmentitem_status i:before{color:#fff}.o_assessmentitem_controls{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:0 0 4px 4px;margin-top:0;margin-bottom:16px;padding:5px 10px}.o_assessmentitem_controls button,.o_assessmentitem_controls a{margin-bottom:0}.o_assessmentitem_controls .o_sel_assessment_item_submit span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_next_question span:after{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï”";padding-left:0.5em}.o_assessmentitem_controls .o_sel_question_menu span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_end_testpart span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_back_test_feedback span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï“";padding-right:0.5em}.o_assessmentitem_controls .o_sel_show_solution span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„©";padding-right:0.5em}.o_assessmentitem_controls .o_sel_solution_hide span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„©";padding-right:0.5em}.o_assessmentitem_controls .o_sel_skip_question span:before,.o_assessmentitem_controls .o_sel_back_question span:before,.o_assessmentitem_controls .o_sel_retry_question span:before{padding-right:0.5em;margin-bottom:0}.o_assessmentitem_control_view_solution{background:#f8f8f8;border:1px solid #e7e7e7;margin:0;padding:5px 10px}.o_assessmentitem_scoring{background:#f8f8f8;border:1px solid #e7e7e7;border-bottom:0;border-radius:4px 4px 0 0;margin-top:0;margin-bottom:0;padding:5px 10px}.o_assessmentitem_scoring_buttons{background:#f8f8f8;border:1px solid #e7e7e7;border-top:0;border-radius:0 0 4px 4px;margin-top:0;margin-bottom:16px;padding:5px 10px}.o_assessmentitem_scoring_override_window{width:300px}.itemPrompt{margin:1.5em 0;font-style:italic;color:#666666}.o_qti_item_body{margin:1em 0}.o_sel_assessment_item_hint{margin-top:1em}.o_assessment_test_results .o_sel_assessment_item_hint{display:none}tr.choiceinteraction td.control{padding:0.5em}tr.choiceinteraction td.choiceInteraction{padding:0.5em}.choiceInteraction label{font-weight:normal}.choiceInteraction input+i{background-color:red}.choiceInteraction div.o_qti_item_choice_option_flow{display:inline-block;padding:.5em;border:1px solid transparent}.choiceInteraction div.o_qti_item_choice_option_flow label span{font-weight:normal}.choiceInteraction div.o_qti_item_choice_option_flow label span>p{display:inline-block}.choiceInteraction.choiceright table tr td.choiceInteraction{background-color:#e7e7e7;border-bottom:3px solid white}.matchInteraction.choiceright table tr td.o_qti_item_kprim_text{background-color:#e7e7e7;border-bottom:3px solid white}table.o_qti_item_kprim td.o_qti_item_kprim_input_correct{background-color:#eaf6ea}table.o_qti_item_kprim td.o_qti_item_kprim_input_wrong{background-color:#fdf7f7}table.o_qti_item_kprim td.o_qti_item_kprim_input_correct,table.o_qti_item_kprim td.o_qti_item_kprim_input_wrong,table.o_qti_item_kprim th.o_qti_item_kprim_input_correct,table.o_qti_item_kprim th.o_qti_item_kprim_input_wrong{width:11%}table.o_qti_item_kprim td.o_qti_item_kprim_text,table.o_qti_item_kprim th.o_qti_item_kprim_text{width:88%}.matchInteraction input[type='text']{display:inline;width:auto}.matchInteraction div.bar_green{background-color:#5cb85c}.matchInteraction div.bar_red{background-color:#d9534f}.source-left,.target-left,.source-right,.target-right{width:50%;float:left;position:relative;padding:0;margin-top:5px}.o_match_dnd_sources{padding:10px 10px 0 10px;min-height:60px;border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8}.o_match_dnd_sources.oo-accepted{border-color:#1f7e9a}.o_match_dnd_source{padding:10px;margin-bottom:10px;border:2px dashed #999;border-radius:4px;background-color:#ffffff;background:#fcf8e3;cursor:move;cursor:grab;cursor:-moz-grab;cursor:-webkit-grab}.o_match_dnd_source:before,.o_match_dnd_source:after{content:" ";display:table}.o_match_dnd_source:after{clear:both}.o_match_dnd_source.oo-selected{border:2px dashed #f0ad4e;background:#fae3c4}.o_match_dnd_source.oo-drag{border:2px dashed #f0ad4e !important}.source-bottom .o_match_dnd_source,.source-top .o_match_dnd_source{margin:0 0 10px 0}.o_match_dnd_targets .oo-accepted{border:2px solid #1f7e9a;border-radius:4px}.o_match_dnd_target{padding:10px 10px 0 10px;margin:0 0 10px 10px;border:2px solid #5bc0de;border-radius:4px;background:#d9edf7}.o_match_dnd_target:before,.o_match_dnd_target:after{content:" ";display:table}.o_match_dnd_target:after{clear:both}.o_match_dnd_target .o_match_dnd_target_drop_zone{margin:0;padding:5px 0 0 15px;min-height:30px}.o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source{border:2px dashed #777}.target-bottom .o_match_dnd_target,.target-top .o_match_dnd_target{margin:0 0 10px 0}.target-bottom .o_match_dnd_target .o_match_dnd_target_drop_zone,.target-top .o_match_dnd_target .o_match_dnd_target_drop_zone{padding-left:0px}.target-bottom .o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source,.target-top .o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source{padding-left:15px}.table.o_match_true_false_edit th.o_sel_match_target_0,.table.o_match_true_false_edit th.o_sel_match_target_1,.table.o_match_true_false_edit th.o_sel_match_target_2{width:12%}.match_true_false input[type="checkbox"]{-webkit-appearance:radio;-moz-appearance:radio;-ms-appearance:radio;appearance:radio}.match_true_false .table>tbody>tr>td.o_match_true_false_unanswered,.match_true_false .table>tbody>tr>td.o_match_true_false_right,.match_true_false .table>tbody>tr>td.o_match_true_false_wrong{vertical-align:middle;width:11%}.match_true_false th.o_match_true_false_unanswered,.match_true_false th.o_match_true_false_right,.match_true_false th.o_match_true_false_wrong{width:11%}.match_true_false td.o_match_true_false_answer,.match_true_false th.o_match_true_false_answer{width:67%}.match_true_false td.o_match_true_false_unanswered{background-color:#fbfbfb}.match_true_false td.o_match_true_false_right{background-color:#eaf6ea}.match_true_false td.o_match_true_false_wrong{background-color:#fdf7f7}.o_assessmentitem .mathEntryInteraction{border:1px solid #ddedfc;background-color:#edf1f6;background:linear-gradient(to top, #edf1f6 0%, #f6f9fb 100%);border-radius:0.4em;padding:1em;margin:0.5em 0}.o_assessmentitem .mathEntryInteraction .inputPanel{line-height:1em;text-align:left}.o_assessmentitem .mathEntryInteraction .inputPanel input{margin:0;padding:0}.o_assessmentitem .mathEntryInteraction .previewPanel{text-align:center}.o_assessmentitem .mathEntryInteraction.horizontal{min-height:5em;width:40em}.o_assessmentitem .mathEntryInteraction.horizontal .inputPanel{width:45%;float:left;margin:2em 0}.o_assessmentitem .mathEntryInteraction.horizontal .previewPanel{width:50%;margin-left:40%}.o_assessmentitem .mathEntryInteraction.vertical{min-height:6em}.o_assessmentitem .mathEntryInteraction.vertical .inputPanel{padding:0 5em}.o_assessmentitem .mathEntryInteraction.vertical .inputPanel:before{content:'Input Maths: '}.o_assessmentitem .mathEntryInteraction.vertical .previewPanel{margin-top:2em;min-height:4em}.o_assessmentitem div.upConversionAjaxControlMessage{width:auto;text-align:center;display:inline;padding:0.5em 0 0.5em 20px}.o_assessmentitem div.success{background:#5cb85c}.o_assessmentitem div.failure{background-color:#f0ad4e}.o_assessmentitem div.error{background-color:#d9534f}.o_assessmentitem div.upConversionAjaxControlPreview{margin:0.5em 0;font-size:110%}.o_assessmentitem table.inputHelp{border-collapse:collapse;width:100%;font-size:90%}.o_assessmentitem table.inputHelp th{border:1px solid #999999;padding:0.2em 0.5em;background-color:#cad8e5}.o_assessmentitem table.inputHelp td{color:#999999;border:1px solid #999999;padding:0.2em 0.5em}.o_assessmentitem table.inputHelp kbd{color:black;font-size:100%;line-height:100%}.o_assessmentitem table.inputHelp .longComma{margin-right:0.5em}.o_togglebox_wrapper #modal-correct-solution div.o_togglebox_content{background-color:#fcf8e3;border-color:#8a6d3b}.o_candidatecomment{padding:0;margin:2em 0 1em 0;border:none}.o_candidatecomment legend{font-size:110%;font-weight:bold;color:#777;margin-bottom:0;border-bottom:0}.o_candidatecomment div.o_item_container_help{margin:0;padding:0}.o_candidatecomment textarea{display:block;color:#777}.o_qti_menu_menustyle ul.o_testpartnavigation{list-style:none;padding:0;margin:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:0 1em 0.5em 1em;margin:0 0 0.5em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection header{margin:0 0 1em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection header div.rubric{font-style:italic}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection ul.o_testpartnavigation_inner{list-style:none;padding:0;margin:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem{padding:0.1em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a{color:#777;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a:hover,.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a:focus{color:#333;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a{color:#337ab7;font-weight:bold;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a:hover,.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a:focus{color:#23527c;background-color:#eee;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem span{vertical-align:middle}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_status{display:inline;position:relative;left:-0.3em;background:transparent;border:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_status span{display:none}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts{float:right;display:block;padding:0.3em;border-radius:2px;background-color:#fafafa;color:#777;font-size:0.7em}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts.o_assessmentitem_attempts_limited{color:#f0ad4e}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts.o_assessmentitem_attempts_nomore{color:#5bc0de}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_marks{float:right;display:inline-block;font-size:0.8em;position:relative;top:0.3em;right:-0.5em}.o_qti_menu_menustyle ul.o_testpartnavigation .o_assessmentitem .questionTitle{margin-right:1em;overflow-wrap:break-word}.testFeedback h1:first-of-type{margin-top:0}ul.testPartDrilldown{list-style:none;padding:0;margin:0}ul.testPartDrilldown li.o_assessmentsection{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:0 1em 0.5em 1em}ul.testPartDrilldown li.o_assessmentsection header{margin:0 0 1em 0}ul.testPartDrilldown li.o_assessmentsection header div.rubric{font-style:italic}ul.testPartDrilldown li.o_assessmentsection ul.testPartDrilldownInner{list-style:none;padding:0;margin:0}ul.testPartDrilldown li.currentItem{border:1px solid #e7e7e7;border-radius:0.5em;padding:0 1em;margin-top:1em}.testItemControl{margin-top:0.5em}ul.o_qti_statistics_answers li span.o_qti_statistics_answer{background:#F5F5F5;padding:1px 3px;width:90%;display:inline-block}.o_assessment_test_results .o_qti_assessment_title{border-bottom:1px solid #ddd}.o_assessment_test_results table th{width:40%}.o_assessment_test_results .o_qti_sectionsummary .o_qti_section{text-align:center}.o_assessment_test_results .o_qti_sectionsummary .o_qti_section .o_qti_section_sublisting{padding:0 10%;min-height:3em}.o_assessment_test_results .o_qti_sections .o_qti_section{margin-top:40px}.o_assessment_test_results .o_qti_sections .o_qti_section h3{margin-bottom:20px}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_id{display:none}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment{margin:0;padding:5px 10px 10px 5px;border-top:1px solid #ddd;broder-bottom:1px solid #ddd}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h4,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2{font-size:100%;font-weight:bold;color:inherit}.o_assessment_test_results .o_qti_to_overview{text-align:right}.o_sel_assessment_item_feedbacks{min-height:250px}.o_alternative_question_types h4 select,.o_alternative_question_types .o_cal .fc-header-title h2 select,.o_cal .fc-header-title .o_alternative_question_types h2 select{display:inline-block;width:auto}@media print{canvas,div.hotspotInteraction>div>div{-webkit-print-color-adjust:exact;color-adjust:exact}.choiceInteraction label{font-weight:normal}.choiceinteraction input[type="radio"][disabled],.choiceinteraction input[type="checkbox"][disabled],.matchInteraction input[type="radio"][disabled],.matchInteraction input[type="checkbox"][disabled]{display:none}.choiceinteraction input+i,.matchInteraction input+i{font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.choiceInteraction input[type="radio"][disabled]+i:before,.matchInteraction input[type="radio"][disabled]+i:before,.matchInteraction.match_true_false input[type="checkbox"][disabled]+i:before{content:"ï„Œ"}.choiceInteraction input[type="radio"][disabled]:checked+i:before,.matchInteraction input[type="radio"][disabled]:checked+i:before,.matchInteraction.match_true_false input[type="checkbox"][disabled]:checked+i:before{content:""}.choiceInteraction input[type="checkbox"][disabled]+i:before,.matchInteraction input[type="checkbox"][disabled]+i:before{content:"ï‚–"}.choiceInteraction input[type="checkbox"][disabled]:checked+i:before,.matchInteraction input[type="checkbox"][disabled]:checked+i:before{content:"ï†"}}#o_dev_tool #o_dev_tool_mode{width:1em;height:1em;float:left;border:1px solid #000;margin-right:5px}a.o_dev{position:absolute;left:0;top:0;z-index:4000;background:#f0ad4e;border:1px solid #d59645;border-top:none;border-left:none;border-radius:0 0 4px 0;color:#fff}a.o_dev:hover{color:#d9534f}.o_dev_w{margin:1px}.o_dev_w .o_dev_h{color:#000;font-size:8px;line-height:10px;margin:0}.o_dev_w .o_dev_h span{background:#f4c37d;border:1px solid #f0ad4e;border-bottom:0}.o_dev_w .o_dev_c{position:relative;border:1px dotted #eee}.o_dev_w .o_dev_c .o_dev_i{position:absolute;top:0px;left:24px;height:auto;width:auto;padding:5px;border:1px solid black;display:none;margin:0px;z-index:999;font-size:11px;background-color:#BBF}.o_dev_w.o_dev_m>.o_dev_c{border:1px solid #f0ad4e;margin:0px;background-color:#f8e9d4}.o_wikimod_nav{margin-right:20px}.o_wikimod_nav .o_noti{margin:0}.o_wikimod_nav .o_portfolio_collector{position:relative;top:-5px}.o_wikimod_editform_wrapper{margin-top:30px}.o_wiki-file-deleted{text-decoration:line-through}div.o_wiki_wrapper a.wikiimg{text-decoration:none;color:inherit;font-weight:inherit}div.o_wiki_wrapper div.imgcaption{padding:0.3em 0em 0.2em 0.3em}div.o_wiki_wrapper div.imgleft{clear:left;float:left;margin:0.3em 0.3em 0.3em 0em}div.o_wiki_wrapper div.imgright{clear:right;float:right;margin:0.3em 0em 0.3em 0.3em}div.o_wiki_wrapper div.imgcenter{clear:both;overflow:hidden;text-align:center;margin:0.3em 0em 0.3em 0em}div.o_wiki_wrapper div.imgthumb{border:1px solid #bbbbbb;padding:0.3em}div.o_wiki_wrapper table.gallery{border:1px solid #ccc;margin:2px;padding:2px;background-color:white}div.o_wiki_wrapper table.gallery tr{vertical-align:middle}div.o_wiki_wrapper table.gallery td{background-color:#f9f9f9;border:solid 2px white;text-align:center;vertical-align:middle;width:150px}div.o_wiki_wrapper img.gallery{border:1px solid #bbbbbb;padding:0.3em}div.o_wiki_wrapper a.edit{font-style:italic;color:red}div.o_wiki_wrapper a.externallink:before{padding-right:2px}div.o_wiki_wrapper a.externallink:before:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï‚Ž"}.o_ep_icon_map:before{content:""}.o_ep_icon_collection:before{content:""}.o_ep_icon_page:before{content:""}.o_ep_icon_struct:before{content:""}.o_ep_icon_liveblog:before{content:"ï‚¡"}.o_artefact_closed:before{content:""}.o_portfolio_toc .o_ep_link{float:right;margin-right:0px}.o_portfolio_toc .o_ep_commentlink{float:right;margin-right:10%}.o_portfolio_toc li.level1{font-size:1.2em;margin:1.2em 0 0.2em 0;border-bottom:1px solid #ddd}.o_portfolio_toc li.level2{padding-left:20px;font-size:1.1em;border-bottom:1px dotted #ddd}.o_portfolio_toc li.level3{padding-left:40px}.o_eportfolio_page .o_eportfolio_structure>h5{border-bottom:1px solid #ddd;margin-top:1.2em}.o_eportfolio_maps .panel{font-family:'Century Gothic', 'Apple Gothic', sans-serif;box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .panel-heading{padding:5px 10px}.o_eportfolio_maps h4,.o_eportfolio_maps .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps h2{padding:11px 15px;background:rgba(255,255,230,0.7) none;border-radius:6px}.o_eportfolio_maps .table>tbody>tr>td{border-top:none}.o_eportfolio_maps .panel-body{border-top:none}.o_eportfolio_maps .panel>.panel-body+.table{border-top:none}.panel-footer .o_ep_options{display:inline-block}.o_eportfolio_map{padding:0 20px 2px 3px;border-radius:6px 10px 6px 0;font-family:'Century Gothic', 'Apple Gothic', sans-serif}.o_map_header{padding-left:5px}.o_eportfolio_map ul.nav-tabs li:not(.active) a{background-color:rgba(240,240,240,0.7);border-radius:4px 4px 0 0}.o_eportfolio_edit{border-radius:4px 4px 0 0}.o_ep_actualpage,.o_eportfolio_edit{padding:15px;background-color:#fff}.o_ep_content{margin-top:15px}.o_ep_filter .o_date.form-inline .form-group,.o_ep_filter .o_date.o_navbar-form .form-group{margin-left:8px}.o_eportfolio_share_policy_wrapper{border:1px solid #ddd;border-radius:4px}.o_eportfolio_share_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5}.o_eportfolio_share_policy{padding:10px 15px}.o_map-default{background:#fafafa;background:#fafafa -webkit-gradient(linear, 37% 20%, 53% 100%, from(#fafafa), to(#efefef));background:#fafafa -moz-linear-gradient(43% 71% 101deg, #efefef, #fafafa);background:#fafafa -o-linear-gradient(#fafafa, #efefef);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#fafafa', EndColorStr='#efefef');border:1px solid #efefef;border-left:3px solid rgba(188,188,188,0.8)}.o_eportfolio_maps .o_map-default h4,.o_eportfolio_maps .o_map-default .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-default h2{color:#444;background:none}.o_eportfolio_maps .o_map-default .panel-body,.o_eportfolio_maps .o_map-default td,.o_eportfolio_maps .o_map-default a{color:#000}.o_map-comic{background:#a2c3e8 none;font-family:'Comic Sans MS', 'Comic Sans', fantasy;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_map-leather{background-color:#957352;background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(248,248,248,0.7)), color-stop(100%, rgba(193,193,193,0.5))),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-webkit-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-moz-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-ms-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-o-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");font-family:Palatino, Georgia, serif;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-leather h4,.o_eportfolio_maps .o_map-leather .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-leather h2{background:rgba(243,230,225,0.3) none}.o_eportfolio_maps .o_map-leather .panel-body,.o_eportfolio_maps .o_map-leather td{color:#333}.o_eportfolio_maps .o_map-leather a{color:#fad9a4}.o_eportfolio_map.o_map-leather .o_map_header h4,.o_eportfolio_map.o_map-leather .o_map_header .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_map.o_map-leather .o_map_header h2,.o_eportfolio_map.o_map-leather .o_map_header p,.o_eportfolio_map.o_map-leather .o_map_header a,.o_eportfolio_map.o_map-leather .o_map_header span,.o_eportfolio_map.o_map-leather .o_map_header label{color:#333}.o_map-epmst-green{background-color:#ECF69A;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-green h4,.o_eportfolio_maps .o_map-epmst-green .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green h2{color:#444}.o_eportfolio_maps .o_map-epmst-green .panel-body,.o_eportfolio_maps .o_map-epmst-green td,.o_eportfolio_maps .o_map-epmst-green a{color:#000}.o_map-epmst-green2{background:#99E44D;background:#99E44D -webkit-gradient(linear, 37% 20%, 53% 100%, from(#99E44D), to(#CBF1A5));background:#99E44D -moz-linear-gradient(43% 71% 101deg, #CBF1A5, #99E44D);background:#99E44D -o-linear-gradient(#99E44D, #CBF1A5);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#99E44D', EndColorStr='#CBF1A5');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green2 h4,.o_eportfolio_maps .o_map-epmst-green2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green2 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green2 .panel-body,.o_eportfolio_maps .o_map-epmst-green2 td,.o_eportfolio_maps .o_map-epmst-green2 a{color:#000}.o_map-epmst-green3{background:#DFF0C1;background:#DFF0C1 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#DFF0C1), to(#A0D346));background:#DFF0C1 -moz-linear-gradient(43% 71% 101deg, #A0D346, #DFF0C1);background:#DFF0C1 -o-linear-gradient(#DFF0C1, #A0D346);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#DFF0C1', EndColorStr='#A0D346');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green3 h4,.o_eportfolio_maps .o_map-epmst-green3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green3 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green3 .panel-body,.o_eportfolio_maps .o_map-epmst-green3 td,.o_eportfolio_maps .o_map-epmst-green3 a{color:#000}.o_map-epmst-green4{background-color:#D7DBB5;border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green4 h4,.o_eportfolio_maps .o_map-epmst-green4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green4 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green4 .panel-body,.o_eportfolio_maps .o_map-epmst-green4 td,.o_eportfolio_maps .o_map-epmst-green4 a{color:#000}.o_map-epmst-red{background:#FFBA71;background:#FFBA71 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FFBA71), to(#FFBA99));background:#FFBA71 -moz-linear-gradient(43% 71% 101deg, #FFBA99, #FFBA71);background:#FFBA71 -o-linear-gradient(#FFBA71, #FFBA99);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFBA71', EndColorStr='#FFBA99');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red h4,.o_eportfolio_maps .o_map-epmst-red .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red h2{color:#444}.o_eportfolio_maps .o_map-epmst-red .panel-body,.o_eportfolio_maps .o_map-epmst-red td,.o_eportfolio_maps .o_map-epmst-red a{color:#000}.o_map-epmst-red2{background:#FF9772;background:#FF9772 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FF9772), to(#FF9780));background:#FF9772 -moz-linear-gradient(43% 71% 101deg, #FF9780, #FF9772);background:#FF9772 -o-linear-gradient(#FF9772, #FF9780);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FF9772', EndColorStr='#FF9780');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red2 h4,.o_eportfolio_maps .o_map-epmst-red2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red2 .panel-body,.o_eportfolio_maps .o_map-epmst-red2 td,.o_eportfolio_maps .o_map-epmst-red2 a{color:#000}.o_map-epmst-red3{background:#E8AFBB;background:#E8AFBB -webkit-gradient(linear, 37% 20%, 53% 100%, from(#E8AFBB), to(#E8AFA0));background:#E8AFBB -moz-linear-gradient(43% 71% 101deg, #E8AFA0, #E8AFBB);background:#E8AFBB -o-linear-gradient(#E8AFBB, #E8AFA0);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#E8AFBB', EndColorStr='#E8AFA0');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red3 h4,.o_eportfolio_maps .o_map-epmst-red3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red3 .panel-body,.o_eportfolio_maps .o_map-epmst-red3 td,.o_eportfolio_maps .o_map-epmst-red3 a{color:#000}.o_map-epmst-red4{background:#FFA800;background:#FFA800 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FFA800), to(#FFAF00));background:#FFA800 -moz-linear-gradient(43% 71% 101deg, #FFAF00, #FFA800);background:#FFA800 -o-linear-gradient(#FFA800, #FFAF00);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFA800', EndColorStr='#FFAF00');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red4 h4,.o_eportfolio_maps .o_map-epmst-red4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red4 .panel-body,.o_eportfolio_maps .o_map-epmst-red4 td,.o_eportfolio_maps .o_map-epmst-red4 a{color:#000}.o_map-epmst-blue{background:#00D2F8;background:#00D2F8 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#00D2F8), to(#4A9EAD));background:#00D2F8 -moz-linear-gradient(43% 71% 101deg, #4A9EAD, #00D2F8);background:#00D2F8 -o-linear-gradient(#00D2F8, #4A9EAD);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#00D2F8', EndColorStr='#4A9EAD');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue h4,.o_eportfolio_maps .o_map-epmst-blue .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue .panel-body,.o_eportfolio_maps .o_map-epmst-blue td,.o_eportfolio_maps .o_map-epmst-blue a{color:#000}.o_map-epmst-blue2{background-color:#C4F6FF;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue2 h4,.o_eportfolio_maps .o_map-epmst-blue2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue2 .panel-body,.o_eportfolio_maps .o_map-epmst-blue2 td,.o_eportfolio_maps .o_map-epmst-blue2 a{color:#000}.o_map-epmst-blue3{background-color:#B3E2F7;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue3{box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .o_map-epmst-blue3 h4,.o_eportfolio_maps .o_map-epmst-blue3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue3 .panel-body,.o_eportfolio_maps .o_map-epmst-blue3 td,.o_eportfolio_maps .o_map-epmst-blue3 a{color:#000}.o_map-epmst-blue4{background:#DEE7F7;background:#DEE7F7 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#DEE7F7), to(#C1E9FD));background:#DEE7F7 -moz-linear-gradient(43% 71% 101deg, #C1E9FD, #DEE7F7);background:#DEE7F7 -o-linear-gradient(#DEE7F7, #C1E9FD);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#DEE7F7', EndColorStr='#C1E9FD');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue4 h4,.o_eportfolio_maps .o_map-epmst-blue4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue4 .panel-body,.o_eportfolio_maps .o_map-epmst-blue4 td,.o_eportfolio_maps .o_map-epmst-blue4 a{color:#000}.o_portfolio div#o_main_toolbar.o_toolbar{margin-top:0px}.o_portfolio_home .o_portfolio_my li,.o_portfolio_home .o_portfolio_shared li{margin:2em 1em 2em 0;text-align:center;vertical-align:top}.o_portfolio_home .o_portfolio_my li.o_pf_trash_entry,.o_portfolio_home .o_portfolio_shared li.o_pf_trash_entry{border-right:5px dashed #eee;padding-right:2em}.o_portfolio_home .o_portfolio_my li a,.o_portfolio_home .o_portfolio_shared li a{display:block;width:9em}.o_portfolio_home .o_portfolio_my li a i,.o_portfolio_home .o_portfolio_shared li a i{display:inline-block;font-size:4em}.o_portfolio_home .o_portfolio_my li a span,.o_portfolio_home .o_portfolio_shared li a span{display:block;margin-top:0.8em}@media (max-width: 1199px){.o_portfolio_home .o_portfolio_my,.o_portfolio_home .o_portfolio_shared{font-size:90%}}@media (max-width: 767px){.o_portfolio_home .o_portfolio_my,.o_portfolio_home .o_portfolio_shared{font-size:80%}.o_portfolio_home .o_portfolio_my li.o_pf_trash_entry,.o_portfolio_home .o_portfolio_shared li.o_pf_trash_entry{border-right:none;padding-right:0}}.o_portfolio_home #o_my_last_binders .o_table_body{margin-top:0;padding-left:0}.o_portfolio_home #o_my_last_pages .o_table_body{margin-top:0}.o_portfolio_home #o_my_last_pages .o_table_toolbar{display:none}.o_portfolio_home #o_my_last_pages .o_portfolio_page{margin-top:0;margin-bottom:1em}.o_section_lead,.o_page_lead,.o_assignment_lead{padding:10px 10px;margin-bottom:10px;background-color:#f2f2f2;border-radius:3px;border:1px #d9d9d9 solid}.o_section_ended .o_section_lead{border-color:#eba5a3;background-color:#f4cecd}.o_media.o_media_right,.o_media.o_media_right_large{float:right;margin-left:2em;margin-bottom:2em}.o_media.o_media_left,.o_media.o_media_left_large{float:left;margin-right:2em;margin-bottom:2em}.o_media.o_media_left,.o_media.o_media_right{max-height:200px;max-width:50%}.o_media.o_media_left img,.o_media.o_media_right img{max-height:200px}.o_media.o_media_right_large,.o_media.o_media_left_large{max-height:300px;max-width:75%}.o_media.o_media_right_large img,.o_media.o_media_left_large img{max-height:300px}.o_media img{border-radius:3px;border:1px #d9d9d9 solid;background:#fff;height:auto;width:auto}@media (max-width: 767px){.o_page_lead .o_media.o_media_right,.o_page_lead .o_media.o_media_right_large{margin-left:1em;margin-bottom:1em}.o_page_lead .o_media.o_media_left,.o_page_lead .o_media.o_media_left_large{margin-right:1em;margin-bottom:1em}.o_page_lead .o_media.o_media_left,.o_page_lead .o_media.o_media_right{max-height:120px;max-width:30%}.o_page_lead .o_media.o_media_left img,.o_page_lead .o_media.o_media_right img{max-height:120px}.o_page_lead .o_media.o_media_right_large,.o_page_lead .o_media.o_media_left_large{max-height:180px;max-width:50%}.o_page_lead .o_media.o_media_right_large img,.o_page_lead .o_media.o_media_left_large img{max-height:180px}}.o_page_lead{padding:20px}.o_page_lead h2{margin-bottom:5px}.o_page_lead .o_portfolio_page_meta{margin-bottom:5px}.o_page_lead .o_page_summary{font-size:18px}.o_page_lead .o_media.o_desc_empty{max-height:300px;text-align:center}.o_page_lead .o_media.o_desc_empty img{max-height:300px}.o_page_lead .o_portfolio_status_block{border-top:1px solid #d9d9d9;padding-top:1em;margin-bottom:-1em}.o_page_lead .o_edit_page_meta{padding-right:2em}.o_page_lead .o_portfolio_status{display:inline-block;padding-right:2em}.o_page_lead.o_block_imagebg .o_portfolio_status{padding:2px;background-color:rgba(255,255,255,0.8)}.o_portfolio_status_block p.o_section_ended{font-size:120%}.o_page_assignment{font-size:12px}.o_page_assignment.o_togglebox_wrapper div.o_togglebox_content{margin:10px 0 20px 0;padding:20px;border-left:3px solid #d9534f;background-color:#f2dede}.o_page_assignment .o_page_assignement_info{position:relative;left:-1em}.o_page_export .o_page_assignment .o_opener,.o_binder_export .o_page_assignment .o_opener{visibility:hidden}.o_page_export .o_page_assignment .o_closer,.o_binder_export .o_page_assignment .o_closer{display:none}.o_portfolio_listing.o_rendertype_custom .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry{position:relative;display:inline-block;height:230px;width:400px;vertical-align:top;margin-right:10px}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry ul{padding-left:2em}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry .oo-accepted{box-shadow:10px 10px 10px pink}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry .o_binder_tools a{color:#333}.o_portfolio_listing.o_rendertype_custom .panel-imagebg .panel-body ul{margin:0;padding:0;list-style-type:none}.o_portfolio_listing.o_rendertype_custom .panel-imagebg .panel-body ul li{padding:2px}.o_binder.o_portfolio_assignments .panel-heading,.o_binder.o_portfolio_assignments .panel-body{border-left:3px solid #d9534f}.panel-default.o_portfolio_assignments .panel-heading,.panel-default.o_portfolio_assignments .panel-body{border-left:3px solid #d9534f}.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body{border-left:3px solid #d9534f}.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body .o_portfolio_page_meta_wrapper,.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body .o_portfolio_page_summary{padding-left:10px}.o_portfolio_page_summary .o_media.o_media_right,.o_portfolio_page_summary .o_media.o_media_right_large{margin-left:1em;margin-bottom:1em}.o_portfolio_page_summary .o_media.o_media_left,.o_portfolio_page_summary .o_media.o_media_left_large{margin-right:1em;margin-bottom:1em}.o_portfolio_page_summary .o_media.o_media_left,.o_portfolio_page_summary .o_media.o_media_right{max-height:150px}.o_portfolio_page_summary .o_media.o_media_left img,.o_portfolio_page_summary .o_media.o_media_right img{max-height:150px}.o_portfolio_page_summary .o_media.o_media_right_large,.o_portfolio_page_summary .o_media.o_media_left_large{max-height:230px}.o_portfolio_page_summary .o_media.o_media_right_large img,.o_portfolio_page_summary .o_media.o_media_left_large img{max-height:230px}.o_portfolio_categories .tag{font-size:80%;font-weight:normal}.o_portfolio_categories div,.o_portfolio_categories form{display:inline-block}.o_portfolio_categories_edit .bootstrap-tagsinput{margin-bottom:0;padding:0px 4px}.o_portfolio_last_modified+.o_portfolio_categories,.o_portfolio_page_meta+.o_portfolio_categories{margin-left:1em}.o_rendertype_classic .o_pf_page,.o_rendertype_classic .o_pf_assignment{padding-left:1em}.o_portfolio_timeline .o_timeline_up{text-align:center}.o_portfolio_timeline .o_timeline_down{text-align:center}.o_portfolio_timeline .axis path,.o_portfolio_timeline .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_portfolio_timeline .x.axis line,.o_portfolio_timeline .x.axis path{display:none}.o_portfolio_timeline path.o_timeline_curve{fill:none;stroke:#ccc;shape-rendering:crispEdges}.o_portfolio_timeline .y.axis .tick line,.o_portfolio_timeline .y.axis path.domain{stroke:#ddd}.o_portfolio_timeline text{fill:#888;stroke:none;font-size:10px}.o_portfolio_timeline .dot.o_pf_status_draft{fill:#f0ad4e}.o_portfolio_timeline .dot.o_pf_status_published{fill:#337ab7}.o_portfolio_timeline .dot.o_pf_status_inrevision{fill:#d9534f}.o_portfolio_timeline .dot.o_pf_status_closed{fill:#5cb85c}.o_portfolio_timeline .dot.o_pf_status_deleted{fill:#000}.o_pf_comments{margin-top:3em}.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file{background-color:#f8f8f8;padding:10px;border-radius:10px}.o_pf_content .o_forum,.gu-mirror .o_forum{border:1px #f8f8f8 solid;padding:10px;border-radius:10px}.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_forum,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_forum,.gu-mirror .o_wiki{background-color:#f8f8f8;padding:10px;border-radius:10px}.o_pf_content .o_efficiencystatement h3,.o_pf_content .o_efficiencystatement .h3,.o_pf_content .o_feed h3,.o_pf_content .o_feed .h3,.o_pf_content .o_forum h3,.o_pf_content .o_forum .h3,.o_pf_content .o_wiki h3,.o_pf_content .o_wiki .h3,.gu-mirror .o_efficiencystatement h3,.gu-mirror .o_efficiencystatement .h3,.gu-mirror .o_feed h3,.gu-mirror .o_feed .h3,.gu-mirror .o_forum h3,.gu-mirror .o_forum .h3,.gu-mirror .o_wiki h3,.gu-mirror .o_wiki .h3{font-size:14px}.o_pf_content .o_efficiencystatement .row,.o_pf_content .o_feed .row,.o_pf_content .o_forum .row,.o_pf_content .o_wiki .row,.gu-mirror .o_efficiencystatement .row,.gu-mirror .o_feed .row,.gu-mirror .o_forum .row,.gu-mirror .o_wiki .row{margin:0}.o_pf_content .o_efficiencystatement .o_block_with_datecomp,.o_pf_content .o_feed .o_block_with_datecomp,.o_pf_content .o_forum .o_block_with_datecomp,.o_pf_content .o_wiki .o_block_with_datecomp,.gu-mirror .o_efficiencystatement .o_block_with_datecomp,.gu-mirror .o_feed .o_block_with_datecomp,.gu-mirror .o_forum .o_block_with_datecomp,.gu-mirror .o_wiki .o_block_with_datecomp{margin-top:0.5em;margin-bottom:0}.o_pf_video_placeholder{background-color:#f8f8f8;border:1px solid #f8f8f8;border-radius:10px;display:table;min-width:400px;text-align:center;padding:40px 10px}.o_pf_video_placeholder i{display:table-cell;vertical-align:middle}.o_binder_page_listing .o_portfolio_page_links{background-color:#f8f8f8;border-radius:4px}.o_binder_page_listing .o_portfolio_page_links .o_portfolio_comment{float:right}.o_portfolio_toc .o_portfolio_toc_section{position:relative;padding-right:80px}.o_portfolio_toc .o_portfolio_section_meta{margin-top:-0.5em}.o_portfolio_toc .o_section_actions{position:absolute;top:-10px;right:0}.o_portfolio_toc .o_section_actions .o_section_move_up_and_down,.o_portfolio_toc .o_section_actions .o_section_dropdown{vertical-align:middle;display:inline-block}.o_portfolio_toc a.o_comment{color:#777;margin-left:1em}.o_portfolio_toc .o_section ul{padding-left:1em;line-height:24px}.o_portfolio div span.badge{padding:3px 7px}.o_portfolio div .o_portfolio_entry_draft{background-color:#f0ad4e}.o_portfolio div .o_portfolio_published{background-color:#337ab7}.o_portfolio div .o_portfolio_entry_revision{background-color:#d9534f}.o_portfolio div .o_portfolio_entry_closed{background-color:#5cb85c}.o_portfolio div .o_portfolio_entry_deleted{background-color:#000}.o_portfolio div .o_portfolio_entry_incoming{background-color:#5cb85c}.o_portfolio div .o_portfolio_entry_inprocess{background-color:#c8c8c8}.o_portfolio div .o_portfolio_entry_done{background-color:#5cb85c}.o_portfolio div .o_popover,.o_portfolio div .popover:hover{color:#333;text-decoration:none}.o_portfolio_content .o_portfolio_toc.o_portfolio_toc_withtimeline{width:70%;float:left}.o_portfolio_content .o_portfolio_timeline{width:29%;float:right}.o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline,.o_portfolio_content .o_portfolio_entries.o_portfolio_withtimeline{width:70%;float:left}.o_portfolio_content .o_portfolio_timeline{width:29%;float:right}.o_portfolio_page{background:#fcfcfc;border:1px solid #eee;border-radius:4px}.o_portfolio_page_meta_wrapper{background-position:left top;background-repeat:no-repeat}.o_portfolio_rights table .o_portfolio_section td:first-child{padding-left:1.5em}.o_portfolio_rights table .o_portfolio_page td:first-child{padding-left:2.5em}.o_portfolio_publication table{padding-bottom:10px}.o_portfolio_publication table td{padding:5px 5px 5px 0}.o_portfolio_publication .o_portfolio_ac{font-size:90%}.o_portfolio_publication .o_portfolio_ac table td:nth-of-type(2){width:200px;white-space:nowrap}.o_portfolio_publication .o_portfolio_ac table td:nth-of-type(3){width:40px;white-space:nowrap}.o_portfolio_publication ul ul{margin-left:2em;margin-bottom:5px}.o_portfolio_publication ul li{background:#fbfbfb;padding:3px;margin-bottom:2px}.o_portfolio_publication ul li li{background:#f2f2f2}.o_portfolio_publication ul li li li{background:#eee}.o_portfolio_publication ul li li .table{margin-bottom:0px}@media (max-width: 767px){.o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline,.o_portfolio_content .o_portfolio_entries.o_portfolio_withtimeline{width:100%;float:none}.o_portfolio_content .o_sel_timeline_off,.o_portfolio_content .o_sel_timeline_on,.o_portfolio_content .o_portfolio_timeline{display:none}.o_portfolio_content .o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline{width:100%;float:none}}.o_portfolio_media_browser .o_portfolio_medias{position:relative;margin-bottom:20px;margin-top:20px}.o_portfolio_media_browser .o_portfolio_medias:before,.o_portfolio_media_browser .o_portfolio_medias:after{content:" ";display:table}.o_portfolio_media_browser .o_portfolio_medias:after{clear:both}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media:last-child{margin-right:0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{border:1px solid #337ab7;position:relative;height:180px;width:180px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon span.o_visual_not_available,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after span.o_visual_not_available,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after span.o_visual_not_available,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after span.o_visual_not_available,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after span.o_visual_not_available{background-image:none}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:6em;text-align:center;color:#eee;line-height:140px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #337ab7;border-top:0;background-color:rgba(255,255,255,0.8)}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a{display:block;color:#337ab7;font-family:inherit;font-weight:inherit}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:hover{color:#286090}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a>i{display:none}@media (min-width: 768px) and (max-width: 991px){.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{width:80px;margin:0 10px 10px 0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{height:80px;width:80px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:2.5em;line-height:55px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_title{font-size:90%}}@media (max-width: 767px){.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{width:80px;margin:0 1px 1px 0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{height:80px;width:80px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:2.5em;line-height:55px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_title{font-size:90%}}.o_portfolio_status_legend{margin-top:3em}.o_portfolio_status_legend h6{margin-bottom:5px}.o_ed_htitle h1,.o_ed_htitle .h1{font-size:30px}.o_ed_htitle h2,.o_ed_htitle .h2{font-size:24px}.o_ed_htitle h3,.o_ed_htitle .h3{font-size:18px}.o_ed_htitle h4,.o_ed_htitle .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_ed_htitle h2,.o_ed_htitle .h4{font-size:14px}.o_ed_htitle h5,.o_ed_htitle .h5{font-size:12px}.o_ed_htitle h6,.o_ed_htitle .h6{font-size:12px}@media print{.o_binder h1{font-size:43.2px;margin-top:10cm}.o_portfolio_section{margin-bottom:1cm}.o_portfolio_section h3:first-of-type{font-size:36px}.o_page_lead{border:0;border-bottom:1px solid #d9d9d9;border-radius:0;background-color:none;padding:0;margin-bottom:10px}.o_page_lead .o_portfolio_status_block{border-top:0;margin-bottom:0}.o_page_lead .o_media img{border:0}.o_page_lead .o_portfolio_categories{display:block;margin-left:0}.o_page_lead .o_portfolio_status_block{padding-top:0}.o_page_lead .o_page_summary{margin-top:1em;font-style:italic}.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.o_pf_content .o_forum,.o_pf_content .o_image,.o_pf_content .o_video,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_forum,.o_pf_content .o_wiki{padding:0;border-radius:0;border:0}.o_pf_content .o_cit .o_desc p,.o_pf_content .o_text .o_desc p,.o_pf_content .o_file .o_desc p,.o_pf_content .o_forum .o_desc p,.o_pf_content .o_image .o_desc p,.o_pf_content .o_video .o_desc p,.o_pf_content .o_efficiencystatement .o_desc p,.o_pf_content .o_feed .o_desc p,.o_pf_content .o_forum .o_desc p,.o_pf_content .o_wiki .o_desc p{margin:0}.o_efficiencystatement table{font-size:90%}.o_artefact_metadata{page-break-inside:avoid;border:0;border-left:5px solid #eee;padding-left:10px;font-size:80%}.o_artefact_metadata table td,.o_artefact_metadata table th{border:0 !important;padding:2px !important}.o_artefact_metadata table th:first-of-type{width:20%}.o_pf_video_placeholder{background-color:#f8f8f8 !important;-webkit-print-color-adjust:exact;color-adjust:exact}.o_pf_video_placeholder.visible-print-block{display:table !important}}.o_evaluation_form .o_evaluation_block{margin-top:2em;margin-bottom:2em}.o_evaluation_form .o_rubric_name{font-weight:bold;margin-bottom:1em}.o_evaluation_form .o_evaluation_step_labels{margin-bottom:1em;font-weight:bold}.o_evaluation_form .o_evaluation_step_labels div,.o_evaluation_form .o_evaluation_step_labels span{display:inline-block;text-align:center;align-self:flex-end;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o_evaluation_form .o_slider_wrapper{height:33px;overflow:hidden}.o_evaluation_form .o_slider{margin-bottom:1em}.o_evaluation_form .o_slider label{padding:0}.o_evaluation_form .o_slider input{padding:0;margin:0;position:relative}.o_evaluation_form .o_slider.hover{background-color:#f5f5f5}.o_evaluation_form .o_evaluation_continous .o_evaluation_no_response div.radio{padding:0;margin:0}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps{display:flex;justify-content:space-between}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps label{padding:0;margin:0;text-align:center}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps .radio{background-color:#f9f9f9;padding:0px;margin-top:0px;text-align:center}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps .radio:hover{background-color:#f5f5f5}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_no_response div.radio{margin-top:2px}.o_evaluation_form .o_evaluation_discrete_radio .o_evaluation_step_labels{display:flex;justify-content:space-between}.o_evaluation_form .o_slider .ui-slider.ui-slider-horizontal.ui-widget-content{margin-top:0.3em;margin-bottom:10px}.o_evaluation_form .o_evaluation_left_label{text-align:right;font-weight:normal}.o_evaluation_form .o_evaluation_left_label.o_evaluation_left_label_la{text-align:left;padding-left:0px;font-weight:normal}.o_evaluation_form .o_evaluation_right_label{text-align:left;font-weight:normal}.o_evaluation_form .o_evaluation_text_legend{margin-bottom:1em}.o_evaluation_form .o_evaluation_legend{padding-left:0.5em;margin-bottom:0.5em}.o_evaluation_form .o_evaluation_fileupload{margin-bottom:2em}.o_evaluation_form .o_evaluation_mc_other{margin-top:-10px;margin-left:10px;margin-right:10px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_slider{margin-left:15px;margin-right:15px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_end_label{text-align:right;padding-right:20px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_continous .x .tick{visibility:hidden}.o_evaluation_form .o_ed_rubrictablehandler .table{margin-top:5px}.o_evaluation_form .svg-container{display:inline-block;position:relative;width:100%;padding-bottom:50%;vertical-align:top;overflow:hidden}.o_evaluation_form .svg-content-responsive{display:inline-block;position:absolute;top:10px;left:0}.d3chart .o_eva_bar{fill:#337ab7}.d3chart .o_rubric_sufficient{fill:#5cb85c}.d3chart .o_rubric_neutral{fill:#f0ad4e}.d3chart .o_rubric_insufficient{fill:#d9534f}.d3chart .o_rubric_unrated{fill:#337ab7}.o_qual_hm_legend{padding:5px}.o_qual_hm_legend li{font-size:90%}.o_qual_hm_legend .ident{font-weight:bold}.o_evaluation_discrete_slider .o_evaluation_step_labels{position:relative}.o_evaluation_discrete_slider .o_evaluation_step_labels div:first-child{position:absolute;left:0px;text-align:left}.o_evaluation_discrete_slider .o_evaluation_step_labels div{display:inline-block;text-align:center}.o_evaluation_discrete_slider .o_evaluation_step_labels div:last-child{position:absolute;right:0px;text-align:right}.o_slider_overview{width:100%;height:20px;position:relative}.o_slider_overview .o_slider_overview_line{top:5px;left:0px;position:absolute;width:100%;height:11px;border:1px solid #999;border-radius:4px}.o_slider_overview .o_slider_overview_point{position:absolute;width:10px;height:10px;background-color:#337ab7}.o_evaluation_editor_form{margin:10px 10px 0 10px}.o_evaluation_editor_form .o_slider_editor{margin-top:10px}@media (max-width: 992px){.o_evaluation_editor_form .o_slider_editor{margin-bottom:20px}}@media (max-width: 992px){.o_evaluation_editor_form .o_evaluation_step_label{text-align:unset;margin-bottom:5px;padding-top:unset}}.o_evaluation_editor_form .o_evaluation_step_labels{display:inline-block}.o_evaluation_editor_form .o_evaluation_step_labels input{width:100%}.o_evaluation_editor_form .o_slider_descrete_radio{display:flex;justify-content:space-between}.o_evaluation_editor_form .o_slider_descrete_radio .radio{background-color:#f9f9f9;padding:0px;margin-top:0px;text-align:center}.o_evaluation_editor_form .o_slider_descrete_radio .radio:hover{background-color:#f5f5f5}@media (max-width: 992px){.o_evaluation_editor_form input[type="text"]{margin-bottom:5px}}.o_evaluation_editor_form .o_slider_continous{padding-top:10px;padding-bottom:-10px}.o_evaluation_editor_form .o_slider_descrete{padding-top:5px;padding-bottom:-5px}.o_evaluation_editor_form .o_evaluation_example{font-size:90%}.o_evaluation_editor_form .o_slider_top{margin-top:23px}.o_evaluation_editor_form .o_slider_buttons .pull-right div:not(:first-child){display:inline-block}.o_evaluation_editor_form .o_slider_buttons .pull-right .btn{margin-top:-3px}.o_evaluation_editor_form .o_slider_weight{max-width:40px}@media (max-width: 768px){.o_evaluation_form .o_evaluation_left_label{text-align:left;margin-bottom:0.5em}.o_evaluation_form .o_evaluation_right_label{text-align:right}.o_evaluation_form .o_evaluation_no_response{text-align:left}.o_evaluation_form .o_evaluation_no_response .o_evaluation_no_resp_value{font-weight:bold}.o_evaluation_form .o_slider{margin-bottom:2em}.o_evaluation_form .o_slider div{padding-left:0}.o_evaluation_form .o_slider .o_evaluation_no_response{margin-top:0.7em}}@media (min-width: 768px){.o_evaluation_form .o_evaluation_no_resp_value{display:none}}@media print{.o_evaluation_discrete_radio .o_slider .o_evaluation_steps div.radio{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#f9f9f9 !important}.o_icon_rubric_insufficient::before{color:#d9534f !important}.o_icon_rubric_neutral::before{color:#f0ad4e !important}.o_icon_rubric_sufficient::before{color:#5cb85c !important}}.o_eva_report_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_eva_report_print #o_print_brand img{width:100%}.o_eva_report_print .o_eva_content{margin-top:4em}.o_eva_report_print .o_eva_overview .panel table{margin:0px 0px 1px 0px}.o_eva_report_print .o_evaluation_duration,.o_eva_report_print .o_participated_users{display:none}.o_surv_run.withCmds .o_eva_report{margin-top:-44px}.o_eva_report .o_eva_overview .o_eva_rubric .table{margin-top:5px}.o_eva_report .o_ed_rubrictablehandler .o_table_footer{font-weight:bold}.o_eva_report .o_rubric_avg{font-weight:bold;white-sprace:nowrap}.o_eva_report .o_rubric_table .o_table_wrapper{margin-bottom:10px}.o_eva_report .o_rubric_table_legend{display:block}.o_eva_report .o_rubric_table_legend .ident{font-weight:bold}.o_eva_report .o_rubric_table_legend .list-inline{margin-bottom:0px}.o_eva_report .o_rubric_table_legend.o_last{margin-bottom:15px}.o_evaluation_execution .o_evaluation_anonymous_info{display:inherit}.o_qual_main .o_labeled.o_qual_dc_status_preparation,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_preparation{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_ready,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_ready{background-color:#ffd351;border-color:#ffd351;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_running,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_running{background-color:#933;border-color:#933;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_finished,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_finished{background-color:#14892c;border-color:#14892c;color:#fff}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_preparation{background-color:#384e64}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_ready{background-color:#ffc61e}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_running{background-color:#732626}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_finished{background-color:#0e5c1e}.o_qual_main .o_qual_dc_list tbody tr td:nth-child(1){padding-top:3px}.o_qual_main .o_labeled_light.o_qual_dc_status_preparation_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_preparation_light{border-color:#4a6785;color:#4a6785}.o_qual_main .o_labeled_light.o_qual_dc_status_ready_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_ready_light{border-color:#ffd351;color:#333}.o_qual_main .o_labeled_light.o_qual_dc_status_running_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_running_light{border-color:#933;color:#933}.o_qual_main .o_labeled_light.o_qual_dc_status_finished_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_finished_light{border-color:#14892c;color:#14892c}.o_qual_main .o_qual_exec_list tbody tr td:nth-child(1){padding-top:3px}.o_qual_main .o_qual_exec_status_future_light{border-color:#4a6785;color:#4a6785}.o_qual_main .o_qual_exec_status_ready_light{border-color:#ffd351;color:#333}.o_qual_main .o_qual_exec_status_participating_light{border-color:#933;color:#933}.o_qual_main .o_qual_exec_status_participated_light{border-color:#14892c;color:#14892c}.o_qual_main .o_qual_exec_status_over_light{border-color:#aaa;color:#aaa}.o_qual_execute_header .o_qual_context_table,.o_qual_report_header .o_qual_context_table{margin-bottom:0}.o_qual_execute_header .o_qual_context_table th,.o_qual_report_header .o_qual_context_table th{width:40%;border-top:none;padding:4px 8px}.o_qual_execute_header .o_qual_context_table td,.o_qual_report_header .o_qual_context_table td{width:60%;border-top:none;padding:4px 8px}.o_qual_ana_table .o_table_body{padding:0}.o_qual_ana_filter .o_date_range{margin-bottom:0px}.o_qual_ana_filter .o_date_range .control-label{margin-bottom:5px}.o_qual_ana_filter .o_date_range .o_date{margin-bottom:15px;padding-right:12px}.o_qual_ana_filter .o_date_range .o_date_range_from{padding-right:12px}.o_qual_ana_filter .o_date_range .o_date_range_to{padding-right:0px}.o_qual_hm_basecolor{background-color:#337ab7}.o_qual_hm .o_circle_container{display:flex}.o_qual_hm .o_circle_box{display:flex;align-items:center;justify-content:center}.o_qual_hm .o_circle{border-radius:50%}.o_qual_hm .o_circle.o_rubric_insufficient{background-color:#d9534f !important}.o_qual_hm .o_circle.o_rubric_neutral{background-color:#f0ad4e !important}.o_qual_hm .o_circle.o_rubric_sufficient{background-color:#5cb85c !important}.o_qual_hm .o_avg{display:flex;align-items:center;margin-left:5px}.o_qual_trend_invisible{visibility:hidden}.o_qual_trend .o_qual_ana_trend_up{transform:rotate(315deg);-webkit-transform:rotate(315deg);-moz-transform:rotate(315deg);-ms-transform:rotate(315deg);-o-transform:rotate(315deg)}.o_qual_trend .o_qual_ana_trend_down{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg)}.o_qual_trend .o_rubric_insufficient{color:#d9534f}.o_qual_trend .o_rubric_neutral{color:#f0ad4e}.o_qual_trend .o_rubric_sufficient{color:#5cb85c}.o_qual_trend .o_qual_ana_unrated{color:#337ab7}.o_qual_filtered_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_qual_filtered_print #o_print_brand img{width:100%}.o_qual_filtered_print .o_qual_content{margin-top:4em}.o_qual_filtered_print .o_groupby_config,.o_qual_filtered_print .o_slider_trend_config,.o_qual_filtered_print .o_qual_hm tr td:last-child,.o_qual_filtered_print .o_qual_hm tr th:last-child{display:none}.o_evaluation_bar_chart_legend{padding:5px}.o_evaluation_bar_chart_legend li{font-size:90%}.o_evaluation_bar_chart_legend .ident{font-weight:bold}@media (max-width: 768px){.o_hm_group_select{padding-bottom:12px}.o_hm_panel_body{margin-bottom:-12px}}@media (min-width: 768px){.o_hm_trend_row{padding-top:12px}}@media print{.o_qual_hm .o_circle{-webkit-print-color-adjust:exact;color-adjust:exact}.o_qual_hm .o_circle.o_rubric_insufficient{background-color:#d9534f !important}.o_qual_hm .o_circle.o_rubric_neutral{background-color:#f0ad4e !important}.o_qual_hm .o_circle.o_rubric_sufficient{background-color:#5cb85c !important}.o_qual_hm .o_circle.o_qual_hm_basecolor{background-color:#337ab7 !important}.o_qual_trend{-webkit-print-color-adjust:exact;color-adjust:exact}.o_qual_trend .o_rubric_insufficient::before{color:#d9534f !important}.o_qual_trend .o_rubric_neutral::before{color:#f0ad4e !important}.o_qual_trend .o_rubric_sufficient::before{color:#5cb85c !important}.o_qual_trend .o_qual_ana_unrated::before{color:#337ab7 !important}}.o_cit{position:relative;margin:10px 0}.o_cit blockquote.o_quote{color:#555;font-size:18px;margin-top:6px;margin-bottom:0;padding:0 12px;font-style:italic;padding:5px 5px 0;border:0}.o_cit blockquote.o_quote p:last-child:after{content:'1)';top:-0.5em;font-size:75%;line-height:0;position:relative;vertical-align:baseline}.o_cit .o_cit_bibinfo{font-size:90%;margin-left:1em;position:relative}.o_cit .o_cit_bibinfo>div:first-child:before{content:'1)';position:absolute;top:0.5em;left:-1em;font-size:75%;line-height:0;vertical-align:baseline}.o_cit .title,.o_cit .url,.o_cit .authors,.o_cit .pages,.o_cit .date,.o_cit .dateAdded,.o_cit .place,.o_cit .institution,.o_cit .issue,.o_cit .publisher,.o_cit .publicationTitle,.o_cit .edition,.o_cit .series,.o_cit .volume{margin-right:0.5em}.o_cit .title{font-style:italic}.o_cit .publicationTitle{color:black}.o_cit .links{padding-left:2em}.o_cit .notes{padding-left:2em;color:grey}.o_cit .note{font-style:italic}.o_cit .note p:first-child{margin-top:0}.o_cit .note p:first-child{margin-bottom:0}.o_cit .listing.web .item{padding-left:0;text-indent:0}.o_cit .listing.web .title{display:block;font-weight:bold;font-style:normal}.o_cit .listing.web .publicationTitle{display:block;font-style:italic}.o_cit .listing.web .url{display:block}.o_cit .listing.web .links{padding-left:0}.o_cit .listing.web .notes{padding-left:0}.o_cit .general-info{border-top:1px solid #eee;padding-top:30px;margin-top:30px}.o_cit .copyright{display:none}@media print{.o_cit blockquote.o_quote{page-break-inside:avoid}}.o_video_poster{position:relative;display:inline-block;width:400px;max-width:100%;height:225px;background-size:cover;background-repeat:no-repeat;border:1px solid #eee}.o_video_poster_select{text-align:center}.o_video_poster_select .o_video_poster{margin:5px}.o_video_poster_select .o_video_poster a{position:absolute;left:0;top:0;width:100%;height:100%}.o_video_poster_select .o_video_poster a span{position:absolute;bottom:0;width:100%;display:block;line-height:3em;background:#f8f8f8;opacity:0.8}.o_video_poster_select .o_video_poster a:hover{border:1px solid #bbb}.o_video_poster_select .o_video_poster a:hover span{opacity:0.9}.o_video_peekview{text-align:center}.o_video_listing .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_video_listing .o_video_entry{position:relative;display:inline-block;height:230px;width:250px;vertical-align:top;margin-right:10px}.o_video_listing .o_video_poster{width:250px;max-width:100%;height:140px;border:1px solid #eee}.o_video_listing .o_timecode{position:absolute;bottom:2px;right:3px;padding:3px 4px;background:#333;color:#fff;font-size:12px;line-height:12px}.o_video_listing .o_meta{padding:2px;font-size:11px}.o_video_listing .o_meta h5{font-size:14px;margin-top:0;margin-bottom:5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o_video_listing .o_date{margin-left:10px;display:inline-block}.o_video_listing .o_date:before{content:'\002022';margin-right:10px;display:inline-block}.o_video_run h1{font-size:1.8rem;font-weight:normal}.o_video_run .o_author{margin-top:0.5em;margin-bottom:1em;line-height:normal;font-size:90%;color:#3c763d}.o_video_run .o_ratings_and_comments{margin-top:2em;border-top:1px solid #eee;padding-top:1em}.o_video_chapter_editor .o_table_wrapper.o_table_flexi .table,.o_video_marker_editor .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_video_marker_editor .o_video_question.mejs__overlay{overflow:scroll}.o_video_question.mejs__overlay.o_video_large_question{align-items:flex-start;padding:1em 1em 0 1em;z-index:5}.o_video_question.mejs__overlay.o_video_large_question #o_qti_container{border:1px solid #eee}.o_video_marker{position:absolute;background-color:#efefef;opacity:0.85;border-left:3px solid #5bc0de;padding:5px}.o_video_marker.o_video_marker_gray{border-left-color:#333}.o_video_marker.o_video_marker_blue{border-left-color:#bce8f1}.o_video_marker.o_video_marker_green{border-left-color:#5cb85c}.o_video_marker.o_video_marker_yellow{border-left-color:#f0ad4e}.o_video_marker.o_video_marker_red{border-left-color:#d9534f}.o_video_question.mejs__overlay{width:100%;height:100%;background-color:rgba(255,255,255,0.5)}.o_video_question #itemBody,.o_video_question .modalFeedback{background-color:white;opacity:1.0}.o_video_question .o_assessmentitem_wrapper .o_qti_item_body{min-height:50px}.o_video_question #o_qti_assessment_test_timer{border:none;padding:5px;margin:0}.o_video_question #o_qti_progress .progress{height:10px}.o_video_question #o_qti_container{background-color:white;padding:5px;border-radius:3px}.o_video_question .o_sel_additional_feedback{float:left;font-size:26px}.o_video_question .o_sel_additional_feedback .o_icon_passed{color:#5cb85c}.o_video_question .o_sel_additional_feedback .o_icon_failed{color:#d9534f}.mejs__time-rail .o_video_marker_gray{background:#333}.mejs__time-rail .o_video_marker_blue{background:#bce8f1}.mejs__time-rail .o_video_marker_green{background:#5cb85c}.mejs__time-rail .o_video_marker_yellow{background:#f0ad4e}.mejs__time-rail .o_video_marker_red{background:#d9534f}.mejs__controls .mejs__sourcechooser-button>button{background:transparent;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}.mejs__controls .mejs__sourcechooser-button>button:before{content:"";color:white;font-size:18px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector{visibility:visible !important;width:170px;padding-left:10px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label{font-weight:normal;font-size:10px;width:140px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label:hover{color:#eee}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label .type{display:none}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li input{visibility:hidden;margin:0;width:0}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li input:checked+label{color:#d9534f}.mejs__controls .mejs__captions-button .mejs__captions-selector{right:-26px}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label{font-weight:normal;font-size:10px}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label:hover{color:#eee}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label .type{display:none}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li input{visibility:hidden;margin:0;width:0}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li input:checked+label{color:#d9534f}.mejs__button.mejs__speed-button{width:36px}.mejs__controls .mejs__speed-button>button{background:transparent;width:36px;margin:11px 0 0 0;font-size:11px;line-height:normal;color:#ffffff}.mejs__controls .mejs__speed-button .mejs__speed-selector{height:150px;top:auto;bottom:40px}.mejs__controls .mejs__speed-button .mejs__speed-selector ul li label{font-weight:normal;font-size:10px}.mejs__chapters .mejs__chapter .mejs__chapter-block .ch-title,.mejs__chapters .mejs__chapter .mejs__chapter-block .ch-time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.mejs__time-marker{background-color:#5bc0de}.o_userbulk_changedcell{font-style:italic;font-weight:bold}.o_qpool_source_status{text-align:center}.o_qitem_author{white-space:nowrap}a.o_qpool_status{margin:0 2px 2px 2px;text-align:left}.o_labeled.o_qpool_status_draft,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_draft{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_labeled.o_qpool_status_review,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_review{background-color:#ffd351;border-color:#ffd351;color:#fff}.o_labeled.o_qpool_status_revised,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_revised{background-color:#933;border-color:#933;color:#fff}.o_labeled.o_qpool_status_finalVersion,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_finalVersion{background-color:#14892c;border-color:#14892c;color:#fff}.o_labeled.o_qpool_status_endOfLife,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_endOfLife{background-color:#aaa;border-color:#aaa;color:#fff}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_draft{background-color:#384e64}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_review{background-color:#ffc61e}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_revised{background-color:#732626}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_finalVersion{background-color:#0e5c1e}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_endOfLife{background-color:#919191}.o_labeled_light.o_qpool_status_draft_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_draft_light{border-color:#4a6785;color:#4a6785}.o_labeled_light.o_qpool_status_review_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_review_light{border-color:#ffd351;color:#333}.o_labeled_light.o_qpool_status_revised_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_revised_light{border-color:#933;color:#933}.o_labeled_light.o_qpool_status_finalVersion_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_finalVersion_light{border-color:#14892c;color:#14892c}.o_labeled_light.o_qpool_status_endOfLife_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_endOfLife_light{border-color:#aaa;color:#aaa}.btn-arrow-right.o_qpool_qitem_draft{background:#f8f8f8;border-bottom-color:#4a6785;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_review{background:#f8f8f8;border-bottom-color:#ffd351;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_revised{background:#f8f8f8;border-bottom-color:#933;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_final{background:#f8f8f8;border-bottom-color:#14892c;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_end_of_life{background:#f8f8f8;border-bottom-color:#aaa;border-bottom-width:3px}.btn-arrow-right.o_qpool_status_slected{background-color:#e7e7e7;color:#555}.btn-arrow-right,.btn-arrow-left{position:relative;padding-left:18px;padding-right:18px;margin-bottom:5px}.btn-arrow-right{padding-left:36px}.btn-arrow-left{padding-right:36px}.btn-arrow-right:before,.btn-arrow-right:after,.btn-arrow-left:before,.btn-arrow-left:after{content:"";position:absolute;top:5px;width:22.627417px;height:22.627417px;background:inherit;border:inherit;border-left-color:transparent;border-bottom-color:transparent;border-radius:0px 4px 0px 0px;-webkit-border-radius:0px 4px 0px 0px;-moz-border-radius:0px 4px 0px 0px}.btn-arrow-right:before,.btn-arrow-right:after{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-o-transform:rotate(45deg);-ms-transform:rotate(45deg)}.btn-arrow-left:before,.btn-arrow-left:after{transform:rotate(225deg);-webkit-transform:rotate(225deg);-moz-transform:rotate(225deg);-o-transform:rotate(225deg);-ms-transform:rotate(225deg)}.btn-arrow-right:before,.btn-arrow-left:before{left:-11px}.btn-arrow-right:after,.btn-arrow-left:after{right:-11px}.btn-arrow-right:after,.btn-arrow-left:before{z-index:1}.btn-arrow-right:before,.btn-arrow-left:after{background-color:white}body.o_dmz{background:transparent}body.o_dmz #o_bg{position:absolute;top:0;left:0;width:100%;height:100%;border-top:50px solid transparent;border-bottom:70px solid transparent;background:url("../light/images/learn-bg.jpg");background-size:cover;background-position:center center;background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 )}body.o_dmz #o_bg:after{content:" ";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to right, rgba(255,255,255,0.1) 0.2%,rgba(255,255,255,0.6) 60%,rgba(255,255,255,0.8) 100%);background-size:cover;background-position:center center;background-repeat:no-repeat}body.o_dmz #o_toplink{display:none}body.o_dmz #o_main_wrapper,body.o_dmz #o_main_wrapper #o_main_container{background:transparent}body.o_dmz label>select{font-weight:normal}.o_login{padding-bottom:20px;padding-left:10%;padding-right:10%;text-align:right}.o_login .o_login_intro{padding-left:10%}.o_login .o_login_intro h1{margin-bottom:40px;color:#337ab7}.o_login .o_login_intro .lead{color:#333}.o_login .o_login_intro .lead h1,.o_login .o_login_intro .lead h2,.o_login .o_login_intro .lead h3,.o_login .o_login_intro .lead h4,.o_login .o_login_intro .lead .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_login .o_login_intro .lead h2,.o_login .o_login_intro .lead h5{margin-bottom:20px;color:#337ab7}.o_login .o_login_messages,.o_login .o_login_box{display:inline-block;width:400px;text-align:left}.o_login .o_login_messages .o_infomessage_wrapper{background:rgba(255,255,255,0.5);border:1px solid transparent;border-radius:4px;padding:6px 12px}.o_login .o_login_messages .o_infomessage_wrapper .o_info,.o_login .o_login_messages .o_infomessage_wrapper .o_warning,.o_login .o_login_messages .o_infomessage_wrapper .o_note{margin:0}.o_login .o_login_box{padding-top:10px}.o_login .o_login_providers{margin-bottom:6px;border-radius:4px;-webkit-box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3);box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3)}.o_login .o_login_providers a span{display:block;font-size:9px;padding-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_login .o_login_providers .o_icon_provider_olat{font-size:1em}.o_login .o_login_provider{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3);box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3)}.o_login .o_login_form{position:relative;padding:10px 12px}.o_login .o_login_form .o_login_pwd{position:absolute;bottom:2em;right:12px}.o_login .o_login_form .o_form .o_desc{margin:0 0 30px 0;padding:0;border-left:0;background-color:transparent}.o_login .o_login_register{display:block;line-height:2em;font-size:18px;text-align:center;color:#fff;background-color:#5bc0de;border-color:#46b8da;border-radius:4px;margin-top:16px;padding:10px 12px}.o_login .o_login_register:hover,.o_login .o_login_register:focus,.o_login .o_login_register.focus,.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{color:#fff;background-color:#31b0d5;border-color:#269abc}.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{background-image:none}.o_login .o_login_register.disabled,.o_login .o_login_register.disabled:hover,.o_login .o_login_register.disabled:focus,.o_login .o_login_register.disabled.focus,.o_login .o_login_register.disabled:active,.o_login .o_login_register.disabled.active,.o_login .o_login_register[disabled],.o_login .o_login_register[disabled]:hover,.o_login .o_login_register[disabled]:focus,.o_login .o_login_register[disabled].focus,.o_login .o_login_register[disabled]:active,.o_login .o_login_register[disabled].active,fieldset[disabled] .o_login .o_login_register,fieldset[disabled] .o_login .o_login_register:hover,fieldset[disabled] .o_login .o_login_register:focus,fieldset[disabled] .o_login .o_login_register.focus,fieldset[disabled] .o_login .o_login_register:active,fieldset[disabled] .o_login .o_login_register.active{background-color:#5bc0de;border-color:#46b8da}.o_login .o_login_register .badge{color:#5bc0de;background-color:#fff}.o_login .o_login_register small{font-size:14px}.o_login .o_login_social{position:relative;padding:10px 12px}.o_login .o_login_social li{padding:10px 12px}.o_login .o_login_social li>a{display:block;line-height:2em;text-align:center;font-size:18px;border-radius:4px;padding:10px 12px}.o_login .o_login_social .btn-default.o_sel_auth_facebook{color:#fff;background-color:#4568b2;border-color:#3e5da0}.o_login .o_login_social .btn-default.o_sel_auth_facebook:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_facebook.dropdown-toggle{color:#fff;background-color:#37538d;border-color:#2d4374}.o_login .o_login_social .btn-default.o_sel_auth_facebook:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_facebook.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled],.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook.active{background-color:#4568b2;border-color:#3e5da0}.o_login .o_login_social .btn-default.o_sel_auth_facebook .badge{color:#4568b2;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_twitter{color:#fff;background-color:#2cc5ff;border-color:#13beff}.o_login .o_login_social .btn-default.o_sel_auth_twitter:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_twitter.dropdown-toggle{color:#fff;background-color:#00b4f8;border-color:#009ad4}.o_login .o_login_social .btn-default.o_sel_auth_twitter:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_twitter.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled],.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter.active{background-color:#2cc5ff;border-color:#13beff}.o_login .o_login_social .btn-default.o_sel_auth_twitter .badge{color:#2cc5ff;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_google{color:#fff;background-color:#e15f4f;border-color:#dd4b39}.o_login .o_login_social .btn-default.o_sel_auth_google:hover,.o_login .o_login_social .btn-default.o_sel_auth_google:focus,.o_login .o_login_social .btn-default.o_sel_auth_google.focus,.o_login .o_login_social .btn-default.o_sel_auth_google:active,.o_login .o_login_social .btn-default.o_sel_auth_google.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_google.dropdown-toggle{color:#fff;background-color:#d83825;border-color:#ba3120}.o_login .o_login_social .btn-default.o_sel_auth_google:active,.o_login .o_login_social .btn-default.o_sel_auth_google.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_google.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_google.disabled,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled],.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google.active{background-color:#e15f4f;border-color:#dd4b39}.o_login .o_login_social .btn-default.o_sel_auth_google .badge{color:#e15f4f;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_linkedin{color:#fff;background-color:#0181bd;border-color:#0170a4}.o_login .o_login_social .btn-default.o_sel_auth_linkedin:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_linkedin.dropdown-toggle{color:#fff;background-color:#015e8a;border-color:#014667}.o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_linkedin.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled],.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin.active{background-color:#0181bd;border-color:#0170a4}.o_login .o_login_social .btn-default.o_sel_auth_linkedin .badge{color:#0181bd;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_adfs{color:#fff;background-color:#337ab7;border-color:#2e6da4}.o_login .o_login_social .btn-default.o_sel_auth_adfs:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_adfs.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.o_login .o_login_social .btn-default.o_sel_auth_adfs:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_adfs.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled],.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs.active{background-color:#337ab7;border-color:#2e6da4}.o_login .o_login_social .btn-default.o_sel_auth_adfs .badge{color:#337ab7;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect{color:#fff;background-color:#337ab7;border-color:#2e6da4}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.dropdown-toggle{color:#fff;background-color:#286090;border-color:#204d74}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled],.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active{background-color:#337ab7;border-color:#2e6da4}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect .badge{color:#337ab7;background-color:#fff}.o_old_browser{display:none}.o_browser_ie10 .o_old_browser{display:block}@media (max-width: 767px){body.o_dmz #o_bg{background:none;display:none}.o_login{padding:0}.o_login .o_login_intro{padding:0;text-align:left}.o_login .o_login_box_wrapper{text-align:center;padding:0}.o_login .o_login_box{padding-left:0;padding-right:0}.o_login .o_login_box .o_login_providers,.o_login .o_login_box .o_login_provider{-webkit-box-shadow:none;box-shadow:none}.o_login .o_login_messages,.o_login .o_login_box{width:100%;display:block}}.o_home_main h1{text-align:center}.o_home_main .o_icon_rss{line-height:20px;vertical-align:middle}.o_showall{font-size:12px;text-align:right;margin-bottom:5px;margin-top:10px}.o_portlet{position:relative;background-color:#fcfcfc;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_portlet .o_header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_portlet .o_content{padding:6px 12px}.o_portlet .o_portlet_table{margin:-12px;margin-bottom:-6px;margin-top:0}.o_portlet .o_table_empty.o_info{padding:6px}.o_portlet .o_toolbox{position:absolute;top:-1px;right:-1px;z-index:2;background-color:#fff;border:1px solid #faebcc;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;padding:6px 12px}.o_portlet .o_toolbox div{display:inline}.o_portlet .o_edit_shim{position:absolute;height:100%;width:100%;z-index:1;background:#fcf8e3;opacity:0.8}.o_inactive .o_header a{float:right;margin-left:12px;margin-top:10px}.o_portlet_dyk_q{margin-top:5px;font-style:italic}.o_portlet_dyk_a{margin:5px 0}.o_portlet_dyk_next{margin:5px 0;text-align:right}.o_library_icon:before{content:""}.o_library ul{list-style:none;margin:0 0 15px 0;padding:0}.o_library ul ul{margin:0}.o_library_overview .o_library_newest_files ul li{float:left;margin-right:15px}.o_library_catalog_title h2,.o_library_catalog_title h3,.o_library_catalog_title h4,.o_library_catalog_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_catalog_title h2{margin-top:0}.o_library_item{margin-bottom:10px;position:relative}.o_library_item .o_library_visual,.o_library_item .o_library_extra,.o_library_item .o_library_meta{margin-top:15px}.o_library_item .o_library_visual{float:left;background-color:#fff;border-radius:4px;border:1px solid #ddd}.o_library_item .o_library_visual .o_thumbnail_available,.o_library_item .o_library_visual .o_thumbnail_unavailable{background-size:146px auto;width:150px !important;height:150px !important;background-repeat:no-repeat;background-position:50% 50%}.o_library_item .o_library_visual .o_thumbnail_available:before,.o_library_item .o_library_visual .o_thumbnail_unavailable:before{content:none}.o_library_item .o_library_visual .o_thumbnail_available{background-size:146px auto}.o_library_item .o_library_visual .o_thumbnail_unavailable{display:none}.o_library_item .o_library_extra{float:right;width:200px}.o_library_item .o_library_meta{clear:both}.o_library_item .o_library_meta .o_library_desc{padding-bottom:10px}.o_library_item .o_library_meta small{display:block;word-wrap:break-word}.o_library_item h4,.o_library_item .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_item h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:normal}.o_library_item .btn{display:block;margin-bottom:0.5em}.o_library_item .o_comments{display:inline-block}.o_library_item .table{table-layout:fixed;word-wrap:break-word;margin-bottom:0}.o_library_item p.o_library_show_more{text-align:right;margin:0;padding-top:20px}.o_library_item .o_library_more{padding-top:20px;display:none}.o_library_folder{margin-top:-20px}.o_library .o_ratings_and_comments .o_rating_title,.o_library .o_ratings_and_comments .o_rating_explanation{display:none}@media (min-width: 768px){.o_library_item .o_library_meta{clear:none;margin-left:150px;margin-right:200px;padding:0 10px}.o_library_item .o_library_more{display:none}.o_library_item .o_library_more table tbody{vertical-align:top}.o_library_item .o_library_more table tr,.o_library_item .o_library_more table th,.o_library_item .o_library_more table td{display:inline-block}.o_library_item .o_library_more table tr{width:49%}.o_library_item .o_library_more table th{width:30%}.o_library_item .o_library_more table td{width:70%}}.o_library_item_compact .o_library_extra{width:auto}.o_library_item_compact .o_library_meta{padding:0 10px 0 0;margin:0;overflow:hidden}.o_library_item_compact .btn{display:inline-block}.o_library_item_compact h4,.o_library_item_compact .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_item_compact h2{overflow:hidden;margin-right:70px}.o_library_item_compact h4 a,.o_library_item_compact .o_cal .fc-header-title h2 a,.o_cal .fc-header-title .o_library_item_compact h2 a{text-overflow:ellipsis;white-space:nowrap}.o_library_item_compact p.o_library_show_more{padding:20px;position:absolute;top:0;right:0}span.o_translation_i18nitem{position:relative !important}span.o_translation_i18nitem a.o_translation_i18nitem_launcher{position:absolute !important;z-index:100 !important;width:18px !important;height:20px !important;top:0 !important;left:5px !important;background:#fff;border:1px solid #337ab7 !important;border-radius:3px;text-align:center;padding:0 !important}.o_user_infos{position:relative}.o_user_infos .o_user_portrait{position:absolute;top:0;left:15px;width:100px;height:100px}.o_user_infos .o_user_infos_inner{margin:0 30px 0 100px}.o_user_infos .o_user_infos_inner table{margin:0 30px 15px 30px}.o_useradmin .o_user_infos .o_user_infos_inner{margin-right:45px}div.o_skype_button{display:inline-block}div.o_skype_button p{margin:0 0 0 0}div.o_skype_button p a img{margin:0 !important;vertical-align:middle !important}.o_useradmin div#o_main_toolbar.o_toolbar{margin-top:0px}.o_members_pagination{text-align:center}.o_bcard_logo{margin-left:10px;height:66px}.o_bcard_title_with_logo{clear:both;padding:20px 0 0 0}.o_visitingcard_image,.o_visitingcard_logo{height:66px}.o_visitingcard .o_icon_visitingcard{display:none}.o_visitingcard .o_portrait_avatar,.o_visitingcard .o_portrait_dummy,.o_visitingcard .o_portrait_dummy_female_big,.o_visitingcard .o_portrait_dummy_male_big,.o_visitingcard .o_portrait_anonymous{width:66px;height:66px;margin-right:10px}@media (max-width: 767px){.o_visitingcard .o_portrait_avatar,.o_visitingcard .o_portrait_dummy,.o_visitingcard .o_portrait_dummy_female_big,.o_visitingcard .o_portrait_dummy_male_big,.o_visitingcard .o_portrait_anonymous{width:50px;height:50px;margin:5px 5px 0 0}.o_visitingcard_image,.o_visitingcard_logo{height:50px}.o_visitingcard_logo,.o_bcard_logo{height:50px;margin:5px 0 0 5px}.o_visitingcard_logo img,.o_bcard_logo img{position:relative;transform:scale(.7575757576);top:-8px}}@media (max-width: 414px){.o_visitingcard_logo img{max-width:260px}}@media (max-width: 375px){.o_visitingcard_logo img{max-width:220px}}@media (max-width: 320px){.o_visitingcard_logo img{max-width:180px}.o_bcard_logo img{max-width:150px}}.o_gta_coach_selection .o_noti{display:inline-block;float:none;margin:0}.o_gta_coach_selection .o_gta_coach_selection_bar{position:relative}.o_gta_coach_selection .o_gta_coach_selection_bar .o_noti{position:absolute;top:3px;right:0}p.o_gta_reopen_warning{margin-top:-20px}.o_lecture_authorized_absence div.form-inline,.o_lecture_authorized_absence div.o_navbar-form{display:inline}.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_date,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_startTime,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_endTime,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_details,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_tools{width:1%}.o_lectures_teacher_overview .o_lectures_current_wrapper{border:1px solid transparent;background:#f8f8f8;border-radius:4px;margin:10px -10px 20px -10px;padding:10px}.o_lectures_teacher_overview .o_lectures_current_wrapper .o_button_group{margin-bottom:0}.o_lectures_teacher_overview .o_lectures_teacher_search .o_form .o_date{padding-right:10px;position:relative}.o_lectures_teacher_overview .o_lectures_teacher_search div.o_chelp_wrapper_and_buttons{position:absolute;top:0;right:0}.o_header_with_buttons .o_day_chooser{position:relative;float:right}.o_lectures_rollcall legend{margin-bottom:10px}.o_lectures_rollcall .o_desc,.o_lectures_rollcall .o_preparation{margin:0}.o_rollcall_next_previous_group{text-align:center}.o_rollcall_next_previous_group a.o_sel_close{float:left}.o_rollcall_next_previous_group a.o_sel_close span{display:none}.o_rollcall_next_previous_group .form-control{display:inline;width:auto}@media (max-width: 767px){.o_rollcall_next_previous_group a span{display:none}}.o_lecture_free{color:#777}.o_rollcall_portrait>div{margin:0 auto 10px auto;width:100px}.o_edubase_pv{overflow:hidden;padding-top:10px}.o_edubase_pv_fig{display:inline-block;vertical-align:top;width:110px;margin-right:3%}.o_edubase_run_enabled .o_edubase_page{font-size:12px;color:#777}.o_edubase_run_disabled .o_edubase_booksection{margin-right:3%;margin-bottom:3%;width:177px;display:inline-table}.o_edubase_run_disabled .o_edubase_page{font-size:12px;color:#777}.o_edubase_bs_buttons{padding-top:10px}.o_edubase_bs_book_id{margin-top:-2px}.o_edubase_bs_details{margin-left:-20px}.o_edubase_bs_details_label{visibility:hidden}.o_edubase_bs_cover object{margin-left:10px;margin-top:10px;height:120px}.o_edubase_bs_cover img{margin-left:10px;margin-top:10px;height:120px}.o_edubase_edit_books .o_icon_error{visibility:hidden}.o_edubase_edit_books .o_icon_help{margin-bottom:0px}.o_edubase_edit_books .row{margin-bottom:5px}.o_edusharing_container.o_in_iframe .edusharing_metadata_wrapper{margin-top:5px}.o_edusharing_container.o_in_iframe .edusharing_metadata.open{position:unset;margin:0;padding:0}.o_edusharing_container.o_in_iframe .edusharing_metadata.open:before{content:unset;border:unset;top:unset;position:unset;left:unset;width:unset;height:unset}.o_edusharing_container.o_hide_license .license{display:none}.o_edusharing_container.o_hide_infos .edusharing_metadata_wrapper{display:none}.o_edusharing_left{display:block;float:left;margin:5px 5px 5px 0}.o_edusharing_right{display:block;float:right;margin:5px 0 5px 5px}.o_edusharing_inline{display:inline-block;margin:0 5px}.o_edusharing_none{display:block;float:none;margin:5px 0}.eduContainer{width:180px;color:transparent}.edusharing_spinner_inner{width:30px;height:50px;display:inline-block}.edusharing_spinner1{background:url("../light/images/edusharing/hex1.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.1s;-moz-animation-delay:0.1s;animation-delay:0.1s}.edusharing_spinner2{background:url("../light/images/edusharing/hex2.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.25s;-moz-animation-delay:0.25s;animation-delay:0.25s}.edusharing_spinner3{background:url("../light/images/edusharing/hex3.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.5s;-moz-animation-delay:0.5s;animation-delay:0.5s}@-webkit-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-moz-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-ms-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-o-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5) rotate(90deg)}100%{transform:scale(1)}}body.o_doceditor_body{margin-bottom:0px}body.o_doceditor_body .o_container_offcanvas{max-width:100%}body.o_doceditor_body .container-fluid{padding-left:0px;padding-right:0px;margin-left:0px;margin-right:0px}body.o_doceditor_body #o_toplink{display:none}.o_doceditor{margin-top:10px}.o_doceditor .o_doceditor_config .nav button{margin-top:3px}.o_doceditor .navbar-collapse{border-top:0 !important}.o_doceditor .navbar-collapse.collapse{display:block !important}.o_doceditor .navbar-nav{margin:0}.o_doceditor .navbar-nav>li,.o_doceditor .navbar-nav{float:left !important}.o_doceditor .navbar-right{float:right !important}.o_doceditor .navbar-nav>li>.dropdown-menu{background-color:#f8f8f8;border-color:#e7e7e7;position:absolute;right:0;left:auto}.o_doceditor .navbar-nav>li>a{padding-top:10px !important;padding-bottom:10px !important;line-height:20px !important}.o_doceditor .o_collabora iframe,.o_doceditor .o_onlyoffice iframe,.o_doceditor .o_office365 iframe{width:100%;height:calc(100vh - 61px);height:calc(var(--doceditorvh, 1vh) * 100 - 61px);margin-top:10px;border-width:0px}.o_doceditor.o_web_document .o_collabora iframe,.o_doceditor.o_web_document .o_onlyoffice iframe,.o_doceditor.o_web_document .o_office365 iframe{width:100%;height:calc(100vh - 321px);height:calc(var(--doceditorvh, 1vh) * 100 - 321px);margin-top:10px;margin-bottom:10px;border-width:1px}.o_doceditor.o_web_document_edit .o_collabora iframe,.o_doceditor.o_web_document_edit .o_onlyoffice iframe,.o_doceditor.o_web_document_edit .o_office365 iframe{width:100%;height:calc(100vh - 276px);height:calc(var(--doceditorvh, 1vh) * 100 - 276px);margin-top:10px;margin-bottom:25px;border-width:1px}.o_doceditor .o_file_editor,.o_doceditor .o_doceditor_data_transfer{margin-right:15px;margin-left:15px}.o_web_content .o_doceditor{margin-top:0px}.o_taxonomy div#o_main_toolbar.o_toolbar{margin-top:0px}.o_taxonomy_listing.o_rendertype_custom .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_taxonomy_listing.o_rendertype_custom .o_taxonomy_row{position:relative;display:inline-block;height:225px;width:450px;vertical-align:top;margin-right:10px}.o_taxonomy_listing.o_rendertype_custom .o_taxonomy_row ul{padding-left:2em}.ui-widget{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:100%}.ui-widget-header{border-top:none;border-left:none;border-right:none;border-bottom:1px solid #eee;background:#fff;font-weight:bold}.ui-icon,.ui-widget-content .ui-icon,.ui-widget-header .ui-icon,.ui-state-default .ui-icon,.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-active .ui-icon,.ui-state-highlight .ui-icon,.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background:none;background-image:none}.ui-dialog{-webkit-box-shadow:0px 1px 8px -1px rgba(0,0,0,0.35);box-shadow:0px 1px 8px -1px rgba(0,0,0,0.35);background-color:#fefefe}.ui-dialog .ui-widget-header .ui-dialog-title{color:#337ab7;font-weight:500;font-family:inherit;line-height:1.1}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close:before{content:"ï€" !important}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close span{display:none}.ui-dialog .ui-widget-header .ui-button.ui-corner-all{border:none !important;background:#fff !important;float:right}.ui-dialog .ui-widget-content{border-color:#fff;padding:5px;overflow:auto;background:white !important}.ui-dialog .ui-dialog-titlebar{padding:4px 7px 4px 7px;background-color:#eee !important}.ui-dialog.ui-corner-all{border-radius:4px}.ui-dialog.ui-widget-content{border:1px solid transparent}.ui-dialog.o_modal-ui{max-width:100vw;max-height:100vh}.ui-dialog.o_modal-ui div.ui-dialog-buttonpane{display:none}@media (max-width: 767px){.ui-dialog.o_modal-ui{height:100vh !important;width:100vw !important}.ui-dialog.o_modal-ui div.ui-dialog-content{height:90vh !important}}.ui-slider.ui-slider-horizontal.ui-widget-content{border-color:#aaa;background:#f9f9f9}.ui-slider.ui-slider-horizontal.ui-widget-content.ui-state-disabled{opacity:0.65}.o_has_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:1px solid #337ab7;background-image:none;background-color:#337ab7}.o_no_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:3px solid #337ab7;background-image:none}.ui-datepicker{z-index:2000 !important;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.ui-datepicker .ui-widget-header .ui-corner-all,.ui-datepicker .ui-widget-header .ui-datepicker-next.ui-corner-all{border:none !important;background:#fff !important}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e:before{content:"ï¡";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w:before{content:"ï ";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e,.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w{font-family:'FontAwesome';display:inline-block;background-image:none;background-position:0 0;font-weight:normal;text-indent:0;color:white}.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-next-hover{top:2px}.ui-datepicker .ui-state-default{background:#eee}.ui-datepicker .ui-state-highlight,.ui-datepicker .ui-widget-content .ui-state-highlight{border:1px solid #2e6da4;background:#337ab7;color:#fff}.ui-datepicker.ui-corner-all{border-radius:4px}.ui-datepicker.ui-widget-content{border:1px solid transparent}label.mce-label{display:inline;max-width:150px;margin-bottom:0;font-weight:normal}.o_richtext_mce_without_path .mce-statusbar{border:none}.o_richtext_mce_without_path .mce-path{display:none !important}.o_richtext_mce_without_path .mce-menubtn.mce-fixed-width span{width:auto}.o_richtext_mce>.o_richtext_mce_modes{text-align:right;padding-right:4px}.o_richtext_mce>.o_richtext_mce_modes a{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}i.mce-ico.mce-i-media,i.mce-ico.mce-i-movie,i.mce-ico.mce-i-help,i.mce-ico.mce-i-gaptext,i.mce-ico.mce-i-gapnumerical,i.mce-ico.mce-i-hottext,i.mce-ico.mce-i-edit{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}i.mce-ico.mce-i-media:before{content:""}i.mce-ico.mce-i-movie:before{content:""}i.mce-ico.mce-i-gaptext:before{content:"ï…"}i.mce-ico.mce-i-gapnumerical:before{content:""}i.mce-ico.mce-i-hottext:before{content:"ï"}i.mce-ico.mce-i-math:before{content:'\03A3'}i.mce-ico.mce-i-edit:before{content:"ï„"}i.mce-ico.mce-i-help{width:9px;height:9px;padding-top:1px}i.mce-ico.mce-i-help:before{content:"ï™";color:white}.mce-tabs span.o_chelp_wrapper{float:right;margin:5px}.mce-wordcount:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0);content:"ï™"}.mce-danger .mce-wordcount:after{color:#d9534f;content:"ïª"}.mce-statusbar.mce-danger{background-color:#f2dede}.mce-textbox.mce-danger{border-color:#ce8383;background-color:#f2dede}@media (max-width: 470px){.mce-foot .mce-container-body.mce-abs-layout{left:-337px}}div.o_table_search>span.twitter-typeahead{padding-top:5px}.tag.label.label-info{margin-right:3px}@media print{a[href]:after{content:""}#o_header_wrapper,#o_offcanvas_right,#o_navbar_wrapper,#o_footer_wrapper,#o_toplink,#o_main_left,#o_main_right,#o_main_toolbar,#jsMath_PrintWarning,.o_segments,.o_table_toolbar,.o_breadcrumb,.o_bookmark,.o_noti,.o_opener,.o_hide,.o_noprint{display:none !important}.o_container_offcanvas{max-width:100%;margin-left:5px;margin-right:5px}.o_print_break_avoid{page-break-inside:avoid}.o_print_break_before{page-break-before:always}.o_print_break_after{clear:both;page-break-after:always}.btn{display:none}.o_form textarea,.o_form .form-control.textarea_disabled{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fff !important;height:auto !important;color:#000 !important;resize:none}#o_comment_form_link,.o_comments form{display:none !important}.o_avatar{display:none}body.o_dmz{background:white !important;-webkit-print-color-adjust:exact;color-adjust:exact}.modal-content{border:0}.modal-header{display:none}.modal-body{padding:0}.modal-dialog{margin:0 !important;width:100% !important;height:100% !important;background:#fff !important;-webkit-print-color-adjust:exact;color-adjust:exact}.progress{page-break-inside:avoid;-webkit-print-color-adjust:exact;color-adjust:exact;background-color:rgba(0,0,0,0.1) !important;border:1px solid rgba(0,0,0,0.5)}.progress-bar{-webkit-print-color-adjust:exact;background-color:#000 !important;border:10px solid #000}.ui-slider.ui-slider-horizontal.ui-widget-content{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f9f9f9 !important}.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{-webkit-print-color-adjust:exact;color-adjust:exact}.o_has_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{background-color:#337ab7 !important}.o_no_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:none !important}.radial-progress,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{page-break-inside:avoid;-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#eee !important}.radial-progress .circle .mask .fill{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#000 !important}.radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#fff !important}.radial-progress .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{opacity:0.3;transition:opacity 0.3}.radial-progress .inset .bgIcon:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon:before,.radial-progress .inset .o_icon_progress_danger:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .o_icon_progress_danger:before,.radial-progress .inset .o_icon_progress_success:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .o_icon_progress_success:before{opacity:0.3;transition:opacity 0.3;color:#777 !important}.radial-progress:not([data-progress="0"]) .inset .bgIcon{opacity:0.3;transition:opacity 0.3;color:#777 !important}body{margin:0;zoom:0.6}table,figure,figure{page-break-inside:avoid}h1,h2,h3,h4,.o_cal .fc-header-title h2,h5,h6{page-break-after:avoid}.o_disclaimer .o_disclaimer_content{max-height:none}}.o_highscore .o_position{text-align:center;font-size:1.2em;font-weight:bold}.o_highscore .o_position h2{font-size:3em;font-weight:700;line-height:1.2em}@media screen and (-webkit-min-device-pixel-ratio: 0){.o_highscore .o_position h2{background:linear-gradient(330deg, #e05252 0%, #99e052 25%, #52e0e0 50%, #9952e0 75%, #e05252 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline}.o_highscore .o_position h2:after{content:"\A";white-space:pre}}.o_highscore .o_position_relative{font-size:1em;font-weight:normal}.o_highscore .o_podium{position:relative;vertical-align:bottom;height:300px;margin-bottom:50px}.o_highscore .o_rank{width:30%;position:absolute;bottom:0;text-shadow:rgba(102,102,102,0.5) 0 -1px 0,rgba(255,255,255,0.6) 0 2px 1px}.o_highscore .o_rank:before{position:absolute;bottom:0;left:0;width:100%;text-align:center}.o_highscore .o_rank .o_name{position:absolute;top:100%;width:100%;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:1em;text-shadow:none}.o_highscore .o_rank .o_score{color:#777;font-size:90%;width:100%;text-align:center;position:absolute;top:-20px;text-shadow:none}.o_highscore .o_rank .o_singleportrait{position:absolute;width:100%;text-align:center;top:-125px}.o_highscore .o_rank .o_rank_portraits{position:relative;left:0;top:-210px;height:180px;width:200px;text-align:center;vertical-align:bottom;display:table-cell}.o_highscore .o_rank .o_rank_portraits ul{display:inline-block}.o_highscore .o_rank .o_rank_portraits .o_portrait{margin:5px}.o_highscore .o_first{height:150px;left:30%;border:1px solid #d9d9d9;border-top-left-radius:4px;border-top-right-radius:4px;background:gold;background:-moz-linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);background:-webkit-linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);background:linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 )}.o_highscore .o_first:before{content:"1";font-size:700%;line-height:150px;color:#666}.o_highscore .o_second{height:100px;left:0;background:silver;background:-moz-linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);background:-webkit-linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);background:linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 );border-left:1px solid #d9d9d9;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-top-left-radius:4px}.o_highscore .o_second:before{content:"2";font-size:500%;line-height:100px;color:#666}.o_highscore .o_third{height:80px;left:60%;background:#cd7f32;background:-moz-linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);background:-webkit-linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);background:linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 );border-right:1px solid #d9d9d9;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-top-right-radius:4px}.o_highscore .o_third:before{content:"3";font-size:300%;line-height:80px;color:#666}.o_highscore .o_histogram{position:relative;bottom:-40px;margin-bottom:40px}.o_highscore .o_histogram .d3chart{width:100%;padding-top:50px;height:300px}.o_highscore .o_histogram .d3chart text{fill:#888}.o_highscore .o_histogram .d3chart .axis path,.o_highscore .o_histogram .d3chart .axis line{stroke:#888}.o_highscore .o_histogram .d3chart .o_myself{fill:#337ab7}.o_highscore .o_histogram .d3chart .o_myself:hover{fill:#5094ce}.o_highscore .o_histogram .d3chart .o_other{fill:#777}.o_highscore .o_histogram .d3chart .o_other:hover{fill:#919191}.o_highscore .o_histogram .d3chart .o_empty{fill:#000}.o_listing .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_listing table th:nth-of-type(1),.o_listing table th :nth-of-type(2){width:5em} /*# sourceMappingURL=theme.css.map */ diff --git a/src/main/webapp/static/themes/light/theme.css.map b/src/main/webapp/static/themes/light/theme.css.map index 8f1b3349f419204c8228fcd91b9490255848e4bf..1f67205886cb6cfe8bda5da470302fa6ebf32f8e 100644 --- a/src/main/webapp/static/themes/light/theme.css.map +++ b/src/main/webapp/static/themes/light/theme.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "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", +"mappings": "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", "sources": ["_license.scss","../../bootstrap/stylesheets/bootstrap/_normalize.scss","../../bootstrap/stylesheets/bootstrap/_print.scss","../../bootstrap/stylesheets/bootstrap/_scaffolding.scss","../../bootstrap/stylesheets/bootstrap/mixins/_vendor-prefixes.scss","_config.scss","../../bootstrap/stylesheets/bootstrap/_variables.scss","../../bootstrap/stylesheets/bootstrap/mixins/_tab-focus.scss","../../bootstrap/stylesheets/bootstrap/mixins/_image.scss","../../bootstrap/stylesheets/bootstrap/_type.scss","../../bootstrap/stylesheets/bootstrap/mixins/_text-emphasis.scss","../../bootstrap/stylesheets/bootstrap/mixins/_background-variant.scss","../../bootstrap/stylesheets/bootstrap/mixins/_clearfix.scss","../../bootstrap/stylesheets/bootstrap/mixins/_text-overflow.scss","../../bootstrap/stylesheets/bootstrap/_code.scss","../../bootstrap/stylesheets/bootstrap/_grid.scss","../../bootstrap/stylesheets/bootstrap/mixins/_grid.scss","../../bootstrap/stylesheets/bootstrap/mixins/_grid-framework.scss","../../bootstrap/stylesheets/bootstrap/_tables.scss","../../bootstrap/stylesheets/bootstrap/mixins/_table-row.scss","../../bootstrap/stylesheets/bootstrap/_forms.scss","../../bootstrap/stylesheets/bootstrap/mixins/_forms.scss","../../bootstrap/stylesheets/bootstrap/_buttons.scss","../../bootstrap/stylesheets/bootstrap/mixins/_buttons.scss","../../bootstrap/stylesheets/bootstrap/mixins/_opacity.scss","../../bootstrap/stylesheets/bootstrap/_component-animations.scss","../../bootstrap/stylesheets/bootstrap/_dropdowns.scss","../../bootstrap/stylesheets/bootstrap/mixins/_nav-divider.scss","../../bootstrap/stylesheets/bootstrap/mixins/_reset-filter.scss","../../bootstrap/stylesheets/bootstrap/_button-groups.scss","../../bootstrap/stylesheets/bootstrap/mixins/_border-radius.scss","../../bootstrap/stylesheets/bootstrap/_input-groups.scss","../../bootstrap/stylesheets/bootstrap/_navs.scss","../../bootstrap/stylesheets/bootstrap/_navbar.scss","../../bootstrap/stylesheets/bootstrap/mixins/_nav-vertical-align.scss","../../bootstrap/stylesheets/bootstrap/_breadcrumbs.scss","../../bootstrap/stylesheets/bootstrap/_pagination.scss","../../bootstrap/stylesheets/bootstrap/mixins/_pagination.scss","../../bootstrap/stylesheets/bootstrap/_pager.scss","../../bootstrap/stylesheets/bootstrap/_labels.scss","../../bootstrap/stylesheets/bootstrap/mixins/_labels.scss","../../bootstrap/stylesheets/bootstrap/_badges.scss","../../bootstrap/stylesheets/bootstrap/_jumbotron.scss","../../bootstrap/stylesheets/bootstrap/_thumbnails.scss","../../bootstrap/stylesheets/bootstrap/_alerts.scss","../../bootstrap/stylesheets/bootstrap/mixins/_alerts.scss","../../bootstrap/stylesheets/bootstrap/_progress-bars.scss","../../bootstrap/stylesheets/bootstrap/mixins/_gradients.scss","../../bootstrap/stylesheets/bootstrap/mixins/_progress-bar.scss","../../bootstrap/stylesheets/bootstrap/_media.scss","../../bootstrap/stylesheets/bootstrap/_list-group.scss","../../bootstrap/stylesheets/bootstrap/mixins/_list-group.scss","../../bootstrap/stylesheets/bootstrap/_panels.scss","../../bootstrap/stylesheets/bootstrap/mixins/_panels.scss","../../bootstrap/stylesheets/bootstrap/_responsive-embed.scss","../../bootstrap/stylesheets/bootstrap/_wells.scss","../../bootstrap/stylesheets/bootstrap/_close.scss","../../bootstrap/stylesheets/bootstrap/_modals.scss","../../bootstrap/stylesheets/bootstrap/_tooltip.scss","../../bootstrap/stylesheets/bootstrap/_popovers.scss","../../bootstrap/stylesheets/bootstrap/_utilities.scss","../../bootstrap/stylesheets/bootstrap/mixins/_center-block.scss","../../bootstrap/stylesheets/bootstrap/mixins/_hide-text.scss","../../bootstrap/stylesheets/bootstrap/_responsive-utilities.scss","../../bootstrap/stylesheets/bootstrap/mixins/_responsive-visibility.scss","modules/_bootstrap.scss","modules/_fonts.scss","../../font-awesome/scss/_path.scss","../../font-awesome/scss/_core.scss","../../font-awesome/scss/_larger.scss","../../font-awesome/scss/_fixed-width.scss","../../font-awesome/scss/_list.scss","../../font-awesome/scss/_variables.scss","../../font-awesome/scss/_bordered-pulled.scss","../../font-awesome/scss/_animated.scss","../../font-awesome/scss/_rotated-flipped.scss","../../font-awesome/scss/_mixins.scss","../../font-awesome/scss/_stacked.scss","modules/_icons.scss","modules/_emoticons.scss","modules/_helpers.scss","modules/_type.scss","modules/_content_embedded.scss","modules/_mixins.scss","modules/_tinymce.scss","modules/_radial-progress.scss","modules/_layout.scss","modules/_main.scss","modules/_footer.scss","modules/_navbar.scss","modules/_toolbar.scss","modules/_offcanvas.scss","modules/_dialog.scss","modules/_tree.scss","modules/_breadcrumb.scss","modules/_form.scss","modules/_table.scss","modules/_im.scss","modules/_flags.scss","modules/_rating_and_comments.scss","modules/_chart.scss","modules/_forum.scss","modules/_various_modules.scss","modules/_autocomplete.scss","modules/_search.scss","modules/_wizard.scss","modules/_process.scss","modules/_cal.scss","modules/_pagecontenteditor.scss","modules/_coursesite.scss","modules/_repository.scss","modules/_course.scss","modules/_curriculum.scss","modules/_qti.scss","modules/_qti21.scss","modules/_devel.scss","modules/_wiki.scss","modules/_portfolio.scss","modules/_portfoliomaps/_epmst_default.scss","modules/_portfoliomaps/_mixins.scss","modules/_portfoliomaps/_epmst_comic.scss","modules/_portfoliomaps/_epmst_leather.scss","modules/_portfoliomaps/_epmst_green.scss","modules/_portfoliomaps/_epmst_green2.scss","modules/_portfoliomaps/_epmst_green3.scss","modules/_portfoliomaps/_epmst_green4.scss","modules/_portfoliomaps/_epmst_red.scss","modules/_portfoliomaps/_epmst_red2.scss","modules/_portfoliomaps/_epmst_red3.scss","modules/_portfoliomaps/_epmst_red4.scss","modules/_portfoliomaps/_epmst_blue.scss","modules/_portfoliomaps/_epmst_blue2.scss","modules/_portfoliomaps/_epmst_blue3.scss","modules/_portfoliomaps/_epmst_blue4.scss","modules/_portfolio_v2.scss","modules/_evaluation_form.scss","modules/_quality.scss","modules/_citation.scss","modules/_video.scss","modules/_admin.scss","modules/_qpool.scss","modules/_dmz.scss","modules/_portal.scss","modules/_library.scss","modules/_translationtool.scss","modules/_user.scss","modules/_members.scss","modules/_grouptask.scss","modules/_lecture.scss","modules/_edubase.scss","modules/_edusharing.scss","modules/_doceditor.scss","modules/_taxonomy.scss","modules/_thirdparty.scss","modules/_print.scss","modules/_highscore.scss"], "names": [], "file": "theme.css" diff --git a/src/main/webapp/static/themes/openolat/content.css.map b/src/main/webapp/static/themes/openolat/content.css.map index a8183992a3cc7d71eb2f91b602b005a4c094aaa8..665e184564ea5699e2bbdd5d6d336a470691e539 100644 --- a/src/main/webapp/static/themes/openolat/content.css.map +++ b/src/main/webapp/static/themes/openolat/content.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "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", +"mappings": "CAEA,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,qDAAsD,EAC3D,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAEpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,2DAA4D,EACjE,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAGpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,sDAAuD,EAC5D,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAEpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,4DAA6D,EAClE,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAGpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,wDAAyD,EAC9D,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAEpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,uDAAwD,EAC7D,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAGpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,uDAAwD,EAC7D,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAEpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,6DAA8D,EACnE,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAGpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,qDAAsD,EAC3D,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAEpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,2DAA4D,EACjE,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAGpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,8CAA+C,EACpD,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EAEpB,SAKC,EAJC,UAAW,EAAE,OAAQ,EACrB,EAAG,EAAE,4DAA6D,EAClE,UAAW,EAAE,EAAG,EAChB,SAAU,EAAE,KAAM,EC3EpB;;;;;;;;;;;;;;;;;;;;;;;;IAwBG,DC1BH,4DAA4D,AAQ5D,IAAK,CACH,WAAW,CAAE,UAAU,CACvB,oBAAoB,CAAE,IAAI,CAC1B,wBAAwB,CAAE,IAAI,CAOhC,IAAK,CACH,MAAM,CAAE,CAAC,CAaX,0FAYQ,CACN,OAAO,CAAE,KAAK,CAQhB,2BAGM,CACJ,OAAO,CAAE,YAAY,CACrB,cAAc,CAAE,QAAQ,CAQ1B,qBAAsB,CACpB,OAAO,CAAE,IAAI,CACb,MAAM,CAAE,CAAC,CAQX,iBACS,CACP,OAAO,CAAE,IAAI,CAUf,CAAE,CACA,gBAAgB,CAAE,WAAW,CAO/B,gBACQ,CACN,OAAO,CAAE,CAAC,CAUZ,WAAY,CACV,aAAa,CAAE,UAAU,CAO3B,QACO,CACL,WAAW,CAAE,IAAI,CAOnB,GAAI,CACF,UAAU,CAAE,MAAM,CAQpB,EAAG,CACD,SAAS,CAAE,GAAG,CACd,MAAM,CAAE,QAAQ,CAOlB,IAAK,CACH,UAAU,CAAE,IAAI,CAChB,KAAK,CAAE,IAAI,CAOb,KAAM,CACJ,SAAS,CAAE,GAAG,CAOhB,OACI,CACF,SAAS,CAAE,GAAG,CACd,WAAW,CAAE,CAAC,CACd,QAAQ,CAAE,QAAQ,CAClB,cAAc,CAAE,QAAQ,CAG1B,GAAI,CACF,GAAG,CAAE,MAAM,CAGb,GAAI,CACF,MAAM,CAAE,OAAO,CAUjB,GAAI,CACF,MAAM,CAAE,CAAC,CAOX,cAAe,CACb,QAAQ,CAAE,MAAM,CAUlB,MAAO,CACL,MAAM,CAAE,QAAQ,CAOlB,EAAG,CACD,eAAe,CAAE,WAAW,CAC5B,UAAU,CAAE,WAAW,CACvB,MAAM,CAAE,CAAC,CAOX,GAAI,CACF,QAAQ,CAAE,IAAI,CAOhB,iBAGK,CACH,WAAW,CAAE,oBAAoB,CACjC,SAAS,CAAE,GAAG,CAkBhB,qCAIS,CACP,KAAK,CAAE,OAAO,CACd,IAAI,CAAE,OAAO,CACb,MAAM,CAAE,CAAC,CAOX,MAAO,CACL,QAAQ,CAAE,OAAO,CAUnB,aACO,CACL,cAAc,CAAE,IAAI,CAWtB,yEAGqB,CACnB,kBAAkB,CAAE,MAAM,CAC1B,MAAM,CAAE,OAAO,CAOjB,qCACqB,CACnB,MAAM,CAAE,OAAO,CAOjB,gDACwB,CACtB,MAAM,CAAE,CAAC,CACT,OAAO,CAAE,CAAC,CAQZ,KAAM,CACJ,WAAW,CAAE,MAAM,CAWrB,0CACoB,CAClB,UAAU,CAAE,UAAU,CACtB,OAAO,CAAE,CAAC,CASZ,+FACgD,CAC9C,MAAM,CAAE,IAAI,CASd,oBAAqB,CACnB,kBAAkB,CAAE,SAAS,CAC7B,eAAe,CAAE,WAAW,CAC5B,kBAAkB,CAAE,WAAW,CAC/B,UAAU,CAAE,WAAW,CASzB,kGACgD,CAC9C,kBAAkB,CAAE,IAAI,CAO1B,QAAS,CACP,MAAM,CAAE,iBAAiB,CACzB,MAAM,CAAE,KAAK,CACb,OAAO,CAAE,qBAAqB,CAQhC,MAAO,CACL,MAAM,CAAE,CAAC,CACT,OAAO,CAAE,CAAC,CAOZ,QAAS,CACP,QAAQ,CAAE,IAAI,CAQhB,QAAS,CACP,WAAW,CAAE,IAAI,CAUnB,KAAM,CACJ,eAAe,CAAE,QAAQ,CACzB,cAAc,CAAE,CAAC,CAGnB,KACG,CACD,OAAO,CAAE,CAAC,CCzaZ,qFAAqF,AAOrF,YAAa,CACT,kBAEQ,CACJ,UAAU,CAAE,sBAAsB,CAClC,KAAK,CAAE,eAAe,CACtB,UAAU,CAAE,eAAe,CAC3B,WAAW,CAAE,eAAe,CAGhC,WACU,CACN,eAAe,CAAE,SAAS,CAG9B,aAAc,CACV,OAAO,CAAE,mBAAmB,CAGhC,iBAAkB,CACd,OAAO,CAAE,oBAAoB,CAKjC,+CAC6B,CACzB,OAAO,CAAE,EAAE,CAGf,cACW,CACP,MAAM,CAAE,cAAc,CACtB,iBAAiB,CAAE,KAAK,CAG5B,KAAM,CACF,OAAO,CAAE,kBAAkB,CAG/B,MACI,CACA,iBAAiB,CAAE,KAAK,CAG5B,GAAI,CACA,SAAS,CAAE,eAAe,CAG9B,OAEG,CACC,OAAO,CAAE,CAAC,CACV,MAAM,CAAE,CAAC,CAGb,KACG,CACC,gBAAgB,CAAE,KAAK,CAO3B,MAAO,CACH,UAAU,CAAE,eAAe,CAI/B,OAAQ,CACJ,OAAO,CAAE,IAAI,CAIb,+BAAS,CACL,gBAAgB,CAAE,eAAe,CAGzC,MAAO,CACH,MAAM,CAAE,cAAc,CAG1B,MAAO,CACH,eAAe,CAAE,mBAAmB,CAEpC,mBACG,CACC,gBAAgB,CAAE,eAAe,CAIrC,qCACG,CACC,MAAM,CAAE,yBAAyB,EC3F7C,CAAE,CCgEA,kBAAkB,CD/DE,UAAU,CCgE3B,eAAe,CDhEE,UAAU,CCiEtB,UAAU,CDjEE,UAAU,CAEhC,gBACQ,CC4DN,kBAAkB,CD3DE,UAAU,CC4D3B,eAAe,CD5DE,UAAU,CC6DtB,UAAU,CD7DE,UAAU,CAMhC,IAAK,CACH,SAAS,CAAE,IAAI,CACf,2BAA2B,CAAE,WAAa,CAG5C,IAAK,CACH,WAAW,CEmBkB,kEAAiB,CFlB9C,SAAS,CG2Be,IAAI,CH1B5B,WAAW,CGsCa,WAAW,CHrCnC,KAAK,CE0sBmB,OAAW,CFzsBnC,gBAAgB,CEwsBM,IAAQ,CFpsBhC,4BAGS,CACP,WAAW,CAAE,OAAO,CACpB,SAAS,CAAE,OAAO,CAClB,WAAW,CAAE,OAAO,CAMtB,CAAE,CACA,KAAK,CEs0BiB,OAAe,CFr0BrC,eAAe,CAAE,IAAI,CAErB,eACQ,CACN,KAAK,CEmlBwB,OAAiB,CFllB9C,eAAe,CGZK,SAAS,CHe/B,OAAQ,CIrDR,OAAO,CAAE,WAAW,CAEpB,OAAO,CAAE,iCAAiC,CAC1C,cAAc,CAAE,IAAI,CJ6DtB,MAAO,CACL,MAAM,CAAE,CAAC,CAMX,GAAI,CACF,cAAc,CAAE,MAAM,CAIxB,eAAgB,CKvEd,OAAO,CADuB,KAAK,CAEnC,SAAS,CAAE,IAAI,CACf,MAAM,CAAE,IAAI,CL0Ed,YAAa,CACX,aAAa,CG2Ba,GAAG,CHrB/B,cAAe,CACb,OAAO,CGwoBqB,GAAG,CHvoB/B,WAAW,CG3Ba,WAAW,CH4BnC,gBAAgB,CEwoBM,IAAQ,CFvoB9B,MAAM,CAAE,cAA2B,CACnC,aAAa,CEzBgB,GAAwB,CDiHrD,kBAAkB,CAAE,oBAAW,CAC1B,aAAa,CAAE,oBAAW,CACvB,UAAU,CAAE,oBAAW,CIlL/B,OAAO,CL4FiB,YAAY,CK3FpC,SAAS,CAAE,IAAI,CACf,MAAM,CAAE,IAAI,CL8Fd,WAAY,CACV,aAAa,CAAE,GAAG,CAMpB,EAAG,CACD,UAAU,CE4rB4B,IAAqB,CF3rB3D,aAAa,CE2rByB,IAAqB,CF1rB3D,MAAM,CAAE,CAAC,CACT,UAAU,CAAE,cAAoB,CAQlC,QAAS,CACP,QAAQ,CAAE,QAAQ,CAClB,KAAK,CAAE,GAAG,CACV,MAAM,CAAE,GAAG,CACX,MAAM,CAAE,IAAI,CACZ,OAAO,CAAE,CAAC,CACV,QAAQ,CAAE,MAAM,CAChB,IAAI,CAAE,gBAAa,CACnB,MAAM,CAAE,CAAC,CAQT,kDACQ,CACN,QAAQ,CAAE,MAAM,CAChB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CACZ,MAAM,CAAE,CAAC,CACT,QAAQ,CAAE,OAAO,CACjB,IAAI,CAAE,IAAI,CM3Id,yCAC6B,CAC3B,WAAW,CH8Da,OAAO,CG7D/B,WAAW,CH8Da,GAAG,CG7D3B,WAAW,CH8Da,GAAG,CG7D3B,KAAK,CJqSuB,OAA4B,CInSxD,+OACO,CACL,WAAW,CAAE,MAAM,CACnB,WAAW,CAAE,CAAC,CACd,KAAK,CJiyB0B,IAAW,CI7xB9C,oBAEQ,CACN,UAAU,CJmxB4B,IAAqB,CIlxB3D,aAAa,CAAE,IAA2B,CAE1C,uHACO,CACL,SAAS,CAAE,GAAG,CAGlB,oBAEQ,CACN,UAAU,CAAE,IAA2B,CACvC,aAAa,CAAE,IAA2B,CAE1C,uHACO,CACL,SAAS,CAAE,GAAG,CAIlB,MAAQ,CAAE,SAAS,CHaO,IAA8B,CGZxD,MAAQ,CAAE,SAAS,CHaO,IAA+B,CGZzD,MAAQ,CAAE,SAAS,CHaO,IAA6B,CGZvD,MAAQ,CAAE,SAAS,CHaO,IAA8B,CGZxD,MAAQ,CAAE,SAAS,CHaO,IAAe,CGZzC,MAAQ,CAAE,SAAS,CHaO,IAA8B,CGPxD,CAAE,CACA,MAAM,CAAE,QAA+B,CAGzC,KAAM,CACJ,aAAa,CJ+uByB,IAAqB,CI9uB3D,SAAS,CAAE,IAA+B,CAC1C,WAAW,CAAE,GAAG,CAChB,WAAW,CAAE,GAAG,CAEhB,yBAAmC,CANrC,KAAM,CAOF,SAAS,CAAE,IAAuB,EAStC,YACO,CACL,SAAS,CAAE,GAAkD,CAG/D,UACM,CACJ,gBAAgB,CJgoBK,OAAiB,CI/nBtC,OAAO,CAAE,IAAI,CAIf,UAAqB,CAAE,UAAU,CAAE,IAAI,CACvC,WAAqB,CAAE,UAAU,CAAE,KAAK,CACxC,YAAqB,CAAE,UAAU,CAAE,MAAM,CACzC,aAAqB,CAAE,UAAU,CAAE,OAAO,CAC1C,YAAqB,CAAE,WAAW,CAAE,MAAM,CAG1C,eAAqB,CAAE,cAAc,CAAE,SAAS,CAChD,eAAqB,CAAE,cAAc,CAAE,SAAS,CAChD,gBAAqB,CAAE,cAAc,CAAE,UAAU,CAGjD,WAAY,CACV,KAAK,CJ8sB4B,IAAW,CKhzB5C,aAAW,CACT,KAAK,CLi3Be,OAAe,CK/2BrC,oBAAkB,CAChB,KAAK,CAAE,OAAmB,CAJ5B,aAAW,CACT,KAAK,CL8sBgB,OAAmB,CK5sB1C,oBAAkB,CAChB,KAAK,CAAE,OAAmB,CAJ5B,UAAW,CACT,KAAK,CL0sBc,OAAgB,CKxsBrC,iBAAkB,CAChB,KAAK,CAAE,OAAmB,CAJ5B,aAAW,CACT,KAAK,CLgtBgB,OAAmB,CK9sB1C,oBAAkB,CAChB,KAAK,CAAE,OAAmB,CAJ5B,YAAW,CACT,KAAK,CLktBe,OAAkB,CKhtBxC,mBAAkB,CAChB,KAAK,CAAE,OAAmB,CD8G9B,WAAY,CAGV,KAAK,CAAE,IAAI,CErHX,WAAW,CACT,gBAAgB,CNi3BI,OAAe,CM/2BrC,kBAAkB,CAChB,gBAAgB,CAAE,OAAmB,CAJvC,WAAW,CACT,gBAAgB,CN6sBG,OAAiB,CM3sBtC,kBAAkB,CAChB,gBAAgB,CAAE,OAAmB,CAJvC,QAAW,CACT,gBAAgB,CNysBC,OAAc,CMvsBjC,eAAkB,CAChB,gBAAgB,CAAE,OAAmB,CAJvC,WAAW,CACT,gBAAgB,CN+sBG,OAAiB,CM7sBtC,kBAAkB,CAChB,gBAAgB,CAAE,OAAmB,CAJvC,UAAW,CACT,gBAAgB,CNitBE,OAAgB,CM/sBpC,iBAAkB,CAChB,gBAAgB,CAAE,OAAmB,CFiIzC,YAAa,CACX,cAAc,CAAE,GAAiC,CACjD,MAAM,CAAE,WAAmD,CAC3D,aAAa,CAAE,cAAmC,CAQpD,KACG,CACD,UAAU,CAAE,CAAC,CACb,aAAa,CAAE,IAA2B,CAC1C,uBACG,CACD,aAAa,CAAE,CAAC,CAYpB,cAAe,CAJb,YAAY,CAAE,CAAC,CACf,UAAU,CAAE,IAAI,CASlB,YAAa,CAVX,YAAY,CAAE,CAAC,CACf,UAAU,CAAE,IAAI,CAWhB,WAAW,CAAE,IAAI,CAEjB,eAAK,CACH,OAAO,CAAE,YAAY,CACrB,YAAY,CAAE,GAAG,CACjB,aAAa,CAAE,GAAG,CAKtB,EAAG,CACD,UAAU,CAAE,CAAC,CACb,aAAa,CJmnByB,IAAqB,CIjnB7D,KACG,CACD,WAAW,CH3Ha,WAAW,CG6HrC,EAAG,CACD,WAAW,CAAE,IAAI,CAEnB,EAAG,CACD,WAAW,CAAE,CAAC,CGvLd,gDACQ,CACN,OAAO,CAAE,GAAG,CACZ,OAAO,CAAE,KAAK,CAEhB,uBAAQ,CACN,KAAK,CAAE,IAAI,CH8Lb,yBAA2C,CACzC,iBAAG,CACD,KAAK,CAAE,IAAI,CACX,KAAK,CAAE,KAA4B,CACnC,KAAK,CAAE,IAAI,CACX,UAAU,CAAE,KAAK,CIlNrB,QAAQ,CAAE,MAAM,CAChB,aAAa,CAAE,QAAQ,CACvB,WAAW,CAAE,MAAM,CJmNjB,iBAAG,CACD,WAAW,CHmoBa,KAA4B,EGznB1D,qCAE0B,CACxB,MAAM,CAAE,IAAI,CACZ,aAAa,CAAE,eAA6B,CAE9C,WAAY,CACV,SAAS,CAAE,GAAG,CACd,cAAc,CAAE,SAAS,CAI3B,UAAW,CACT,OAAO,CAAE,SAAiD,CAC1D,MAAM,CAAE,QAAyB,CACjC,SAAS,CHomBoB,MAAsB,CGnmBnD,WAAW,CAAE,cAAkC,CAK7C,yEAAa,CACX,aAAa,CAAE,CAAC,CAMpB,oDAEO,CACL,OAAO,CAAE,KAAK,CACd,SAAS,CAAE,GAAG,CACd,WAAW,CHlMW,WAAW,CGmMjC,KAAK,CJ8iB0B,IAAW,CI5iB1C,yEAAS,CACP,OAAO,CAAE,aAAa,CAQ5B,yCACsB,CACpB,aAAa,CAAE,IAAI,CACnB,YAAY,CAAE,CAAC,CACf,YAAY,CAAE,cAAkC,CAChD,WAAW,CAAE,CAAC,CACd,UAAU,CAAE,KAAK,CAMf,+MAAS,CAAE,OAAO,CAAE,EAAE,CACtB,yMAAQ,CACN,OAAO,CAAE,aAAa,CAM5B,OAAQ,CACN,aAAa,CJugByB,IAAqB,CItgB3D,UAAU,CAAE,MAAM,CAClB,WAAW,CHrOa,WAAW,CQhErC,UAQC,CAPC,WAAW,CAAE,aAAa,CAC1B,GAAG,CAAE,uDAA+C,CACpD,GAAG,CAAE,4NAE+D,CACpE,WAAW,CAAE,MAAM,CACnB,UAAU,CAAE,MAAM,CCPpB,OAAmB,CACjB,OAAO,CAAE,YAAY,CACrB,IAAI,CAAE,uCAA8E,CACpF,SAAS,CAAE,OAAO,CAClB,cAAc,CAAE,IAAI,CACpB,sBAAsB,CAAE,WAAW,CACnC,uBAAuB,CAAE,SAAS,CCJpC,+DAAiC,CAChC,aAAa,CAAE,GAAG,CAEnB,qCAA2B,CAC1B,UAAU,CAAE,GAAG,CAMhB,oCAA6C,CAC5C,aAAa,CAAE,KAAK,CAErB,iCAAuC,CACtC,UAAU,CAAE,KAAK,CAMlB,oCAA6C,CAC5C,aAAa,CAAE,GAAG,CAEnB,iCAAuC,CACtC,UAAU,CAAE,GAAG,CAMhB,gBAAiB,CAChB,UAAU,CAAE,IAAI,CAEjB,sBAAuB,CACtB,UAAU,CAAE,MAAM,CAEnB,sBAAuB,CACtB,UAAU,CAAE,IAAI,CAEjB,+EAAiC,CAChC,OAAO,CAAE,YAAY,CACrB,cAAc,CAAE,GAAG,CAEpB,yCAA2C,CAE1C,WAAW,CAAE,KAAK,CAGnB,0CAA6C,CAE5C,YAAY,CAAE,KAAK,CAQpB,yBAA0B,CACzB,OAAO,CAAE,KAAK,CACd,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CAEb,yBAA0B,CACzB,OAAO,CAAE,UAAU,CACnB,cAAc,CAAE,MAAM,CACtB,UAAU,CAAE,MAAM,CAInB,gBAAiB,CAChB,iBAAiB,CAAC,SAAS,CAC3B,mBAAmB,CAAE,MAAM,CAC3B,eAAe,CAAE,KAAK,CACtB,qBAAK,CACJ,OAAO,CAAE,GAAG,CACZ,gBAAgB,CX6yBY,qBAAwB,CW1yBrD,sHACE,CACD,OAAO,CAAE,GAAG,CACZ,gBAAgB,CXuyBY,qBAAwB,CWtyBpD,OAAO,CAAE,YAAY,CACrB,0JAAQ,CACP,OAAO,CAAE,GAAG,CACZ,OAAO,CAAE,KAAK,CAOjB,gCAA+B,CAE9B,UAAU,CAAE,IAAI,CAChB,UAAU,CAAE,MAAM,CAEf,kBAAkB,CAAE,wBAAwB,CAC5C,0BAA0B,CAAE,KAAK,CAIrC,eAAgB,CAEf,UAAU,CAAE,MAAM,CAClB,yFAA6B,CAC5B,YAAY,CAAE,GAAG,CACjB,aAAa,CAAE,KAAK,CACpB,qIAAa,CACZ,YAAY,CAAE,CAAC,CAIhB,+FAAiB,CAChB,YAAY,CAAE,CAAC,CACf,aAAa,CAAE,CAAC,CAGlB,8BAAe,CACd,UAAU,CAAE,IAAI,CAIlB,oBAAqB,CACpB,UAAU,CAAE,IAAI,CAEjB,qBAAsB,CACrB,UAAU,CAAE,KAAK,CAElB,mBAAoB,CACnB,UAAU,CAAE,CAAC,CJ3HZ,0DACQ,CACN,OAAO,CAAE,GAAG,CACZ,OAAO,CAAE,KAAK,CAEhB,4BAAQ,CACN,KAAK,CAAE,IAAI,CI2Hd,2JAAuB,CACtB,OAAO,CAAE,YAAY,CAEtB,sCAAgB,CACf,aAAa,CAAE,CAAC,CAChB,KAAK,CAAE,KAAK,CAGb,yCAAoB,CAClB,UAAU,CAAE,IAA6B,CAE3C,yCAAoB,CAClB,UAAU,CAAE,IAA6B,CAE3C,yCAAoB,CAClB,UAAU,CXgpB2B,IAAqB,CW9oB5D,yCAAoB,CAClB,UAAU,CAAE,IAA2B,CAEzC,yCAAoB,CAClB,UAAU,CAAE,cAA2B,CAEzC,yCAAoB,CAClB,UAAU,CAAE,GAA2B,CAI1C,wDAA0D,CACzD,UAAU,CAAE,CAAC,CAGd,oCAAqC,CACpC,aAAa,CAAE,CAAC,CAKhB,0BAAS,CAAC,OAAO,CAAC,GAAG,CACrB,yBAAQ,CAAC,OAAO,CAAC,GAAG,CAKrB,cAAe,CACd,iBAAiB,CAAC,SAAS,CAC3B,mBAAmB,CAAE,MAAM,CAC3B,eAAe,CAAE,KAAK,CAEtB,2CAA+B,CAC9B,gBAAgB,CX8rBY,qBAAwB,CW7rBpD,aAAa,CAAE,WAAW,CAE3B,+BAAiB,CAChB,OAAO,CAAE,GAAG,CACZ,gBAAgB,CXyrBY,qBAAwB,CWprBtD,kBAAmB,CAClB,YAAY,CXynBuB,GAAG,CWxnBtC,YAAY,CAAE,MAAM,CACpB,YAAY,CX2nBuB,IAAI,CW1nBvC,aAAa,CXunBuB,IAAI,CWtnBxC,gBAAgB,CX0nBY,OAAO,CWxnBnC,8BAAY,CACX,OAAO,CXwnBuB,IAAI,CWvnBlC,6CAAiB,CAChB,UAAU,CAAE,IAAI,CAEjB,4IAEgB,CACf,UAAU,CAAE,CAAC,CAGd,8CAAgB,CACf,aAAa,CAAE,CAAC,CAGlB,iCAAe,CACd,uBAAuB,CAAE,GAAwE,CACjG,sBAAsB,CAAE,GAAwE,CAChG,YAAY,CXimBsB,GAAG,CWhmBrC,YAAY,CAAE,MAAM,CACpB,YAAY,CXmmBsB,IAAI,CWlmBtC,UAAU,CAAE,IAAI,CAChB,WAAW,CAAE,IAAI,CACjB,YAAY,CAAE,IAAI,CAClB,KAAK,CX6lBwB,IAAI,CW5lBjC,WAAW,CX6lBsB,IAAI,CW3lBtC,gCAAc,CACb,0BAA0B,CAAE,GAAwE,CACpG,yBAAyB,CAAE,GAAwE,CACnG,YAAY,CXqlBsB,GAAG,CWplBrC,YAAY,CAAE,MAAM,CACpB,YAAY,CXulBsB,IAAI,CWtlBtC,aAAa,CAAE,IAAI,CACnB,WAAW,CAAE,IAAI,CACjB,YAAY,CAAE,IAAI,CASpB,2CAAqB,CACpB,SAAS,CAAE,IAA2B,CAEvC,uCAAmB,CAClB,SAAS,CXiiBY,IAAgB,CW/hBtC,uCAAmB,CAClB,SAAS,CXykBiB,IAAgB,CWvkB3C,2CAAqB,CACpB,SAAS,CAAE,IAA4B,CAIxC,mDAAyB,CACxB,KAAK,CAAE,eAAoC,CAK3C,MAAM,CAAE,OAAO,CAJf,mCAAO,CACN,KAAK,CAAE,eAAoC,CAM7C,2CAAqB,CCjRnB,OAAO,CDkRS,EAAE,CC/QlB,MAAM,CAAE,iBAA6B,CDkRvC,mDAAyB,CACxB,WAAW,CAAE,IAAI,CAGlB,+CAAuB,CACtB,eAAe,CAAE,YAAY,CAG9B,2BAA4B,CAC3B,gBAAgB,CX+X6B,OAAe,CW3X7D,YAA2B,CAC1B,MAAM,CAAE,OAAO,CAIhB,QAAS,CAAE,KAAK,CAAE,OAAO,CACzB,OAAQ,CAAE,KAAK,CAAE,OAAO,CAKvB,iHAAgB,CACf,eAAe,CAAE,IAAI,CAKvB,gEAA2B,CACxB,WAAW,CVnQY,6CAAiD,CUoQxE,OAAO,CAAE,OAAO,CAChB,SAAS,CAAE,GAAG,CACd,KAAK,CVkgBsB,OAAO,CUjgBnC,gBAAgB,CVkgBY,OAAO,CUjgBlC,aAAa,CV5MY,GAAG,CU8M5B,iIAAe,CACd,MAAM,CAAE,CAAC,CACT,KAAK,CAAE,GAAG,CACV,UAAU,CAAE,WAAW,CAK3B,yDAAqB,CACpB,WAAW,CAAE,MAAM,CACnB,QAAQ,CAAE,MAAM,CAChB,aAAa,CAAE,QAAQ,CAKvB,4BAAW,CACV,UAAU,CAAE,IAA2B,CAKzC,iDAAqD,CR3UnD,OAAO,CQ4UgB,YAAY,CR3UnC,SAAS,CAAE,IAAI,CACf,MAAM,CAAE,IAAI,CQ2Ub,SAAS,CAAE,IAAI,CAEhB,kCAAiC,CR/U/B,OAAO,CQgVgB,YAAY,CR/UnC,SAAS,CAAE,IAAI,CACf,MAAM,CAAE,IAAI,CQ+Ub,SAAS,CAAE,IAAI,CAIhB,wBAAyB,CACxB,OAAO,CAAE,YAAY,CACrB,SAAS,CAAE,GAAG,CACd,+BAAO,CACN,OAAO,CAAE,KAAK,CAMhB,+BAAgC,CAC/B,OAAO,CAAE,YAAY,CAClB,MAAM,CAAE,IAAI,CACZ,cAAc,CAAE,MAAM,CACtB,4CAAgB,CACf,cAAc,CAAE,MAAM,CAK3B,eAAiC,CAChC,eAAe,CAAE,IAAI,CACrB,YAAY,CAAE,IAAI,CAClB,WAAW,CAAE,IAAI,CACjB,OAAO,CAAE,IAAI,CAId,eAAgB,CACf,OAAO,CAAE,IAAI,CAId,WAAyB,CACxB,MAAM,CAAE,IAAI,CACT,MAAM,CAAE,YAAY,CACpB,MAAM,CAAE,SAAS,CACjB,MAAM,CAAE,IAAI,CACZ,kBAAS,CACR,MAAM,CAAE,gBAAgB,CACxB,MAAM,CAAE,aAAa,CACrB,MAAM,CAAE,QAAQ,CAGrB,UAAuB,CACnB,MAAM,CAAE,gBAAgB,CACxB,MAAM,CAAE,aAAa,CACrB,MAAM,CAAE,QAAQ,CAChB,iBAAS,CACR,MAAM,CAAE,gBAAgB,CACxB,MAAM,CAAE,aAAa,CACrB,MAAM,CAAE,QAAQ,CAKpB,SAAU,CACT,UAAU,CAAE,MAAM,CEtZpB,mCAAiB,CCChB,MAAM,CAAE,MAAe,CACvB,OAAO,CdusBa,IAAI,CctsBxB,WAAW,CAAE,cAAyC,CACtD,gBAAgB,CdusBI,IAAa,CctsBjC,uFAAe,CAAE,KAAK,Cd8yBY,IAAW,CahzB9C,mCAAiB,CCFhB,MAAM,CAAE,MAAe,CACvB,OAAO,CdusBa,IAAI,CctsBxB,WAAW,CAAE,iBAAyC,CACtD,gBAAgB,CdysBI,OAAc,CcxsBlC,uFAAe,CAAE,KAAK,CdysBA,OAAgB,CaxsBvC,uDAA2B,CCL1B,MAAM,CAAE,MAAe,CACvB,OAAO,CdusBa,IAAI,CctsBxB,WAAW,CAAE,iBAAyC,CACtD,gBAAgB,Cd2sBQ,OAAO,Cc1sB/B,+HAAe,CAAE,KAAK,Cd2sBI,OAAO,CavsBlC,+CAAuB,CCRtB,MAAM,CAAE,MAAe,CACvB,OAAO,CdusBa,IAAI,CctsBxB,WAAW,CAAE,iBAAyC,CACtD,gBAAgB,Cd6sBM,OAAiB,Cc5sBvC,+GAAe,CAAE,KAAK,Cd6sBE,OAAmB,CatsB5C,8DAAuB,CCXtB,MAAM,CAAE,MAAe,CACvB,OAAO,CdusBa,IAAI,CctsBxB,WAAW,CAAE,iBAAyC,CACtD,gBAAgB,Cd+sBM,OAAiB,Cc9sBvC,uLAAe,CAAE,KAAK,Cd+sBE,OAAmB,CarsB5C,uCAAmB,CCdlB,MAAM,CAAE,MAAe,CACvB,OAAO,CdusBa,IAAI,CctsBxB,WAAW,CAAE,iBAAyC,CACtD,gBAAgB,CditBK,OAAgB,CchtBrC,+FAAe,CAAE,KAAK,CditBC,OAAkB,CapsB1C,cAAe,CAEd,UAAU,CAAE,GAAG,CACf,WAAW,CAAE,IAAI,CACjB,WAAW,CAAE,IAAI,CACjB,cAAc,CAAE,IAAI,CAErB,8BAAiC,CAChC,aAAa,CAAE,GAAG,CAInB,qBAAsB,CACrB,QAAQ,CAAE,KAAK,CACf,GAAG,CAAE,CAAC,CAAE,IAAI,CAAE,CAAC,CACf,KAAK,CAAC,IAAI,CAAE,MAAM,CAAC,IAAI,CACvB,IAAI,CAAC,CAAC,CACN,UAAU,CAAE,IAAI,CDjCf,OAAO,CCkCS,CAAC,CD/BjB,MAAM,CAAE,gBAA6B,CCmCvC,aAAc,CACb,QAAQ,CAAE,KAAK,CACf,GAAG,CAAE,KAAK,CACV,IAAI,CAAE,CAAC,CACP,OAAO,CAAE,IAAI,CACZ,OAAO,CAAE,IAAI,CACb,KAAK,CAAE,IAAI,CACX,UAAU,CAAE,MAAM,CAElB,oBAAO,CACP,QAAQ,CAAE,QAAQ,CAClB,KAAK,CAAE,IAAI,CACX,MAAM,CAAC,MAAM,CACb,UAAU,CAAE,IAAI,CdchB,kBAAkB,CAAE,iCAAO,CACnB,UAAU,CAAE,iCAAO,CcZ3B,mCAAe,CACd,KAAK,CAAE,KAAK,CACZ,KAAK,CbyvB2B,IAAW,CaxvB3C,yCAAQ,CACP,KAAK,CbixBe,IAAoB,Ca9wB1C,yBAAmC,CAdnC,oBAAO,CAgBH,KAAK,CZiiBmB,KAAK,EY3hBnC,mCAAqC,CACpC,QAAQ,CAAE,QAAQ,CAClB,KAAK,Cb6oBkB,OAAkB,Ca5oBzC,gBAAgB,Cb2oBK,OAAgB,Ca1oBrC,MAAM,CAAE,iBAA8B,CACtC,OAAO,CAAE,mBAAmG,CAC5G,UAAU,CAAE,IAAyB,CAErC,MAAM,CAAE,cAAgD,CAExD,qEAAiB,CAChB,QAAQ,CAAE,QAAQ,CAClB,IAAI,CAAE,IAAgC,CACtC,GAAG,CAAE,GAAgC,CACrC,SAAS,CAAE,IAAyB,CAGrC,mFAA0B,CACzB,UAAU,CAAE,CAAC,CAOb,yBAAmC,CADpC,yBAAmB,CAEjB,KAAK,CAAE,GAAG,EAEX,yBAAmC,CAJpC,yBAAmB,CAKjB,KAAK,CAAE,GAAG,EAGZ,uBAAiB,CAChB,KAAK,CbyMuB,OAA4B,CaxMtD,WAAW,Cb2gBgB,GAAqB,Ca1gBlD,WAAW,CZnCa,OAAO,CYoC7B,WAAW,CZlCW,GAAG,CczE7B,qBAA0B,CAAC,UAAU,CAAG,+CAAgD,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACnH,qBAA0B,CAAC,UAAU,CAAG,6CAA8C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACjH,wBAA0B,CAAC,UAAU,CAAG,6CAA8C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACjH,wBAA0B,CAAC,UAAU,CAAG,iDAAkD,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACrH,oBAA0B,CAAC,UAAU,CAAG,8CAA+C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAClH,mBAA0B,CAAC,UAAU,CAAG,6CAA8C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACjH,qBAA0B,CAAC,UAAU,CAAG,8CAA+C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAClH,oBAA0B,CAAC,UAAU,CAAG,8CAA+C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAClH,oBAA0B,CAAC,UAAU,CAAG,8CAA+C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAClH,oBAA0B,CAAC,UAAU,CAAG,6CAA8C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACjH,mBAA0B,CAAC,UAAU,CAAG,6CAA8C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACjH,oBAA0B,CAAC,UAAU,CAAG,kDAAmD,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACtH,qBAA0B,CAAC,UAAU,CAAG,yCAA0C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAC7G,sBAA0B,CAAC,UAAU,CAAG,8CAA+C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAClH,oBAA0B,CAAC,UAAU,CAAG,+CAAgD,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACnH,qBAA0B,CAAC,UAAU,CAAG,8CAA+C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAClH,oBAA0B,CAAC,UAAU,CAAG,8CAA+C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAClH,uBAA0B,CAAC,UAAU,CAAG,mDAAoD,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CACvH,kBAAwB,CAAC,UAAU,CAAG,2CAA4C,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CAC7G,oBAA0B,CAAC,UAAU,CAAG,wCAAyC,CAAE,KAAK,CAAE,IAAI,CAAE,MAAM,CAAE,IAAI,CCf1G,gEAA6B,CAC5B,UAAU,CAAE,GAAG,CAGf,6DAAO,CACN,QAAQ,CAAE,KAAK,CACf,MAAM,CAAE,CAAC,CACT,OAAO,CAAE,CAAC,CAEV,oEAAS,CACR,OAAO,CAAE,KAAK,CACd,MAAM,CAAE,KAAK,CACb,GAAG,CAAE,KAAK,CACV,QAAQ,CAAE,KAAK,CACf,IAAI,CAAE,KAAK,CACX,KAAK,CAAE,KAAK,CACZ,MAAM,CAAE,KAAK,CAOhB,+CAAS,CACR,OAAO,CAAE,IAAI,CAKd,iEAA6B,CAC5B,OAAO,CAAE,IAAI,CAKhB,kBAAmB,CAClB,OAAO,CAAE,KAAK,CACd,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,aAAa,CAEtB,mBAAoB,CACnB,OAAO,CAAE,KAAK,CACd,KAAK,CAAE,KAAK,CACZ,MAAM,CAAE,aAAa,CAEtB,oBAAqB,CACpB,OAAO,CAAE,YAAY,CACrB,MAAM,CAAE,KAAK,CAEd,kBAAmB,CAClB,OAAO,CAAE,KAAK,CACd,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,KAAK,CAOd,aAAc,CACb,KAAK,CAAE,KAAK,CACZ,KAAK,CAAE,WAAkB,CAG1B,yBAA0B,CACzB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CACZ,OAAO,CAAE,YAAY,CAEtB,oBAAqB,CACpB,UAAU,CAAE,0CAA4C,CACxD,iBAAiB,CAAE,SAAS,CAC5B,mBAAmB,CAAE,MAAM,CAC3B,eAAe,CAAE,IAAI,CACrB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CACZ,iBAAiB,CAAE,wBAAwB,CAC3C,cAAc,CAAE,wBAAwB,CACxC,aAAa,CAAE,wBAAwB,CACvC,YAAY,CAAE,wBAAwB,CACtC,SAAS,CAAE,wBAAwB,CACnC,uBAAuB,CAAE,IAAI,CAC7B,oBAAoB,CAAE,IAAI,CAC1B,eAAe,CAAE,IAAI,CAGtB,oBAAqB,CACpB,UAAU,CAAE,0CAA4C,CACxD,iBAAiB,CAAE,SAAS,CAC5B,mBAAmB,CAAE,MAAM,CAC3B,eAAe,CAAE,IAAI,CACrB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CACZ,iBAAiB,CAAE,wBAAwB,CAC3C,cAAc,CAAE,wBAAwB,CACxC,aAAa,CAAE,wBAAwB,CACvC,YAAY,CAAE,wBAAwB,CACtC,SAAS,CAAE,wBAAwB,CACnC,uBAAuB,CAAE,KAAK,CAC9B,oBAAoB,CAAE,KAAK,CAC3B,eAAe,CAAE,KAAK,CAGvB,oBAAqB,CACpB,UAAU,CAAE,0CAA4C,CACxD,iBAAiB,CAAE,SAAS,CAC5B,mBAAmB,CAAE,MAAM,CAC3B,eAAe,CAAE,IAAI,CACrB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CACZ,iBAAiB,CAAE,wBAAwB,CAC3C,cAAc,CAAE,wBAAwB,CACxC,aAAa,CAAE,wBAAwB,CACvC,YAAY,CAAE,wBAAwB,CACtC,SAAS,CAAE,wBAAwB,CACnC,uBAAuB,CAAE,IAAI,CAC7B,oBAAoB,CAAE,IAAI,CAC1B,eAAe,CAAE,IAAI,CAGtB,uBAYC,CAXA,EAAG,CACF,SAAS,CAAE,QAAQ,CAGpB,GAAI,CACH,SAAS,CAAE,UAAU,CAGtB,IAAK,CACJ,SAAS,CAAE,QAAQ,EAIrB,oBAYC,CAXA,EAAG,CACF,SAAS,CAAE,QAAQ,CAGpB,GAAI,CACH,SAAS,CAAE,UAAU,CAGtB,IAAK,CACJ,SAAS,CAAE,QAAQ,EAIrB,mBAYC,CAXA,EAAG,CACF,SAAS,CAAE,QAAQ,CAGpB,GAAI,CACH,SAAS,CAAE,UAAU,CAGtB,IAAK,CACJ,SAAS,CAAE,QAAQ,EAIrB,kBAYC,CAXA,EAAG,CACF,SAAS,CAAE,QAAQ,CAGpB,GAAI,CACH,SAAS,CAAE,UAAU,CAGtB,IAAK,CACJ,SAAS,CAAE,QAAQ,EAIrB,eAYC,CAXA,EAAG,CACF,SAAS,CAAE,QAAQ,CAGpB,GAAI,CACH,SAAS,CAAE,wBAAwB,CAGpC,IAAK,CACJ,SAAS,CAAE,QAAQ,EC7LpB,oEAA0B,CACzB,MAAM,CAAE,QAAQ,CAChB,WAAW,CAAE,GAAG,CAChB,cAAc,CAAE,MAAM,CACtB,SAAS,CAAE,OAAwB,CACnC,WAAW,CAAE,GAAG,CAChB,MAAM,CAAE,cAAkD,CAC1D,UAAU,CjBylB0B,IAAI,CiBxlBxC,OAAO,CAAE,OAAO,CAChB,KAAK,CjB6tBmB,OAAW,CiB5tBnC,SAAS,CAAE,IAAI,CAEf,wRAEwB,CACvB,KAAK,CjButBkB,OAAW,CiBttBlC,uBAAuB,CjBstBA,OAAW,CiBrtBlC,UAAU,CjB2rBQ,OAAc,CiB1rBhC,MAAM,CAAE,iBAAyD,CCApE,IAAK,CACH,WAAW,ClByBkB,kEAAiB,CkBxB9C,SAAS,ClByBkB,IAAe,CkBxB1C,WAAW,ClByBkB,WAAiB,CkBxB9C,KAAK,ClBgtBmB,OAAW,CkB/sBnC,gBAAgB,ClB8sBM,IAAQ,CkB3sBhC,CAAE,CACA,KAAK,ClBy1BiB,OAAe,CkBx1BrC,eAAe,CAAE,IAAI,CAErB,eACQ,CACN,KAAK,ClBsmBwB,OAAiB,CkBrmB9C,eAAe,CCPW,SAAS,CDUrC,OAAQ,ChBlCR,OAAO,CAAE,WAAW,CAEpB,OAAO,CAAE,iCAAiC,CAC1C,cAAc,CAAE,IAAI,CgBoCtB,EAAG,CACF,KAAK,ClBsQwB,OAA4B,CkBpQ1D,mBAAsB,CACrB,UAAU,CAAE,CAAC,CAGd,EAAG,CACF,KAAK,ClB+PwB,OAA4B,CkB7P1D,EAAG,CACF,KAAK,ClB4PwB,OAA4B,CkB1P1D,EAAG,CACF,KAAK,ClByPwB,OAA4B,CkBvP1D,EAAG,CACF,KAAK,ClBsPwB,OAA4B,CkBpP1D,EAAG,CACF,KAAK,ClBmPwB,OAA4B,CkBjP1D,EAAG,CACF,UAAU,CAAE,cAA4C,CE1DxD,uBAAE,CACD,KAAK,CpB62BiB,OAAe,CoB52BrC,eAAe,CAAE,IAAI,CACrB,2DACQ,CACP,KAAK,CpB2nByB,OAAiB,CoB1nB/C,eAAe,CDcY,SAAS,CCgBvC,6CAAgD,CAC/C,MAAM,CAAE,cAAsC,CAC9C,OAAO,CpBwBwB,GAAG,CqBnEjC,uBAAuB,CrBkEM,GAAoB,CqBjEhD,sBAAsB,CrBiEM,GAAoB,CqB1DjD,0BAA0B,CrB0DG,GAAoB,CqBzDhD,yBAAyB,CrByDG,GAAoB,CoBmClD,QAAG,CACI,WAAW,CnBtCO,WAAW,CmBuCnC,cAAc,CAAE,GAAG,CAInB,qCAAO,CACN,OAAO,CnBqBsB,GAAG,CmBpB1B,cAAc,CAAE,GAAG,CAG3B,YAAS,CACR,KAAK,CAAE,KAAK,CACZ,UAAU,CAAE,WAAW,CACvB,eAAe,CAAE,QAAQ,CACzB,+BAAO,CACN,OAAO,CnBYsB,GAAG,CmBXhC,MAAM,CAAE,cAAiC,CAE1C,qCAAa,CACZ,UAAU,CpBglBQ,IAAa,CoB/kB/B,WAAW,CAAE,IAAI,CAGnB,cAAW,CACV,KAAK,CAAE,KAAK,CACZ,UAAU,CAAE,WAAW,CACvB,eAAe,CAAE,QAAQ,CACzB,mCAAO,CACN,OAAO,CnBDsB,GAAG,CmBEhC,MAAM,CAAE,cAAiC,CAE1C,yCAAa,CACZ,UAAU,CpBmkBQ,IAAa,CoBlkB/B,WAAW,CAAE,IAAI,CAGnB,kBAAe,CACd,KAAK,CAAE,KAAK,CACZ,UAAU,CAAE,WAAW,CACvB,eAAe,CAAE,QAAQ,CACzB,2CAAO,CACN,OAAO,CnBdsB,GAAG,CmBehC,MAAM,CAAE,YAAY,CAErB,iDAAa,CACZ,WAAW,CAAE,IAAI,CAGnB,YAAS,CACR,KAAK,CAAE,KAAK,CAEb,cAAW,CACV,UAAU,CAAE,WAAW,CACvB,iBAAG,CACF,cAAc,CAAE,MAAM,CAGxB,YAAS,CAlGT,eAAe,CAAE,QAAQ,CACzB,+BAAO,CACN,OAAO,CnBkEuB,GAAG,CmBjEjC,UAAU,CpByoBS,IAAa,CoBxoBhC,MAAM,CAAE,iBAA8B,CAEvC,qCAAa,CACZ,UAAU,CAAE,OAAoB,CAChC,WAAW,CAAE,IAAI,CAElB,wCAA4B,CAC3B,UAAU,CAAE,OAAoB,CAChC,MAAM,CAAE,cAAkB,CAE3B,qDAA2C,CAC1C,UAAU,CpB6nBS,IAAa,CoB5nBhC,MAAM,CAAE,iBAA8B,CAGvC,YAAa,CACZ,+BAAO,CACN,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,eAAmB,CAEhC,qCAAa,CACZ,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAA+B,CAE5C,wCAA4B,CAC3B,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAgC,EAoE9C,YAAS,CArGT,eAAe,CAAE,QAAQ,CACzB,+BAAO,CACN,OAAO,CnBkEuB,GAAG,CmBjEjC,UAAU,CpB2oBS,OAAc,CoB1oBjC,MAAM,CAAE,iBAA8B,CAEvC,qCAAa,CACZ,UAAU,CAAE,OAAoB,CAChC,WAAW,CAAE,IAAI,CAElB,wCAA4B,CAC3B,UAAU,CAAE,OAAoB,CAChC,MAAM,CAAE,iBAAkB,CAE3B,qDAA2C,CAC1C,UAAU,CpB+nBS,OAAc,CoB9nBjC,MAAM,CAAE,iBAA8B,CAGvC,YAAa,CACZ,+BAAO,CACN,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAmB,CAEhC,qCAAa,CACZ,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAA+B,CAE5C,wCAA4B,CAC3B,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAgC,EAuE9C,aAAU,CAxGV,eAAe,CAAE,QAAQ,CACzB,iCAAO,CACN,OAAO,CnBkEuB,GAAG,CmBjEjC,UAAU,CpB+oBW,OAAiB,CoB9oBtC,MAAM,CAAE,iBAA8B,CAEvC,uCAAa,CACZ,UAAU,CAAE,OAAoB,CAChC,WAAW,CAAE,IAAI,CAElB,yCAA4B,CAC3B,UAAU,CAAE,OAAoB,CAChC,MAAM,CAAE,iBAAkB,CAE3B,sDAA2C,CAC1C,UAAU,CpBmoBW,OAAiB,CoBloBtC,MAAM,CAAE,iBAA8B,CAGvC,YAAa,CACZ,iCAAO,CACN,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAmB,CAEhC,uCAAa,CACZ,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAA+B,CAE5C,yCAA4B,CAC3B,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAgC,EA0E9C,cAAW,CA3GX,eAAe,CAAE,QAAQ,CACzB,mCAAO,CACN,OAAO,CnBkEuB,GAAG,CmBjEjC,UAAU,CpBipBW,OAAiB,CoBhpBtC,MAAM,CAAE,iBAA8B,CAEvC,yCAAa,CACZ,UAAU,CAAE,OAAoB,CAChC,WAAW,CAAE,IAAI,CAElB,0CAA4B,CAC3B,UAAU,CAAE,OAAoB,CAChC,MAAM,CAAE,iBAAkB,CAE3B,uDAA2C,CAC1C,UAAU,CpBqoBW,OAAiB,CoBpoBtC,MAAM,CAAE,iBAA8B,CAGvC,YAAa,CACZ,mCAAO,CACN,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAmB,CAEhC,yCAAa,CACZ,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAA+B,CAE5C,0CAA4B,CAC3B,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAgC,EA6E9C,WAAQ,CA9GR,eAAe,CAAE,QAAQ,CACzB,6BAAO,CACN,OAAO,CnBkEuB,GAAG,CmBjEjC,UAAU,CpBmpBU,OAAgB,CoBlpBpC,MAAM,CAAE,iBAA8B,CAEvC,mCAAa,CACZ,UAAU,CAAE,OAAoB,CAChC,WAAW,CAAE,IAAI,CAElB,uCAA4B,CAC3B,UAAU,CAAE,OAAoB,CAChC,MAAM,CAAE,iBAAkB,CAE3B,oDAA2C,CAC1C,UAAU,CpBuoBU,OAAgB,CoBtoBpC,MAAM,CAAE,iBAA8B,CAGvC,YAAa,CACZ,6BAAO,CACN,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAmB,CAEhC,mCAAa,CACZ,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAA+B,CAE5C,uCAA4B,CAC3B,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAAgC,EAkF/C,kBAAkB,CAChB,KAAK,CAAE,eAAe,CAIxB,yBAA0B,CACtB,gBAAiB,CACd,OAAO,CAAE,KAAK,EAiCrB,eAAgB,CACf,UAAU,CAAE,IAAI,CAEjB,eAAgB,CACf,UAAU,CAAE,MAAM,CAEnB,gBAAiB,CAChB,UAAU,CAAE,KAAK,CAElB,kBAAmB,CAClB,UAAU,CAAC,OAAO,CAInB,eAAgB,CACf,KAAK,CpB4oBkB,OAAe,CoB3oBtC,sBAAS,CN/NR,OAAO,CAAE,YAAY,CACrB,WAAW,CAAE,WAAW,CACxB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,WAAW,CAAE,CAAC,CACd,sBAAsB,CAAE,WAAW,CACnC,uBAAuB,CAAE,SAAS,CM2NlC,aAAa,CAAE,KAAK,CACpB,OAAO,CEac,GAAO,CFV9B,eAAgB,CACf,KAAK,CpBooBkB,OAAe,CoBnoBtC,sBAAS,CNvOR,OAAO,CAAE,YAAY,CACrB,WAAW,CAAE,WAAW,CACxB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,WAAW,CAAE,CAAC,CACd,sBAAsB,CAAE,WAAW,CACnC,uBAAuB,CAAE,SAAS,CMmOlC,aAAa,CAAE,KAAK,CACpB,OAAO,CEVW,GAAO,CFc3B,gBAAiB,CAChB,KAAK,CpB2nBkB,OAAe,CoB1nBtC,uBAAS,CNhPR,OAAO,CAAE,YAAY,CACrB,WAAW,CAAE,WAAW,CACxB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,WAAW,CAAE,CAAC,CACd,sBAAsB,CAAE,WAAW,CACnC,uBAAuB,CAAE,SAAS,CM4OlC,aAAa,CAAE,KAAK,CACpB,OAAO,CEuUM,GAAO,CF7TtB,gBAAiB,CAChB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,WAAW,CAEpB,sBAAuB,CACtB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,WAAW,CACnB,OAAO,CAAE,KAAK,CAEf,iBAAkB,CACjB,KAAK,CAAE,KAAK,CACZ,MAAM,CAAE,WAAW,CAEpB,uBAAwB,CACvB,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,KAAK,CACd,MAAM,CAAE,YAAY,CAErB,+BAAgC,CAC/B,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,KAAK,CACd,MAAM,CAAE,OAAO,CAEhB,cAAe,CACd,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,KAAK,CACd,MAAM,CAAE,eAAe,CAExB,YAAa,CACZ,aAAa,CAAE,GAAG,CAEnB,iBAAkB,CACjB,MAAM,CAAE,cAAsC,CAC9C,OAAO,CpBjOwB,GAAG,CqBtEjC,uBAAuB,CrBqEM,GAAwB,CqBpEpD,sBAAsB,CrBoEM,GAAwB,CqB7DrD,0BAA0B,CrB6DG,GAAwB,CqB5DpD,yBAAyB,CrB4DG,GAAwB,CoBgPvD,gBAAiB,CAChB,MAAM,CAAE,YAAqD,CAC7D,SAAS,CAAE,GAAkD,CAC7D,WAAW,CnBnPc,OAAO,CmBqPjC,kBAAmB,CAClB,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,YAAqD,CAM9D,6BAEW,CACR,WAAW,CnBpMkB,GAAG,CmBqMhC,cAAc,CnBrMe,GAAG,CmBsMhC,KAAK,CpB0e2B,IAAW,CoBze3C,UAAU,CAAE,IAAI,CAClB,UAAU,CAAE,MAAM,CAKnB,gDAAmD,CAClD,KAAK,CAAE,IAAI,CG7UZ,iBAAkB,CACd,KAAK,CAAE,IAAI,CAGf,kBAAmB,CACf,KAAK,CAAE,KAAK,CAGhB,YAAa,CACT,OAAO,CAAE,YAAY,CACrB,MAAM,CAAE,cAAc,CACtB,MAAM,CAAE,WAAW,CACnB,UAAU,CAAE,OAAO,CAGvB,gBAAiB,CACb,MAAM,CAAE,aAAa,CAGzB,uBAAwB,CACpB,MAAM,CAAE,eAAe,CACvB,UAAU,CAAE,MAAM,CAOtB,cAAe,CACX,KAAK,CAAE,IAAI,CAGf,eAAgB,CACZ,KAAK,CAAE,KAAK,CAIhB,QAAS,CACL,MAAM,CAAE,cAAc,CAG1B,WAAY,CACR,MAAM,CAAE,GAAG,CAGf,WAAY,CACR,eAAe,CAAE,IAAI,CAQxB,yBAAe,CACd,OAAO,CAAE,KAAK,CACd,UAAU,CAAE,MAAM,CAEnB,uBAAa,CACZ,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,KAAK,CACd,UAAU,CAAE,IAAI,CAChB,kCAAW,CACV,UAAU,CAAE,IAAI,CAGlB,wBAAc,CACb,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,KAAK,CACd,UAAU,CAAE,KAAK,CACjB,mCAAW,CACV,UAAU,CAAE,KAAK,CAMpB,YAAa,CACZ,MAAM,CAAE,WAAW,CAChB,MAAM,CAAE,CAAC,CACT,UAAU,CAAE,IAAI,CAGlB,8MAKa,CACZ,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,YAAY,CACrB,MAAM,CAAE,CAAC,CAGX,uBAAW,CACV,SAAS,CAAE,GAAG,CACd,UAAU,CAAE,MAAM,CCxFpB,YAAa,CAGZ,aAAc,CACV,OAAO,CAAE,EAAE,CAIf,+OAgBW,CACV,OAAO,CAAE,eAAe,CAIzB,sBAAuB,CACtB,SAAS,CAAE,IAAI,CACf,WAAW,CAAE,GAAG,CAChB,YAAY,CAAE,GAAG,CAIlB,oBAAqB,CACpB,iBAAiB,CAAG,KAAK,CAE1B,qBAAsB,CACrB,iBAAiB,CAAE,MAAM,CAE1B,oBAAqB,CACpB,KAAK,CAAC,IAAI,CACV,gBAAgB,CAAC,MAAM,CAIxB,IAAK,CACJ,OAAO,CAAE,IAAI,CAIb,wDACgC,CAC/B,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,eAAe,CAC3B,MAAM,CAAE,eAAe,CACvB,KAAK,CAAE,eAAe,CACtB,MAAM,CAAE,IAAI,CAKd,qCACiB,CACf,OAAO,CAAE,eAAe,CAI1B,SAAU,CACT,OAAO,CAAE,IAAI,CAId,UAAW,CACV,UAAU,CAAE,gBAAgB,CAC5B,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CAIpB,cAAe,CACd,MAAM,CAAE,CAAC,CAEV,aAAc,CACb,OAAO,CAAE,IAAI,CAEd,WAAW,CACV,OAAO,CAAE,CAAC,CAEX,aAAc,CACb,MAAM,CAAE,YAAY,CACpB,KAAK,CAAE,eAAe,CACtB,MAAM,CAAE,eAAe,CACvB,UAAU,CAAE,eAAe,CAC3B,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CAIpB,SAAU,CACT,iBAAiB,CAAG,KAAK,CACzB,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACjB,gBAAgB,CAAE,0BAAyB,CAC3C,MAAM,CAAE,yBAAwB,CAEnC,aAAc,CACb,0BAA0B,CAAE,KAAK,CACjC,gBAAgB,CAAE,eAAe,CAEjC,MAAM,CAAE,eAAe,CAIxB,iDAAkD,CACjD,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,UAAU,CAAE,kBAA+B,CAC3C,mEAAkB,CACjB,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CAIpB,+EAAkB,CACjB,gBAAgB,CAAE,kBAA6C,CAIhE,8EAAkB,CACjB,MAAM,CAAE,eACT,CAKD,gBAAiB,CAChB,iBAAiB,CAAG,KAAK,CACzB,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,gBAAgB,CAAE,eAAe,CACjC,oCAAoB,CACnB,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,gBAAgB,CAAE,eAAe,CAElC,uBAAO,CACN,0BAA0B,CAAE,KAAK,CACjC,YAAY,CAAE,KAAK,CACnB,gBAAgB,CAAE,eAAe,CAEjC,+BAAQ,CACP,OAAO,CAAE,GAAG,CACZ,UAAU,CAAE,WAAW,CAExB,qJAAgF,CAC/E,OAAO,CAAE,GAAG,CACZ,UAAU,CAAE,WAAW,CACvB,KAAK,CAAE,eAAe,CAGxB,wDAA0C,CACzC,OAAO,CAAE,GAAG,CACZ,UAAU,CAAE,WAAW,CACvB,KAAK,CAAE,eAAe,CAIxB,IAAK,CACJ,MAAM,CAAE,CAAC,CAKT,IAAI,CAAE,GAAG,CAGV,mBAAsB,CACpB,iBAAiB,CAAE,KAAK,CAG1B,iBAAuB,CACrB,gBAAgB,CAAE,KAAK,CAIzB,mCAAoC,CACnC,UAAU,CAAE,IAAI", "sources": ["fonts/_fonts.scss","../light/_license.scss","../../bootstrap/stylesheets/bootstrap/_normalize.scss","../../bootstrap/stylesheets/bootstrap/_print.scss","../../bootstrap/stylesheets/bootstrap/_scaffolding.scss","../../bootstrap/stylesheets/bootstrap/mixins/_vendor-prefixes.scss","../light/_config.scss","../../bootstrap/stylesheets/bootstrap/_variables.scss","../../bootstrap/stylesheets/bootstrap/mixins/_tab-focus.scss","../../bootstrap/stylesheets/bootstrap/mixins/_image.scss","../../bootstrap/stylesheets/bootstrap/_type.scss","../../bootstrap/stylesheets/bootstrap/mixins/_text-emphasis.scss","../../bootstrap/stylesheets/bootstrap/mixins/_background-variant.scss","../../bootstrap/stylesheets/bootstrap/mixins/_clearfix.scss","../../bootstrap/stylesheets/bootstrap/mixins/_text-overflow.scss","../../font-awesome/scss/_path.scss","../../font-awesome/scss/_core.scss","../light/modules/_helpers.scss","../../bootstrap/stylesheets/bootstrap/mixins/_opacity.scss","../light/modules/_dialog.scss","../light/modules/_mixins.scss","../light/modules/_emoticons.scss","../light/modules/_edusharing.scss","../light/modules/_qti21content.scss","../light/modules/_content.scss","_openolat_config.scss","../light/modules/_content_embedded.scss","../../bootstrap/stylesheets/bootstrap/mixins/_border-radius.scss","../../font-awesome/scss/_variables.scss","../light/modules/_tinymce.scss","../light/modules/_print.scss"], "names": [], "file": "content.css" diff --git a/src/main/webapp/static/themes/openolat/email.css.map b/src/main/webapp/static/themes/openolat/email.css.map index e3775464f6ce9f436814e4b9f16f649e27cf69f6..fe42f7b031b0ddd6ff29cbc5a896ab87c6ad619a 100644 --- a/src/main/webapp/static/themes/openolat/email.css.map +++ b/src/main/webapp/static/themes/openolat/email.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "AAkBA,aAAc,CACb,WAAW,CCw1Be,wGAA8G,CDv1BxI,SAAS,CCw1BgB,KAAK,CDt1B9B,8BAAiB,CAChB,MAAM,CCs1BsB,aAAc,CDr1B1C,YAAY,CCs1BoB,IAAI,CDp1BpC,iCAAG,CACF,gBAAgB,CC01BK,OAAe,CDz1BpC,KAAK,CCw1BkB,IAAkB,CDv1BzC,OAAO,CAAE,gBAAyC,CAClD,aAAa,CAAE,IAAI,CACnB,WAAW,CAAE,KAA8B,CAC3C,SAAS,CAAE,OAAO,CAGnB,qCAAO,CACN,KAAK,CCi1BgB,OAAe,CD90BtC,6BAAgB,CACf,SAAS,CAAE,OAAO,CAClB,KAAK,CCy0BqB,IAAgB,CDx0B1C,UAAU,CAAE,iBAAmC,CAC/C,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,GAAG,CAEf,+BAAE,CACD,KAAK,CCm0BoB,IAAgB,CD5zB3C,6BAAc,CACb,WAAW,CAAE,OAAO,CAWrB,6BAAgB,CACf,KAAK,CCizBmB,IAAkB,CDhzB1C,gBAAgB,CCizBM,OAAe,CDhzBrC,YAAY,CCizBiB,OAAmB,CDhzBhD,aAAa,CCizBiB,GAAG,CDhzBjC,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,cAAc,CAAE,MAAM,CACtB,YAAY,CAAE,YAAY,CAC1B,MAAM,CAAE,OAAO,CACf,eAAe,CAAE,IAAI,CAGtB,mCAAsB,CACrB,UAAU,CAAE,GAAG,CACf,aAAa,CAAE,GAAG,CAClB,UAAU,CAAE,MAAM,CAElB,qCAAE,CACD,YAAY,CAAE,GAAG,CACjB,aAAa,CAAE,KAAK,CACpB,WAAW,CAAE,IAAI,CACjB,gDAAa,CACZ,YAAY,CAAE,CAAC,CAMlB,wCAA2B,CAC1B,UAAU,CAAE,IAAI,CAEjB,yCAA4B,CAC3B,UAAU,CAAE,KAAK", +"mappings": "AAkBA,aAAc,CACb,WAAW,CCy1Be,wGAA8G,CDx1BxI,SAAS,CCy1BgB,KAAK,CDv1B9B,8BAAiB,CAChB,MAAM,CCu1BsB,aAAc,CDt1B1C,YAAY,CCu1BoB,IAAI,CDr1BpC,iCAAG,CACF,gBAAgB,CC21BK,OAAe,CD11BpC,KAAK,CCy1BkB,IAAkB,CDx1BzC,OAAO,CAAE,gBAAyC,CAClD,aAAa,CAAE,IAAI,CACnB,WAAW,CAAE,KAA8B,CAC3C,SAAS,CAAE,OAAO,CAGnB,qCAAO,CACN,KAAK,CCk1BgB,OAAe,CD/0BtC,6BAAgB,CACf,SAAS,CAAE,OAAO,CAClB,KAAK,CC00BqB,IAAgB,CDz0B1C,UAAU,CAAE,iBAAmC,CAC/C,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,GAAG,CAEf,+BAAE,CACD,KAAK,CCo0BoB,IAAgB,CD7zB3C,6BAAc,CACb,WAAW,CAAE,OAAO,CAWrB,6BAAgB,CACf,KAAK,CCkzBmB,IAAkB,CDjzB1C,gBAAgB,CCkzBM,OAAe,CDjzBrC,YAAY,CCkzBiB,OAAmB,CDjzBhD,aAAa,CCkzBiB,GAAG,CDjzBjC,OAAO,CAAE,QAAQ,CACjB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,cAAc,CAAE,MAAM,CACtB,YAAY,CAAE,YAAY,CAC1B,MAAM,CAAE,OAAO,CACf,eAAe,CAAE,IAAI,CAGtB,mCAAsB,CACrB,UAAU,CAAE,GAAG,CACf,aAAa,CAAE,GAAG,CAClB,UAAU,CAAE,MAAM,CAElB,qCAAE,CACD,YAAY,CAAE,GAAG,CACjB,aAAa,CAAE,KAAK,CACpB,WAAW,CAAE,IAAI,CACjB,gDAAa,CACZ,YAAY,CAAE,CAAC,CAMlB,wCAA2B,CAC1B,UAAU,CAAE,IAAI,CAEjB,yCAA4B,CAC3B,UAAU,CAAE,KAAK", "sources": ["../light/email.scss","../light/_config.scss"], "names": [], "file": "email.css" diff --git a/src/main/webapp/static/themes/openolat/theme.css b/src/main/webapp/static/themes/openolat/theme.css index 32b6770f5314523b245671f20dae95cf75e9c419..56e8c23430b5a42fb5377e6c1ef723f85ae14978 100644 --- a/src/main/webapp/static/themes/openolat/theme.css +++ b/src/main/webapp/static/themes/openolat/theme.css @@ -22,5 +22,5 @@ * @author gnaegi, www.frentix.com * @date April. 2014 * ======================================================== -**//*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff !important}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:Roboto,"Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;font-size:14px;line-height:1.428571429;color:#2d2926;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#209d9e;text-decoration:none}a:hover,a:focus{color:#177374;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail,.o_form .o_filepreview img,.o_feed .o_media{padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,.o_cal .fc-header-title h2,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:#342c24}h1 small,h1 .small,h2 small,h2 .small,h3 small,h3 .small,h4 small,.o_cal .fc-header-title h2 small,h4 .small,.o_cal .fc-header-title h2 .small,h5 small,h5 .small,h6 small,h6 .small,.h1 small,.h1 .small,.h2 small,.h2 .small,.h3 small,.h3 .small,.h4 small,.h4 .small,.h5 small,.h5 .small,.h6 small,.h6 .small{font-weight:normal;line-height:1;color:#777}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,h1 .small,.h1 small,.h1 .small,h2 small,h2 .small,.h2 small,.h2 .small,h3 small,h3 .small,.h3 small,.h3 .small{font-size:65%}h4,.o_cal .fc-header-title h2,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.o_cal .fc-header-title h2 small,h4 .small,.o_cal .fc-header-title h2 .small,.h4 small,.h4 .small,h5 small,h5 .small,.h5 small,.h5 .small,h6 small,h6 .small,.h6 small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.o_cal .fc-header-title h2,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width: 768px){.lead{font-size:21px}}small,.small{font-size:85%}mark,.mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#209d9e}a.text-primary:hover{color:#177374}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff}.bg-primary{background-color:#209d9e}a.bg-primary:hover{background-color:#177374}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ul ol,ol ul,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}.dl-horizontal dd:before,.dl-horizontal dd:after{content:" ";display:table}.dl-horizontal dd:after{clear:both}@media (min-width: 768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.428571429;color:#777}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,.blockquote-reverse small:before,.blockquote-reverse .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,.blockquote-reverse small:after,.blockquote-reverse .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:bold;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container:before,.container:after{content:" ";display:table}.container:after{clear:both}@media (min-width: 768px){.container{width:750px}}@media (min-width: 992px){.container{width:970px}}@media (min-width: 1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container-fluid:before,.container-fluid:after{content:" ";display:table}.container-fluid:after{clear:both}.row{margin-left:-15px;margin-right:-15px}.row:before,.row:after{content:" ";display:table}.row:after{clear:both}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-1{width:8.3333333333%}.col-xs-2{width:16.6666666667%}.col-xs-3{width:25%}.col-xs-4{width:33.3333333333%}.col-xs-5{width:41.6666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.3333333333%}.col-xs-8{width:66.6666666667%}.col-xs-9{width:75%}.col-xs-10{width:83.3333333333%}.col-xs-11{width:91.6666666667%}.col-xs-12{width:100%}.col-xs-pull-0{right:auto}.col-xs-pull-1{right:8.3333333333%}.col-xs-pull-2{right:16.6666666667%}.col-xs-pull-3{right:25%}.col-xs-pull-4{right:33.3333333333%}.col-xs-pull-5{right:41.6666666667%}.col-xs-pull-6{right:50%}.col-xs-pull-7{right:58.3333333333%}.col-xs-pull-8{right:66.6666666667%}.col-xs-pull-9{right:75%}.col-xs-pull-10{right:83.3333333333%}.col-xs-pull-11{right:91.6666666667%}.col-xs-pull-12{right:100%}.col-xs-push-0{left:auto}.col-xs-push-1{left:8.3333333333%}.col-xs-push-2{left:16.6666666667%}.col-xs-push-3{left:25%}.col-xs-push-4{left:33.3333333333%}.col-xs-push-5{left:41.6666666667%}.col-xs-push-6{left:50%}.col-xs-push-7{left:58.3333333333%}.col-xs-push-8{left:66.6666666667%}.col-xs-push-9{left:75%}.col-xs-push-10{left:83.3333333333%}.col-xs-push-11{left:91.6666666667%}.col-xs-push-12{left:100%}.col-xs-offset-0{margin-left:0%}.col-xs-offset-1{margin-left:8.3333333333%}.col-xs-offset-2{margin-left:16.6666666667%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-4{margin-left:33.3333333333%}.col-xs-offset-5{margin-left:41.6666666667%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-7{margin-left:58.3333333333%}.col-xs-offset-8{margin-left:66.6666666667%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-10{margin-left:83.3333333333%}.col-xs-offset-11{margin-left:91.6666666667%}.col-xs-offset-12{margin-left:100%}@media (min-width: 768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-1{width:8.3333333333%}.col-sm-2{width:16.6666666667%}.col-sm-3{width:25%}.col-sm-4{width:33.3333333333%}.col-sm-5{width:41.6666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.3333333333%}.col-sm-8{width:66.6666666667%}.col-sm-9{width:75%}.col-sm-10{width:83.3333333333%}.col-sm-11{width:91.6666666667%}.col-sm-12{width:100%}.col-sm-pull-0{right:auto}.col-sm-pull-1{right:8.3333333333%}.col-sm-pull-2{right:16.6666666667%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.3333333333%}.col-sm-pull-5{right:41.6666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.3333333333%}.col-sm-pull-8{right:66.6666666667%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.3333333333%}.col-sm-pull-11{right:91.6666666667%}.col-sm-pull-12{right:100%}.col-sm-push-0{left:auto}.col-sm-push-1{left:8.3333333333%}.col-sm-push-2{left:16.6666666667%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.3333333333%}.col-sm-push-5{left:41.6666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.3333333333%}.col-sm-push-8{left:66.6666666667%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.3333333333%}.col-sm-push-11{left:91.6666666667%}.col-sm-push-12{left:100%}.col-sm-offset-0{margin-left:0%}.col-sm-offset-1{margin-left:8.3333333333%}.col-sm-offset-2{margin-left:16.6666666667%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.3333333333%}.col-sm-offset-5{margin-left:41.6666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.3333333333%}.col-sm-offset-8{margin-left:66.6666666667%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.3333333333%}.col-sm-offset-11{margin-left:91.6666666667%}.col-sm-offset-12{margin-left:100%}}@media (min-width: 992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-1{width:8.3333333333%}.col-md-2{width:16.6666666667%}.col-md-3{width:25%}.col-md-4{width:33.3333333333%}.col-md-5{width:41.6666666667%}.col-md-6{width:50%}.col-md-7{width:58.3333333333%}.col-md-8{width:66.6666666667%}.col-md-9{width:75%}.col-md-10{width:83.3333333333%}.col-md-11{width:91.6666666667%}.col-md-12{width:100%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.3333333333%}.col-md-pull-2{right:16.6666666667%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.3333333333%}.col-md-pull-5{right:41.6666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.3333333333%}.col-md-pull-8{right:66.6666666667%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.3333333333%}.col-md-pull-11{right:91.6666666667%}.col-md-pull-12{right:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.3333333333%}.col-md-push-2{left:16.6666666667%}.col-md-push-3{left:25%}.col-md-push-4{left:33.3333333333%}.col-md-push-5{left:41.6666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.3333333333%}.col-md-push-8{left:66.6666666667%}.col-md-push-9{left:75%}.col-md-push-10{left:83.3333333333%}.col-md-push-11{left:91.6666666667%}.col-md-push-12{left:100%}.col-md-offset-0{margin-left:0%}.col-md-offset-1{margin-left:8.3333333333%}.col-md-offset-2{margin-left:16.6666666667%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.3333333333%}.col-md-offset-5{margin-left:41.6666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.3333333333%}.col-md-offset-8{margin-left:66.6666666667%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.3333333333%}.col-md-offset-11{margin-left:91.6666666667%}.col-md-offset-12{margin-left:100%}}@media (min-width: 1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-1{width:8.3333333333%}.col-lg-2{width:16.6666666667%}.col-lg-3{width:25%}.col-lg-4{width:33.3333333333%}.col-lg-5{width:41.6666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.3333333333%}.col-lg-8{width:66.6666666667%}.col-lg-9{width:75%}.col-lg-10{width:83.3333333333%}.col-lg-11{width:91.6666666667%}.col-lg-12{width:100%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.3333333333%}.col-lg-pull-2{right:16.6666666667%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.3333333333%}.col-lg-pull-5{right:41.6666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.3333333333%}.col-lg-pull-8{right:66.6666666667%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.3333333333%}.col-lg-pull-11{right:91.6666666667%}.col-lg-pull-12{right:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.3333333333%}.col-lg-push-2{left:16.6666666667%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.3333333333%}.col-lg-push-5{left:41.6666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.3333333333%}.col-lg-push-8{left:66.6666666667%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.3333333333%}.col-lg-push-11{left:91.6666666667%}.col-lg-push-12{left:100%}.col-lg-offset-0{margin-left:0%}.col-lg-offset-1{margin-left:8.3333333333%}.col-lg-offset-2{margin-left:16.6666666667%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.3333333333%}.col-lg-offset-5{margin-left:41.6666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.3333333333%}.col-lg-offset-8{margin-left:66.6666666667%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.3333333333%}.col-lg-offset-11{margin-left:91.6666666667%}.col-lg-offset-12{margin-left:100%}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>thead>tr>td,.table>tbody>tr>th,.table>tbody>tr>td,.table>tfoot>tr>th,.table>tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>th,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>thead>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>thead>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>thead>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>thead>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>thead>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width: 767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}input[type="range"]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;background-color:#fcfcfc;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;-o-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#fafafa;opacity:1}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio: 0){input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{line-height:34px}input[type="date"].input-sm,.input-group-sm>input[type="date"].form-control,.input-group-sm>input[type="date"].input-group-addon,.input-group-sm>.input-group-btn>input[type="date"].btn,input[type="time"].input-sm,.input-group-sm>input[type="time"].form-control,.input-group-sm>input[type="time"].input-group-addon,.input-group-sm>.input-group-btn>input[type="time"].btn,input[type="datetime-local"].input-sm,.input-group-sm>input[type="datetime-local"].form-control,.input-group-sm>input[type="datetime-local"].input-group-addon,.input-group-sm>.input-group-btn>input[type="datetime-local"].btn,input[type="month"].input-sm,.input-group-sm>input[type="month"].form-control,.input-group-sm>input[type="month"].input-group-addon,.input-group-sm>.input-group-btn>input[type="month"].btn{line-height:30px}input[type="date"].input-lg,.input-group-lg>input[type="date"].form-control,.input-group-lg>input[type="date"].input-group-addon,.input-group-lg>.input-group-btn>input[type="date"].btn,input[type="time"].input-lg,.input-group-lg>input[type="time"].form-control,.input-group-lg>input[type="time"].input-group-addon,.input-group-lg>.input-group-btn>input[type="time"].btn,input[type="datetime-local"].input-lg,.input-group-lg>input[type="datetime-local"].form-control,.input-group-lg>input[type="datetime-local"].input-group-addon,.input-group-lg>.input-group-btn>input[type="datetime-local"].btn,input[type="month"].input-lg,.input-group-lg>input[type="month"].form-control,.input-group-lg>input[type="month"].input-group-addon,.input-group-lg>.input-group-btn>input[type="month"].btn{line-height:46px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="radio"].disabled,fieldset[disabled] input[type="radio"],input[type="checkbox"][disabled],input[type="checkbox"].disabled,fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}.radio-inline.disabled,fieldset[disabled] .radio-inline,.checkbox-inline.disabled,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,fieldset[disabled] .radio label,.checkbox.disabled label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.input-group-lg>.form-control-static.form-control,.input-group-lg>.form-control-static.input-group-addon,.input-group-lg>.input-group-btn>.form-control-static.btn,.form-control-static.input-sm,.input-group-sm>.form-control-static.form-control,.input-group-sm>.form-control-static.input-group-addon,.input-group-sm>.input-group-btn>.form-control-static.btn{padding-left:0;padding-right:0}.input-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn,.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm,.input-group-sm>select.form-control,.input-group-sm>select.input-group-addon,.input-group-sm>.input-group-btn>select.btn,.form-group-sm .form-control{height:30px;line-height:30px}textarea.input-sm,.input-group-sm>textarea.form-control,.input-group-sm>textarea.input-group-addon,.input-group-sm>.input-group-btn>textarea.btn,.form-group-sm .form-control,select[multiple].input-sm,.input-group-sm>select[multiple].form-control,.input-group-sm>select[multiple].input-group-addon,.input-group-sm>.input-group-btn>select[multiple].btn,.form-group-sm .form-control{height:auto}.input-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn,.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg,.input-group-lg>select.form-control,.input-group-lg>select.input-group-addon,.input-group-lg>.input-group-btn>select.btn,.form-group-lg .form-control{height:46px;line-height:46px}textarea.input-lg,.input-group-lg>textarea.form-control,.input-group-lg>textarea.input-group-addon,.input-group-lg>.input-group-btn>textarea.btn,.form-group-lg .form-control,select[multiple].input-lg,.input-group-lg>select[multiple].form-control,.input-group-lg>select[multiple].input-group-addon,.input-group-lg>.input-group-btn>select[multiple].btn,.form-group-lg .form-control{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback,.input-group-lg>.form-control+.form-control-feedback,.input-group-lg>.input-group-addon+.form-control-feedback,.input-group-lg>.input-group-btn>.btn+.form-control-feedback{width:46px;height:46px;line-height:46px}.input-sm+.form-control-feedback,.input-group-sm>.form-control+.form-control-feedback,.input-group-sm>.input-group-addon+.form-control-feedback,.input-group-sm>.input-group-btn>.btn+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label ~ .form-control-feedback{top:25px}.has-feedback label.sr-only ~ .form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#726860}@media (min-width: 768px){.form-inline .form-group,.o_navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control,.o_navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static,.o_navbar-form .form-control-static{display:inline-block}.form-inline .input-group,.o_navbar-form .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.o_navbar-form .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.o_navbar-form .input-group .input-group-btn,.form-inline .input-group .form-control,.o_navbar-form .input-group .form-control{width:auto}.form-inline .input-group>.form-control,.o_navbar-form .input-group>.form-control{width:100%}.form-inline .control-label,.o_navbar-form .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.o_navbar-form .radio,.form-inline .checkbox,.o_navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.o_navbar-form .radio label,.form-inline .checkbox label,.o_navbar-form .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.o_navbar-form .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"],.o_navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback,.o_navbar-form .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{content:" ";display:table}.form-horizontal .form-group:after{clear:both}@media (min-width: 768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width: 768px){.form-horizontal .form-group-lg .control-label{padding-top:14.3px}}@media (min-width: 768px){.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn.focus,.btn:active:focus,.btn:active.focus,.btn.active:focus,.btn.active.focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fcfcfc;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default.focus,.btn-default:active,.btn-default.active,.open>.btn-default.dropdown-toggle{color:#333;background-color:#e3e3e3;border-color:#adadad}.btn-default:active,.btn-default.active,.open>.btn-default.dropdown-toggle{background-image:none}.btn-default.disabled,.btn-default.disabled:hover,.btn-default.disabled:focus,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled.active,.btn-default[disabled],.btn-default[disabled]:hover,.btn-default[disabled]:focus,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled].active,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default:hover,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default.active{background-color:#fcfcfc;border-color:#ccc}.btn-default .badge{color:#fcfcfc;background-color:#333}.btn-primary{color:#fff;background-color:#209d9e;border-color:#1c8889}.btn-primary:hover,.btn-primary:focus,.btn-primary.focus,.btn-primary:active,.btn-primary.active,.open>.btn-primary.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.btn-primary:active,.btn-primary.active,.open>.btn-primary.dropdown-toggle{background-image:none}.btn-primary.disabled,.btn-primary.disabled:hover,.btn-primary.disabled:focus,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled.active,.btn-primary[disabled],.btn-primary[disabled]:hover,.btn-primary[disabled]:focus,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary:hover,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary.active{background-color:#209d9e;border-color:#1c8889}.btn-primary .badge{color:#209d9e;background-color:#fff}.btn-success{color:#fff;background-color:#78be20;border-color:#6aa81c}.btn-success:hover,.btn-success:focus,.btn-success.focus,.btn-success:active,.btn-success.active,.open>.btn-success.dropdown-toggle{color:#fff;background-color:#5c9219;border-color:#497414}.btn-success:active,.btn-success.active,.open>.btn-success.dropdown-toggle{background-image:none}.btn-success.disabled,.btn-success.disabled:hover,.btn-success.disabled:focus,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled.active,.btn-success[disabled],.btn-success[disabled]:hover,.btn-success[disabled]:focus,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled].active,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success:hover,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success.active{background-color:#78be20;border-color:#6aa81c}.btn-success .badge{color:#78be20;background-color:#fff}.btn-info{color:#fff;background-color:#a6a6a6;border-color:#999}.btn-info:hover,.btn-info:focus,.btn-info.focus,.btn-info:active,.btn-info.active,.open>.btn-info.dropdown-toggle{color:#fff;background-color:#8d8d8d;border-color:#7b7b7b}.btn-info:active,.btn-info.active,.open>.btn-info.dropdown-toggle{background-image:none}.btn-info.disabled,.btn-info.disabled:hover,.btn-info.disabled:focus,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled.active,.btn-info[disabled],.btn-info[disabled]:hover,.btn-info[disabled]:focus,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled].active,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info:hover,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info.active{background-color:#a6a6a6;border-color:#999}.btn-info .badge{color:#a6a6a6;background-color:#fff}.btn-warning{color:#fff;background-color:#f2af40;border-color:#f0a528}.btn-warning:hover,.btn-warning:focus,.btn-warning.focus,.btn-warning:active,.btn-warning.active,.open>.btn-warning.dropdown-toggle{color:#fff;background-color:#ef9b10;border-color:#cd850e}.btn-warning:active,.btn-warning.active,.open>.btn-warning.dropdown-toggle{background-image:none}.btn-warning.disabled,.btn-warning.disabled:hover,.btn-warning.disabled:focus,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled.active,.btn-warning[disabled],.btn-warning[disabled]:hover,.btn-warning[disabled]:focus,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning:hover,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning.active{background-color:#f2af40;border-color:#f0a528}.btn-warning .badge{color:#f2af40;background-color:#fff}.btn-danger{color:#fff;background-color:#d6001c;border-color:#bd0019}.btn-danger:hover,.btn-danger:focus,.btn-danger.focus,.btn-danger:active,.btn-danger.active,.open>.btn-danger.dropdown-toggle{color:#fff;background-color:#a30015;border-color:#7f0011}.btn-danger:active,.btn-danger.active,.open>.btn-danger.dropdown-toggle{background-image:none}.btn-danger.disabled,.btn-danger.disabled:hover,.btn-danger.disabled:focus,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled.active,.btn-danger[disabled],.btn-danger[disabled]:hover,.btn-danger[disabled]:focus,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger:hover,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger.active{background-color:#d6001c;border-color:#bd0019}.btn-danger .badge{color:#d6001c;background-color:#fff}.btn-link{color:#209d9e;font-weight:normal;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#177374;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:hover,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity 0.15s linear;-o-transition:opacity 0.15s linear;transition:opacity 0.15s linear}.fade.in{opacity:1}.collapse{display:none;visibility:hidden}.collapse.in{display:block;visibility:visible}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:0.35s;transition-duration:0.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fcfcfc;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#209d9e}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#777}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width: 768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar:before,.btn-toolbar:after{content:" ";display:table}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle,.btn-group-lg.btn-group>.btn+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret,.btn-group-lg>.btn .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret,.dropup .btn-group-lg>.btn .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{content:" ";display:table}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*="col-"]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.input-group-addon.btn{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.input-group-addon.btn{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav:before,.nav:after{content:" ";display:table}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#209d9e}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#209d9e}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified,.nav-tabs.nav-justified{width:100%}.nav-justified>li,.nav-tabs.nav-justified>li{float:none}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width: 768px){.nav-justified>li,.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified,.nav-tabs.nav-justified{border-bottom:0}.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs.nav-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width: 768px){.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs.nav-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none;visibility:hidden}.tab-content>.active{display:block;visibility:visible}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{content:" ";display:table}.navbar:after{clear:both}@media (min-width: 768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{content:" ";display:table}.navbar-header:after{clear:both}@media (min-width: 768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{content:" ";display:table}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media (min-width: 768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block !important;visibility:visible !important;height:auto !important;padding-bottom:0;overflow:visible !important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width: 480px) and (orientation: landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width: 768px){.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width: 768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width: 768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width: 768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width: 768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width: 767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width: 768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (min-width: 768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width: 767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width: 768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm,.btn-group-sm>.navbar-btn.btn{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs,.btn-group-xs>.navbar-btn.btn{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width: 768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width: 768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right ~ .navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width: 767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#333}.navbar-default .btn-link[disabled]:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:hover,fieldset[disabled] .navbar-default .btn-link:focus{color:#ccc}.navbar-inverse{background-color:#222;border-color:#090909}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#090909;color:#fff}@media (max-width: 767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#fff}.navbar-inverse .btn-link[disabled]:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:hover,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/ ";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.428571429;text-decoration:none;color:#209d9e;background-color:#fcfcfc;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>a:focus,.pagination>li>span:hover,.pagination>li>span:focus{color:#177374;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:hover,.pagination>.active>a:focus,.pagination>.active>span,.pagination>.active>span:hover,.pagination>.active>span:focus{z-index:2;color:#fcfcfc;background-color:#209d9e;border-color:#209d9e;cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager:before,.pager:after{content:" ";display:table}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fcfcfc;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#777;background-color:#fcfcfc;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label:empty{display:none}.btn .label{position:relative;top:-1px}a.label:hover,a.label:focus{color:#fff;text-decoration:none;cursor:pointer}.label-default{background-color:#777}.label-default[href]:hover,.label-default[href]:focus{background-color:#5e5e5e}.label-primary{background-color:#209d9e}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#177374}.label-success{background-color:#78be20}.label-success[href]:hover,.label-success[href]:focus{background-color:#5c9219}.label-info{background-color:#a6a6a6}.label-info[href]:hover,.label-info[href]:focus{background-color:#8d8d8d}.label-warning{background-color:#f2af40}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ef9b10}.label-danger{background-color:#d6001c}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#a30015}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge,.btn-group-xs>.btn .badge{top:0;padding:1px 5px}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#209d9e;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.jumbotron,.o_repo_details .o_lead{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.o_repo_details .o_lead h1,.jumbotron .h1,.o_repo_details .o_lead .h1{color:#342c24}.jumbotron p,.o_repo_details .o_lead p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr,.o_repo_details .o_lead>hr{border-top-color:#d5d5d5}.container .jumbotron,.container .o_repo_details .o_lead,.o_repo_details .container .o_lead,.container-fluid .jumbotron,.container-fluid .o_repo_details .o_lead,.o_repo_details .container-fluid .o_lead{border-radius:6px}.jumbotron .container,.o_repo_details .o_lead .container{max-width:100%}@media screen and (min-width: 768px){.jumbotron,.o_repo_details .o_lead{padding:48px 0}.container .jumbotron,.container .o_repo_details .o_lead,.o_repo_details .container .o_lead,.container-fluid .jumbotron,.container-fluid .o_repo_details .o_lead,.o_repo_details .container-fluid .o_lead{padding-left:60px;padding-right:60px}.jumbotron h1,.o_repo_details .o_lead h1,.jumbotron .h1,.o_repo_details .o_lead .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border 0.2s ease-in-out;-o-transition:border 0.2s ease-in-out;transition:border 0.2s ease-in-out}.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#2d2926}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#209d9e}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4,.alert .o_cal .fc-header-title h2,.o_cal .fc-header-title .alert h2{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#209d9e;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;-o-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar,.progress-bar-striped{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#78be20}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#a6a6a6}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f2af40}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d6001c}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fcfcfc;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;color:#555;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#209d9e;border-color:#209d9e}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#9febeb}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fcfcfc;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{content:" ";display:table}.panel-body:after{clear:both}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table,.panel-collapse>.table,.panel-collapse>.table-responsive>.table,.panel-collapse>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption,.panel-collapse>.table caption,.panel-collapse>.table-responsive>.table caption,.panel-collapse>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child,.panel-collapse>.table:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child,.panel-collapse>.table:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body,.panel-collapse>.panel-body+.table,.panel-collapse>.panel-body+.table-responsive,.panel-collapse>.table+.panel-body,.panel-collapse>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td,.panel-collapse>.table>tbody:first-child>tr:first-child th,.panel-collapse>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered,.panel-collapse>.table-bordered,.panel-collapse>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel-collapse>.table-bordered>thead>tr>th:first-child,.panel-collapse>.table-bordered>thead>tr>td:first-child,.panel-collapse>.table-bordered>tbody>tr>th:first-child,.panel-collapse>.table-bordered>tbody>tr>td:first-child,.panel-collapse>.table-bordered>tfoot>tr>th:first-child,.panel-collapse>.table-bordered>tfoot>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel-collapse>.table-bordered>thead>tr>th:last-child,.panel-collapse>.table-bordered>thead>tr>td:last-child,.panel-collapse>.table-bordered>tbody>tr>th:last-child,.panel-collapse>.table-bordered>tbody>tr>td:last-child,.panel-collapse>.table-bordered>tfoot>tr>th:last-child,.panel-collapse>.table-bordered>tfoot>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel-collapse>.table-bordered>thead>tr:first-child>td,.panel-collapse>.table-bordered>thead>tr:first-child>th,.panel-collapse>.table-bordered>tbody>tr:first-child>td,.panel-collapse>.table-bordered>tbody>tr:first-child>th,.panel-collapse>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel-collapse>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel-collapse>.table-bordered>tbody>tr:last-child>td,.panel-collapse>.table-bordered>tbody>tr:last-child>th,.panel-collapse>.table-bordered>tfoot>tr:last-child>td,.panel-collapse>.table-bordered>tfoot>tr:last-child>th,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive,.panel-collapse>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#209d9e}.panel-primary>.panel-heading{color:#fff;background-color:#209d9e;border-color:#209d9e}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#209d9e}.panel-primary>.panel-heading .badge{color:#209d9e;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#209d9e}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);-o-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform 0.3s ease-out;-moz-transition:-moz-transform 0.3s ease-out;-o-transition:-o-transform 0.3s ease-out;transition:transform 0.3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box;outline:0}.modal-backdrop{position:absolute;top:0;right:0;left:0;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.428571429px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{content:" ";display:table}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width: 768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}.modal-sm{width:300px}}@media (min-width: 992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;visibility:visible;font-family:Roboto,"Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;font-size:12px;font-weight:normal;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:Roboto,"Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important;visibility:hidden !important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none !important}@media (max-width: 767px){.visible-xs{display:block !important}table.visible-xs{display:table}tr.visible-xs{display:table-row !important}th.visible-xs,td.visible-xs{display:table-cell !important}}@media (max-width: 767px){.visible-xs-block{display:block !important}}@media (max-width: 767px){.visible-xs-inline{display:inline !important}}@media (max-width: 767px){.visible-xs-inline-block{display:inline-block !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm{display:block !important}table.visible-sm{display:table}tr.visible-sm{display:table-row !important}th.visible-sm,td.visible-sm{display:table-cell !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-block{display:block !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-inline{display:inline !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-inline-block{display:inline-block !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md{display:block !important}table.visible-md{display:table}tr.visible-md{display:table-row !important}th.visible-md,td.visible-md{display:table-cell !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-block{display:block !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-inline{display:inline !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-inline-block{display:inline-block !important}}@media (min-width: 1200px){.visible-lg{display:block !important}table.visible-lg{display:table}tr.visible-lg{display:table-row !important}th.visible-lg,td.visible-lg{display:table-cell !important}}@media (min-width: 1200px){.visible-lg-block{display:block !important}}@media (min-width: 1200px){.visible-lg-inline{display:inline !important}}@media (min-width: 1200px){.visible-lg-inline-block{display:inline-block !important}}@media (max-width: 767px){.hidden-xs{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.hidden-sm{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.hidden-md{display:none !important}}@media (min-width: 1200px){.hidden-lg{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}body .modal{position:absolute;overflow:visible}body div.tooltip-inner{max-width:400px}body div.popover{max-width:450px}body div.popover input{max-width:100%}body .modal-body.alert{border-radius:0}body .progress{margin-bottom:0}.panel-body:nth-child(n+2){border-top:1px solid #ddd}.panel .panel-heading[data-toggle="collapse"]{cursor:pointer}#o_ajax_busy_backdrop{bottom:0;z-index:1020}.form-control-feedback{top:10px}.form-horizontal .has-feedback .form-control-feedback{top:10px}.btn.btn-primary.o_disabled{color:#fff !important}body .progress-bar[aria-valuenow="1"],body .progress-bar[aria-valuenow="2"]{min-width:1px}td.text-left>div.form-inline>label.checkbox-inline>input[type='checkbox'],td.text-left>div.o_navbar-form>label.checkbox-inline>input[type='checkbox']{position:relative}@-moz-document url-prefix(){fieldset{display:table-cell}}@media screen and (max-width: 768px){@supports (-webkit-overflow-scrolling: touch){.form-control,.ui-widget input,.ui-widget select,.ui-widget textarea{font-size:16px}}}@font-face{font-family:'openolat';src:url("../light/fonts/openolat/openolat.eot?4yacgg");src:url("../light/fonts/openolat/openolat.woff") format("woff"),url("../light/fonts/openolat/openolat.ttf") format("truetype"),url("../light/fonts/openolat/openolat.svg") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:'FontAwesome';src:url("../../font-awesome/fonts/fontawesome-webfont.eot");src:url("../../font-awesome/fonts/fontawesome-webfont.woff2") format("woff2"),url("../../font-awesome/fonts/fontawesome-webfont.woff") format("woff"),url("../../font-awesome/fonts/fontawesome-webfont.ttf") format("truetype");font-weight:normal;font-style:normal}.o_icon,.o_progress_failed .inset:after,.o_progress_passed .inset:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_icon-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-15%}.o_icon-2x{font-size:2em}.o_icon-3x{font-size:3em}.o_icon-4x{font-size:4em}.o_icon-5x{font-size:5em}.o_icon-fw{width:1.2857142857em;text-align:center}.o_icon-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.o_icon-ul>li{position:relative}.o_icon-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em;text-align:center}.o_icon-li.o_icon-lg{left:-1.8571428571em}.o_icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.o_icon-pull-left{float:left}.o_icon-pull-right{float:right}.o_icon.o_icon-pull-left,.o_progress_failed .o_icon-pull-left.inset:after,.o_progress_passed .o_icon-pull-left.inset:after{margin-right:.3em}.o_icon.o_icon-pull-right,.o_progress_failed .o_icon-pull-right.inset:after,.o_progress_passed .o_icon-pull-right.inset:after{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.o_icon.pull-left,.o_progress_failed .pull-left.inset:after,.o_progress_passed .pull-left.inset:after{margin-right:.3em}.o_icon.pull-right,.o_progress_failed .pull-right.inset:after,.o_progress_passed .pull-right.inset:after{margin-left:.3em}.o_icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.o_icon-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.o_icon-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.o_icon-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.o_icon-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.o_icon-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.o_icon-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .o_icon-rotate-90,:root .o_icon-rotate-180,:root .o_icon-rotate-270,:root .o_icon-flip-horizontal,:root .o_icon-flip-vertical{filter:none}.o_icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.o_icon-stack-1x,.o_icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.o_icon-stack-1x{line-height:inherit}.o_icon-stack-2x{font-size:2em}.o_icon-inverse{color:#fff}.o_icon_absence:before{content:"ï€"}.o_icon_absence_authorized:before{content:"ï";color:#78be20}.o_icon_absence_leave:before{content:""}.o_icon_absence_unauthorized:before{content:"ïª";color:#d6001c}.o_icon_accepted:before{content:"ï…¤"}.o_icon_accessibility:before{content:""}.o_icon_actions:before{content:"ï‚…"}.o_icon_activate:before{content:"ï"}.o_icon_add_html:before{content:"ï„¡"}.o_icon_align_left:before{content:""}.o_icon_align_middle:before{content:""}.o_icon_align_right:before{content:""}.o_icon_archive_tool:before{content:""}.o_icon_assessment_mode:before{content:"ï„"}.o_icon_assessment_tool:before{content:"ï‚‘"}.o_icon_assignment:before{content:"";color:#d6001c}.o_icon_attempt_limit:before{content:""}.o_icon_accept:before{content:"";color:#78be20}.o_icon_add:before{content:"ï•"}.o_icon_add_member:before{content:""}.o_icon_add_search:before{content:""}.o_icon_audio:before{content:""}.o_icon_back:before{content:"ï“"}.o_icon_back_history:before{content:""}.o_icon_banned:before{content:"";color:#d6001c}.o_icon_bold:before{content:""}.o_icon_booking:before{content:"ïº"}.o_icon_bookmark:before{content:"";color:#8f1f40}.o_icon_bookmark_add:before{content:"ï‚—";color:#8f1f40}.o_icon_bookmark_header:before{content:""}.o_icon_browse:before{content:""}.o_icon_brush:before{content:""}.o_icon_browsercheck:before{content:"ï…¤"}.o_icon_busy:before{content:"ï„"}.o_icon_calendar:before{content:"ï³"}.o_icon_calendar_enabled:before{content:"ï†"}.o_icon_calendar_disabled:before{content:"ï‚–"}.o_icon_calendar:before{content:"ï³"}.o_icon_calendar_sync:before{content:""}.o_icon_cancelled:before{content:"ïž"}.o_icon_caret:before{content:""}.o_icon_caret_right:before{content:""}.o_icon_catalog:before{content:""}.o_icon_catalog_sub:before{content:"ï»"}.o_icon_certificate:before{content:"ï‚£"}.o_icon_chat:before{content:""}.o_icon_check:before{content:""}.o_icon_check_off:before{content:"ï‚–"}.o_icon_check_on:before{content:"ï†"}.o_icon_checkbox:before{content:"ï‚–"}.o_icon_checkbox_checked:before{content:"ï…Š"}.o_icon_circle:before{content:""}.o_icon_circle_color:before{content:"ï„‘"}.o_icon_citation:before{content:"ï„"}.o_icon_cleanup:before{content:""}.o_icon_clear_all:before{content:""}.o_icon_close:before{content:"ï€"}.o_icon_close_resource:before{content:""}.o_icon_close_tab:before{content:"ï€"}.o_icon_close_tool:before{content:"ï€"}.o_icon_close_tree:before{content:""}.o_icon_close_togglebox:before,.o_togglebox_wrapper .o_opener.o_in i:before,.o_search_result .o_opener.o_in i:before{content:""}.o_icon_code:before{content:"ï„¡"}.o_icon_coach:before{content:"ï†"}.o_icon_color_picker:before{content:"ïƒ"}.o_icon_column:before{content:""}.o_icon_columns:before{content:""}.o_icon_container:before{content:""}.o_icon_copy:before{content:""}.o_icon_courseareas:before{content:""}.o_icon_coursedb:before{content:""}.o_icon_courseeditor:before{content:"ï„"}.o_icon_coursefolder:before{content:"ï„”"}.o_icon_courserun:before{content:""}.o_icon_comments:before{content:""}.o_icon_comments_none:before{content:""}.o_icon_compress:before{content:"ï¦"}.o_icon_compulsory:before{content:"ï©"}.o_icon_content_popup:before{content:"ï‚Ž"}.o_icon_correct_answer:before{content:"";color:#78be20}.o_icon_correct_response:before{content:"ï";color:#78be20}.o_icon_correction:before{content:"ï€"}.o_icon_curriculum_element:before{content:""}.o_icon_customize:before{content:""}.o_icon_deactivate:before{content:"ïž"}.o_icon_delete_item:before{content:""}.o_icon_delete:before{content:"ï–";color:#A87E7E}.o_icon_deleted:before{content:""}.o_icon_details:before{content:""}.o_icon_description:before{content:"ïš"}.o_icon_dev:before{content:""}.o_icon_disabled:before{content:"ï„Œ"}.o_icon_dispensation_authorized:before{content:"ï";color:#78be20}.o_icon_dispensation_unauthorized:before{content:"ï±";color:#f2af40}.o_icon_download:before{content:""}.o_icon_edit:before{content:"ï„"}.o_icon_edit_file:before{content:"ï„"}.o_icon_edit_metadata:before{content:""}.o_icon_element_after:before{content:"ï£"}.o_icon_element_before:before{content:"ï¢"}.o_icon_enabled:before{content:"ï„‘"}.o_icon_enlarge:before{content:""}.o_icon_eportfolio_add:before{content:"ï„®"}.o_icon_eportfolio_link:before{content:"ï„®"}.o_icon_eraser:before{content:"ï„"}.o_icon_error:before{content:"ïª";color:#d6001c}.o_icon_exclamation:before{content:""}.o_icon_expand:before{content:"ï¥"}.o_icon_expenditure:before{content:""}.o_icon_export:before{content:"ï…"}.o_icon_extend:before{content:""}.o_icon_external_link:before{content:"ï‚Ž"}.o_icon_extra_time:before{content:""}.o_icon_failed:before{content:"ï—"}.o_icon_files:before{content:""}.o_icon_fileupload:before{content:""}.o_icon_filter:before{content:"ï‚°"}.o_icon_graduate:before{content:"ï†"}.o_icon_group:before,.o_BusinessGroup_icon:before{content:""}.o_icon_header:before{content:""}.o_icon_help:before{content:"ï™";cursor:help}.o_icon_home:before{content:""}.o_icon_image:before{content:""}.o_icon_impress:before{content:"ïš"}.o_icon_important:before{content:"ï±";color:#f2af40}.o_icon_import:before{content:"ï‚“"}.o_icon_incorrect_response:before{content:"ïœ";color:#d6001c}.o_icon_info:before{content:"ïš";color:#a6a6a6}.o_icon_info_msg:before{content:"ïª";color:#d6001c}.o_icon_info_resource:before{content:"ïš"}.o_icon_inheritance_root:before{content:"ï‚«"}.o_icon_inheritance_inherited:before{content:""}.o_icon_inheritance_none:before{content:"ï„Œ"}.o_icon_inline_editable:before{content:"ï„"}.o_icon_institution:before{content:""}.o_icon_italic:before{content:""}.o_icon_landingpage:before{content:"ï…€"}.o_icon_language:before{content:""}.o_icon_layout:before{content:""}.o_icon_learning_path:before{content:""}.o_icon_lecture:before{content:"ï€"}.o_icon_left:before{content:""}.o_icon_levels:before{content:""}.o_icon_line:before{content:""}.o_icon_link:before{content:"ïƒ"}.o_icon_link_extern:before{content:"ï‚Ž"}.o_icon_list:before{content:""}.o_icon_list_num:before{content:""}.o_icon_lifecycle:before{content:""}.o_icon_lifecycle_date:before{content:"ï³"}.o_icon_locked:before{content:""}.o_icon_log:before{content:"ï…œ"}.o_icon_login:before{content:"ï‚"}.o_icon_logout:before{content:"ï‚‹"}.o_icon_mandatory:before{content:"ï©";color:#f0ad4e}.o_icon_managed:before{content:"ï¹";color:#777}.o_icon_manual:before{content:"ï€";cursor:help}.o_icon_mail:before{content:""}.o_icon_math:before{content:"\03a3"}.o_icon_media:before{content:""}.o_icon_mediacenter:before{content:"ï¼"}.o_icon_membersmanagement:before{content:""}.o_icon_menuhandel:before{content:""}.o_icon_message:before{content:"ïƒ "}.o_icon_mobile:before{content:"ï„‹"}.o_icon_move:before{content:"ï‡"}.o_icon_order:before{content:"ï½"}.o_icon_move_down:before{content:""}.o_icon_move_left:before{content:"ï„€"}.o_icon_move_right:before{content:"ï„"}.o_icon_move_up:before{content:"ï„‚"}.o_icon_ms_done:before{content:""}.o_icon_ms_pending:before{content:"ï‹"}.o_icon_new:before{content:"ï©";color:#78be20}.o_icon_new_document:before{content:"ï…œ"}.o_icon_new_folder:before{content:"ï»"}.o_icon_new_portfolio:before{content:"ï€"}.o_icon_news:before{content:"ïš"}.o_icon_next:before{content:""}.o_icon_next_step:before{content:"ï„"}.o_icon_next_page:before{content:"ï„"}.o_icon_next_toolbar:before{content:""}.o_icon_node_after:before{content:"ï…µ"}.o_icon_node_before:before{content:"ï…¶"}.o_icon_node_under:before{content:"ï„’"}.o_icon_node_up_down:before{content:"ï½"}.o_icon_notes:before{content:""}.o_icon_notice_authorized:before{content:"ï";color:#78be20}.o_icon_notice_unauthorized:before{content:"ï±";color:#f2af40}.o_icon_notification:before{content:"ï‚ž"}.o_icon_number_of:before{content:""}.o_icon_ok:before{content:"";color:#78be20}.o_icon_open_tree:before{content:""}.o_icon_open_togglebox:before,.o_togglebox_wrapper .o_opener i:before,.o_search_result .o_opener i:before{content:""}.o_icon_openolat:before,.o_icon_provider_olat:before{content:"\E600";font-family:openolat;font-size:10px}.o_icon_options:before{content:""}.o_icon_origin:before{content:""}.o_icon_others:before{content:""}.o_icon_owner:before{content:""}.o_icon_pageing:before{content:"ï…"}.o_icon_paragraph:before{content:"ï‡"}.o_icon_passed:before{content:"ï˜"}.o_icon_password:before{content:""}.o_icon_pending:before{content:"ï„"}.o_icon_phone:before{content:"ï‚•"}.o_icon_post:before{content:""}.o_icon_presence:before{content:""}.o_icon_preview:before{content:"ï®"}.o_icon_previous:before{content:"ï„·"}.o_icon_previous_page:before{content:"ï„€"}.o_icon_previous_step:before{content:"ï„€"}.o_icon_previous_toolbar:before{content:""}.o_icon_print:before{content:""}.o_icon_private:before{content:""}.o_icon_progress_success:before{content:"";color:#e5efe5}.o_icon_progress_danger:before{content:"ï€";color:#efe5e5}.o_icon_provider_adfs:before{content:"ï…º"}.o_icon_provider_facebook:before{content:"ï‚š"}.o_icon_provider_google:before{content:"ï† "}.o_icon_provider_guest:before{content:""}.o_icon_provider_ldap:before{content:""}.o_icon_provider_linkedin:before{content:""}.o_icon_provider_oauth:before{content:""}.o_icon_provider_openid:before{content:""}.o_icon_provider_performx:before{content:""}.o_icon_provider_shibboleth:before{content:""}.o_icon_provider_tequila:before{content:""}.o_icon_provider_twitter:before{content:"ï‚™"}.o_icon_publish:before{content:"ï¤"}.o_icon_pull:before{content:""}.o_icon_quota:before{content:""}.o_icon_qrcode:before{content:""}.o_icon_quickview:before{content:"ï®"}.o_icon_radio_off:before{content:"ï„Œ"}.o_icon_radio_on:before{content:"ï"}.o_icon_rating_on:before,.o_rating .o_rating_items.o_enabled .o_icon:hover:before{content:""}.o_icon_rating_off:before{content:""}.o_icon_read:before{content:"ï„Œ"}.o_icon_readonly:before{content:"ï„";color:red}.o_icon_readwrite:before{content:"ï„"}.o_icon_recycle:before{content:""}.o_icon_rectangle:before{content:"ï‚–"}.o_icon_redo:before{content:""}.o_icon_refresh:before{content:""}.o_icon_reject:before{content:"ï€";color:#d6001c}.o_icon_rejected:before{content:"ï…¥"}.o_icon_reminder:before{content:""}.o_icon_remove:before{content:"ï€"}.o_icon_remove_filters:before{content:"ï—"}.o_icon_reopen:before{content:"ï„’"}.o_icon_replace:before{content:""}.o_icon_reply:before{content:"ï„’"}.o_icon_reply_with_quote:before{content:"ï„¢"}.o_icon_report:before{content:""}.o_icon_reset:before{content:"ïˆ"}.o_icon_response_feedback:before{content:""}.o_icon_restore:before{content:"ï…¤"}.o_icon_results_visible:before{content:"ï®"}.o_icon_results_hidden:before{content:"ï°"}.o_icon_reviewer:before{content:""}.o_icon_right:before{content:"ï‚©"}.o_icon_rss:before{content:"ï‚ž"}.o_icon_rss_unsubscribe:before{content:"ï‚ž";color:#996633}.o_icon_role:before{content:""}.o_icon_rubric:before{content:""}.o_icon_rubric_insufficient:before{content:"ï—";color:#d6001c}.o_icon_rubric_sufficient:before{content:"ï˜";color:#78be20}.o_icon_rubric_neutral:before{content:"ïª";color:#f2af40}.o_icon_save:before{content:""}.o_icon_search:before{content:""}.o_icon_select:before{content:""}.o_icon_send:before{content:"ïƒ "}.o_icon_settings:before{content:"ï‚…"}.o_icon_share:before{content:"ï¤"}.o_icon_show_more:before{content:"ï…"}.o_icon_show_less:before{content:"ï…‘"}.o_icon_show_send:before{content:""}.o_icon_shuffle:before{content:"ï´"}.o_icon_sign_out:before{content:"ï‚‹"}.o_icon_slide_down:before{content:"ï¸"}.o_icon_slide_up:before{content:"ï·"}.o_icon_spacer:before{content:"ï¾"}.o_icon_split:before{content:""}.o_icon_sort:before{content:""}.o_icon_sort_asc:before{content:""}.o_icon_sort_desc:before{content:"ïƒ"}.o_icon_sort_amount_asc:before{content:"ï… "}.o_icon_sort_amount_desc:before{content:"ï…¡"}.o_icon_sort_menu:before{content:"ï… "}.o_icon_start:before{content:"ï”"}.o_icon_status_available:before{content:"ï„‘";color:#063}.o_icon_status_chat:before{content:"ïµ"}.o_icon_status_dnd:before{content:"";color:#cc3}.o_icon_status_unavailable:before{content:"ïœ";color:#963}.o_icon_status_not_ready:before{content:"ïž"}.o_icon_status_not_started:before{content:"ï„Œ"}.o_icon_status_in_progress:before{content:"ï‹"}.o_icon_status_in_review:before{content:""}.o_icon_status_done:before{content:"ï˜"}.o_icon_status_undone:before{content:"ï"}.o_icon_statistics_tool:before{content:"ï‚€"}.o_icon_submit:before{content:""}.o_icon_table:before{content:""}.o_icon_table_custom:before{content:""}.o_icon_table_large:before{content:""}.o_icon_tags:before{content:""}.o_icon_textinput:before{content:""}.o_icon_time:before{content:""}.o_icon_timelimit:before{content:""}.o_icon_timelimit_start:before{content:""}.o_icon_timelimit_half:before{content:""}.o_icon_timelimit_end:before{content:""}.o_icon_timetable:before{content:""}.o_icon_toggle:before{content:"ï„‘"}.o_icon_toggle_on:before{content:""}.o_icon_toggle_off:before{content:""}.o_icon_to_read:before{content:"ï„‘"}.o_icon_tool:before{content:""}.o_icon_tool_pdf:before{content:"ï‡"}.o_icon_tools:before{content:"ï‚"}.o_icon_top:before{content:"ï·"}.o_icon_translation_item:before{content:""}.o_icon_translation_package:before{content:"ï„•"}.o_icon_unlocked:before{content:"ï‚œ"}.o_icon_undo:before{content:""}.o_icon_user:before{content:""}.o_icon_user_vip:before{content:"ï†"}.o_icon_user_anonymous:before{content:""}.o_icon_update:before{content:""}.o_icon_upload:before{content:"ï‚“"}.o_icon_version:before{content:""}.o_icon_video:before{content:""}.o_icon_visitingcard.o_icon_waiting:before{content:""}.o_icon_warn:before{content:"ï±";color:#f2af40}.o_icon_width_expand:before{content:"ï¥"}.o_icon_width_collapse:before{content:"ï¦"}.o_icon_wizard:before{content:"ïƒ"}.o_icon_xing:before{content:"ï…¨";color:#cfdc00}.o_BinderTemplate_icon:before{content:""}.o_CourseModule_icon:before,.o_course_icon:before{content:""}.o_EPStructuredMapTemplate_icon:before{content:"ï„®"}.o_FileResource-BLOG_icon:before{content:"ï‚¡"}.o_FileResource-IMSCP_icon:before{content:""}.o_FileResource-FORM_icon:before{content:""}.o_FileResource-PODCAST_icon:before{content:""}.o_FileResource-SHAREDFOLDER:before{content:"ï‚Ž"}.o_FileResource-SCORMCP_icon:before{content:""}.o_FileResource-SURVEY_icon:before{content:"ï„š"}.o_FileResource-TEST_icon:before{content:"ï„"}.o_FileResource-IMSQTI21_icon:before{content:"ï…‹"}.o_FileResource-WIKI_icon:before{content:""}.o_FileResource-SHAREDFOLDER_icon:before{content:"ï„•"}.o_FileResource-GLOSSARY_icon:before{content:"ï†"}.o_FileResource-PDF_icon:before{content:"ï‡"}.o_FileResource-XLS_icon:before{content:""}.o_FileResource-PPT_icon:before{content:""}.o_FileResource-DOC_icon:before{content:""}.o_FileResource-ANIM_icon:before{content:""}.o_FileResource-IMAGE_icon:before{content:""}.o_FileResource-SOUND_icon:before{content:""}.o_FileResource-MOVIE_icon:before{content:""}.o_FileResource-FILE_icon:before{content:""}.o_FileResource-VIDEO_icon:before{content:""}.o_CourseModule_icon_closed:before{content:"ïž"}.o_icon_repo_status_preparation:before{content:"ï€"}.o_icon_repo_status_review:before{content:""}.o_icon_repo_status_coachpublished:before{content:""}.o_icon_repo_status_published:before{content:""}.o_icon_repo_status_closed:before{content:"ïž"}.o_icon_repo_status_trash:before{content:""}.o_icon_repo_status_deleted:before{content:""}.o_sp_icon:before{content:""}.o_st_icon:before{content:""}.o_tu_icon:before{content:"ï‚Ž"}.o_bc_icon:before{content:"ï„•"}.o_lti_icon:before{content:"ï‚Ž"}.o_cp_icon:before{content:""}.o_cp_item:before{content:""}.o_scorm_icon:before{content:""}.o_en_icon:before{content:"ï‚"}.o_fo_icon:before{content:""}.o_co_icon:before{content:""}.o_infomsg_icon:before{content:"ïš"}.o_cal_icon:before{content:"ï³"}.o_wiki_icon:before{content:""}.o_podcast_icon:before{content:""}.o_pf_icon:before{content:""}.o_blog_icon:before{content:"ï‚¡"}.o_ep_icon:before{content:""}.o_ep_icon_v1:before{content:"ï„®"}.o_iqtest_icon:before{content:"ï„"}.o_iqself_icon:before{content:"ï„"}.o_iqsurv_icon:before{content:"ï„š"}.o_survey_icon:before{content:""}.o_qtiassessment_icon:before{content:"ï…‹"}.o_ta_icon:before{content:"ï‚®"}.o_gta_icon:before{content:"ï‚®"}.o_ms_icon:before{content:""}.o_dialog_icon:before{content:""}.o_projectbroker_icon:before{content:"ï„Œ"}.o_ll_icon:before{content:"ïƒ"}.o_den_icon:before{content:""}.o_cmembers_icon:before{content:""}.o_cl_icon:before{content:"ï†"}.o_vc_icon:before{content:""}.o_video_icon:before{content:""}.o_vitero_icon:before{content:""}.o_openmeetings_icon:before{content:""}.o_gotomeeting_icon:before{content:""}.o_card2brain_icon:before{content:"\E800";font-family:openolat;font-size:120%}.o_edubase_icon:before{content:"\E885";font-family:openolat}.o_livestream_icon:before{content:""}.o_unkown_icon:before{content:""}.o_portlet_infomsg_icon:before{content:"ïš"}.o_portlet_quickstart_icon:before{content:""}.o_portlet_bookmark_icon:before{content:""}.o_portlet_groups_icon:before{content:""}.o_portlet_notes_icon:before{content:""}.o_portlet_noti_icon:before{content:"ï‚ž"}.o_portlet_eff_icon:before{content:"ï‚£"}.o_portlet_repository_student_icon:before{content:""}.o_portlet_repository_teacher_icon:before{content:"ï†"}.o_portlet_iframe_icon:before{content:""}.o_portlet_sysinfo_icon:before{content:""}.o_portlet_dyk_icon:before{content:""}.o_portlet_infomessages_icon:before{content:""}.o_portlet_cal_icon:before{content:"ï³"}.o_portlet_institutions_icon:before{content:""}.o_portlet_links_icon:before{content:"ïƒ"}.o_portlet_shibboleth_icon:before{content:"ï‚"}.o_icon_qpool:before{content:""}.o_icon_pool_private:before{content:"ï‚–"}.o_icon_pool_public:before{content:"ï†"}.o_icon_pool_my_items:before{content:""}.o_icon_pool_favorits:before{content:""}.o_icon_pool_collection:before{content:""}.o_icon_pool_pool:before{content:""}.o_icon_pool_share:before{content:""}.o_icon_qitem_commands:before{content:"ï‚…"}.o_icon_qitem_convert:before{content:""}.o_icon_qitem_copy:before{content:""}.o_icon_qitem_delete:before{content:""}.o_icon_qitem_draft:before{content:"ï€"}.o_icon_qitem_endOfLife:before{content:""}.o_icon_qitem_finalVersion:before{content:""}.o_icon_qitem_export:before{content:""}.o_icon_qitem_hide_metadata:before{content:""}.o_icon_qitem_import:before{content:"ï‚“"}.o_icon_qitem_new:before{content:"ï•"}.o_icon_qitem_review:before{content:""}.o_icon_qitem_revised:before{content:""}.o_icon_qitem_share:before{content:"ï¤"}.o_icon_qitem_show_metadata:before{content:""}.o_icon_qitem_status:before{content:"ï¡"}.o_forum_message_icon:before{content:""}.o_calendar_icon:before{content:"ï³"}.o_icon_pf_section_draft:before{content:"ï°";color:#f2af40}.o_icon_pf_section_progress:before{content:"";color:#f2af40}.o_icon_pf_section_submitted:before{content:"";color:#209d9e}.o_icon_pf_section_closed:before{content:"";color:#78be20}.o_icon_pf_binder:before{content:""}.o_icon_pf_entry:before{content:"ï…›"}.o_icon_pf_entry_draft:before{content:"ï„‘";color:#f2af40}.o_icon_pf_entry_published:before{content:"ï„‘";color:#209d9e}.o_icon_pf_entry_revision:before{content:"ï„‘";color:#d6001c}.o_icon_pf_entry_closed:before{content:"ï„‘";color:#78be20}.o_icon_pf_entry_deleted:before{content:"";color:#000}.o_icon_pf_history:before{content:""}.o_icon_pf_my_shares:before{content:"ï‡ "}.o_icon_pf_new_entry:before{content:"ï€"}.o_icon_pf_quick_links:before{content:"ï¤"}.o_icon_pf_page:before{content:""}.o_icon_pf_section:before{content:""}.o_icon_pf_shared_with_me:before{content:""}.o_icon_pf_trash:before{content:""}.o_forum_status_thread_icon:before{content:""}.o_forum_status_sticky_closed_icon:before{content:"ïž"}.o_forum_status_sticky_icon:before{content:""}.o_forum_status_closed_icon:before{content:"ïž";color:#a94442}.o_forum_status_opened_icon:before{content:"ïž";color:#3c763d}.o_forum_status_hidden_icon:before{content:"ï°";color:#a94442}.o_forum_status_visible_icon:before{content:"ï®";color:#3c763d}.o_forum_all_icon:before{content:""}.o_forum_all_flat_icon:before{content:""}.o_forum_one_icon:before{content:"ï®"}.o_forum_marked_icon:before{content:""}.o_forum_new_icon:before{content:"ï©"}.o_mi_qpool_import:before{content:""}.o_mi_qtidrawing:before{content:""}.o_mi_qtisection:before{content:""}.o_mi_qtisc:before{content:""}.o_mi_qtimatch:before{content:""}.o_mi_qtimatch_draganddrop:before{content:"ï‰"}.o_mi_qtimatch_truefalse:before{content:""}.o_mi_qtimc:before{content:"ï†"}.o_mi_qtikprim:before{content:"ï…Š"}.o_mi_qtifib:before{content:"ï…"}.o_mi_qtinumerical:before{content:""}.o_mi_qtihotspot:before{content:""}.o_mi_qtihottext:before{content:"ï"}.o_mi_qtiessay:before{content:""}.o_mi_qtiunkown:before{content:""}.o_mi_qtiupload:before{content:"ï‚“"}.o_as_mode_leadtime:before{content:""}.o_as_mode_assessment:before{content:"ï‹"}.o_as_mode_followup:before{content:"ïž"}.o_as_mode_closed:before{content:'-'}.o_as_mode_stop:before{content:"ï"}.o_icon_qti_notPresented:before{content:"";color:#ddd}.o_icon_qti_notAnswered:before{content:"ï…„";color:#f2af40}.o_icon_qti_answered:before{content:"ï˜";color:#78be20}.o_icon_qti_ended:before{content:"ïž";color:#a6a6a6}.o_icon_qti_invalid:before{content:"ïª";color:#d6001c}.o_icon_qti_review:before{content:"ï®";color:#a6a6a6}.o_icon_qti_reviewNotSeen:before,.o_icon_qti_reviewNotAnswered:before,.o_icon_qti_reviewInvalid:before{content:"ï°";color:#a6a6a6}.o_icon_qti_end_testpart:before{content:""}.o_icon_qti_close_test:before{content:"ï‹“"}.o_icon_qti_cancel:before{content:"ï"}.o_icon_qti_suspend:before{content:"ïŒ"}.o_icon_qti_close_results:before{content:"ï‹“"}.o_icon_qti_hint:before{content:"ï™"}.o_icon_qti_summary_notAnswered:before{content:"ï„‘";color:#f2af40}.o_icon_qti_summary_ended:before{content:"ï—";color:#d6001c}.o_icon_qti_summary_correct:before{content:"ï˜";color:#78be20}.o_lectures_current:before{content:"ï„‘";color:#f2af40}.o_lectures_next:before{content:""}.o_lectures_pending:before{content:"ï„‘";color:#d6001c}.o_lectures_closed:before{content:"ï„‘"}.o_lectures_rollcall_ok:before{content:"ï„‘";color:#78be20}.o_lectures_rollcall_warning:before{content:"ï‚";color:#f2af40}.o_lectures_rollcall_danger:before{content:"ï„Œ";color:#d6001c}.o_lectures_rollcall_free:before{content:"ï„‘";color:#969696}.o_lectures_rollcall_notice:before{content:"ï„‘";color:#969696}.o_lectures_rollcall_pending:before{content:"";color:#b8b8b8}.o_lectures_attended:before{content:"ï„‘";color:#78be20}.o_lectures_authorized:before{content:"ï„‘";color:#f2af40}.o_lectures_absent:before{content:"ï„‘";color:#d6001c}.o_absences_col_warning:before{content:"ï±"}.o_absences_col_alert:before{content:"ïª"}.o_icon_taxonomy:before{content:""}.o_icon_taxonomy_level:before{content:""}.o_icon_taxonomy_level_leaf:before{content:"ï„•"}.o_icon_taxonomy_templates:before{content:""}.o_icon_taxonomy_levels:before{content:""}.o_black_led:before{content:"ï„‘";color:#209d9e}.o_green_led:before{content:"ï„‘";color:#78be20}.o_yellow_led:before{content:"ï„‘";color:#f2af40}.o_red_led:before{content:"ï„‘";color:#d6001c}.o_grader_active:before{content:"ï";color:#78be20}.o_grader_inactive:before{content:"ïž";color:#d6001c}.o_grader_absence:before{content:"";color:#f2af40}.o_grad_assignment_unassigned:before{content:"ïª";color:#d6001c}.o_grad_assignment_assigned:before{content:"ï‚–"}.o_grad_assignment_inprocess:before{content:""}.o_grad_assignment_done:before{content:"ï†"}.o_icon_identity_permanent:before{content:""}.o_icon_identity_pending:before{content:""}.o_icon_identity_login_denied:before{content:"ïž"}.o_icon_identity_deleted:before{content:""}.o_ac_token_icon:before{content:"ï‚„"}.o_ac_free_icon:before{content:"ï«"}.o_ac_group_icon:before{content:""}.o_ac_membersonly_icon:before{content:""}.o_ac_guests_icon:before{content:""}.o_ac_paypal_icon:before{content:""}.o_ac_status_canceled_icon:before{content:"ï¨";color:#f2af40}.o_ac_status_error_icon:before{content:"ï€";color:#d6001c}.o_ac_status_new_icon:before{content:"ï©";color:#209d9e}.o_ac_status_success_icon:before{content:"";color:#78be20}.o_ac_status_waiting_icon:before{content:"";color:#209d9e}.o_ac_order_status_new_icon:before{content:"ï©";color:#209d9e}.o_ac_order_status_prepayment_icon:before{content:"";color:#a6a6a6}.o_ac_order_status_payed_icon:before{content:"";color:#78be20}.o_ac_order_status_canceled_icon:before{content:"ï¨";color:#f2af40}.o_ac_order_status_error_icon:before{content:"ï€";color:#d6001c}.o_ac_order_status_warning_icon:before{content:"";color:#f2af40}.o_scorm_org:before{content:""}.o_scorm_item:before{content:""}.o_scorm_completed:before,.o_scorm_passed:before{content:"ï˜"}.o_scorm_failed:before{content:"ï±"}.o_scorm_incomplete:before{content:"ï±"}.o_scorm_not_attempted:before{background:none}.o_midpub:before{content:"ï˜"}.o_midwarn:before{content:"ï±"}.o_midlock:before{content:""}.o_miderr:before{content:"ïª"}.o_middel:before{content:"ï„"}i.o_lp_not_accessible:before{content:"ïž"}i.o_lp_ready:before{content:"ïž"}i.o_lp_in_progress:before{content:"ï‹"}i.o_lp_done:before{content:""}.o_filetype_file:before,.o_filetype_ico:before{content:""}.o_filetype_folder:before{content:"ï„”"}.o_filetype_folder_open:before{content:"ï„•"}.o_filetype_zip:before,.o_filetype_gz:before,.o_filetype_tar:before,.o_filetype_tgz:before{content:""}.o_filetype_css:before,.o_filetype_js:before,.o_filetype_java:before,.o_filetype_numbers:before,.o_filetype_ods:before,.o_filetype_xml:before,.o_filetype_xsl:before{content:""}.o_filetype_bat_icon:before,.o_filetype_bat:before,.o_filetype_exe:before,.o_filetype_app:before,.o_filetype_sh:before{content:""}.o_filetype_xls:before,.o_filetype_xlsx:before{content:""}.o_filetype_png:before,.o_filetype_tiff:before,.o_filetype_webp:before,.o_filetype_gif:before,.o_filetype_ico:before,.o_filetype_jpeg:before,.o_filetype_bmp:before,.o_filetype_odg:before,.o_filetype_eps:before,.o_filetype_jpg:before{content:""}.o_filetype_psd:before,.o_filetype_avi:before,.o_filetype_dvi:before,.o_filetype_mp4:before,.o_filetype_m4v:before,.o_filetype_webm:before,.o_filetype_ogg:before,.o_filetype_video:before,.o_filetype_mov:before,.o_filetype_mpeg:before,.o_filetype_mpg:before,.o_filetype_qt:before,.o_filetype_ra:before,.o_filetype_ram:before,.o_filetype_swf:before,.o_filetype_flv:before{content:""}.o_filetype_midi:before,.o_filetype_audio:before,.o_filetype_mp3:before,.o_filetype_m3u:before,.o_filetype_wav:before{content:""}.o_filetype_ps:before,.o_filetype_pdf:before{content:"ï‡"}.o_filetype_key:before,.o_filetype_odp:before,.o_filetype_ppt:before,.o_filetype_pptx:before{content:""}.o_filetype_odf:before,.o_filetype_rtf:before,.o_filetype_readme:before,.o_filetype_README:before,.o_filetype_log:before,.o_filetype_txt:before,.o_filetype_htm:before,.o_filetype_html:before{content:""}.o_filetype_odt:before,.o_filetype_pages:before,.o_filetype_doc:before,.o_filetype_docx:before{content:""}.o_icon_share_social:before{content:"ï…"}.o_icon_apple:before{content:"ï…¹"}.o_icon_facebook:before{content:"ï‚‚"}.o_icon_twitter:before{content:"ï‚"}.o_icon_google:before{content:""}.o_icon_delicious:before{content:""}.o_icon_digg:before{content:""}.o_icon_mailto:before{content:""}.o_icon_link:before{content:"ïƒ"}.o_icon_yahoo:before{content:""}.o_icon_eva_disclaimer:before{content:""}.o_icon_eva_end_show:before{content:"ï¾"}.o_icon_eva_end_hide:before{content:"ï…¸"}.o_icon_eva_export:before{content:""}.o_icon_eva_pdf:before{content:"ï‡"}.o_icon_eva_print:before{content:""}.o_icon_eva_session_info:before{content:"ï„©"}.o_icon_eva_mc:before{content:"ï†"}.o_icon_eva_sc:before{content:""}.o_icon_eva_sc:before{content:""}.o_icon_surv_reset:before{content:"ï„"}.o_icon_qual_ana_hide_filter:before{content:""}.o_icon_qual_ana_pres_edit:before{content:"ï‚"}.o_icon_qual_ana_export:before{content:""}.o_icon_qual_ana_pres_delete:before{content:"ïž"}.o_icon_qual_ana_pdf:before{content:"ï‡"}.o_icon_qual_ana_print:before{content:""}.o_icon_qual_ana_show_filter:before{content:""}.o_icon_qual_ana_trend:before{content:"ïˆ"}.o_icon_qual_ana_trend_arrow:before{content:"ï‚©"}.o_icon_qual_dc_create:before{content:"ï•"}.o_icon_qual_dc_delete:before{content:""}.o_icon_qual_dc_finished:before{content:"ï˜"}.o_icon_qual_dc_preparation:before{content:"ï„"}.o_icon_qual_dc_ready:before{content:"ï€"}.o_icon_qual_dc_running:before{content:"ï…„"}.o_icon_qual_exec_future:before{content:"ïœ"}.o_icon_qual_exec_over:before{content:"ï—"}.o_icon_qual_exec_participating:before{content:"ï…„"}.o_icon_qual_exec_participated:before{content:"ï˜"}.o_icon_qual_exec_ready:before{content:"ï€"}.o_icon_qual_gen_ce_add:before{content:"ï•"}.o_icon_qual_gen_create:before{content:"ï•"}.o_icon_qual_gen_delete:before{content:""}.o_icon_qual_gen_disabled:before{content:"ïž"}.o_icon_qual_gen_enabled:before{content:""}.o_icon_qual_gen_re_add:before{content:"ï•"}.o_icon_qual_part_user_add:before{content:""}.o_icon_qual_part_user_add_course:before{content:""}.o_icon_qual_part_user_add_curele:before{content:""}.o_icon_qual_part_execute:before{content:"ï‹"}.o_icon_lic_add:before{content:"ï•"}.o_icon_lic_public_domain:before{content:"\E810";font-family:openolat;font-size:120%}.o_icon_lic_cc0:before{content:"\E811";font-family:openolat;font-size:120%}.o_icon_lic_by:before{content:"\E812";font-family:openolat;font-size:120%}.o_icon_lic_by_sa:before{content:"\E813";font-family:openolat;font-size:120%}.o_icon_lic_by_nd:before{content:"\E814";font-family:openolat;font-size:120%}.o_icon_lic_by_nc:before{content:"\E815";font-family:openolat;font-size:120%}.o_icon_lic_by_nc_sa:before{content:"\E817";font-family:openolat;font-size:120%}.o_icon_lic_by_nc_nd:before{content:"\E819";font-family:openolat;font-size:120%}.o_icon_lic_all_rights_reserved:before{content:""}.o_icon_lic_freetext:before{content:""}.o_icon_lic_general:before{content:""}.o_icon_lic_youtube:before{content:"ï…¦"}a.o_icon:hover,.o_progress_failed a.inset:hover:after,.o_progress_passed a.inset:hover:after,a.o_icon:focus,.o_progress_failed a.inset:focus:after,.o_progress_passed a.inset:focus:after{text-decoration:none}img.o_emoticons_angel{background:url(../light/images/emoticons/smiley-angel.png);width:16px;height:16px}img.o_emoticons_angry{background:url(../light/images/emoticons/smiley-mad.png);width:16px;height:16px}img.o_emoticons_blushing{background:url(../light/images/emoticons/smiley-red.png);width:16px;height:16px}img.o_emoticons_confused{background:url(../light/images/emoticons/smiley-confuse.png);width:16px;height:16px}img.o_emoticons_cool{background:url(../light/images/emoticons/smiley-cool.png);width:16px;height:16px}img.o_emoticons_cry{background:url(../light/images/emoticons/smiley-cry.png);width:16px;height:16px}img.o_emoticons_devil{background:url(../light/images/emoticons/smiley-evil.png);width:16px;height:16px}img.o_emoticons_grin{background:url(../light/images/emoticons/smiley-grin.png);width:16px;height:16px}img.o_emoticons_kiss{background:url(../light/images/emoticons/smiley-kiss.png);width:16px;height:16px}img.o_emoticons_ohoh{background:url(../light/images/emoticons/smiley-eek.png);width:16px;height:16px}img.o_emoticons_sad{background:url(../light/images/emoticons/smiley-sad.png);width:16px;height:16px}img.o_emoticons_sick{background:url(../light/images/emoticons/smiley-sad-blue.png);width:16px;height:16px}img.o_emoticons_smile{background:url(../light/images/emoticons/smiley.png);width:16px;height:16px}img.o_emoticons_tongue{background:url(../light/images/emoticons/smiley-razz.png);width:16px;height:16px}img.o_emoticons_ugly{background:url(../light/images/emoticons/smiley-money.png);width:16px;height:16px}img.o_emoticons_weird{background:url(../light/images/emoticons/smiley-nerd.png);width:16px;height:16px}img.o_emoticons_wink{background:url(../light/images/emoticons/smiley-wink.png);width:16px;height:16px}img.o_emoticons_worried{background:url(../light/images/emoticons/smiley-roll-blue.png);width:16px;height:16px}img.o_emoticons_up{background:url(../light/images/emoticons/thumb-up.png);width:16px;height:16px}img.o_emoticons_down{background:url(../light/images/emoticons/thumb.png);width:16px;height:16px}.o_block_bottom,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry,.o_header_with_buttons,.o_search_result{margin-bottom:1em}.o_block_top,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry{margin-top:1em}.o_block_small_bottom,.o_block_small{margin-bottom:0.5em}.o_block_small_top,.o_block_small{margin-top:0.5em}.o_block_large_bottom,.o_block_large,.o_block_with_datecomp,.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left,.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right,.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle,.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill,.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file,.o_pf_content .o_forum,.gu-mirror .o_forum,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_wiki,.o_login .o_login_footer_wrapper,.o_portlet{margin-bottom:2em}.o_block_large_top,.o_block_large,.o_block_with_datecomp,.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left,.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right,.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle,.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill,.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file,.o_pf_content .o_forum,.gu-mirror .o_forum,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_wiki,.o_login .o_login_footer_wrapper,.o_portlet{margin-top:2em}.o_block_move_up{margin-top:-1em}.o_block_move_up_small{margin-top:-0.5em}.o_block_move_up_large{margin-top:-2em}.o_block_inline,.o_block_inline_left,.o_block_inline_both,.o_block_inline_right{display:inline-block;vertical-align:top}.o_block_inline_left,.o_block_inline_both{margin-left:0.5em}.o_block_inline_right,.o_block_inline_both{margin-right:0.5em}.o_block_centered_wrapper{display:table;width:100%;height:100%}.o_block_centered_content{display:table-cell;vertical-align:middle;text-align:center}.o_block_imagebg{background-repeat:no-repeat;background-position:center;background-size:cover}.o_block_imagebg span{padding:2px;background-color:rgba(255,255,255,0.8)}.o_block_imagebg h1,.o_block_imagebg h2,.o_block_imagebg h3,.o_block_imagebg h4,.o_block_imagebg .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_block_imagebg h2,.o_block_imagebg h5,.o_block_imagebg p{padding:2px;background-color:rgba(255,255,255,0.8);display:inline-block}.o_block_imagebg h1:after,.o_block_imagebg h2:after,.o_block_imagebg h3:after,.o_block_imagebg h4:after,.o_block_imagebg .o_cal .fc-header-title h2:after,.o_cal .fc-header-title .o_block_imagebg h2:after,.o_block_imagebg h5:after,.o_block_imagebg p:after{content:' ';display:block}.o_scrollblock,div.b_scrollblock{overflow-x:auto;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_button_group{text-align:center}.o_button_group a,.o_button_group input,.o_button_group button,.o_button_group .btn-group{margin-right:5px;margin-bottom:0.5em}.o_button_group a:last-child,.o_button_group input:last-child,.o_button_group button:last-child,.o_button_group .btn-group:last-child{margin-right:0}.o_button_group .btn-group a,.o_button_group .btn-group input,.o_button_group .btn-group button{margin-right:0;margin-bottom:0}.o_button_group .dropdown-menu{text-align:left}.o_button_group_left{text-align:left}.o_button_group_right{text-align:right}.o_button_group_top{margin-top:0}.o_header_with_buttons:before,.o_header_with_buttons:after{content:" ";display:table}.o_header_with_buttons:after{clear:both}.o_header_with_buttons h1,.o_header_with_buttons h2,.o_header_with_buttons h3,.o_header_with_buttons h4,.o_header_with_buttons .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_header_with_buttons h2,.o_header_with_buttons h5,.o_header_with_buttons h6{display:inline-block}.o_header_with_buttons .o_button_group{margin-bottom:0;float:right}.o_header_with_buttons h1+.o_button_group{margin-top:28px}.o_header_with_buttons h2+.o_button_group{margin-top:24px}.o_header_with_buttons h3+.o_button_group{margin-top:20px}.o_header_with_buttons h4+.o_button_group,.o_header_with_buttons .o_cal .fc-header-title h2+.o_button_group,.o_cal .fc-header-title .o_header_with_buttons h2+.o_button_group{margin-top:10px}.o_header_with_buttons h5+.o_button_group{margin-top:6.6666666667px}.o_header_with_buttons h6+.o_button_group{margin-top:5px}#o_main_center .o_header_with_buttons h2+.o_button_group{margin-top:0}.panel-heading.o_header_with_buttons{margin-bottom:0}.o_button_textstyle:before{content:'['}.o_button_textstyle:after{content:']'}.panel-imagebg{background-repeat:no-repeat;background-position:center;background-size:cover}.panel-imagebg.panel-default>.panel-heading{background-color:rgba(255,255,255,0.8);border-bottom:transparent}.panel-imagebg .panel-body span{padding:2px;background-color:rgba(255,255,255,0.8)}.panel-placeholder{border-width:2px;border-style:dashed;border-color:#ccc;border-radius:10px;background-color:#fcfcfc}.panel-placeholder .panel-body{padding:10px}.panel-placeholder .panel-body:nth-child(n+2){border-top:none}.panel-placeholder .panel-body h3:nth-child(1),.panel-placeholder .panel-body h4:nth-child(1),.panel-placeholder .panel-body .o_cal .fc-header-title h2:nth-child(1),.o_cal .fc-header-title .panel-placeholder .panel-body h2:nth-child(1),.panel-placeholder .panel-body h5:nth-child(1){margin-top:0}.panel-placeholder .panel-body .o_button_group{margin-bottom:0}.panel-placeholder .panel-heading{border-top-right-radius:8px;border-top-left-radius:8px;border-width:2px;border-style:dashed;border-color:#ccc;border-top:none;border-left:none;border-right:none;color:#888;font-weight:bold}.panel-placeholder .panel-footer{border-bottom-right-radius:8px;border-bottom-left-radius:8px;border-width:2px;border-style:dashed;border-color:#ccc;border-bottom:none;border-left:none;border-right:none}.o_xsmall,.b_xsmall,p.b_xsmall,div.b_xsmall{font-size:11px}.o_small,.b_small,p.b_small,div.b_small,.o_comments .o_comment_wrapper h5,.o_comments .o_comment_wrapper .o_comment,.o_bc_meta,.tooltip,.o_htmleditor .o_metadata .o_lastmodified,.o_noti,.o_block_with_datecomp .o_meta,.o_togglebox_wrapper div.o_togglebox_content .o_hide,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label,.o_course_run .o_toc .o_entry,.o_assessment_test_results .o_qti_to_overview{font-size:12px}.o_large,.b_large,p.b_large,div.b_large{font-size:18px}.o_xlarge,.b_xlarge,p.b_xlarge,div.b_xlarge{font-size:20px}.o_disabled,.b_disabled,p.b_disabled,div.b_disabled{color:#777 !important;cursor:default}.o_disabled:hover,.b_disabled:hover{color:#777 !important}.o_dimmed,.b_dimmed,p.b_dimmed,div.b_dimmed{opacity:.4;filter:alpha(opacity=40)}.o_selected,.b_selected,p.b_selected,div.b_selected{font-weight:bold}.o_deleted,.b_deleted,p.b_deleted,div.b_deleted{text-decoration:line-through}.o_highlight_on_hover:hover{background-color:#f5f5f5}.o_clickable{cursor:pointer}.o_ochre{color:#c8a959}.o_blue{color:#12223F}.o_undecorated:hover,.o_undecorated:focus,.o_disabled:hover,.b_disabled:hover,#o_main_wrapper #o_toplink:hover,#o_footer_powered a:hover,#o_share a:hover,#o_share_social_container a:hover,.o_toolbar .o_tools_container a:hover,.o_button_toggle:hover,.o_im_message_group .o_im_from:hover,.o_noti .o_label:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover,.o_catalog .o_level .o_meta .o_title a:hover,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover,.o_repo_details .o_social .o_comments:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:hover,.o_login .o_login_register:hover,.o_disabled:focus,.b_disabled:focus,#o_main_wrapper #o_toplink:focus,#o_footer_powered a:focus,#o_share a:focus,#o_share_social_container a:focus,.o_toolbar .o_tools_container a:focus,.o_button_toggle:focus,.o_im_message_group .o_im_from:focus,.o_noti .o_label:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:focus,.o_catalog .o_level .o_meta .o_title a:focus,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:focus,.o_repo_details .o_social .o_comments:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:focus,.o_login .o_login_register:focus{text-decoration:none}.o_copy_code,.b_copy_code,p.b_copy_code,div.b_copy_code,code,pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}.o_copy_code input,.o_copy_code textarea,.b_copy_code input,code input,pre input,.b_copy_code textarea,code textarea,pre textarea{border:0;width:90%;background:transparent}.o_nowrap,.b_copy_code,p.b_copy_code,div.b_copy_code,code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o_titled_wrapper .o_content{margin-top:20px}.o_video,.o_video video,.b_video,.o_video_wrapper{display:inline-block;max-width:100%;height:auto;max-width:100%}.o_image,.o_image img,img,.b_image{display:inline-block;max-width:100%;height:auto;max-width:100%}.o_figure_caption_bottom{display:inline-block;min-width:50%}.o_figure_caption_bottom figure{display:table}.o_image_vertical_center_helper{display:inline-block;height:100%;vertical-align:middle}.o_image_vertical_center_helper+.o_image img{vertical-align:middle}.o_with_hyphens{-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o_page_margins{padding:25px}.o_dragable,.o_page_fragment_edit .o_page_tools_dd:before,.o_page_drop{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.o_dragable:active,.o_page_fragment_edit .o_page_tools_dd:active:before,.o_page_drop:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_draging,.gu-mirror{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_draging:active,.gu-mirror:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_hidden{visibility:hidden}h1{color:#342c24}h2{color:#342c24}h3{color:#342c24}h4,.o_cal .fc-header-title h2{color:#342c24}h5{color:#342c24}h5{color:#342c24}fieldset legend{color:#342c24}.o_user_content_block a{color:#209d9e;text-decoration:none}.o_user_content_block a:hover,.o_user_content_block a:focus{color:#177374;text-decoration:underline}.b_border_box,p.b_border_box,div.b_border_box{border:1px solid #777;padding:1em;border-top-right-radius:3px;border-top-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}table td{line-height:1.428571429;vertical-align:top}table.b_default td,table.b_default th{padding:8px;vertical-align:top}table.b_grid{width:99.5%;background:transparent;border-collapse:separate}table.b_grid td,table.b_grid th{padding:8px;border:1px solid #777}table.b_grid thead td,table.b_grid th{background:#eee;font-weight:bold}table.b_border{width:99.5%;background:transparent;border-collapse:collapse}table.b_border td,table.b_border th{padding:8px;border:1px solid #777}table.b_border thead td,table.b_border th{background:#eee;font-weight:bold}table.b_borderless{width:99.5%;background:transparent;border-collapse:separate}table.b_borderless td,table.b_borderless th{padding:8px;border:0 !important}table.b_borderless thead td,table.b_borderless th{font-weight:bold}table.b_full{width:99.5%}table.b_middle{background:transparent}table.b_middle td{vertical-align:middle}table.b_gray{border-collapse:collapse}table.b_gray td,table.b_gray th{padding:8px;background:#eee;border:1px solid #fbfbfb}table.b_gray thead td,table.b_gray th{background:#d5d5d5;font-weight:bold}table.b_gray tbody tr:nth-child(even) td{background:#fbfbfb;border:1px solid #eee}table.b_gray.b_no_stripes tbody tr:nth-child(even) td{background:#eee;border:1px solid #fbfbfb}@media print{table.b_gray td,table.b_gray th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eee !important}table.b_gray thead td,table.b_gray th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#d5d5d5 !important}table.b_gray tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fbfbfb !important}}table.b_blue{border-collapse:collapse}table.b_blue td,table.b_blue th{padding:8px;background:#d9edf7;border:1px solid #eef7fb}table.b_blue thead td,table.b_blue th{background:#afd9ee;font-weight:bold}table.b_blue tbody tr:nth-child(even) td{background:#eef7fb;border:1px solid #d9edf7}table.b_blue.b_no_stripes tbody tr:nth-child(even) td{background:#d9edf7;border:1px solid #eef7fb}@media print{table.b_blue td,table.b_blue th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#d9edf7 !important}table.b_blue thead td,table.b_blue th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#afd9ee !important}table.b_blue tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eef7fb !important}}table.b_green{border-collapse:collapse}table.b_green td,table.b_green th{padding:8px;background:#dff0d8;border:1px solid #eef7ea}table.b_green thead td,table.b_green th{background:#c1e2b3;font-weight:bold}table.b_green tbody tr:nth-child(even) td{background:#eef7ea;border:1px solid #dff0d8}table.b_green.b_no_stripes tbody tr:nth-child(even) td{background:#dff0d8;border:1px solid #eef7ea}@media print{table.b_green td,table.b_green th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#dff0d8 !important}table.b_green thead td,table.b_green th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#c1e2b3 !important}table.b_green tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eef7ea !important}}table.b_yellow{border-collapse:collapse}table.b_yellow td,table.b_yellow th{padding:8px;background:#fcf8e3;border:1px solid #fefefa}table.b_yellow thead td,table.b_yellow th{background:#f7ecb5;font-weight:bold}table.b_yellow tbody tr:nth-child(even) td{background:#fefefa;border:1px solid #fcf8e3}table.b_yellow.b_no_stripes tbody tr:nth-child(even) td{background:#fcf8e3;border:1px solid #fefefa}@media print{table.b_yellow td,table.b_yellow th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fcf8e3 !important}table.b_yellow thead td,table.b_yellow th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f7ecb5 !important}table.b_yellow tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fefefa !important}}table.b_red{border-collapse:collapse}table.b_red td,table.b_red th{padding:8px;background:#f2dede;border:1px solid #f9f0f0}table.b_red thead td,table.b_red th{background:#e4b9b9;font-weight:bold}table.b_red tbody tr:nth-child(even) td{background:#f9f0f0;border:1px solid #f2dede}table.b_red.b_no_stripes tbody tr:nth-child(even) td{background:#f2dede;border:1px solid #f9f0f0}@media print{table.b_red td,table.b_red th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f2dede !important}table.b_red thead td,table.b_red th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#e4b9b9 !important}table.b_red tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f9f0f0 !important}}table.a_responsive{width:auto !important}@media (max-width: 768px){.a_responsive td{display:block}}.b_align_normal{text-align:left}.b_align_center{text-align:center}.b_align_inverse{text-align:right}.b_align_justified{text-align:justify}a.b_link_extern{color:#209d9e}a.b_link_extern:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï‚Ž"}a.b_link_mailto{color:#209d9e}a.b_link_mailto:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:""}a.b_link_forward{color:#209d9e}a.b_link_forward:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï¤"}img.b_float_left{float:left;margin:0 2em 2em 0}img.b_float_left_clear{clear:both;margin:0 2em 2em 0;display:block}img.b_float_right{float:right;margin:0 0 2em 2em}img.b_float_right_clear{clear:both;display:block;margin:0 0 2em auto}img.b_float_left_clear_nomargin{float:left;display:block;margin:0 0 0 0}img.b_centered{clear:both;display:block;margin:0 auto 2em auto}img.b_circle{border-radius:50%}img.b_with_border{border:1px solid #ddd;padding:3px;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}p.b_figure_title{margin:20px 0 5px 0;font-size:85%;font-family:inherit}p.b_figure_caption{clear:both;margin:5px 0 20px 0}caption,figcaption,.o_caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left;font-style:italic}.b_clear_float,p.b_clear_float,div.b_clear_float{clear:both}figure.align-left{float:left}figure.align-right{float:right}figure.image{display:inline-block;border:1px solid gray;margin:0 2px 0 1px;background:#f5f2f0}figure.image img{margin:8px 8px 0 8px}figure.image figcaption{margin:6px 8px 6px 8px;text-align:center}img.align-left{float:left}img.align-right{float:right}.mce-toc{border:1px solid gray}.mce-toc h2{margin:4px}.mce-toc li{list-style-type:none}figure.image.align-center{display:block;text-align:center}figure.image.align-left{float:none;display:block;text-align:left}figure.image.align-left figcaption{text-align:left}figure.image.align-right{float:none;display:block;text-align:right}figure.image.align-right figcaption{text-align:right}figure.image{margin:2em 0 2em 0;border:0;background:none}figure.image img.b_float_left,figure.image img.b_float_left_clear,figure.image img.b_float_right,figure.image img.b_float_right_clear,figure.image img.b_float_left_clear_nomargin,figure.image img.b_centered{float:none;display:inline-block;margin:0}figure.image figcaption{font-size:90%;font-style:italic}.radial-progress,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{margin:10px;width:120px;height:120px;background-color:#eee;border-radius:50%;font-size:21.6px;display:inline-block;position:relative}.radial-progress .circle,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle{display:block}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask,.radial-progress .circle .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .fill,.radial-progress .circle .shadow,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .shadow{display:block;width:100%;height:100%;position:absolute;border-radius:50%}.radial-progress .circle .shadow,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .shadow{box-shadow:none inset}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask,.radial-progress .circle .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .fill{-webkit-backface-visibility:hidden;transition:-webkit-transform 1s;transition:-ms-transform 1s;transition:transform 1s;border-radius:50%}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask{clip:rect(0px, 120px, 120px, 60px)}.radial-progress .circle .mask .fill{clip:rect(0px, 60px, 120px, 0px);background-color:#209d9e}.radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{display:block;width:90px;height:90px;position:absolute;border-radius:50%;margin-left:15px;margin-top:15px;overflow:hidden;background-color:#fff;box-shadow:none;font-size:80px;line-height:80px;text-align:center}.radial-progress .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{position:absolute;top:5px;left:-5px;opacity:0;transition:opacity 0;transition-delay:1s}.radial-progress .percentage,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage{height:80%;width:80%;position:absolute;top:10%;left:10%;display:table;line-height:1}.radial-progress .percentage .centeredWrapper,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .centeredWrapper{display:table-cell;vertical-align:middle;text-align:center}.radial-progress .percentage .centeredWrapper .number{display:block;margin-right:-0.4em;font-weight:800;color:#209d9e}.radial-progress .percentage .centeredWrapper .addon{display:block;color:#777;margin-top:0.2em;margin-bottom:-0.4em}.radial-progress .percentage .centeredWrapper .addon>span{display:block;font-size:0.6em;font-weight:bold}.radial-progress .percentage .centeredWrapper .addon>span+span{display:block;margin-top:2px;font-size:0.5em}.radial-progress[data-progress="0"] .circle .mask.full,.radial-progress[data-progress="0"] .circle .fill{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.radial-progress[data-progress="0"] .circle .fill.fix{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.radial-progress[data-progress="1"] .circle .mask.full,.radial-progress[data-progress="1"] .circle .fill{-webkit-transform:rotate(1.8deg);-ms-transform:rotate(1.8deg);transform:rotate(1.8deg)}.radial-progress[data-progress="1"] .circle .fill.fix{-webkit-transform:rotate(3.6deg);-ms-transform:rotate(3.6deg);transform:rotate(3.6deg)}.radial-progress[data-progress="2"] .circle .mask.full,.radial-progress[data-progress="2"] .circle .fill{-webkit-transform:rotate(3.6deg);-ms-transform:rotate(3.6deg);transform:rotate(3.6deg)}.radial-progress[data-progress="2"] .circle .fill.fix{-webkit-transform:rotate(7.2deg);-ms-transform:rotate(7.2deg);transform:rotate(7.2deg)}.radial-progress[data-progress="3"] .circle .mask.full,.radial-progress[data-progress="3"] .circle .fill{-webkit-transform:rotate(5.4deg);-ms-transform:rotate(5.4deg);transform:rotate(5.4deg)}.radial-progress[data-progress="3"] .circle .fill.fix{-webkit-transform:rotate(10.8deg);-ms-transform:rotate(10.8deg);transform:rotate(10.8deg)}.radial-progress[data-progress="4"] .circle .mask.full,.radial-progress[data-progress="4"] .circle .fill{-webkit-transform:rotate(7.2deg);-ms-transform:rotate(7.2deg);transform:rotate(7.2deg)}.radial-progress[data-progress="4"] .circle .fill.fix{-webkit-transform:rotate(14.4deg);-ms-transform:rotate(14.4deg);transform:rotate(14.4deg)}.radial-progress[data-progress="5"] .circle .mask.full,.radial-progress[data-progress="5"] .circle .fill{-webkit-transform:rotate(9deg);-ms-transform:rotate(9deg);transform:rotate(9deg)}.radial-progress[data-progress="5"] .circle .fill.fix{-webkit-transform:rotate(18deg);-ms-transform:rotate(18deg);transform:rotate(18deg)}.radial-progress[data-progress="6"] .circle .mask.full,.radial-progress[data-progress="6"] .circle .fill{-webkit-transform:rotate(10.8deg);-ms-transform:rotate(10.8deg);transform:rotate(10.8deg)}.radial-progress[data-progress="6"] .circle .fill.fix{-webkit-transform:rotate(21.6deg);-ms-transform:rotate(21.6deg);transform:rotate(21.6deg)}.radial-progress[data-progress="7"] .circle .mask.full,.radial-progress[data-progress="7"] .circle .fill{-webkit-transform:rotate(12.6deg);-ms-transform:rotate(12.6deg);transform:rotate(12.6deg)}.radial-progress[data-progress="7"] .circle .fill.fix{-webkit-transform:rotate(25.2deg);-ms-transform:rotate(25.2deg);transform:rotate(25.2deg)}.radial-progress[data-progress="8"] .circle .mask.full,.radial-progress[data-progress="8"] .circle .fill{-webkit-transform:rotate(14.4deg);-ms-transform:rotate(14.4deg);transform:rotate(14.4deg)}.radial-progress[data-progress="8"] .circle .fill.fix{-webkit-transform:rotate(28.8deg);-ms-transform:rotate(28.8deg);transform:rotate(28.8deg)}.radial-progress[data-progress="9"] .circle .mask.full,.radial-progress[data-progress="9"] .circle .fill{-webkit-transform:rotate(16.2deg);-ms-transform:rotate(16.2deg);transform:rotate(16.2deg)}.radial-progress[data-progress="9"] .circle .fill.fix{-webkit-transform:rotate(32.4deg);-ms-transform:rotate(32.4deg);transform:rotate(32.4deg)}.radial-progress[data-progress="10"] .circle .mask.full,.radial-progress[data-progress="10"] .circle .fill{-webkit-transform:rotate(18deg);-ms-transform:rotate(18deg);transform:rotate(18deg)}.radial-progress[data-progress="10"] .circle .fill.fix{-webkit-transform:rotate(36deg);-ms-transform:rotate(36deg);transform:rotate(36deg)}.radial-progress[data-progress="11"] .circle .mask.full,.radial-progress[data-progress="11"] .circle .fill{-webkit-transform:rotate(19.8deg);-ms-transform:rotate(19.8deg);transform:rotate(19.8deg)}.radial-progress[data-progress="11"] .circle .fill.fix{-webkit-transform:rotate(39.6deg);-ms-transform:rotate(39.6deg);transform:rotate(39.6deg)}.radial-progress[data-progress="12"] .circle .mask.full,.radial-progress[data-progress="12"] .circle .fill{-webkit-transform:rotate(21.6deg);-ms-transform:rotate(21.6deg);transform:rotate(21.6deg)}.radial-progress[data-progress="12"] .circle .fill.fix{-webkit-transform:rotate(43.2deg);-ms-transform:rotate(43.2deg);transform:rotate(43.2deg)}.radial-progress[data-progress="13"] .circle .mask.full,.radial-progress[data-progress="13"] .circle .fill{-webkit-transform:rotate(23.4deg);-ms-transform:rotate(23.4deg);transform:rotate(23.4deg)}.radial-progress[data-progress="13"] .circle .fill.fix{-webkit-transform:rotate(46.8deg);-ms-transform:rotate(46.8deg);transform:rotate(46.8deg)}.radial-progress[data-progress="14"] .circle .mask.full,.radial-progress[data-progress="14"] .circle .fill{-webkit-transform:rotate(25.2deg);-ms-transform:rotate(25.2deg);transform:rotate(25.2deg)}.radial-progress[data-progress="14"] .circle .fill.fix{-webkit-transform:rotate(50.4deg);-ms-transform:rotate(50.4deg);transform:rotate(50.4deg)}.radial-progress[data-progress="15"] .circle .mask.full,.radial-progress[data-progress="15"] .circle .fill{-webkit-transform:rotate(27deg);-ms-transform:rotate(27deg);transform:rotate(27deg)}.radial-progress[data-progress="15"] .circle .fill.fix{-webkit-transform:rotate(54deg);-ms-transform:rotate(54deg);transform:rotate(54deg)}.radial-progress[data-progress="16"] .circle .mask.full,.radial-progress[data-progress="16"] .circle .fill{-webkit-transform:rotate(28.8deg);-ms-transform:rotate(28.8deg);transform:rotate(28.8deg)}.radial-progress[data-progress="16"] .circle .fill.fix{-webkit-transform:rotate(57.6deg);-ms-transform:rotate(57.6deg);transform:rotate(57.6deg)}.radial-progress[data-progress="17"] .circle .mask.full,.radial-progress[data-progress="17"] .circle .fill{-webkit-transform:rotate(30.6deg);-ms-transform:rotate(30.6deg);transform:rotate(30.6deg)}.radial-progress[data-progress="17"] .circle .fill.fix{-webkit-transform:rotate(61.2deg);-ms-transform:rotate(61.2deg);transform:rotate(61.2deg)}.radial-progress[data-progress="18"] .circle .mask.full,.radial-progress[data-progress="18"] .circle .fill{-webkit-transform:rotate(32.4deg);-ms-transform:rotate(32.4deg);transform:rotate(32.4deg)}.radial-progress[data-progress="18"] .circle .fill.fix{-webkit-transform:rotate(64.8deg);-ms-transform:rotate(64.8deg);transform:rotate(64.8deg)}.radial-progress[data-progress="19"] .circle .mask.full,.radial-progress[data-progress="19"] .circle .fill{-webkit-transform:rotate(34.2deg);-ms-transform:rotate(34.2deg);transform:rotate(34.2deg)}.radial-progress[data-progress="19"] .circle .fill.fix{-webkit-transform:rotate(68.4deg);-ms-transform:rotate(68.4deg);transform:rotate(68.4deg)}.radial-progress[data-progress="20"] .circle .mask.full,.radial-progress[data-progress="20"] .circle .fill{-webkit-transform:rotate(36deg);-ms-transform:rotate(36deg);transform:rotate(36deg)}.radial-progress[data-progress="20"] .circle .fill.fix{-webkit-transform:rotate(72deg);-ms-transform:rotate(72deg);transform:rotate(72deg)}.radial-progress[data-progress="21"] .circle .mask.full,.radial-progress[data-progress="21"] .circle .fill{-webkit-transform:rotate(37.8deg);-ms-transform:rotate(37.8deg);transform:rotate(37.8deg)}.radial-progress[data-progress="21"] .circle .fill.fix{-webkit-transform:rotate(75.6deg);-ms-transform:rotate(75.6deg);transform:rotate(75.6deg)}.radial-progress[data-progress="22"] .circle .mask.full,.radial-progress[data-progress="22"] .circle .fill{-webkit-transform:rotate(39.6deg);-ms-transform:rotate(39.6deg);transform:rotate(39.6deg)}.radial-progress[data-progress="22"] .circle .fill.fix{-webkit-transform:rotate(79.2deg);-ms-transform:rotate(79.2deg);transform:rotate(79.2deg)}.radial-progress[data-progress="23"] .circle .mask.full,.radial-progress[data-progress="23"] .circle .fill{-webkit-transform:rotate(41.4deg);-ms-transform:rotate(41.4deg);transform:rotate(41.4deg)}.radial-progress[data-progress="23"] .circle .fill.fix{-webkit-transform:rotate(82.8deg);-ms-transform:rotate(82.8deg);transform:rotate(82.8deg)}.radial-progress[data-progress="24"] .circle .mask.full,.radial-progress[data-progress="24"] .circle .fill{-webkit-transform:rotate(43.2deg);-ms-transform:rotate(43.2deg);transform:rotate(43.2deg)}.radial-progress[data-progress="24"] .circle .fill.fix{-webkit-transform:rotate(86.4deg);-ms-transform:rotate(86.4deg);transform:rotate(86.4deg)}.radial-progress[data-progress="25"] .circle .mask.full,.radial-progress[data-progress="25"] .circle .fill{-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.radial-progress[data-progress="25"] .circle .fill.fix{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.radial-progress[data-progress="26"] .circle .mask.full,.radial-progress[data-progress="26"] .circle .fill{-webkit-transform:rotate(46.8deg);-ms-transform:rotate(46.8deg);transform:rotate(46.8deg)}.radial-progress[data-progress="26"] .circle .fill.fix{-webkit-transform:rotate(93.6deg);-ms-transform:rotate(93.6deg);transform:rotate(93.6deg)}.radial-progress[data-progress="27"] .circle .mask.full,.radial-progress[data-progress="27"] .circle .fill{-webkit-transform:rotate(48.6deg);-ms-transform:rotate(48.6deg);transform:rotate(48.6deg)}.radial-progress[data-progress="27"] .circle .fill.fix{-webkit-transform:rotate(97.2deg);-ms-transform:rotate(97.2deg);transform:rotate(97.2deg)}.radial-progress[data-progress="28"] .circle .mask.full,.radial-progress[data-progress="28"] .circle .fill{-webkit-transform:rotate(50.4deg);-ms-transform:rotate(50.4deg);transform:rotate(50.4deg)}.radial-progress[data-progress="28"] .circle .fill.fix{-webkit-transform:rotate(100.8deg);-ms-transform:rotate(100.8deg);transform:rotate(100.8deg)}.radial-progress[data-progress="29"] .circle .mask.full,.radial-progress[data-progress="29"] .circle .fill{-webkit-transform:rotate(52.2deg);-ms-transform:rotate(52.2deg);transform:rotate(52.2deg)}.radial-progress[data-progress="29"] .circle .fill.fix{-webkit-transform:rotate(104.4deg);-ms-transform:rotate(104.4deg);transform:rotate(104.4deg)}.radial-progress[data-progress="30"] .circle .mask.full,.radial-progress[data-progress="30"] .circle .fill{-webkit-transform:rotate(54deg);-ms-transform:rotate(54deg);transform:rotate(54deg)}.radial-progress[data-progress="30"] .circle .fill.fix{-webkit-transform:rotate(108deg);-ms-transform:rotate(108deg);transform:rotate(108deg)}.radial-progress[data-progress="31"] .circle .mask.full,.radial-progress[data-progress="31"] .circle .fill{-webkit-transform:rotate(55.8deg);-ms-transform:rotate(55.8deg);transform:rotate(55.8deg)}.radial-progress[data-progress="31"] .circle .fill.fix{-webkit-transform:rotate(111.6deg);-ms-transform:rotate(111.6deg);transform:rotate(111.6deg)}.radial-progress[data-progress="32"] .circle .mask.full,.radial-progress[data-progress="32"] .circle .fill{-webkit-transform:rotate(57.6deg);-ms-transform:rotate(57.6deg);transform:rotate(57.6deg)}.radial-progress[data-progress="32"] .circle .fill.fix{-webkit-transform:rotate(115.2deg);-ms-transform:rotate(115.2deg);transform:rotate(115.2deg)}.radial-progress[data-progress="33"] .circle .mask.full,.radial-progress[data-progress="33"] .circle .fill{-webkit-transform:rotate(59.4deg);-ms-transform:rotate(59.4deg);transform:rotate(59.4deg)}.radial-progress[data-progress="33"] .circle .fill.fix{-webkit-transform:rotate(118.8deg);-ms-transform:rotate(118.8deg);transform:rotate(118.8deg)}.radial-progress[data-progress="34"] .circle .mask.full,.radial-progress[data-progress="34"] .circle .fill{-webkit-transform:rotate(61.2deg);-ms-transform:rotate(61.2deg);transform:rotate(61.2deg)}.radial-progress[data-progress="34"] .circle .fill.fix{-webkit-transform:rotate(122.4deg);-ms-transform:rotate(122.4deg);transform:rotate(122.4deg)}.radial-progress[data-progress="35"] .circle .mask.full,.radial-progress[data-progress="35"] .circle .fill{-webkit-transform:rotate(63deg);-ms-transform:rotate(63deg);transform:rotate(63deg)}.radial-progress[data-progress="35"] .circle .fill.fix{-webkit-transform:rotate(126deg);-ms-transform:rotate(126deg);transform:rotate(126deg)}.radial-progress[data-progress="36"] .circle .mask.full,.radial-progress[data-progress="36"] .circle .fill{-webkit-transform:rotate(64.8deg);-ms-transform:rotate(64.8deg);transform:rotate(64.8deg)}.radial-progress[data-progress="36"] .circle .fill.fix{-webkit-transform:rotate(129.6deg);-ms-transform:rotate(129.6deg);transform:rotate(129.6deg)}.radial-progress[data-progress="37"] .circle .mask.full,.radial-progress[data-progress="37"] .circle .fill{-webkit-transform:rotate(66.6deg);-ms-transform:rotate(66.6deg);transform:rotate(66.6deg)}.radial-progress[data-progress="37"] .circle .fill.fix{-webkit-transform:rotate(133.2deg);-ms-transform:rotate(133.2deg);transform:rotate(133.2deg)}.radial-progress[data-progress="38"] .circle .mask.full,.radial-progress[data-progress="38"] .circle .fill{-webkit-transform:rotate(68.4deg);-ms-transform:rotate(68.4deg);transform:rotate(68.4deg)}.radial-progress[data-progress="38"] .circle .fill.fix{-webkit-transform:rotate(136.8deg);-ms-transform:rotate(136.8deg);transform:rotate(136.8deg)}.radial-progress[data-progress="39"] .circle .mask.full,.radial-progress[data-progress="39"] .circle .fill{-webkit-transform:rotate(70.2deg);-ms-transform:rotate(70.2deg);transform:rotate(70.2deg)}.radial-progress[data-progress="39"] .circle .fill.fix{-webkit-transform:rotate(140.4deg);-ms-transform:rotate(140.4deg);transform:rotate(140.4deg)}.radial-progress[data-progress="40"] .circle .mask.full,.radial-progress[data-progress="40"] .circle .fill{-webkit-transform:rotate(72deg);-ms-transform:rotate(72deg);transform:rotate(72deg)}.radial-progress[data-progress="40"] .circle .fill.fix{-webkit-transform:rotate(144deg);-ms-transform:rotate(144deg);transform:rotate(144deg)}.radial-progress[data-progress="41"] .circle .mask.full,.radial-progress[data-progress="41"] .circle .fill{-webkit-transform:rotate(73.8deg);-ms-transform:rotate(73.8deg);transform:rotate(73.8deg)}.radial-progress[data-progress="41"] .circle .fill.fix{-webkit-transform:rotate(147.6deg);-ms-transform:rotate(147.6deg);transform:rotate(147.6deg)}.radial-progress[data-progress="42"] .circle .mask.full,.radial-progress[data-progress="42"] .circle .fill{-webkit-transform:rotate(75.6deg);-ms-transform:rotate(75.6deg);transform:rotate(75.6deg)}.radial-progress[data-progress="42"] .circle .fill.fix{-webkit-transform:rotate(151.2deg);-ms-transform:rotate(151.2deg);transform:rotate(151.2deg)}.radial-progress[data-progress="43"] .circle .mask.full,.radial-progress[data-progress="43"] .circle .fill{-webkit-transform:rotate(77.4deg);-ms-transform:rotate(77.4deg);transform:rotate(77.4deg)}.radial-progress[data-progress="43"] .circle .fill.fix{-webkit-transform:rotate(154.8deg);-ms-transform:rotate(154.8deg);transform:rotate(154.8deg)}.radial-progress[data-progress="44"] .circle .mask.full,.radial-progress[data-progress="44"] .circle .fill{-webkit-transform:rotate(79.2deg);-ms-transform:rotate(79.2deg);transform:rotate(79.2deg)}.radial-progress[data-progress="44"] .circle .fill.fix{-webkit-transform:rotate(158.4deg);-ms-transform:rotate(158.4deg);transform:rotate(158.4deg)}.radial-progress[data-progress="45"] .circle .mask.full,.radial-progress[data-progress="45"] .circle .fill{-webkit-transform:rotate(81deg);-ms-transform:rotate(81deg);transform:rotate(81deg)}.radial-progress[data-progress="45"] .circle .fill.fix{-webkit-transform:rotate(162deg);-ms-transform:rotate(162deg);transform:rotate(162deg)}.radial-progress[data-progress="46"] .circle .mask.full,.radial-progress[data-progress="46"] .circle .fill{-webkit-transform:rotate(82.8deg);-ms-transform:rotate(82.8deg);transform:rotate(82.8deg)}.radial-progress[data-progress="46"] .circle .fill.fix{-webkit-transform:rotate(165.6deg);-ms-transform:rotate(165.6deg);transform:rotate(165.6deg)}.radial-progress[data-progress="47"] .circle .mask.full,.radial-progress[data-progress="47"] .circle .fill{-webkit-transform:rotate(84.6deg);-ms-transform:rotate(84.6deg);transform:rotate(84.6deg)}.radial-progress[data-progress="47"] .circle .fill.fix{-webkit-transform:rotate(169.2deg);-ms-transform:rotate(169.2deg);transform:rotate(169.2deg)}.radial-progress[data-progress="48"] .circle .mask.full,.radial-progress[data-progress="48"] .circle .fill{-webkit-transform:rotate(86.4deg);-ms-transform:rotate(86.4deg);transform:rotate(86.4deg)}.radial-progress[data-progress="48"] .circle .fill.fix{-webkit-transform:rotate(172.8deg);-ms-transform:rotate(172.8deg);transform:rotate(172.8deg)}.radial-progress[data-progress="49"] .circle .mask.full,.radial-progress[data-progress="49"] .circle .fill{-webkit-transform:rotate(88.2deg);-ms-transform:rotate(88.2deg);transform:rotate(88.2deg)}.radial-progress[data-progress="49"] .circle .fill.fix{-webkit-transform:rotate(176.4deg);-ms-transform:rotate(176.4deg);transform:rotate(176.4deg)}.radial-progress[data-progress="50"] .circle .mask.full,.radial-progress[data-progress="50"] .circle .fill{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.radial-progress[data-progress="50"] .circle .fill.fix{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.radial-progress[data-progress="51"] .circle .mask.full,.radial-progress[data-progress="51"] .circle .fill{-webkit-transform:rotate(91.8deg);-ms-transform:rotate(91.8deg);transform:rotate(91.8deg)}.radial-progress[data-progress="51"] .circle .fill.fix{-webkit-transform:rotate(183.6deg);-ms-transform:rotate(183.6deg);transform:rotate(183.6deg)}.radial-progress[data-progress="52"] .circle .mask.full,.radial-progress[data-progress="52"] .circle .fill{-webkit-transform:rotate(93.6deg);-ms-transform:rotate(93.6deg);transform:rotate(93.6deg)}.radial-progress[data-progress="52"] .circle .fill.fix{-webkit-transform:rotate(187.2deg);-ms-transform:rotate(187.2deg);transform:rotate(187.2deg)}.radial-progress[data-progress="53"] .circle .mask.full,.radial-progress[data-progress="53"] .circle .fill{-webkit-transform:rotate(95.4deg);-ms-transform:rotate(95.4deg);transform:rotate(95.4deg)}.radial-progress[data-progress="53"] .circle .fill.fix{-webkit-transform:rotate(190.8deg);-ms-transform:rotate(190.8deg);transform:rotate(190.8deg)}.radial-progress[data-progress="54"] .circle .mask.full,.radial-progress[data-progress="54"] .circle .fill{-webkit-transform:rotate(97.2deg);-ms-transform:rotate(97.2deg);transform:rotate(97.2deg)}.radial-progress[data-progress="54"] .circle .fill.fix{-webkit-transform:rotate(194.4deg);-ms-transform:rotate(194.4deg);transform:rotate(194.4deg)}.radial-progress[data-progress="55"] .circle .mask.full,.radial-progress[data-progress="55"] .circle .fill{-webkit-transform:rotate(99deg);-ms-transform:rotate(99deg);transform:rotate(99deg)}.radial-progress[data-progress="55"] .circle .fill.fix{-webkit-transform:rotate(198deg);-ms-transform:rotate(198deg);transform:rotate(198deg)}.radial-progress[data-progress="56"] .circle .mask.full,.radial-progress[data-progress="56"] .circle .fill{-webkit-transform:rotate(100.8deg);-ms-transform:rotate(100.8deg);transform:rotate(100.8deg)}.radial-progress[data-progress="56"] .circle .fill.fix{-webkit-transform:rotate(201.6deg);-ms-transform:rotate(201.6deg);transform:rotate(201.6deg)}.radial-progress[data-progress="57"] .circle .mask.full,.radial-progress[data-progress="57"] .circle .fill{-webkit-transform:rotate(102.6deg);-ms-transform:rotate(102.6deg);transform:rotate(102.6deg)}.radial-progress[data-progress="57"] .circle .fill.fix{-webkit-transform:rotate(205.2deg);-ms-transform:rotate(205.2deg);transform:rotate(205.2deg)}.radial-progress[data-progress="58"] .circle .mask.full,.radial-progress[data-progress="58"] .circle .fill{-webkit-transform:rotate(104.4deg);-ms-transform:rotate(104.4deg);transform:rotate(104.4deg)}.radial-progress[data-progress="58"] .circle .fill.fix{-webkit-transform:rotate(208.8deg);-ms-transform:rotate(208.8deg);transform:rotate(208.8deg)}.radial-progress[data-progress="59"] .circle .mask.full,.radial-progress[data-progress="59"] .circle .fill{-webkit-transform:rotate(106.2deg);-ms-transform:rotate(106.2deg);transform:rotate(106.2deg)}.radial-progress[data-progress="59"] .circle .fill.fix{-webkit-transform:rotate(212.4deg);-ms-transform:rotate(212.4deg);transform:rotate(212.4deg)}.radial-progress[data-progress="60"] .circle .mask.full,.radial-progress[data-progress="60"] .circle .fill{-webkit-transform:rotate(108deg);-ms-transform:rotate(108deg);transform:rotate(108deg)}.radial-progress[data-progress="60"] .circle .fill.fix{-webkit-transform:rotate(216deg);-ms-transform:rotate(216deg);transform:rotate(216deg)}.radial-progress[data-progress="61"] .circle .mask.full,.radial-progress[data-progress="61"] .circle .fill{-webkit-transform:rotate(109.8deg);-ms-transform:rotate(109.8deg);transform:rotate(109.8deg)}.radial-progress[data-progress="61"] .circle .fill.fix{-webkit-transform:rotate(219.6deg);-ms-transform:rotate(219.6deg);transform:rotate(219.6deg)}.radial-progress[data-progress="62"] .circle .mask.full,.radial-progress[data-progress="62"] .circle .fill{-webkit-transform:rotate(111.6deg);-ms-transform:rotate(111.6deg);transform:rotate(111.6deg)}.radial-progress[data-progress="62"] .circle .fill.fix{-webkit-transform:rotate(223.2deg);-ms-transform:rotate(223.2deg);transform:rotate(223.2deg)}.radial-progress[data-progress="63"] .circle .mask.full,.radial-progress[data-progress="63"] .circle .fill{-webkit-transform:rotate(113.4deg);-ms-transform:rotate(113.4deg);transform:rotate(113.4deg)}.radial-progress[data-progress="63"] .circle .fill.fix{-webkit-transform:rotate(226.8deg);-ms-transform:rotate(226.8deg);transform:rotate(226.8deg)}.radial-progress[data-progress="64"] .circle .mask.full,.radial-progress[data-progress="64"] .circle .fill{-webkit-transform:rotate(115.2deg);-ms-transform:rotate(115.2deg);transform:rotate(115.2deg)}.radial-progress[data-progress="64"] .circle .fill.fix{-webkit-transform:rotate(230.4deg);-ms-transform:rotate(230.4deg);transform:rotate(230.4deg)}.radial-progress[data-progress="65"] .circle .mask.full,.radial-progress[data-progress="65"] .circle .fill{-webkit-transform:rotate(117deg);-ms-transform:rotate(117deg);transform:rotate(117deg)}.radial-progress[data-progress="65"] .circle .fill.fix{-webkit-transform:rotate(234deg);-ms-transform:rotate(234deg);transform:rotate(234deg)}.radial-progress[data-progress="66"] .circle .mask.full,.radial-progress[data-progress="66"] .circle .fill{-webkit-transform:rotate(118.8deg);-ms-transform:rotate(118.8deg);transform:rotate(118.8deg)}.radial-progress[data-progress="66"] .circle .fill.fix{-webkit-transform:rotate(237.6deg);-ms-transform:rotate(237.6deg);transform:rotate(237.6deg)}.radial-progress[data-progress="67"] .circle .mask.full,.radial-progress[data-progress="67"] .circle .fill{-webkit-transform:rotate(120.6deg);-ms-transform:rotate(120.6deg);transform:rotate(120.6deg)}.radial-progress[data-progress="67"] .circle .fill.fix{-webkit-transform:rotate(241.2deg);-ms-transform:rotate(241.2deg);transform:rotate(241.2deg)}.radial-progress[data-progress="68"] .circle .mask.full,.radial-progress[data-progress="68"] .circle .fill{-webkit-transform:rotate(122.4deg);-ms-transform:rotate(122.4deg);transform:rotate(122.4deg)}.radial-progress[data-progress="68"] .circle .fill.fix{-webkit-transform:rotate(244.8deg);-ms-transform:rotate(244.8deg);transform:rotate(244.8deg)}.radial-progress[data-progress="69"] .circle .mask.full,.radial-progress[data-progress="69"] .circle .fill{-webkit-transform:rotate(124.2deg);-ms-transform:rotate(124.2deg);transform:rotate(124.2deg)}.radial-progress[data-progress="69"] .circle .fill.fix{-webkit-transform:rotate(248.4deg);-ms-transform:rotate(248.4deg);transform:rotate(248.4deg)}.radial-progress[data-progress="70"] .circle .mask.full,.radial-progress[data-progress="70"] .circle .fill{-webkit-transform:rotate(126deg);-ms-transform:rotate(126deg);transform:rotate(126deg)}.radial-progress[data-progress="70"] .circle .fill.fix{-webkit-transform:rotate(252deg);-ms-transform:rotate(252deg);transform:rotate(252deg)}.radial-progress[data-progress="71"] .circle .mask.full,.radial-progress[data-progress="71"] .circle .fill{-webkit-transform:rotate(127.8deg);-ms-transform:rotate(127.8deg);transform:rotate(127.8deg)}.radial-progress[data-progress="71"] .circle .fill.fix{-webkit-transform:rotate(255.6deg);-ms-transform:rotate(255.6deg);transform:rotate(255.6deg)}.radial-progress[data-progress="72"] .circle .mask.full,.radial-progress[data-progress="72"] .circle .fill{-webkit-transform:rotate(129.6deg);-ms-transform:rotate(129.6deg);transform:rotate(129.6deg)}.radial-progress[data-progress="72"] .circle .fill.fix{-webkit-transform:rotate(259.2deg);-ms-transform:rotate(259.2deg);transform:rotate(259.2deg)}.radial-progress[data-progress="73"] .circle .mask.full,.radial-progress[data-progress="73"] .circle .fill{-webkit-transform:rotate(131.4deg);-ms-transform:rotate(131.4deg);transform:rotate(131.4deg)}.radial-progress[data-progress="73"] .circle .fill.fix{-webkit-transform:rotate(262.8deg);-ms-transform:rotate(262.8deg);transform:rotate(262.8deg)}.radial-progress[data-progress="74"] .circle .mask.full,.radial-progress[data-progress="74"] .circle .fill{-webkit-transform:rotate(133.2deg);-ms-transform:rotate(133.2deg);transform:rotate(133.2deg)}.radial-progress[data-progress="74"] .circle .fill.fix{-webkit-transform:rotate(266.4deg);-ms-transform:rotate(266.4deg);transform:rotate(266.4deg)}.radial-progress[data-progress="75"] .circle .mask.full,.radial-progress[data-progress="75"] .circle .fill{-webkit-transform:rotate(135deg);-ms-transform:rotate(135deg);transform:rotate(135deg)}.radial-progress[data-progress="75"] .circle .fill.fix{-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.radial-progress[data-progress="76"] .circle .mask.full,.radial-progress[data-progress="76"] .circle .fill{-webkit-transform:rotate(136.8deg);-ms-transform:rotate(136.8deg);transform:rotate(136.8deg)}.radial-progress[data-progress="76"] .circle .fill.fix{-webkit-transform:rotate(273.6deg);-ms-transform:rotate(273.6deg);transform:rotate(273.6deg)}.radial-progress[data-progress="77"] .circle .mask.full,.radial-progress[data-progress="77"] .circle .fill{-webkit-transform:rotate(138.6deg);-ms-transform:rotate(138.6deg);transform:rotate(138.6deg)}.radial-progress[data-progress="77"] .circle .fill.fix{-webkit-transform:rotate(277.2deg);-ms-transform:rotate(277.2deg);transform:rotate(277.2deg)}.radial-progress[data-progress="78"] .circle .mask.full,.radial-progress[data-progress="78"] .circle .fill{-webkit-transform:rotate(140.4deg);-ms-transform:rotate(140.4deg);transform:rotate(140.4deg)}.radial-progress[data-progress="78"] .circle .fill.fix{-webkit-transform:rotate(280.8deg);-ms-transform:rotate(280.8deg);transform:rotate(280.8deg)}.radial-progress[data-progress="79"] .circle .mask.full,.radial-progress[data-progress="79"] .circle .fill{-webkit-transform:rotate(142.2deg);-ms-transform:rotate(142.2deg);transform:rotate(142.2deg)}.radial-progress[data-progress="79"] .circle .fill.fix{-webkit-transform:rotate(284.4deg);-ms-transform:rotate(284.4deg);transform:rotate(284.4deg)}.radial-progress[data-progress="80"] .circle .mask.full,.radial-progress[data-progress="80"] .circle .fill{-webkit-transform:rotate(144deg);-ms-transform:rotate(144deg);transform:rotate(144deg)}.radial-progress[data-progress="80"] .circle .fill.fix{-webkit-transform:rotate(288deg);-ms-transform:rotate(288deg);transform:rotate(288deg)}.radial-progress[data-progress="81"] .circle .mask.full,.radial-progress[data-progress="81"] .circle .fill{-webkit-transform:rotate(145.8deg);-ms-transform:rotate(145.8deg);transform:rotate(145.8deg)}.radial-progress[data-progress="81"] .circle .fill.fix{-webkit-transform:rotate(291.6deg);-ms-transform:rotate(291.6deg);transform:rotate(291.6deg)}.radial-progress[data-progress="82"] .circle .mask.full,.radial-progress[data-progress="82"] .circle .fill{-webkit-transform:rotate(147.6deg);-ms-transform:rotate(147.6deg);transform:rotate(147.6deg)}.radial-progress[data-progress="82"] .circle .fill.fix{-webkit-transform:rotate(295.2deg);-ms-transform:rotate(295.2deg);transform:rotate(295.2deg)}.radial-progress[data-progress="83"] .circle .mask.full,.radial-progress[data-progress="83"] .circle .fill{-webkit-transform:rotate(149.4deg);-ms-transform:rotate(149.4deg);transform:rotate(149.4deg)}.radial-progress[data-progress="83"] .circle .fill.fix{-webkit-transform:rotate(298.8deg);-ms-transform:rotate(298.8deg);transform:rotate(298.8deg)}.radial-progress[data-progress="84"] .circle .mask.full,.radial-progress[data-progress="84"] .circle .fill{-webkit-transform:rotate(151.2deg);-ms-transform:rotate(151.2deg);transform:rotate(151.2deg)}.radial-progress[data-progress="84"] .circle .fill.fix{-webkit-transform:rotate(302.4deg);-ms-transform:rotate(302.4deg);transform:rotate(302.4deg)}.radial-progress[data-progress="85"] .circle .mask.full,.radial-progress[data-progress="85"] .circle .fill{-webkit-transform:rotate(153deg);-ms-transform:rotate(153deg);transform:rotate(153deg)}.radial-progress[data-progress="85"] .circle .fill.fix{-webkit-transform:rotate(306deg);-ms-transform:rotate(306deg);transform:rotate(306deg)}.radial-progress[data-progress="86"] .circle .mask.full,.radial-progress[data-progress="86"] .circle .fill{-webkit-transform:rotate(154.8deg);-ms-transform:rotate(154.8deg);transform:rotate(154.8deg)}.radial-progress[data-progress="86"] .circle .fill.fix{-webkit-transform:rotate(309.6deg);-ms-transform:rotate(309.6deg);transform:rotate(309.6deg)}.radial-progress[data-progress="87"] .circle .mask.full,.radial-progress[data-progress="87"] .circle .fill{-webkit-transform:rotate(156.6deg);-ms-transform:rotate(156.6deg);transform:rotate(156.6deg)}.radial-progress[data-progress="87"] .circle .fill.fix{-webkit-transform:rotate(313.2deg);-ms-transform:rotate(313.2deg);transform:rotate(313.2deg)}.radial-progress[data-progress="88"] .circle .mask.full,.radial-progress[data-progress="88"] .circle .fill{-webkit-transform:rotate(158.4deg);-ms-transform:rotate(158.4deg);transform:rotate(158.4deg)}.radial-progress[data-progress="88"] .circle .fill.fix{-webkit-transform:rotate(316.8deg);-ms-transform:rotate(316.8deg);transform:rotate(316.8deg)}.radial-progress[data-progress="89"] .circle .mask.full,.radial-progress[data-progress="89"] .circle .fill{-webkit-transform:rotate(160.2deg);-ms-transform:rotate(160.2deg);transform:rotate(160.2deg)}.radial-progress[data-progress="89"] .circle .fill.fix{-webkit-transform:rotate(320.4deg);-ms-transform:rotate(320.4deg);transform:rotate(320.4deg)}.radial-progress[data-progress="90"] .circle .mask.full,.radial-progress[data-progress="90"] .circle .fill{-webkit-transform:rotate(162deg);-ms-transform:rotate(162deg);transform:rotate(162deg)}.radial-progress[data-progress="90"] .circle .fill.fix{-webkit-transform:rotate(324deg);-ms-transform:rotate(324deg);transform:rotate(324deg)}.radial-progress[data-progress="91"] .circle .mask.full,.radial-progress[data-progress="91"] .circle .fill{-webkit-transform:rotate(163.8deg);-ms-transform:rotate(163.8deg);transform:rotate(163.8deg)}.radial-progress[data-progress="91"] .circle .fill.fix{-webkit-transform:rotate(327.6deg);-ms-transform:rotate(327.6deg);transform:rotate(327.6deg)}.radial-progress[data-progress="92"] .circle .mask.full,.radial-progress[data-progress="92"] .circle .fill{-webkit-transform:rotate(165.6deg);-ms-transform:rotate(165.6deg);transform:rotate(165.6deg)}.radial-progress[data-progress="92"] .circle .fill.fix{-webkit-transform:rotate(331.2deg);-ms-transform:rotate(331.2deg);transform:rotate(331.2deg)}.radial-progress[data-progress="93"] .circle .mask.full,.radial-progress[data-progress="93"] .circle .fill{-webkit-transform:rotate(167.4deg);-ms-transform:rotate(167.4deg);transform:rotate(167.4deg)}.radial-progress[data-progress="93"] .circle .fill.fix{-webkit-transform:rotate(334.8deg);-ms-transform:rotate(334.8deg);transform:rotate(334.8deg)}.radial-progress[data-progress="94"] .circle .mask.full,.radial-progress[data-progress="94"] .circle .fill{-webkit-transform:rotate(169.2deg);-ms-transform:rotate(169.2deg);transform:rotate(169.2deg)}.radial-progress[data-progress="94"] .circle .fill.fix{-webkit-transform:rotate(338.4deg);-ms-transform:rotate(338.4deg);transform:rotate(338.4deg)}.radial-progress[data-progress="95"] .circle .mask.full,.radial-progress[data-progress="95"] .circle .fill{-webkit-transform:rotate(171deg);-ms-transform:rotate(171deg);transform:rotate(171deg)}.radial-progress[data-progress="95"] .circle .fill.fix{-webkit-transform:rotate(342deg);-ms-transform:rotate(342deg);transform:rotate(342deg)}.radial-progress[data-progress="96"] .circle .mask.full,.radial-progress[data-progress="96"] .circle .fill{-webkit-transform:rotate(172.8deg);-ms-transform:rotate(172.8deg);transform:rotate(172.8deg)}.radial-progress[data-progress="96"] .circle .fill.fix{-webkit-transform:rotate(345.6deg);-ms-transform:rotate(345.6deg);transform:rotate(345.6deg)}.radial-progress[data-progress="97"] .circle .mask.full,.radial-progress[data-progress="97"] .circle .fill{-webkit-transform:rotate(174.6deg);-ms-transform:rotate(174.6deg);transform:rotate(174.6deg)}.radial-progress[data-progress="97"] .circle .fill.fix{-webkit-transform:rotate(349.2deg);-ms-transform:rotate(349.2deg);transform:rotate(349.2deg)}.radial-progress[data-progress="98"] .circle .mask.full,.radial-progress[data-progress="98"] .circle .fill{-webkit-transform:rotate(176.4deg);-ms-transform:rotate(176.4deg);transform:rotate(176.4deg)}.radial-progress[data-progress="98"] .circle .fill.fix{-webkit-transform:rotate(352.8deg);-ms-transform:rotate(352.8deg);transform:rotate(352.8deg)}.radial-progress[data-progress="99"] .circle .mask.full,.radial-progress[data-progress="99"] .circle .fill{-webkit-transform:rotate(178.2deg);-ms-transform:rotate(178.2deg);transform:rotate(178.2deg)}.radial-progress[data-progress="99"] .circle .fill.fix{-webkit-transform:rotate(356.4deg);-ms-transform:rotate(356.4deg);transform:rotate(356.4deg)}.radial-progress[data-progress="100"] .circle .mask.full,.radial-progress[data-progress="100"] .circle .fill{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.radial-progress[data-progress="100"] .circle .fill.fix{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}.radial-progress:not([data-progress="0"]) .inset .bgIcon{opacity:1}.radial-progress+.o_progress_label_wrapper,.o_coursetable.o_rendertype_classic .o_progress .radial-progress+.o_progress_label_wrapper{margin-left:0.5em}.radial-progress-sm{width:60px;height:60px;font-size:14.4px}.radial-progress-sm .circle .mask{clip:rect(0px, 60px, 60px, 30px)}.radial-progress-sm .circle .mask .fill{clip:rect(0px, 30px, 60px, 0px)}.radial-progress-sm .inset{width:45px;height:45px;margin-left:7.5px;margin-top:7.5px;font-size:80px;line-height:35px;font-size:40px}.radial-progress-sm .inset .bgIcon{position:absolute;top:5px}.radial-progress-lg{width:180px;height:180px;font-size:32.4px}.radial-progress-lg .circle .mask{clip:rect(0px, 180px, 180px, 90px)}.radial-progress-lg .circle .mask .fill{clip:rect(0px, 90px, 180px, 0px)}.radial-progress-lg .inset{width:135px;height:135px;margin-left:22.5px;margin-top:22.5px;font-size:115px;line-height:125px}.radial-progress-lg .inset .bgIcon{position:absolute;top:5px}.radial-progress-inline,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{width:20px;height:20px;margin:0;vertical-align:bottom;display:inline-block}.radial-progress-inline .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask{clip:rect(0px, 20px, 20px, 10px)}.radial-progress-inline .circle .mask .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 10px, 20px, 0px)}.radial-progress-inline .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{width:14px;height:14px;margin-left:3px;margin-top:3px}.radial-progress-inline .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{display:none}.radial-progress-pie .percentage .centeredWrapper .number,.radial-progress-pie .percentage .centeredWrapper .o_progress_label{color:#fff;text-shadow:1px 1px 2px #000000}.radial-progress-success .circle .mask .fill,.radial-progress-success .circle .fill{background-color:#78be20}.radial-progress-success .inset .percentage .number span{color:#78be20}.radial-progress-info .circle .mask .fill,.radial-progress-info .circle .fill{background-color:#a6a6a6}.radial-progress-info .inset .percentage .number span{color:#a6a6a6}.radial-progress-danger .circle .mask .fill,.radial-progress-danger .circle .fill{background-color:#d6001c}.radial-progress-danger .inset .percentage .number span{color:#d6001c}.radial-progress-warning .circle .mask .fill,.radial-progress-warning .circle .fill{background-color:#f2af40}.radial-progress-warning .inset .percentage .number span{color:#f2af40}.o_toolbar .o_tool .o_progress{width:37px;height:33px;position:relative;display:inline-block;overflow:visible}.o_toolbar .o_tool .o_progress .radial-progress{width:45px;height:45px;font-size:12px;position:absolute;top:-5px;left:0;margin:0}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask{clip:rect(0px, 45px, 45px, 22.5px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 22.5px, 45px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset{width:37px;height:37px;margin-left:4px;margin-top:4px;font-size:37px;line-height:37px;background:#f8f8f8}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .number{color:#777;margin-right:-0.3em}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .addon{margin-top:-0.1em;margin-bottom:-0.3em}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .addon>span{font-size:0.8em;font-weight:normal}.o_toolbar .o_tool .o_progress .radial-progress .percentage .o_progress_label{display:none}@media (max-width: 991px){.o_toolbar .o_tool .o_progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress{width:35px;height:31px}.o_toolbar .o_tool .o_progress .radial-progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{width:41px;height:41px;font-size:11px;top:-3px}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask{clip:rect(0px, 41px, 41px, 20.5px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 20.5px, 41px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset{width:35px;height:35px;margin-left:3px;margin-top:3px;font-size:35px;line-height:35px}.o_coursetable.o_rendertype_custom .o_completion .o_progress{display:inline-block}.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{position:relative;top:0;left:-4px;margin:0}}@media (max-width: 767px){.o_toolbar .o_tool .o_progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress{width:22px;height:22px}.o_toolbar .o_tool .o_progress .radial-progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{width:26px;height:26px;top:-2px}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask{clip:rect(0px, 26px, 26px, 13px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 13px, 26px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset{width:20px;height:20px;margin-left:3px;margin-top:3px}.o_toolbar .o_tool .o_progress .radial-progress .inset:after,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset:after{display:none}.o_toolbar .o_tool .o_progress .radial-progress .percentage,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .percentage{display:none}}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset:after{display:none}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage{position:relative;left:28px}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .number{font-size:14px;line-height:1.428571429;font-weight:normal;color:#2d2926}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .addon{display:none}.o_progress_failed .radial-progress-inline .inset,.o_progress_failed .o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .o_progress_failed .radial-progress .inset,.o_progress_passed .radial-progress-inline .inset,.o_progress_passed .o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .o_progress_passed .radial-progress .inset{display:none}.o_progress_failed .radial-progress-toolbar .inset,.o_progress_passed .radial-progress-toolbar .inset{font-size:37px;line-height:37px}.o_progress_failed .inset:after{content:"ï€";color:#efe5e5}.o_progress_passed .inset:after{content:"";color:#e5efe5}html{position:relative;min-height:100%}body{min-height:100%;margin-bottom:80px}#o_main_wrapper{background:#fff;z-index:3}#o_main_wrapper #o_main_container{background:#fff}#o_main_wrapper #o_main_container #o_main_left{float:left;z-index:2;position:relative;background:#fff}#o_main_wrapper #o_main_container #o_main_left #o_main_left_content{padding:0 0 0 15px}#o_main_wrapper #o_main_container #o_main_left #o_main_left_toggle{position:absolute;display:none;right:0;top:70px;margin-right:-30px;font-size:25px;line-height:35px;text-align:center;width:30px;height:35px;z-index:3;border:1px solid #ddd;border-left:none;border-bottom-right-radius:4px;border-top-right-radius:4px;background-color:#fbfbfb;-webkit-box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);color:#209d9e}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas{background:#fbfbfb;-webkit-box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);min-width:250px}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas #o_main_left_content{padding:0 0 0 0}#o_main_wrapper #o_main_container #o_main_right{float:right;z-index:2;position:relative;background:inherit}#o_main_wrapper #o_main_container #o_main_right #o_main_right_content{padding:0 15px 0 0}#o_main_wrapper #o_main_container #o_main_center{position:relative;z-index:1;background:inherit}#o_main_wrapper #o_main_container #o_main_center h2:first-child{margin-top:0}@media screen and (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center{margin-left:0 !important}}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:0 15px}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content #o_main_center_content_inner{padding-bottom:15px}#o_main_wrapper #o_toplink{position:absolute;bottom:0;right:15px;text-align:center;z-index:3}@media (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:15px}}#o_back_wrapper,#o_preview_wrapper{margin-top:10px}#o_back_wrapper.o_toolbar .o_breadcrumb .breadcrumb,#o_preview_wrapper.o_toolbar .o_breadcrumb .breadcrumb{font-size:14px}body.o_message #o_main_center_content_inner{min-height:150px;max-width:500px;padding:15px;margin:60px auto}#o_footer_wrapper{position:absolute;bottom:0;width:100%;height:70px;overflow:hidden;background-color:#f5f5f5;color:#999;line-height:16px;font-size:12px}#o_footer_wrapper a{color:#999}#o_footer_wrapper a:hover{color:#000}#o_footer_container{position:relative;padding-top:10px;min-height:70px;background:#f5f5f5;z-index:1}#o_footer_user{position:absolute;left:15px;top:10px;z-index:1}#o_footer_user #o_counter{white-space:nowrap}#o_footer_user #o_username{white-space:nowrap;margin-right:1em}#o_footer_version{position:absolute;right:15px;top:10px;text-align:right;z-index:1}@media (max-width: 767px){#o_footer_version{padding-top:10px;text-align:left}}#o_footer_powered{position:absolute;top:30px;right:15px;z-index:1}#o_footer_powered img{opacity:.6;filter:alpha(opacity=60);width:120px}#o_footer_powered img:hover{opacity:1;filter:alpha(opacity=100)}#o_footer_impressum{position:absolute;top:10px;width:100%;text-align:center;z-index:-1}#o_footer_impressum i{display:none}#o_footer_textline{position:absolute;top:30px;width:100%;text-align:center;z-index:-1}#o_share{margin-top:10px}#o_share a{opacity:.6;filter:alpha(opacity=60)}#o_share a:hover{opacity:1;filter:alpha(opacity=100)}#o_share a,#o_share_social_container a{color:#999;margin:0 0.25em 0 0}#o_share a:hover,#o_share_social_container a:hover{color:#000}@media (max-width: 767px){#o_counter,#o_footer_version,#o_share{display:none}#o_footer_impressum{top:30px;text-align:left}#o_footer_textline{top:50px;text-align:left}#o_footer_powered{top:10px}#o_footer_powered a:after{content:"\221E";font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold;font-size:14px}#o_footer_powered img{display:none}}#o_navbar_wrapper{z-index:4;border-top:1px solid #e7e7e7;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1)}#o_navbar_wrapper #o_navbar_container{position:relative}a.o_disabled.navbar-text{margin:0}.o_navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid #e7e7e7;background-color:#f8f8f8}.o_navbar:before,.o_navbar:after{content:" ";display:table}.o_navbar:after{clear:both}.o_navbar .o_navbar_tabs li{max-width:150px}.o_navbar .o_navbar_tabs li a{padding-right:30px}.o_navbar .o_navbar_tabs li a:first-child span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o_navbar .o_navbar_tabs .o_icon-fw{position:absolute;top:15px;left:0.5em;padding-top:3px;width:1em;height:1em;display:none}.o_navbar .o_navbar_tabs .o_navbar_tab_close{position:absolute;top:15px;right:0.5em;padding:0;width:1em;height:1em}.o_navbar .o_navbar_tabs .o_navbar_tab_close i:before{color:#d6001c}.o_navbar .o_navbar_tabs .o_navbar_tab_close:hover i:before{color:#a30015}.o_navbar .o_custom_navbar-brand{background-position:5px 0;background-repeat:no-repeat;height:50px;width:120px}.o_navbar #o_navbar_langchooser{color:#777;padding:7px 15px}.o_navbar #o_navbar_langchooser form span+div{display:inline}.o_navbar #o_navbar_tools_permanent #o_navbar_print a,.o_navbar #o_navbar_tools_permanent #o_navbar_impress a,.o_navbar #o_navbar_tools_permanent #o_navbar_help a{color:#777;padding-right:0}.o_navbar #o_navbar_tools_permanent #o_navbar_login a{color:#f2af40}.o_navbar .o_navbar_tools>#o_navbar_tools_permanent>li>a>span{display:none}@media (min-width: 768px){.o_navbar .o_navbar_tools li.o_portrait>a>span{display:inline}}.o_navbar #o_navbar_tools_personal .o_navbar_tool a,.o_navbar #o_navbar_tools_permanent .o_navbar_tool a{padding-right:5px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu a,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu a{padding-left:45px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .dropdown-menu a,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu .dropdown-menu a{padding-left:15px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .o_portrait,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu .o_portrait{position:absolute;left:7px;top:10px}.o_navbar #o_navbar_tools_personal .o_logout,.o_navbar #o_navbar_tools_permanent .o_logout{color:#d6001c}.o_navbar.o_navbar-offcanvas .o_navbar_tab_close{top:10px;right:10px}.o_navbar.o_navbar-offcanvas .o_navbar-right a{padding:3px 20px;color:#9d9d9d}.o_navbar.o_navbar-offcanvas .o_navbar-right a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-right a:focus{color:#fff;background-color:transparent}.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout{color:#d6001c}.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout:hover,.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout:focus{color:#a30015}.o_navbar.o_navbar-offcanvas .o_navbar-right a .o_icon-lg{font-size:1.0em;vertical-align:baseline}.o_navbar.o_navbar-offcanvas .o_navbar-right .divider{height:1px;margin:9px 0;overflow:hidden;background-color:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-header{padding-left:15px}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-toggle{display:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-menu{box-shadow:none;position:relative;top:0;left:0;display:block;float:none;background-color:#222;color:#9d9d9d;font-size:14px;border:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-menu .divider{background:none}.o_navbar.o_navbar-offcanvas .o_navbar-nav a{color:#9d9d9d;text-shadow:none}.o_navbar.o_navbar-offcanvas .o_navbar-nav a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav a:focus{background-color:transparent;color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a:focus{background-color:#090909;color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .o_navbar-link{color:#9d9d9d}.o_navbar.o_navbar-offcanvas .o_navbar-nav .o_navbar-link:hover{color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a{color:#777}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}#o_navbar_impress a span,#o_navbar_search_opener a span{display:none}body.o_dmz #o_navbar_print a span,body.o_dmz #o_navbar_impress a span,body.o_dmz #o_navbar_help a span,body.o_dmz #o_navbar_search_opener a span{display:inline}.o_navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;-webkit-overflow-scrolling:touch}.o_navbar-collapse:before,.o_navbar-collapse:after{content:" ";display:table}.o_navbar-collapse:after{clear:both}.o_navbar-collapse.o_collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.o_navbar-offcanvas .o_navbar-collapse{width:auto;box-shadow:none;margin-top:10px;margin-right:-15px;margin-left:-15px}.o_navbar-brand{float:left;font-size:18px;line-height:20px;height:50px;color:#777}.o_navbar-brand:hover,.o_navbar-brand:focus{text-decoration:none;color:#5e5e5e;background-color:transparent}.o_navbar-toggle{position:relative;margin-right:15px;margin-left:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;border:1px solid #ddd;border-radius:4px;background-color:transparent;background-image:none}.o_navbar-toggle:hover,.o_navbar-toggle:focus{outline:none;background-color:#ddd}.o_navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px;background-color:#888}.o_navbar-toggle .icon-bar+.icon-bar{margin-top:4px}#o_navbar_left-toggle{float:left}#o_navbar_right-toggle{float:right}.o_navbar-link{color:#777}.o_navbar-link:hover{color:#333}.o_navbar-nav{margin:7.5px -15px}.o_navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px;color:#777}.o_navbar-nav>li>a:hover,.o_navbar-nav>li>a:focus{color:#333;background-color:transparent}.o_navbar-nav>.active>a,.o_navbar-nav>.active>a:hover,.o_navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar-nav>.disabled>a,.o_navbar-nav>.disabled>a:hover,.o_navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.o_navbar-nav>.open>a,.o_navbar-nav>.open>a:hover,.o_navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}.o_collapse .o_navbar-nav{float:left;margin:0}.o_collapse .o_navbar-nav>li{float:left}.o_collapse .o_navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.o_collapse .o_navbar-nav.o_navbar-right:last-child{margin-right:-15px}.o_collapse.o_navbar-collapse .o_navbar-left{float:left !important}.o_collapse.o_navbar-collapse .o_navbar-right{float:right !important}.o_navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (max-width: 767px){.o_navbar-form .form-group{margin-bottom:5px}}.o_collapse .o_navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.o_collapse .o_navbar-form.o_navbar-right:last-child{margin-right:-15px}.o_navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.o_navbar-fixed-bottom .o_navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.o_navbar-btn{margin-top:8px;margin-bottom:8px}.o_navbar-btn.btn-sm,.btn-group-sm>.o_navbar-btn.btn{margin-top:10px;margin-bottom:10px}.o_navbar-btn.btn-xs,.btn-group-xs>.o_navbar-btn.btn{margin-top:14px;margin-bottom:14px}.o_navbar-text{margin-top:15px;margin-bottom:15px;color:#777}.o_collapse .o_navbar-text{float:left;margin-left:15px;margin-right:15px}.o_collapse .o_navbar-text.o_navbar-right:last-child{margin-right:0}.o_dropdown_tab{position:relative}.o_dropdown_tab>a:first-child{padding-right:30px}.o_dropdown_tab>a:first-child .o_icon-fw{display:none;position:absolute;top:0;left:10px;padding-top:3px;line-height:20px}.o_dropdown_tab>a:first-child span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o_dropdown_tab .o_navbar_tab_close{position:absolute;top:0px;right:10px;padding-left:0px;padding-right:0px;color:#d6001c;background-color:inherit}.o_dropdown_tab .o_navbar_tab_close:focus,.o_dropdown_tab .o_navbar_tab_close:hover{color:#a30015;background-color:inherit}#o_navbar_more .dropdown-menu .divider:last-child{display:none}@media (min-width: 768px){#o_navbar_more .dropdown-menu{max-width:300px}}@media (max-width: 767px){#o_navbar_more>li{position:inherit}#o_navbar_more .dropdown-menu{left:0px;right:0px}#o_navbar_more .dropdown-menu a,#o_navbar_more .dropdown-menu i{line-height:30px}#o_navbar_more .dropdown-menu .o_navbar_tab_close{line-height:inherit}}.o_body_popup #o_topnav_printview{display:inline-block}.o_body_popup #o_topnav_close{float:right}.o_body_popup #o_topnav_close span{display:block}.o_body_popup #o_navbar_tools_permanent li>a{background-color:transparent}.o_toolbar{position:relative;margin-bottom:20px;margin-top:-10px;border:1px solid #e7e7e7}.o_toolbar:before,.o_toolbar:after{content:" ";display:table}.o_toolbar:after{clear:both}@media (min-width: 768px){.o_toolbar{border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}}.o_toolbar.o_toolbar_with_segments{margin-bottom:30px}.o_toolbar .o_breadcrumb:before,.o_toolbar .o_breadcrumb:after{content:" ";display:table}.o_toolbar .o_breadcrumb:after{clear:both}.o_toolbar .o_breadcrumb .breadcrumb{margin-bottom:0;padding:5px 9px;font-size:11px;line-height:15px;border-radius:0;background:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close{float:right;position:relative;margin:0 0 0 15px;vertical-align:middle}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a{line-height:15px;color:#d6001c}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a:hover{color:#8a0012}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a i{font-size:16px}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a span{display:none}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close:before{content:none}.o_toolbar .o_tools_container{text-align:center;min-height:37px;position:relative;background-color:#f8f8f8;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_toolbar .o_tools_container:before,.o_toolbar .o_tools_container:after{content:" ";display:table}.o_toolbar .o_tools_container:after{clear:both}@media (max-width: 991px){.o_toolbar .o_tools_container{min-height:35px}}@media (max-width: 767px){.o_toolbar .o_tools_container{min-height:22px;text-align:left}}.o_toolbar .o_tools_container span.o_tool_text{color:#777;display:inline-block}.o_toolbar .o_tools_container a{color:#777;display:inline-block}.o_toolbar .o_tools_container a:hover{color:#333}.o_toolbar .o_tools_container a.o_disabled{color:#aaa !important}.o_toolbar .o_tools_container a.o_disabled:hover{color:#aaa !important}.o_toolbar .o_tools_container a.active{color:#209d9e;background-color:transparent}.o_toolbar .o_tools_container a.btn-primary{color:#fff}.o_toolbar .o_tools_container .dropdown-menu a{display:block}.o_toolbar .o_tools_container .dropdown-menu a.active{color:#209d9e;background-color:transparent}.o_toolbar .o_breadcrumb+.o_tools_container{border-top:1px solid #e7e7e7}.o_toolbar .o_tools{margin-top:8px;margin-bottom:5px}.o_toolbar .o_tool,.o_toolbar .o_text{position:relative;margin:0 10px}.o_toolbar .o_tool:first-child,.o_toolbar .o_text:first-child{margin-left:0}.o_toolbar .o_tool:last-child,.o_toolbar .o_text:last-child{margin-right:0}.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:18px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:block;font-size:12px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{position:absolute;right:50%;top:-18px;margin-right:-12px;font-size:13px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:16px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{font-size:11px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{top:-16.5px;margin-right:-11px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:20px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:none}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{display:block;position:relative;top:0;left:0;margin-right:0}}.o_toolbar .o_tool .o_chelp,.o_toolbar .o_text .o_chelp{position:relative;top:-1em;vertical-align:top;color:#fff}.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{padding:0;margin-top:5px;border:1px solid #ccc;background-color:#eee}.o_toolbar .o_tool_next a,.o_toolbar .o_tool_previous a{color:#777}.o_toolbar .o_tool_next a:hover,.o_toolbar .o_tool_previous a:hover{color:#333}.o_toolbar .o_tool_next a.o_disabled,.o_toolbar .o_tool_previous a.o_disabled{color:#aaa !important}.o_toolbar .o_tool_next a.o_disabled:hover,.o_toolbar .o_tool_previous a.o_disabled:hover{color:#aaa !important}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:21px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{margin-top:4px}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:18px}}@media (max-width: 767px){.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{margin-top:0}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:20px}}.o_toolbar .o_tool_previous{margin-left:10px;border-bottom-left-radius:4px;border-top-left-radius:4px;border-right:0}.o_toolbar .o_tool_next{border-bottom-right-radius:4px;border-top-right-radius:4px}.o_toolbar .o_tool_dropdown{margin:0 10px}.o_toolbar .o_tool_dropdown:first-child{margin-left:0}.o_toolbar .o_tool_dropdown:last-child{margin-right:0}.o_toolbar .o_tool_dropdown a.dropdown-toggle{position:relative}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:18px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label{display:block;font-size:12px;text-align:center}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{position:absolute;right:50%;top:4px;margin-right:-20px;font-size:14px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:16px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label,.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{font-size:11px}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{top:4px;margin-right:-18px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown a.dropdown-toggle{padding:0 10px 0 5px}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:20px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label{display:none}}.o_toolbar .o_tool_dropdown .dropdown-menu{text-align:left}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{line-height:16px;font-size:70% !important;padding:0 18px 0 4px;position:relative;top:-2px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:12px !important;margin:0 0 3px 0}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{position:absolute;right:5px;top:2px;margin-right:0}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{line-height:14px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:10px !important}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{right:5px;top:2px;margin-right:0;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{padding:0 18px 0 4px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:20px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{right:15px;top:2px;margin-right:0}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled span.o_inner_text,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled span.o_label,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light span.o_inner_text,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light span.o_label{display:none}}.o_toolbar .o_tool_dropdown .dropdown-toggle.o_with_labeled .o_inner_wrapper.o_labeled+.o_icon_caret{color:#fff !important}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled{padding:0;margin:0}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled .o_labeled{text-align:left}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled>li>a{padding:5px 5px;margin:1px}.o_toolbar .o_tools_left{float:left}.o_toolbar .o_tools_right{float:right}.o_toolbar .o_tools_right_edge{float:right}.o_toolbar .o_tools_center{float:both;margin-left:auto;margin-right:auto}.o_toolbar .o_tools_segments{margin:0 auto -1.1em auto}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}@media (max-width: 991px){.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools.o_tools_segments{margin:0 auto -1.1em auto}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}.o_toolbar .o_tool span{max-width:10em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_toolbar .o_tools_segments .o_tool span{display:block}.o_toolbar .o_tool,.o_toolbar .o_text,.o_toolbar .o_tool_dropdown{margin:0 5px}}@media (max-width: 767px){.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools .o_chelp{top:0;vertical-align:top}.o_toolbar .o_tools.o_tools_segments{margin:0 auto -1.1em auto;text-align:center}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}.o_toolbar .o_tools_center{float:left}.o_toolbar .o_tool,.o_toolbar .o_text,.o_toolbar .o_tool_dropdown{margin:0 0;position:static}.o_toolbar .o_tool_dropdown .dropdown-menu{left:0px;right:0px}.o_toolbar .o_tool_dropdown .dropdown-menu a,.o_toolbar .o_tool_dropdown .dropdown-menu i{line-height:30px}.o_toolbar .o_tool_dropdown .dropdown-menu .o_navbar_tab_close{line-height:inherit}}#o_main_container .o_toolbar_message{display:table;margin:0 auto 20px auto}#o_main_container .o_toolbar_message.o_warning{padding-top:5px;padding-bottom:5px;border:1px solid #8a6d3b;border-radius:3px}.o_edit_mode .o_toolbar .o_tools_container{background:repeating-linear-gradient(300deg, #fff0d9, #fff0d9 10px, #fcfcfc 10px, #fcfcfc 20px)}.o_edit_mode .o_toolbar .o_edit_mode .o_tools_container{background:#f8f8f8}body{overflow-x:hidden}.o_container_offcanvas{position:relative;max-width:1324px}#o_container_page_width_toggler{position:absolute;top:25px;margin-top:-.75em;right:10px;z-index:5;display:none}@media (min-width: 1364px){#o_container_page_width_toggler{display:block}#o_container_page_width_toggler #o_go_standard_width{display:none}#o_container_page_width_toggler #o_go_full_width{display:block}body.o_width_full .o_container_offcanvas{max-width:100%;margin-left:20px;margin-right:20px}body.o_width_full #o_container_page_width_toggler #o_go_standard_width{display:block}body.o_width_full #o_container_page_width_toggler #o_go_full_width{display:none}}body.o_dmz #o_container_page_width_toggler{display:none !important}#o_offcanvas_right{position:absolute;top:0;right:-250px;width:250px;padding:15px 15px;background-color:#222;color:#9d9d9d;border:1px solid #090909;-webkit-box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);min-height:100%;z-index:10;display:none}#o_offcanvas_right:before,#o_offcanvas_right:after{content:" ";display:table}#o_offcanvas_right:after{clear:both}@media screen and (max-width: 767px){.row-offcanvas{position:relative;-webkit-transition:all .25s ease-out;-moz-transition:all .25s ease-out;transition:all .25s ease-out}.row-offcanvas-right{right:0}.row-offcanvas-right .sidebar-offcanvas{right:-50%}.row-offcanvas-right.active{right:50%}.row-offcanvas-left{left:0}.row-offcanvas-left .sidebar-offcanvas{left:-50%}.row-offcanvas-left.active{left:50%}.sidebar-offcanvas{position:absolute;top:0;width:50%}}.o_info,.b_info,p.b_info,div.b_info,.o_form .o_info,.o_togglebox_wrapper div.o_togglebox_content,div.o_qti_item_itemfeedback,.o_assessmentitem_wrapper .modalFeedback .o_info{margin:20px 0;padding:20px;border-left:3px solid #777;background-color:#eee}.o_info h2,.o_info h3,.o_info h4,.o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_info h2,.o_info h5,.b_info h2,.o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback h2,.o_assessmentitem_wrapper .modalFeedback .o_info h2,.b_info h3,.o_form .o_info h3,.o_togglebox_wrapper div.o_togglebox_content h3,div.o_qti_item_itemfeedback h3,.o_assessmentitem_wrapper .modalFeedback .o_info h3,.b_info h4,.o_form .o_info h4,.o_togglebox_wrapper div.o_togglebox_content h4,div.o_qti_item_itemfeedback h4,.o_assessmentitem_wrapper .modalFeedback .o_info h4,.b_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_info h2,.o_form .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback .o_cal .fc-header-title h2,.o_cal .fc-header-title div.o_qti_item_itemfeedback h2,.o_assessmentitem_wrapper .modalFeedback .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info h2,.b_info h5,.o_form .o_info h5,.o_togglebox_wrapper div.o_togglebox_content h5,div.o_qti_item_itemfeedback h5,.o_assessmentitem_wrapper .modalFeedback .o_info h5{color:#777}.o_note,.b_note,p.b_note,div.b_note,.o_form .o_desc,.o_course_run .o_statusinfo,.o_course_stats .o_desc,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment{margin:20px 0;padding:20px;border-left:3px solid #31708f;background-color:#d9edf7}.o_note h2,.o_note h3,.o_note h4,.o_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_note h2,.o_note h5,.b_note h2,.o_form .o_desc h2,.o_course_run .o_statusinfo h2,.o_course_stats .o_desc h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h2,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2,.b_note h3,.o_form .o_desc h3,.o_course_run .o_statusinfo h3,.o_course_stats .o_desc h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h3,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h3,.b_note h4,.o_form .o_desc h4,.o_course_run .o_statusinfo h4,.o_course_stats .o_desc h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h4,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h4,.b_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_note h2,.o_form .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_desc h2,.o_course_run .o_statusinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_statusinfo h2,.o_course_stats .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_stats .o_desc h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h2,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2,.b_note h5,.o_form .o_desc h5,.o_course_run .o_statusinfo h5,.o_course_stats .o_desc h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h5,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h5{color:#31708f}.o_important,.b_important,p.b_important,div.b_important,.o_bc_empty,.o_course_run .o_no_scoreinfo{margin:20px 0;padding:20px;border-left:3px solid #F4D000;background-color:#FFF1A4}.o_important h2,.o_important h3,.o_important h4,.o_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_important h2,.o_important h5,.b_important h2,.o_bc_empty h2,.o_course_run .o_no_scoreinfo h2,.b_important h3,.o_bc_empty h3,.o_course_run .o_no_scoreinfo h3,.b_important h4,.o_bc_empty h4,.o_course_run .o_no_scoreinfo h4,.b_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_important h2,.o_bc_empty .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_bc_empty h2,.o_course_run .o_no_scoreinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_no_scoreinfo h2,.b_important h5,.o_bc_empty h5,.o_course_run .o_no_scoreinfo h5{color:#F4D000}.o_success,.b_success,p.b_success,div.b_success,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback{margin:20px 0;padding:20px;border-left:3px solid #3c763d;background-color:#dff0d8}.o_success h2,.o_success h3,.o_success h4,.o_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_success h2,.o_success h5,.b_success h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h2,.b_success h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h3,.b_success h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h4,.b_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_success h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h2,.b_success h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h5{color:#3c763d}.o_warning,.b_warning,p.b_warning,div.b_warning,.o_instruction,.o_form .o_warning,p.o_gta_reopen_warning{margin:20px 0;padding:20px;border-left:3px solid #8a6d3b;background-color:#fcf8e3}.o_warning h2,.o_warning h3,.o_warning h4,.o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_warning h2,.o_warning h5,.b_warning h2,.o_instruction h2,.o_form .o_warning h2,p.o_gta_reopen_warning h2,.b_warning h3,.o_instruction h3,.o_form .o_warning h3,p.o_gta_reopen_warning h3,.b_warning h4,.o_instruction h4,.o_form .o_warning h4,p.o_gta_reopen_warning h4,.b_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_warning h2,.o_instruction .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_instruction h2,.o_form .o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_warning h2,p.o_gta_reopen_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title p.o_gta_reopen_warning h2,.b_warning h5,.o_instruction h5,.o_form .o_warning h5,p.o_gta_reopen_warning h5{color:#8a6d3b}.o_error,.b_error,p.b_error,div.b_error,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback{margin:20px 0;padding:20px;border-left:3px solid #a94442;background-color:#f2dede}.o_error h2,.o_error h3,.o_error h4,.o_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_error h2,.o_error h5,.b_error h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h2,.b_error h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h3,.b_error h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h4,.b_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_error h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h2,.b_error h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h5{color:#a94442}.o_instruction{margin-top:0px;border-left:none;padding-top:10px;padding-bottom:10px}.o_instruction>.o_button_group{margin-bottom:0px}div.o_callout_overlay{position:fixed;top:0;left:0;width:100%;height:100%;zoom:1;background:#000;opacity:0;filter:alpha(opacity=0)}.o_alert_info{position:fixed;top:-100%;left:0;display:none;z-index:2000;width:100%;text-align:center}.o_alert_info .alert{position:relative;width:auto;margin:0 auto;text-align:left;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.o_alert_info .alert .o_alert_close{float:right;color:#777}.o_alert_info .alert .o_alert_close:hover{color:#555}@media (min-width: 768px){.o_alert_info .alert{width:600px}}#o_msg_sticky,#o_msg_sticky_preview{position:relative;color:#a94442;background-color:#f2dede;border:1px solid #ebccd1;padding:10px 16px 10px 60px;min-height:40px;margin:-20px 0 20px 0}#o_msg_sticky .o_icon_info_msg,#o_msg_sticky_preview .o_icon_info_msg{position:absolute;left:10px;top:5px;font-size:40px}#o_msg_sticky.o_msg_sticky_fullscreen,#o_msg_sticky_preview.o_msg_sticky_fullscreen{margin-top:0}@media (min-width: 768px){.modal .o_modal_fullwidth{width:90%}}@media (min-width: 992px){.modal .o_modal_fullwidth{width:80%}}.modal .modal-header h4,.modal .modal-header .o_cal .fc-header-title h2,.o_cal .fc-header-title .modal .modal-header h2{color:#342c24;font-weight:500;font-family:inherit;line-height:1.1}.o_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_tree a{color:#777;background-color:none}.o_tree a:hover,.o_tree a:focus{color:#333}.o_tree .o_tree_link{background-color:none}.o_tree .o_tree_link:hover,.o_tree .o_tree_link:focus{background-color:#f8f8f8}.o_tree .o_tree_link:first-child{background-color:transparent}.o_tree .o_tree_link:last-child:hover,.o_tree .o_tree_link:last-child:focus{background-color:#f8f8f8}.o_tree .o_insertion_point>a>span{padding:5px;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_tree .o_insertion_source>a>span.o_tree_item,.o_tree .o_insertion_source>a>span.o_dnd_item{border-bottom:solid #f90 4px;background-color:#fefbf6}.o_tree ul{margin:0;padding:0;list-style-type:none}.o_tree ul li{margin:0;padding:0;white-space:nowrap}.o_tree ul li div{position:relative;border-bottom:1px solid #ddd}.o_tree ul li div.popover{position:absolute;left:auto;right:0}.o_tree ul li div a.o_tree_oc_l0{position:absolute;top:10px;left:-4px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l0,.o_tree ul .o_tree_level_close.b_tree_oc_l0{z-index:10}.o_tree ul li div a.o_tree_oc_l1{position:absolute;top:10px;left:11px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l1,.o_tree ul .o_tree_level_close.b_tree_oc_l1{z-index:10}.o_tree ul li div a.o_tree_oc_l2{position:absolute;top:10px;left:26px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l2,.o_tree ul .o_tree_level_close.b_tree_oc_l2{z-index:10}.o_tree ul li div a.o_tree_oc_l3{position:absolute;top:10px;left:41px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l3,.o_tree ul .o_tree_level_close.b_tree_oc_l3{z-index:10}.o_tree ul li div a.o_tree_oc_l4{position:absolute;top:10px;left:56px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l4,.o_tree ul .o_tree_level_close.b_tree_oc_l4{z-index:10}.o_tree ul li div a.o_tree_oc_l5{position:absolute;top:10px;left:71px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l5,.o_tree ul .o_tree_level_close.b_tree_oc_l5{z-index:10}.o_tree ul li div a.o_tree_oc_l6{position:absolute;top:10px;left:86px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l6,.o_tree ul .o_tree_level_close.b_tree_oc_l6{z-index:10}.o_tree ul li div a.o_tree_oc_l7{position:absolute;top:10px;left:101px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l7,.o_tree ul .o_tree_level_close.b_tree_oc_l7{z-index:10}.o_tree ul li div a.o_tree_oc_l8{position:absolute;top:10px;left:116px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l8,.o_tree ul .o_tree_level_close.b_tree_oc_l8{z-index:10}.o_tree ul li div a.o_tree_oc_l9{position:absolute;top:10px;left:131px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l9,.o_tree ul .o_tree_level_close.b_tree_oc_l9{z-index:10}.o_tree ul li div a.o_tree_oc_l10{position:absolute;top:10px;left:146px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l10,.o_tree ul .o_tree_level_close.b_tree_oc_l10{z-index:10}.o_tree ul li div a.o_tree_oc_l11{position:absolute;top:10px;left:161px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l11,.o_tree ul .o_tree_level_close.b_tree_oc_l11{z-index:10}.o_tree ul li div span.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_tree ul li div span.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_tree ul li div span.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_tree ul li div span.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_tree ul li div span.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_tree ul li div span.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_tree ul li div span.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_tree ul li div span.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_tree ul li div span.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_tree ul li div span.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_tree ul li div span.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_tree ul li div span.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_tree ul span.o_tree_leaf{display:none}.o_tree ul span.o_tree_link>input[type=checkbox]{margin-right:5px}.o_tree ul li .badge{position:absolute;font-size:70%}.o_tree ul li .badge:before{content:none}.o_tree ul li .badge.o_badge_1{top:3px;right:1px}.o_tree ul li .badge.o_badge_2{bottom:3px;right:1px}.o_tree ul li .badge.o_badge_3{top:3px;right:25px}.o_tree ul li .badge.o_badge_4{bottom:3px;right:25px}.o_tree ul li div.o_dnd_sibling{margin:0;padding:0;border-bottom:none}.o_tree ul li .active.o_tree_link{background-color:none;font-weight:bold}.o_tree ul li .active.o_tree_link a{color:#209d9e}.o_tree ul li .active.o_tree_link:hover,.o_tree ul li .active.o_tree_link:focus{background-color:#eee}.o_tree ul li .active.o_tree_link:hover a,.o_tree ul li .active.o_tree_link:focus a{color:#177374}.o_tree ul li .active_parent.o_tree_link{font-weight:bold}.o_tree ul li .active_parent.o_tree_link a{color:#777}.o_tree ul li .active_parent.o_tree_link a:hover,.o_tree ul li .active_parent.o_tree_link a:focus{color:#333}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l0{left:6px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l1{left:21px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l2{left:36px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l3{left:51px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l4{left:66px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l5{left:81px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l6{left:96px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l7{left:111px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l8{left:126px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l9{left:141px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l10{left:156px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l11{left:171px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l0{padding:10px 2px 10px 20px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l1{padding:10px 2px 10px 35px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l2{padding:10px 2px 10px 50px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l3{padding:10px 2px 10px 65px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l4{padding:10px 2px 10px 80px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l5{padding:10px 2px 10px 95px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l6{padding:10px 2px 10px 110px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l7{padding:10px 2px 10px 125px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l8{padding:10px 2px 10px 140px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l9{padding:10px 2px 10px 155px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l10{padding:10px 2px 10px 170px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l11{padding:10px 2px 10px 185px}.o_tree .o_dnd_item{cursor:move;z-index:100}.o_tree .o_dnd_proxy{opacity:.4;filter:alpha(opacity=40);background-color:#f2af40;padding:5px 10px 5px 10px;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_tree .o_dnd_item.o_dnd_over{background-color:#ffff60}.o_tree .o_dnd_sibling{height:7px;width:100%}.o_tree .o_dnd_sibling.o_dnd_over{background:transparent url(../light/images/arrow_dd.png) top left no-repeat}.o_tree .o_dnd_l1{margin-left:0 !important}.o_tree .o_dnd_l2{margin-left:1em !important}.o_tree .o_dnd_l3{margin-left:2em !important}.o_tree .o_dnd_l4{margin-left:3em !important}.o_tree .o_dnd_l5{margin-left:4em !important}.o_tree .o_dnd_l6{margin-left:5em !important}.o_tree .o_dnd_l7{margin-left:6em !important}.o_tree .o_dnd_l8{margin-left:7em !important}.o_tree .o_dnd_l9{margin-left:8em !important}.o_tree .o_dnd_l10{margin-left:9em !important}.o_tree .o_dnd_l11{margin-left:10em !important}.o_tree.o_tree_insert_tool span.o_tree_link a{display:block}.o_offcanvas .o_tree{border:0}.o_selection_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_selection_tree ul{margin:0;padding:0;list-style-type:none}.o_selection_tree li{margin:0;padding:0;white-space:nowrap}.o_selection_tree li div{position:relative;margin-bottom:-1px;border-bottom:1px solid #ddd}.o_selection_tree li>div>span.o_tree_l0,.o_selection_tree li>div>div.checkbox.o_tree_l0,.o_selection_tree li>div>div.radio.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_selection_tree li>div>span.o_tree_l1,.o_selection_tree li>div>div.checkbox.o_tree_l1,.o_selection_tree li>div>div.radio.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_selection_tree li>div>span.o_tree_l2,.o_selection_tree li>div>div.checkbox.o_tree_l2,.o_selection_tree li>div>div.radio.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_selection_tree li>div>span.o_tree_l3,.o_selection_tree li>div>div.checkbox.o_tree_l3,.o_selection_tree li>div>div.radio.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_selection_tree li>div>span.o_tree_l4,.o_selection_tree li>div>div.checkbox.o_tree_l4,.o_selection_tree li>div>div.radio.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_selection_tree li>div>span.o_tree_l5,.o_selection_tree li>div>div.checkbox.o_tree_l5,.o_selection_tree li>div>div.radio.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_selection_tree li>div>span.o_tree_l6,.o_selection_tree li>div>div.checkbox.o_tree_l6,.o_selection_tree li>div>div.radio.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_selection_tree li>div>span.o_tree_l7,.o_selection_tree li>div>div.checkbox.o_tree_l7,.o_selection_tree li>div>div.radio.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_selection_tree li>div>span.o_tree_l8,.o_selection_tree li>div>div.checkbox.o_tree_l8,.o_selection_tree li>div>div.radio.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_selection_tree li>div>span.o_tree_l9,.o_selection_tree li>div>div.checkbox.o_tree_l9,.o_selection_tree li>div>div.radio.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_selection_tree li>div>span.o_tree_l10,.o_selection_tree li>div>div.checkbox.o_tree_l10,.o_selection_tree li>div>div.radio.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_selection_tree li>div>span.o_tree_l11,.o_selection_tree li>div>div.checkbox.o_tree_l11,.o_selection_tree li>div>div.radio.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_breadcrumb{position:relative}.o_breadcrumb .o_breadcrumb_close{float:right;position:relative;margin:0 0 0 15px;vertical-align:middle}.o_breadcrumb .o_breadcrumb_close a{line-height:15px;color:#d6001c}.o_breadcrumb .o_breadcrumb_close a:hover{color:#8a0012}.o_breadcrumb .o_breadcrumb_close a i{font-size:16px}.o_breadcrumb .o_breadcrumb_close a span{display:none}.o_breadcrumb .o_breadcrumb_close:before{content:none}.o_form .o_icon_mandatory{margin-right:0.25em}.o_form .o_form_chelp{padding-left:0.25em;margin-right:-1.25em}.o_form .o_form_example{font-size:90%}.o_form .o_error{margin-top:1px;margin-bottom:0;padding:10px}.o_form hr.o_spacer_noline{border-top:1px solid transparent}.o_form hr.o_spacer.form,.o_form hr.o_spacer_noline.form{margin-top:0px;margin-bottom:0px}.o_form .form-group.o_omit_margin{margin-bottom:0}.o_form .o_date{position:relative;padding-right:34px}.o_form .o_date.form-inline .form-group,.o_form .o_date.o_navbar-form .form-group{margin-left:0}.o_form .o_date.form-inline .form-group.o_second_date,.o_form .o_date.o_navbar-form .form-group.o_second_date,.o_form .o_date.form-inline .o_date_ms.form-group,.o_form .o_date.o_navbar-form .o_date_ms.form-group,.o_form .o_date.form-inline .form-group.o_date_separator,.o_form .o_date.o_navbar-form .form-group.o_date_separator{margin-left:25px}.o_form .btn-group .o_date{display:inline-block}.o_form input.o_date_ms{width:3em}.o_form .has-feedback .o_date.form-inline .form-control.o_date_ms,.o_form .has-feedback .o_date.o_navbar-form .form-control.o_date_ms{padding-right:0}.o_form .o_form_element.form-inline .o_form_element.form-group,.o_form .o_form_element.o_navbar-form .o_form_element.form-group{margin-left:25px}.o_form .input-group.o_date_picker{width:11em}.o_form .has-feedback .o_date_picker .form-control{padding-right:0}.o_form .o_filepreview{margin-bottom:10px}.o_form .o_fileinput{cursor:pointer;position:relative}.o_form .o_fileinput .o_fakechooser{position:relative;z-index:1}.o_form .o_fileinput .o_realchooser{position:absolute;top:0;right:0;z-index:2;opacity:0;filter:alpha(opacity=0)}.o_form .o_fileinput .o_realchooser.o_chooser_with_delete{right:38px}.o_form .o_fileElement.has-error .o_icon_error.form-control-feedback{display:none}.o_form .form-control.textarea.o_fixed_font_with{resize:vertical !important;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_form .form-control.textarea_disabled.o_fixed_font_with{white-space:pre-wrap;height:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#555 !important;background:#fafafa}.o_form .form-control.textarea_disabled{resize:both;overflow:auto;white-space:pre-wrap;background:#fafafa}.o_form_inline_mandatory_compact i{width:20px}.o_form_inline_mandatory_compact select.form-control{width:calc(100% - 25px)}.o_day_chooser .o_day_previous{display:inline-block}.o_day_chooser .o_day_previous a{border-bottom-right-radius:0;border-top-right-radius:0;border-right:0}.o_day_chooser .o_day_date{display:inline-block;border-radius:0}.o_day_chooser .o_day_date input,.o_day_chooser .o_day_date .input-group-addon{border-radius:0}.o_day_chooser .o_day_next{display:inline-block}.o_day_chooser .o_day_next a{border-bottom-left-radius:0;border-top-left-radius:0;border-left:0}.o_centered_form{text-align:center}.o_centered_form fieldset.o_form{display:inline-block;text-align:left}.o_choice_checkrow,.o_choice_textrow{vertical-align:text-top;padding-bottom:2px}.o_choice_textrow{padding-left:1em}.o_togglecheck a{white-space:nowrap}.o_catalog .o_catalog_delete_img{position:relative;top:-0.5em}.o_button_dirty{color:#fff;background-color:#f2af40;border-color:#f0a528}.o_button_dirty:hover,.o_button_dirty:focus,.o_button_dirty.focus,.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{color:#fff;background-color:#ef9b10;border-color:#cd850e}.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{background-image:none}.o_button_dirty.disabled,.o_button_dirty.disabled:hover,.o_button_dirty.disabled:focus,.o_button_dirty.disabled.focus,.o_button_dirty.disabled:active,.o_button_dirty.disabled.active,.o_button_dirty[disabled],.o_button_dirty[disabled]:hover,.o_button_dirty[disabled]:focus,.o_button_dirty[disabled].focus,.o_button_dirty[disabled]:active,.o_button_dirty[disabled].active,fieldset[disabled] .o_button_dirty,fieldset[disabled] .o_button_dirty:hover,fieldset[disabled] .o_button_dirty:focus,fieldset[disabled] .o_button_dirty.focus,fieldset[disabled] .o_button_dirty:active,fieldset[disabled] .o_button_dirty.active{background-color:#f2af40;border-color:#f0a528}.o_button_dirty .badge{color:#f2af40;background-color:#fff}.o_button_toggle{border:1px solid #777;border-top-right-radius:9px;border-top-left-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px;background:#eee;display:inline-block;height:18px;line-height:16px;font-size:16px;text-align:left;padding:0 0.5em 0 1px;margin:0}.o_button_toggle i{color:#777;text-shadow:1px 0 2px rgba(0,0,0,0.25)}.o_button_toggle span{line-height:16px;vertical-align:top;font-size:60%;color:#777;text-transform:uppercase}.o_button_toggle.o_on{text-align:right;padding:0 1px 0 0.5em}.o_button_toggle.o_on i{color:#209d9e;text-shadow:-1px 0 2px rgba(0,0,0,0.25)}.o_table_wrapper{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_table_wrapper.o_table_flexi .o_table_body{margin-top:20px}.o_table_wrapper.o_table_flexi .table{margin-top:20px}.o_table_wrapper.o_table_flexi .table td ul{margin:0}.o_table_wrapper.o_table_flexi.o_table_no_margin .table{margin:0}.o_table_wrapper.o_table_flexi tfoot{border-top:solid #ddd 2px}.o_table_wrapper.o_table_flexi .o_multiselect{width:20px}.o_table_wrapper.o_table_edit table tbody{border-top:solid #f90 4px;background-color:#fefbf6}.o_table_wrapper .o_table_search{max-width:50em}.o_table_wrapper .o_table_footer .o_table_checkall>a{font-weight:normal;margin-right:10px}.o_table_wrapper .o_table_footer .o_table_checkall.input-sm,.o_table_wrapper .o_table_footer .input-group-sm>.o_table_checkall.form-control,.o_table_wrapper .o_table_footer .input-group-sm>.o_table_checkall.input-group-addon,.o_table_wrapper .o_table_footer .input-group-sm>.input-group-btn>.o_table_checkall.btn{padding:5px 6px}.o_table_wrapper .o_table_footer .o_table_pagination{text-align:center}.o_table_wrapper .o_table_rows_infos{float:left;padding-left:0;padding-right:20px;margin:20px 0}.o_table_wrapper .o_row_selected td{background-color:#dff0d8 !important}.o_table_wrapper .o_table{margin-bottom:0}.o_table_wrapper .o_marked{font-weight:bold}.o_table_wrapper .table{margin-bottom:0}.o_table_wrapper th a,.o_table_wrapper th a:hover{color:#2d2926;text-decoration:none}.o_table_search a.btn.o_reset_quick_search{width:38px;margin-left:-38px;z-index:5;color:grey}.o_table_search>label{display:inline}.o_breadcrumb.o_table_flexi_breadcrumb ol.breadcrumb{margin:5px 0 0 0}div.o_table_flexi div.o_table_flexi_leaf{margin-left:1.55em}div.o_table_flexi div.o_table_flexi_l0{padding-left:0px}div.o_table_flexi div.o_table_flexi_l1{padding-left:15px}div.o_table_flexi div.o_table_flexi_l2{padding-left:30px}div.o_table_flexi div.o_table_flexi_l3{padding-left:45px}div.o_table_flexi div.o_table_flexi_l4{padding-left:60px}div.o_table_flexi div.o_table_flexi_l5{padding-left:75px}div.o_table_flexi div.o_table_flexi_l6{padding-left:90px}div.o_table_flexi div.o_table_flexi_l7{padding-left:105px}div.o_table_flexi div.o_table_flexi_l8{padding-left:120px}div.o_table_flexi div.o_table_flexi_l9{padding-left:135px}div.o_table_flexi div.o_table_flexi_l10{padding-left:150px}div.o_table_flexi div.o_table_flexi_l11{padding-left:165px}@media (max-width: 767px){.o_table_wrapper .o_table_rows_infos{clear:both}}a.o_orderby,a.o_orderby:hover{color:#2d2926;text-decoration:none}a.o_orderby.o_orderby_asc,a.o_orderby.o_orderby_desc,a.o_orderby:hover.o_orderby_asc,a.o_orderby:hover.o_orderby_desc{border-bottom:1px solid #ddd}.o_table_row_count{padding-top:6px;padding-bottom:6px;vertical-align:middle}.o_table_row_details td{background-color:white !important}.o_table_config{font-size:12px}.o_table_buttons{text-align:center}.o_table_buttons input{margin-right:1em}.o_table_buttons input:last-child{margin-right:0}.o_table_tools{margin-left:6px}.o_table_tools_indications,.o_table_tools_indications_filter_only{margin-left:10px;padding-top:3px;font-size:80%}.o_table_tools_indications a,.o_table_tools_indications_filter_only a{color:#d6001c}.o_table_toolbar_left .o_table_tools_indications{text-align:right}.o_table_count{max-width:20em;float:left;padding:0 15px}.o_table_filter .control-label{margin-right:0.5em}.o_table_filter .control-label:after{content:':'}.o_table_filter>div{display:inline-block}.o_table_filter>div label{font-weight:normal}.o_info .table-bordered td,o_note .table-bordered td,o_important .table-bordered td,o_warning .table-bordered td,o_error .table-bordered td{border-color:#333}.panel .o_table_layout{border-top:1px solid #ddd;padding-top:6px}.panel .o_table_count{padding:0 15px}.o_table_header_fw{width:40px}#o_navbar_imclient .o_im_messages{float:left}#o_navbar_imclient #o_im_message,#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_summary{float:left;position:relative;padding:15px 3px}#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_message{padding-left:15px}#o_navbar_imclient #o_im_summary .badge{color:#fff;background-color:#777}#o_navbar_imclient #o_im_status li>a>span{display:inline}#o_navbar_imclient #o_im_status div.o_chelp_wrapper{right:0.5em}#o_navbar_imclient #o_im_message a:hover,#o_navbar_imclient #o_im_message a:focus{text-decoration:none}#o_navbar_imclient #o_im_message .o_icon_message{color:#d6001c}#o_navbar_imclient #o_im_message .o_icon_message:hover{color:#f5c370}.o_im_load_history{margin-bottom:6px}.o_im_load_history .o_label{font-size:12px;padding-right:0.5em;line-height:1.5em;color:#777}.o_im_chat_history{height:170px;font-size:90%;border:1px solid #eee;margin:0 0 1em 0;overflow:scroll;overflow-x:auto}.o_im_message_group{padding:3px 3px 3px 40px;min-height:40px;position:relative;border-top:1px solid #eee;background:#fff}.o_im_message_group.o_odd{background:#F4F4F4}.o_im_message_group .o_portrait{position:absolute;top:3px;left:3px}.o_im_message_group .o_im_from{color:#777;font-size:12px;font-weight:bold}.o_im_message_group .o_im_from:hover{color:#5e5e5e}.o_im_message_group div.o_im_body{padding:3px 0 3px 0;font-size:12px}.o_im_message_group div.o_im_body .o_date{float:right;color:#777;font-size:9px}.o_groupchat_roster{font-size:12px}.o_groupchat_roster li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2d2926}.o_groupchat_roster li.o_vip{color:#3c763d}.o_groupchat_roster li.o_anonymous{color:#31708f}.o_im_buddieslist .o_im_buddieslist_toggler .btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_im_buddieslist ul{font-size:12px}.o_im_buddieslist ul ul{padding-left:1em}.o_im_buddieslist ul a{color:#209d9e}.o_im_buddieslist ul a:hover{color:#177374}.o_flag{position:relative;top:1px;display:inline-block;line-height:1;width:16px;height:16px;background-repeat:no-repeat;background-position:0 100%}option.o_with_flag{padding-left:23px;min-height:16px;background-repeat:no-repeat;background-position:2px 50%}.o_flag_en{background-image:url("../light/images/flags/gb.png")}.o_flag_de{background-image:url("../light/images/flags/de.png")}.o_flag_fr{background-image:url("../light/images/flags/fr.png")}.o_flag_it{background-image:url("../light/images/flags/it.png")}.o_flag_es{background-image:url("../light/images/flags/es.png")}.o_flag_da{background-image:url("../light/images/flags/dk.png")}.o_flag_cs{background-image:url("../light/images/flags/cz.png")}.o_flag_el{background-image:url("../light/images/flags/gr.png")}.o_flag_ee{background-image:url("../light/images/flags/ee.png")}.o_flag_ru{background-image:url("../light/images/flags/ru.png")}.o_flag_pl{background-image:url("../light/images/flags/pl.png")}.o_flag_zh_CN{background-image:url("../light/images/flags/cn.png")}.o_flag_zh_TW{background-image:url("../light/images/flags/tw.png")}.o_flag_lt{background-image:url("../light/images/flags/lt.png")}.o_flag_fa{background-image:url("../light/images/flags/ir.png")}.o_flag_pt_PT{background-image:url("../light/images/flags/pt.png")}.o_flag_pt_BR{background-image:url("../light/images/flags/br.png")}.o_flag_tr{background-image:url("../light/images/flags/tr.png")}.o_flag_hu{background-image:url("../light/images/flags/hu.png")}.o_flag_sq{background-image:url("../light/images/flags/al.png")}.o_flag_in{background-image:url("../light/images/flags/id.png")}.o_flag_ar{background-image:url("../light/images/flags/eg.png")}.o_flag_rm{background-image:url("../light/images/flags/rm.png")}.o_flag_af{background-image:url("../light/images/flags/za.png")}.o_flag_vi{background-image:url("../light/images/flags/vn.png")}.o_flag_mn{background-image:url("../light/images/flags/mn.png")}.o_flag_iw{background-image:url("../light/images/flags/il.png")}.o_flag_ko{background-image:url("../light/images/flags/kr.png")}.o_flag_nl_NL{background-image:url("../light/images/flags/nl.png")}.o_flag_jp{background-image:url("../light/images/flags/jp.png")}.o_flag_nb_NO{background-image:url("../light/images/flags/no.png")}.o_flag_et_EE{background-image:url("../light/images/flags/ee.png")}.o_flag_bg{background-image:url("../light/images/flags/bg.png")}.o_flag_hi_IN_ASIA{background-image:url("../light/images/flags/in.png")}.o_flag_ar_LB{background-image:url("../light/images/flags/lb.png")}.o_flag_gl_ES{background-image:url("../light/images/flags/galicia.png")}.o_flag_sk{background-image:url("../light/images/flags/sk.png")}.o_rating .o_rating_title{font-size:12px}.o_rating .o_rating_items{white-space:nowrap}.o_rating .o_rating_items .o_icon,.o_rating .o_rating_items .o_progress_failed .inset:after,.o_progress_failed .o_rating .o_rating_items .inset:after,.o_rating .o_rating_items .o_progress_passed .inset:after,.o_progress_passed .o_rating .o_rating_items .inset:after{color:#f2af40}.o_rating .o_rating_items .o_legend{margin-left:1em;font-size:12px;line-height:normal}.o_rating.o_rating_personal .o_rating_items .o_icon,.o_rating.o_rating_personal .o_rating_items .o_progress_failed .inset:after,.o_progress_failed .o_rating.o_rating_personal .o_rating_items .inset:after,.o_rating.o_rating_personal .o_rating_items .o_progress_passed .inset:after,.o_progress_passed .o_rating.o_rating_personal .o_rating_items .inset:after{color:#209d9e}.o_rating .o_rating_explanation{font-size:12px;color:#777}@media (max-width: 991px){.o_rating .o_rating_title,.o_rating .o_rating_explanation{display:none}}.o_comments .o_comment_wrapper .o_avatar{float:left;margin:0 1em 0 0}.o_comments .o_comment_wrapper .o_reply,.o_comments .o_comment_wrapper .o_delete{float:right}.o_comments .o_comment_wrapper .o_comment_wrapper{margin-left:16px}.o_ratings_and_comments .o_rating_wrapper{vertical-align:middle;display:inline-block}.o_ratings_and_comments a.o_comments{margin-left:10px;position:relative;top:0.1em}.o_ratings_and_comments div.o_notifications{float:right}.d3chart .bar{shape-rendering:crispEdges}.d3chart .bar_default_light{fill:#35d5d6}.d3chart .bar_default,.d3chart .bubble_default{fill:#209d9e}.d3chart .bar_default_dark{fill:#135e5e}.d3chart .axis{font:12px sans-serif}.d3chart .axis path,.d3chart .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_forum_peekview .o_quote_wrapper,.o_forum_peekview .b_quote_wrapper{display:none}.o_forum_thread_sticky{font-weight:bold}.o_forum_switch{font-size:12px}.o_forum_toolbar{margin-bottom:6px;float:left}.o_forum_fulltextsearch{float:right}@media (max-width: 767px){.o_forum_fulltextsearch{float:left}.o_forum_toolbar .o_forum_tool span{display:none}}.o_forum{padding-bottom:50px}.o_forum .o_mark,.o_forum .o_ep_collect{float:right;position:relative;width:2em;margin-left:12px}.o_forum .o_portrait{float:left;margin-right:16px}.o_forum .o_portrait_avatar{width:70px;height:70px}.o_forum .o_newindicator{font-size:10px;color:#78be20;text-transform:uppercase;padding-left:1em;vertical-align:text-top;white-space:nowrap}.o_forum .o_author,.o_forum .o_date{display:inline-block;color:#777}.o_forum .o_date{font-size:12px}.o_forum .o_modified{color:#8a6d3b;font-size:12px;font-style:italic}.o_forum .o_forum_message{margin-bottom:20px;background-color:#fcfcfc;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_forum .o_forum_message_new{-webkit-box-shadow:0 1px 10px rgba(92,184,92,0.3);box-shadow:0 1px 10px rgba(92,184,92,0.3)}.o_forum .o_forum_message_highlight{-webkit-box-shadow:0 1px 10px rgba(240,173,78,0.5);box-shadow:0 1px 10px rgba(240,173,78,0.5)}.o_forum .o_forum_message_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:3px;border-top-left-radius:3px}.o_forum .o_forum_message_title{margin-top:0}.o_forum .o_forum_message_body{padding:10px 15px}.o_forum .o_forum_message_attachments{border-top:1px solid #ddd;padding:10px 15px;font-size:12px;background-color:#f7f7f9}.o_forum .o_attachment{position:relative;max-width:250px;vertical-align:top;margin:6px 12px 10px 0}.o_forum .o_attachment img{margin-top:6px}.o_forum .o_filename{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_forum .o_icon_enlarge{position:absolute;left:1em;bottom:1em;text-shadow:1px 1px 2px #fff, -1px 1px 2px #fff, 1px -1px 2px #fff, -1px -1px 2px #fff}@media (min-width: 768px) and (max-width: 991px){.o_forum .o_attachments{font-size:10px}.o_forum .o_attachment{max-width:200px}.o_forum .o_attachment img{max-width:150px}.o_forum .o_filename{max-width:200px}}@media (max-width: 767px){.o_forum .o_attachments{font-size:9px}.o_forum .o_attachment{max-width:150px}.o_forum .o_attachment img{max-width:100px}.o_forum .o_filename{max-width:150px}}.o_quote_wrapper,.b_quote_wrapper{position:relative;margin:10px 0}.o_quote_author,.b_quote_author{color:#777;font-size:12px}.o_quote_author:before,.b_quote_author:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„Ž";font-size:21px;padding-right:0.5em}blockquote.o_quote,blockquote.b_quote{color:#555;font-size:12px;margin-top:6px;padding:0 12px}a.o_chelp{display:inline-block;padding:1px 3px;text-align:center;vertical-align:middle;white-space:nowrap;font-size:10px;font-weight:normal;line-height:15px;color:#fff;background-color:#209d9e;border:1px solid #1c8889;border-radius:2px;cursor:help;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}a.o_chelp:active,a.o_chelp:hover,a.o_chelp:focus{text-decoration:none;color:#fff;background-color:#197b7c;border-color:#115556}a.o_chelp i{font-size:10px !important}.o_chelp_wrapper{position:relative;float:right;display:inline-block;line-height:normal;margin-bottom:10px;margin-left:10px}.o_form_chelp,.o_chelp_tooltip{color:#726860}.o_draw_circle{border:2px solid #209d9e;border-radius:50%;position:absolute !important;box-sizing:border-box}.o_draw_rectangle{border:2px solid #209d9e;position:absolute !important;box-sizing:border-box}.o_iframedisplay iframe{width:100%}.o_content_cloneable{position:relative}.o_singlepage .o_edit{position:absolute;top:0;right:25px}.o_content_popup{position:absolute;top:0;right:0}.o_module_cp_wrapper{position:relative}.o_module_cp_wrapper .o_tools{position:absolute;top:0;right:0;text-align:right;vertical-align:middle}.o_module_cp_wrapper .o_tools .o_search_wrapper{display:inline-block;position:relative;top:-2px}.o_module_cp_wrapper .o_tools .o_search_wrapper .form-group{margin-bottom:0}.o_module_cp_wrapper .o_tools .o_search_wrapper .form-control-static{padding-top:0;padding-bottom:0}ul.o_dropdown{margin:-5px -14px}ul.o_dropdown .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}ul.o_dropdown>li>a{display:block;padding:5px 14px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;background:#fcfcfc;white-space:nowrap}ul.o_dropdown>li>a:hover,ul.o_dropdown>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}ul.o_dropdown>li>i.o_icon_check{display:inline-block;padding-left:14px}ul.o_dropdown>li>i.o_icon_check+a{display:inline-block;padding-left:5px}.badge.o_scorm_completed{background-color:#3c763d}.badge.o_scorm_failed{background-color:#a94442}.badge.o_scorm_incomplete{background-color:#8a6d3b}.badge.o_scorm_not_attempted{background:none}.o_bc_meta h5,.o_bc_meta .o_author,.o_bc_meta .o_comment,.tooltip h5,.tooltip .o_author,.tooltip .o_comment{color:#fff;margin:5px 0}.o_bc_meta .o_thumbnail,.tooltip .o_thumbnail{width:200px;height:200px;display:inline-block;background-color:#fff;margin:0 -5px}.o_htmleditor .o_metadata{border:1px solid #999;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom:0;background:#eee;position:relative;top:1px;padding:5px}.o_htmleditor .o_metadata #o_filename{float:left}.o_htmleditor .o_metadata .o_lastmodified{float:right;color:#777;line-height:1.428571429}.o_htmleditor #o_save{margin-top:10px;text-align:center}.o_htmleditor #o_save input{margin-right:1em}.o_htmleditor #o_save input:last-child{margin-right:0}.o_notifications_news_wrapper .o_notifications_news_subscription{margin:10px 0}.o_notifications_news_wrapper .o_notifications_news_subscription h4 i,.o_notifications_news_wrapper .o_notifications_news_subscription .o_cal .fc-header-title h2 i,.o_cal .fc-header-title .o_notifications_news_wrapper .o_notifications_news_subscription h2 i{display:none}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_context{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content{margin-left:1.5em;position:relative}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_icon,.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_progress_failed .inset:after,.o_progress_failed .o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .inset:after,.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_progress_passed .inset:after,.o_progress_passed .o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .inset:after{position:absolute;left:-1.5em;line-height:1.5em;top:0}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_date{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_url{margin-left:1.5em}.o_noti{margin:6px 0 6px 12px;float:right;color:#777}.o_noti .o_label{color:#777;cursor:help}@media (max-width: 767px){.o_noti .o_label span{display:none}}.panel-body .o_noti{margin:0}.o_portrait{display:inline-block}.o_portrait img{border-radius:50%;border:none;background-color:#eee;background-position:50% 50%;background-repeat:no-repeat;background-size:cover}.o_portrait_name{margin-top:6px}.o_block_inline .o_portait,.o_block_inline .o_portrait_name,.o_block_inline .o_portrait_image,.o_block_inline_right .o_portait,.o_block_inline_right .o_portrait_name,.o_block_inline_right .o_portrait_image,.o_block_inline_left .o_portait,.o_block_inline_left .o_portrait_name,.o_block_inline_left .o_portrait_image,.o_block_inline_both .o_portait,.o_block_inline_both .o_portrait_name,.o_block_inline_both .o_portrait_image{display:inline-block}.o_portrait_avatar,.o_portrait_dummy,.o_portrait_dummy_female_big,.o_portrait_dummy_male_big,.o_portrait_anonymous{width:100px;height:100px}.o_portrait_dummy{background-image:url("../light/images/portrait/dummy.png") !important}.o_portrait_dummy_female_big{background-image:url("../light/images/portrait/dummy_female_big.png") !important}.o_portrait_dummy_male_big{background-image:url("../light/images/portrait/dummy_male_big.png") !important}.o_portrait_anonymous{background-image:url("../light/images/portrait/anonymous.png") !important}.o_portrait_avatar_small,.o_portrait_dummy_small,.o_portrait_dummy_female_small,.o_portrait_dummy_male_small,.o_portrait_anonymous_small{width:30px;height:30px}.o_portrait_dummy_small{background-image:url("../light/images/portrait/dummy_small.png") !important}.o_portrait_dummy_female_small{background-image:url("../light/images/portrait/dummy_female_small.png") !important}.o_portrait_dummy_male_small{background-image:url("../light/images/portrait/dummy_male_small.png") !important}.o_portrait_anonymous_small{background-image:url("../light/images/portrait/anonymous_small.png") !important}.o_datecomp{position:relative;width:40px;height:52px;border:1px solid #555;margin-right:12px;text-align:center;vertical-align:middle}.o_datecomp div.o_year{position:absolute;left:0;width:100%;top:-20px;height:20px;line-height:20px;font-size:10px}.o_datecomp div.o_month{height:20px;line-height:20px;font-size:12px;background-color:#209d9e;color:#fff}.o_datecomp div.o_day{height:30px;line-height:30px;font-size:18px;border-top:1px solid #555;background-color:#fff;color:#2d2926}.o_block_with_datecomp .o_head{position:relative;padding-left:52px}.o_block_with_datecomp .o_datecomp{position:absolute;top:0.2em;left:0}.o_block_with_datecomp .o_title{margin-top:0}.o_block_with_datecomp .o_meta{color:#777}.o_block_with_datecomp .o_content{border-left:5px solid #eee;padding:0 20px}.o_block_with_datecomp .o_block_footer{padding-left:25px}ul.o_certificates li{padding:5px 0}ul.o_certificates li a.o_sel_certificate_delete{padding-left:2em}.o_cal_toptoolbar{margin-bottom:6px}.o_cal_toptoolbar .o_cal_toptoolbar_help{float:left;margin-right:12px}.o_cal_toptoolbar .o_noti{margin-top:0}.o_feed .o_date,.o_feed .o_author{color:#777}.o_feed .o_subscription a{margin-right:1.5em}.o_feed .o_subscription .form-group{margin-bottom:5px}.o_feed .o_subscription .form-control{border:0;background:none;padding:0;height:auto;-webkit-box-shadow:none;box-shadow:none}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper{float:left}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_title,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_explanation,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_legend{display:none}.o_feed .o_blog_posts .o_ratings_and_comments a.o_comments span{display:none}.o_feed .o_content:before,.o_feed .o_content:after{content:" ";display:table}.o_feed .o_content:after{clear:both}.o_feed .o_enclosure{clear:both}.o_glossary .o_register{text-align:center}.o_glossary .o_meta{font-size:90%;color:#777;font-style:italic}.o_glossary dl dt:first-letter{font-size:21px}.o_glossary dl dt small{color:#777}.o_tm_glossary{border-bottom:1px dotted #666699 !important}.o_tm_yellow{background-color:#FFFF66}.o_tm_blue{background-color:#33FFFF}.o_tm_red{background-color:#FF3333}.o_tm_green{background-color:#99FF00}.o_coaching div#o_main_toolbar.o_toolbar{margin-top:0px}.o_eff_statement_details .o_user_infos{margin-top:20px}div.o_assessment_user_type_filter{display:inline-block;padding:0.5em;border:1px solid #eee;border-radius:4px}div.o_assessment_user_type_filter div.form-inline,div.o_assessment_user_type_filter div.o_navbar-form{margin-left:5px;display:inline-block}div.panel.o_assessment_modes .o_table_body{margin-top:0}div.panel.o_assessment_modes .o_table_wrapper{margin-bottom:5px}div.o_assessment_mode_row{padding:0 15px}div.o_assessment_mode_row.o_assessment_today{padding:0 20px 0 12px;border-left:3px solid #3c763d;background-color:#dff0d8}div.o_assessment_mode_row.o_assessment_end_soon.o_assessment_today{padding:0 20px 0 12px;border-left:3px solid #a94442;background-color:#f2dede}.vitero_iframe{width:100%;height:100%;border:none;min-height:60em}.o_reminder_rule{padding:5px 0}.o_segments.btn-group a span{overflow:hidden;display:block;text-overflow:ellipsis}.o_segments_content{margin-top:20px}.o_segments.o_segments_linked .btn,.o_segments.o_segments_linked .btn:hover,.o_segments.o_segments_linked .btn:active,.o_segments.o_segments_linked .btn:focus{border:none;border-radius:0;box-shadow:none;background:none}.o_segments.o_segments_linked .btn-primary{color:#000;font-size:24px;background:none}.o_segments.o_segments_linked .btn-default,.o_segments.o_segments_linked .btn-default:hover,.o_segments.o_segments_linked .btn-default:active,.o_segments.o_segments_linked .btn-default:focus{color:#209d9e;background:none}.o_segments.o_segments_linked .o_segment_separator{color:#000}.o_tabbed_pane .o_tabbed_pane_content{padding:20px 0 6px 0}.o_togglebox_wrapper .o_opener{position:relative;left:-0.5em}.o_togglebox_wrapper div.o_togglebox_content{position:relative;margin:0}.o_togglebox_wrapper div.o_togglebox_content .o_hide{position:absolute;bottom:0.5em;right:1em}.o_toolboxes ul{margin:0 0 1.5em 0;padding:0 0 0 1.5em}.o_qrcode{width:256px;height:256px}#o_ajax_busy{position:absolute;left:50%;top:20em;margin-left:-2.5em;height:5em;width:5em;color:#fff;z-index:1201;display:none}#o_body.o_ajax_busy{cursor:busy}.o_exception .o_visual{position:relative;background-image:url("../light/images/lion-500x333.jpg");filter:grayscale(50%);-webkit-filter:grayscale(50%);-moz-filter:grayscale(50%);-ms-filter:grayscale(50%);-o-filter:grayscale(50%);width:500px;height:333px;background-repeat:no-repeat;background-position:50% 50%;background-size:contain;margin:0 0 10px 16px}@media (min-width: 768px) and (max-width: 991px){.o_exception .o_visual{width:375px;height:249px}}@media (min-width: 500px) and (max-width: 767px){.o_exception .o_visual{width:250px;height:166px}}@media (max-width: 500px){.o_exception .o_visual{background-size:cover}}.o_exception .jumbotron h1,.o_exception .o_repo_details .o_lead h1,.o_repo_details .o_exception .o_lead h1{color:#d6001c}ul.o_assessment_docs{margin-bottom:0}ul.o_assessment_docs>li{margin-bottom:0.33em}ul.o_assessment_docs>li:last-child{margin-bottom:0em}.o_mail_message .o_mail_meta{background:#fafafa;border:1px solid #eee;padding:5px 10px}.o_mail_message .o_mail_meta h3{margin-top:0}.o_mail_message .o_mail_date,.o_mail_message .o_mail_from,.o_mail_message .o_mail_recipients{color:#777;font-size:90%}.o_mail_message .o_mail_date .o_label,.o_mail_message .o_mail_from .o_label,.o_mail_message .o_mail_recipients .o_label{font-weight:bold;margin-right:1em}.o_mail_message .o_mail_date .o_group span,.o_mail_message .o_mail_from .o_group span,.o_mail_message .o_mail_recipients .o_group span{font-weight:bold}.o_mail_message .o_mail_date .o_group span:after,.o_mail_message .o_mail_from .o_group span:after,.o_mail_message .o_mail_recipients .o_group span:after{content:':';margin-right:0.5em}.o_mail_message .o_mail_date i,.o_mail_message .o_mail_from i,.o_mail_message .o_mail_recipients i{margin-left:1em}.o_mail_message .o_mail_date ul.list-inline,.o_mail_message .o_mail_from ul.list-inline,.o_mail_message .o_mail_recipients ul.list-inline{display:inline}.o_mail_message .o_mail_date ul.list-inline li,.o_mail_message .o_mail_from ul.list-inline li,.o_mail_message .o_mail_recipients ul.list-inline li{padding-right:0;padding-left:0}.o_mail_message .o_more{margin-left:1em}.o_mail_message .o_showAllLink{float:right;font-size:80%}.progress .o_progress_marker{position:absolute;height:100%;top:0;width:3px;background:red}.o_progress.o_progress_inline{display:inline-block;white-space:nowrap}.o_progress.o_progress_inline .progress{vertical-align:bottom}.o_progress .o_progress_label,.o_progress .o_progress_info{display:inline-block;vertical-align:top}.o_progress .o_progress_info{margin-left:0.5em}.o_progress .progress{position:relative;display:inline-block;text-shadow:1px 1px 2px #000000;font-size:12px;line-height:20px;color:#fff}.o_progress .progress .o_progress_label_wrapper{position:absolute;top:0;left:0;padding-left:0.4em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.o_progress .progress:not(.o_progress-sm)+.o_progress_label_wrapper{margin-left:0.5em}.o_progress .o_progress-lg{height:40px}.o_progress .o_progress-lg .o_progress_label_wrapper{padding-left:1em;line-height:40px}.o_progress .o_progress-sm{vertical-align:bottom;height:5px}.o_progress .o_progress-sm+span{position:absolute;top:0;left:15px;font-size:80%}.o_web_content{padding-bottom:15px}.o_labeled_light,a.o_labeled_light,.o_labeled,a.o_labeled{display:inline-block;text-transform:uppercase;text-align:center;text-decoration:none;vertical-align:middle;font-size:75%;line-height:1;white-space:nowrap;border:1px solid;border-radius:3px;padding:2px 5px;background-color:#777;color:#fff;position:relative}.o_labeled_light,a.o_labeled_light{font-weight:bold;background-color:#f8f8f8}.o_ms_button{max-width:100%;width:100%;display:flex}.o_ms_button span:not(.o_ms_carret){text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.o_ms_button .o_ms_carret{margin:auto 0 auto auto}.o_ms_list{width:100%;height:auto;max-height:300px;overflow-x:hidden;top:unset}.o_disclaimer .o_disclaimer_content{max-height:50vh;overflow:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;background:#fbfbfb;padding:10px;border:1px solid #c2c2c2}.o_files_size_okay{color:#61E868}.o_files_size_warning{color:#FFB100}.o_files_size_large{color:#E82A0C}.tt-input{width:400px}.tt-menu{width:400px;margin-top:6px;padding:0 0 0;color:#555;background-color:#fcfcfc;border:1px solid #66afe9;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;-webkit-box-shadow:0 0 8px rgba(102,175,233,0.6);box-shadow:0 0 8px rgba(102,175,233,0.6)}.tt-suggestion{padding:6px 12px;font-size:14px;line-height:1.428571429}.tt-suggestion.tt-cursor,.tt-suggestion:hover{color:#fff;background-color:#209d9e}.tt-suggestion p{margin:0}.tt-menu div.o_icon_error:before{content:''}.o_search_link_extended,.o_search_link_simple{margin-top:12px;display:inline-block}.o_search_results_stats{color:#777;padding-left:1.5em}.o_search_highlight{margin-left:12px;font-size:12px}.o_search_result_title h4,.o_search_result_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_search_result_title h2{display:inline-block;margin-right:12px;margin-bottom:6px}.o_search_result_title h4 .o_icon-fw,.o_search_result_title .o_cal .fc-header-title h2 .o_icon-fw,.o_cal .fc-header-title .o_search_result_title h2 .o_icon-fw{text-align:left}.o_search_result_highlight{font-weight:bold;background-color:transparent}.o_search_result_context{display:inline-block;color:#3c763d;margin-right:1em}.o_search_result_license{display:inline-block;color:#777}.o_search_result_excerpt{color:#555}.o_search_result .o_opener{font-size:12px}.o_search_result .o_opener i{width:1em}.o_search_result_details .o_togglebox_wrapper.o_block{margin-top:0;margin-bottom:0}.o_search_result_details .o_togglebox_wrapper .o_togglebox_content{color:#777;font-size:12px;background:#fff;padding:6px 12px}.o_search_result_details .o_togglebox_wrapper .o_search_result_license i{font-size:20px}@media (max-width: 767px){.o_search_result_details{display:none}}.wizard{border:1px solid #d4d4d4;border-radius:2px;background-color:#f9f9f9;position:relative;overflow:hidden;margin-bottom:15px}.wizard ul{list-style:none outside none;padding:0;margin:0;width:4000px}.wizard ul li{float:left;margin:0;padding:0 20px 0 30px;height:46px;line-height:46px;position:relative;background:#ededed;color:#2d2926;font-size:16px;cursor:default}.wizard ul li .chevron{border:24px solid transparent;border-left:14px solid #d4d4d4;border-right:0;display:block;position:absolute;right:-14px;top:0;z-index:1}.wizard ul li .chevron:before{border:24px solid transparent;border-left:14px solid #ededed;border-right:0;content:"";display:block;position:absolute;right:1px;top:-24px}.wizard ul li.active{background:#f1f6fc;color:#2d2926}.wizard ul li.active .chevron:before{border-left:14px solid #f1f6fc}.wizard ul li .badge{margin-right:8px}.wizard ul li:first-child{border-radius:4px 0 0 4px;padding-left:20px}.o_process{position:relative;padding-left:25px}.o_process .o_step{position:relative;height:auto;padding-top:10px;padding-left:30px;padding-bottom:10px}.o_process .o_bar{position:absolute;top:10px;left:8px;height:100%;border-left:4px solid #777}.o_process .o_bar:after{position:absolute;top:0;left:-10px;height:16px;width:16px;border:4px solid #777;border-radius:16px;background:#fff;content:" "}.o_process .o_title{margin-top:-1px;color:#777 !important}.o_process .o_title:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;left:-24px}.o_process .o_title a:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";width:1em}.o_process .o_title a.collapsed:before{content:""}.o_process .o_step.o_active .o_bar,.o_process .o_step.o_active .o_bar:after{border-color:#209d9e}.o_process .o_step.o_active .o_title{color:#209d9e !important}.o_process .o_step.o_active .o_title:before{content:"";color:#209d9e}.o_process .o_step.o_done .o_bar,.o_process .o_step.o_done .o_bar:after{border-color:#29c7c8}.o_process .o_step.o_done .o_title{color:#29c7c8 !important}.o_process .o_step.o_done .o_title:before{content:"";color:#78be20}.o_process .o_meta{color:#777;font-size:12px;margin-top:-0.5em}.o_cal_orange{background:#ffc266;border-color:#ff9900;color:#5D5D5D}.o_cal_orange .o_cal_wv_event_header{background:#ff9900}.o_cal_orange a{color:#5D5D5D !important}.o_cal_class.o_cal_orange{border-left:20px solid #ffc266}.o_cal_green{background:#66c266;border-color:#009900;color:#FFF}.o_cal_green .o_cal_wv_event_header{background:#009900}.o_cal_green a{color:#FFF !important}.o_cal_class.o_cal_green{border-left:20px solid #66c266}.o_cal_blue{background:#4d6e9f;border-color:#2e5894;color:#FFF}.o_cal_blue .o_cal_wv_event_header{background:#2e5894}.o_cal_blue a{color:#FFF !important}.o_cal_class.o_cal_blue{border-left:20px solid #4d6e9f}.o_cal_yellow{background:#ffe066;border-color:#ffcc00;color:#5D5D5D}.o_cal_yellow .o_cal_wv_event_header{background:#ffcc00}.o_cal_yellow a{color:#5D5D5D !important}.o_cal_class.o_cal_yellow{border-left:20px solid #ffe066}.o_cal_red{background:#c26666;border-color:#990000;color:#FFF}.o_cal_red .o_cal_wv_event_header{background:#990000}.o_cal_red a{color:#FFF !important}.o_cal_class.o_cal_red{border-left:20px solid #c26666}.o_cal_rebeccapurple{background:#663399;border-color:#663399;color:#FFF}.o_cal_rebeccapurple .o_cal_wv_event_header{background:#663399}.o_cal_rebeccapurple a{color:#FFF !important}.o_cal_class.o_cal_rebeccapurple{border-left:20px solid #639}.o_cal_fuchsia{background:#FF00FF;border-color:#dd00dd;color:#FFF}.o_cal_fuchsia .o_cal_wv_event_header{background:#FF00FF}.o_cal_fuchsia a{color:#FFF !important}.o_cal_class.o_cal_fuchsia{border-left:20px solid #f0f}.o_cal_olive{background:#808000;border-color:#636300;color:#FFF}.o_cal_olive .o_cal_wv_event_header{background:#808000}.o_cal_olive a{color:#FFF !important}.o_cal_class.o_cal_olive{border-left:20px solid olive}.o_cal_navy{background:#000080;border-color:#000057;color:#FFF}.o_cal_navy .o_cal_wv_event_header{background:#000080}.o_cal_navy a{color:#FFF !important}.o_cal_class.o_cal_navy{border-left:20px solid navy}.o_cal_maroon{background:#800000;border-color:#740000;color:#FFF}.o_cal_maroon .o_cal_wv_event_header{background:#800000}.o_cal_maroon a{color:#FFF !important}.o_cal_class.o_cal_maroon{border-left:20px solid maroon}.o_cal_lime{background:#00FF00;border-color:#00e200;color:#004d00}.o_cal_lime .o_cal_wv_event_header{background:#00FF00}.o_cal_lime a{color:#004d00 !important}.o_cal_class.o_cal_lime{border-left:20px solid lime}.o_cal_grey{background:#DDDAAA;border-color:#5D5D5D;color:#FFF}.o_cal_grey .o_cal_wv_event_header{background:#5D5D5D}.o_cal_grey a{color:#FFF !important}.o_cal_class.o_cal_grey{border-left:20px solid #DDDAAA}.o_sel_calendar_print_chooser{padding-right:4em}.o_cal_config_enabled,.o_cal_config_disabled{position:relative;float:left;display:inline}.o_cal_config_calendar{margin:0 5px;padding:1px 6px 1px 4px;position:relative;width:200px;overflow:hidden;float:left;display:inline}.o_cal_config_color{display:block;width:16px;height:16px;border-radius:8px}.o_cal_colorchooser_selected:before{content:""}#o_cal_colorchooser div{border:1px solid #209d9e;margin:5px;display:inline-block}#o_cal_colorchooser div:hover{border:1px solid #333}#o_cal_colorchooser a{width:20px;height:20px;display:inline-block}.o_cal_embedded_course_container .o_content_popup{top:0}.o_cal_wv_event_tooltip_content .o_cal_description{background-color:#f8f8f8;padding:10px 7px;margin:10px -7px}.o_cal_wv_event_tooltip_content .o_cal_tooltip_buttons{text-align:center;margin-top:20px}.o_cal_event_managed .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_not_managed .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_managed.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:" "}.o_cal_event_not_managed.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:" "}.fc-button{color:#333;background-color:#fcfcfc;border-color:#ccc}.fc-button:hover,.fc-button:focus,.fc-button.focus,.fc-button:active,.fc-button.active,.open>.fc-button.dropdown-toggle{color:#333;background-color:#e3e3e3;border-color:#adadad}.fc-button:active,.fc-button.active,.open>.fc-button.dropdown-toggle{background-image:none}.fc-button.disabled,.fc-button.disabled:hover,.fc-button.disabled:focus,.fc-button.disabled.focus,.fc-button.disabled:active,.fc-button.disabled.active,.fc-button[disabled],.fc-button[disabled]:hover,.fc-button[disabled]:focus,.fc-button[disabled].focus,.fc-button[disabled]:active,.fc-button[disabled].active,fieldset[disabled] .fc-button,fieldset[disabled] .fc-button:hover,fieldset[disabled] .fc-button:focus,fieldset[disabled] .fc-button.focus,fieldset[disabled] .fc-button:active,fieldset[disabled] .fc-button.active{background-color:#fcfcfc;border-color:#ccc}.fc-button .badge{color:#fcfcfc;background-color:#333}.fc-button.fc-state-default{text-shadow:none}.fc-button.fc-state-active{color:#fff;background-color:#209d9e;border-color:#1c8889}.fc-button.fc-state-active:hover,.fc-button.fc-state-active:focus,.fc-button.fc-state-active.focus,.fc-button.fc-state-active:active,.fc-button.fc-state-active.active,.open>.fc-button.fc-state-active.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.fc-button.fc-state-active:active,.fc-button.fc-state-active.active,.open>.fc-button.fc-state-active.dropdown-toggle{background-image:none}.fc-button.fc-state-active.disabled,.fc-button.fc-state-active.disabled:hover,.fc-button.fc-state-active.disabled:focus,.fc-button.fc-state-active.disabled.focus,.fc-button.fc-state-active.disabled:active,.fc-button.fc-state-active.disabled.active,.fc-button.fc-state-active[disabled],.fc-button.fc-state-active[disabled]:hover,.fc-button.fc-state-active[disabled]:focus,.fc-button.fc-state-active[disabled].focus,.fc-button.fc-state-active[disabled]:active,.fc-button.fc-state-active[disabled].active,fieldset[disabled] .fc-button.fc-state-active,fieldset[disabled] .fc-button.fc-state-active:hover,fieldset[disabled] .fc-button.fc-state-active:focus,fieldset[disabled] .fc-button.fc-state-active.focus,fieldset[disabled] .fc-button.fc-state-active:active,fieldset[disabled] .fc-button.fc-state-active.active{background-color:#209d9e;border-color:#1c8889}.fc-button.fc-state-active .badge{color:#209d9e;background-color:#fff}.fc-listYear-button:before,.fc-listMonth-button:before,.fc-listWeek-button:before,.fc-listDay-button:before{content:"";margin-right:5px;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:80%;webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}table.fc-list-table .fc-list-item{background-color:white;color:#5D5D5D !important}table.fc-list-table .fc-list-item a,table.fc-list-table .fc-list-item span{color:#5D5D5D !important}body.o_cal_print fieldset{border:none;margin-bottom:2em}body.o_cal_print legend{font-size:2em;font-weight:bold}body.o_cal_print legend span{display:block;font-size:14px;font-weight:normal}body.o_cal_print ul.o_cal_wv_list{list-style-type:none;padding:0}body.o_cal_print ul.o_cal_wv_list>li{page-break-inside:avoid;margin-bottom:2em}body.o_cal_print ul.o_cal_wv_list .o_cal_date{font-size:1.25em;font-weight:bold;padding:0.5em 0 0.5em 0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events{list-style-type:none;padding:0.5em 0 0 0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event{position:relative;left:30px;page-break-inside:avoid;clear:both;margin-bottom:1.5em;padding-right:30px}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_time{float:left;font-weight:bold;margin-right:1em}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_subject{font-weight:bold}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_subject p{margin:0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_location,body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_description,body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_freebusy{clear:both}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_freebusy{font-style:italic}body.o_cal_print .o_cal_class{position:absolute;left:-30px;width:20px}body.o_cal_print #o_cal_config legend{font-size:1.25em}body.o_cal_print #o_cal_config .o_cal_config_calendar{margin:0;padding:0}body.o_cal_print #o_cal_config .o_cal_config_calendar{position:relative;left:30px;float:none;padding-right:30px}.o_page_content_editor .o_toolbar{border:none}.o_page_content_editor .o_page_part,.gu-mirror{border:2px solid transparent}.o_page_content_editor .o_page_part:hover,.gu-mirror:hover{border:2px dotted #209d9e}.o_page_fragment_edit{position:relative;display:grid}.o_page_fragment_edit .o_page_tools_above{height:25px;width:100%;background:#209d9e;position:absolute;z-index:3;left:0;top:-25px;box-shadow:3px -8px 10px 0px rgba(0,0,0,0.2)}.o_page_fragment_edit .o_page_tools_above .o_page_add_above{position:absolute;left:0;right:0;margin-left:auto;margin-right:auto;width:26px;top:-19px;height:19px;background-color:#209d9e;border-radius:10px 10px 0 0}.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_icon,.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_progress_failed .inset:after,.o_progress_failed .o_page_fragment_edit .o_page_tools_above .o_page_add_above .inset:after,.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_progress_passed .inset:after,.o_progress_passed .o_page_fragment_edit .o_page_tools_above .o_page_add_above .inset:after{color:#fff;background-color:#209d9e}.o_page_fragment_edit .o_page_tools_above .o_sel_add_element_above{display:inline-block;padding:3px 5px 0 7px}.o_page_fragment_edit .o_page_tools_above .o_page_others_above{padding-right:25px;line-height:25px;vertical-align:middle}.o_page_fragment_edit .o_page_tools_above .o_page_others_above .o_page_type{display:none}.o_page_fragment_edit .o_page_tools_above .o_page_others_above a{float:right;color:#fff;padding-right:1em}.o_page_fragment_edit .o_page_tools_above .o_page_others_above a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_tools_dd{position:absolute;z-index:4;top:0;right:0;width:25px;height:100%;background:#209d9e}.o_page_fragment_edit .o_page_tools_dd:before{content:' ';width:25px;height:100%;position:absolute;left:0;top:0;border:3px #209d9e solid;border-bottom:28px #209d9e solid;background-image:-webkit-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:-moz-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:-ms-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);-webkit-background-size:3px 3px;-moz-background-size:3px 3px;background-size:3px 3px}.o_page_fragment_edit .o_page_tools_dd a{position:absolute;display:inline-block;width:25px;height:25px;line-height:25px;text-align:center;vertical-align:middle;background:#209d9e;color:#fff}.o_page_fragment_edit .o_page_tools_dd a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_tools_dd a.o_disabled{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_tools_dd a.o_disabled:hover{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_tools_dd a.o_sel_move_up_element{z-index:4;top:-25px}.o_page_fragment_edit .o_page_tools_dd a.o_sel_move_down_element{bottom:0}.o_page_fragment_edit .o_page_part.o_page_edit{padding-right:23px;border:2px solid #209d9e;box-shadow:5px 5px 10px 0px rgba(0,0,0,0.2)}.o_page_fragment_edit .o_page_part.o_page_edit:hover{border:2px solid #209d9e}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar{position:absolute;z-index:5;left:5px;top:-25px;display:inline-block;height:25px;line-height:25px;vertical-align:middle}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a{color:#fff}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a.o_disabled{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a.o_disabled:hover{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_title .o_page_edit_toolbar li{font-weight:bold}.o_page_fragment_edit .o_page_part.o_page_edit .o_richtext_mce textarea{border:0}.o_page_fragment_edit .o_page_add_below{position:absolute;z-index:3;position:absolute;z-index:3;left:0;right:0;margin-left:auto;margin-right:auto;width:26px;bottom:-20px;height:22px;background-color:#209d9e;border-radius:0 0 10px 10px}.o_page_fragment_edit .o_page_add_below .o_icon,.o_page_fragment_edit .o_page_add_below .o_progress_failed .inset:after,.o_progress_failed .o_page_fragment_edit .o_page_add_below .inset:after,.o_page_fragment_edit .o_page_add_below .o_progress_passed .inset:after,.o_progress_passed .o_page_fragment_edit .o_page_add_below .inset:after{color:#fff;background-color:#209d9e}.o_page_fragment_edit .o_page_add_below .o_sel_add_element_below{display:inline-block;padding:0 5px 5px 5px;margin:0px 0px 0px 2px}.o_page_fragment_edit.gu-mirror .o_page_add_below,.o_page_fragment_edit.gu-mirror .o_page_add_above,.o_page_fragment_edit.gu-transit .o_page_add_below,.o_page_fragment_edit.gu-transit .o_page_add_above{display:none}.o_page_container_slot.col-md-3 .o_page_others_above a span,.o_page_container_slot.col-md-4 .o_page_others_above a span{display:none}.o_page_container_slot.col-md-3 .o_page_edit_toolbar ul>li,.o_page_container_slot.col-md-4 .o_page_edit_toolbar ul>li{padding-right:0}div.o_page_content_editor .gu-mirror,.o_page_content_editor .gu-transit{box-shadow:none}.o_page_container{box-sizing:border-box;padding:10px}.o_page_container{background-color:transparent}.o_page_container .o_page_container{background-color:transparent}.o_page_container .o_page_container .o_page_container{background-color:transparent}.o_page_container_slot{box-sizing:border-box;margin:0 -1px -1px 0;padding:10px}.o_page_container .o_page_container_slot{border:2px dotted #eee}.o_page_container:hover .o_page_container_slot{border:2px dotted #ef00ef}.o_page_add_in_container_grp{margin-bottom:0}.gu-transit{border:2px dotted #e80c96;opacity:0.4;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";filter:alpha(opacity=40)}.gu-mirror{border:2px dotted #209d9e;opacity:0.8;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";filter:alpha(opacity=80)}.o_page_add_callout a span{display:none}.o_page_add_callout ul.list-inline{margin-bottom:0}.o_page_table_edition .o_table_title,.o_page_table_edition .o_table_caption{padding:5px}.o_page_with_side_options_wrapper{display:flex;align-items:stretch;flex-direction:row}.o_page_side_options_target{background-color:#f9f9f9;flex-grow:4}.o_page_side_options{flex-grow:0;background-color:#209d9e;border-left:1px solid #b9b9b9;border-bottom:1px solid #b9b9b9;padding:5px;z-index:2}@media (max-width: 767px){.o_page_with_side_options_wrapper{flex-direction:column-reverse}}.o_page_content .o_image,.o_page_content .o_video,.o_page_content_editor .o_image,.o_page_content_editor .o_video{width:100%}.o_page_content .o_image img,.o_page_content .o_video img,.o_page_content_editor .o_image img,.o_page_content_editor .o_video img{border:1px #f8f8f8 solid;border-radius:10px}.o_page_content .o_image .o_artefact_metadata,.o_page_content .o_video .o_artefact_metadata,.o_page_content_editor .o_image .o_artefact_metadata,.o_page_content_editor .o_video .o_artefact_metadata{text-align:left}.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left{float:left}.o_page_content .o_image.o_image_align_left+.o_image_clear,.o_page_content .o_video.o_image_align_left+.o_image_clear,.o_page_content_editor .o_image.o_image_align_left+.o_image_clear,.o_page_content_editor .o_video.o_image_align_left+.o_image_clear{clear:both}.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right{float:right}.o_page_content .o_image.o_image_align_right+.o_image_clear,.o_page_content .o_video.o_image_align_right+.o_image_clear,.o_page_content_editor .o_image.o_image_align_right+.o_image_clear,.o_page_content_editor .o_video.o_image_align_right+.o_image_clear{clear:both}.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle{clear:both;margin-left:50%;text-align:center;transform:translate(-50%, 0%)}.o_page_content .o_image.o_image_align_leftfloat,.o_page_content .o_video.o_image_align_leftfloat,.o_page_content_editor .o_image.o_image_align_leftfloat,.o_page_content_editor .o_video.o_image_align_leftfloat{float:left;padding-right:10px;padding-bottom:10px}.o_page_content .o_image.o_image_align_rightfloat,.o_page_content .o_video.o_image_align_rightfloat,.o_page_content_editor .o_image.o_image_align_rightfloat,.o_page_content_editor .o_video.o_image_align_rightfloat{float:right;padding-left:10px;padding-bottom:10px}.o_page_content .o_image.o_image_size_style_small,.o_page_content .o_video.o_image_size_style_small,.o_page_content_editor .o_image.o_image_size_style_small,.o_page_content_editor .o_video.o_image_size_style_small{width:25%}.o_page_content .o_image.o_image_size_style_small img,.o_page_content .o_video.o_image_size_style_small img,.o_page_content_editor .o_image.o_image_size_style_small img,.o_page_content_editor .o_video.o_image_size_style_small img{width:100%}.o_page_content .o_image.o_image_size_style_medium,.o_page_content .o_video.o_image_size_style_medium,.o_page_content_editor .o_image.o_image_size_style_medium,.o_page_content_editor .o_video.o_image_size_style_medium{width:40%}.o_page_content .o_image.o_image_size_style_medium img,.o_page_content .o_video.o_image_size_style_medium img,.o_page_content_editor .o_image.o_image_size_style_medium img,.o_page_content_editor .o_video.o_image_size_style_medium img{width:100%}.o_page_content .o_image.o_image_size_style_large,.o_page_content .o_video.o_image_size_style_large,.o_page_content_editor .o_image.o_image_size_style_large,.o_page_content_editor .o_video.o_image_size_style_large{width:60%}.o_page_content .o_image.o_image_size_style_large img,.o_page_content .o_video.o_image_size_style_large img,.o_page_content_editor .o_image.o_image_size_style_large img,.o_page_content_editor .o_video.o_image_size_style_large img{width:100%}.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill{width:100%;float:none !important;display:block}.o_page_content .o_image.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content .o_video.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content_editor .o_image.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content_editor .o_video.o_image_size_style_fill .o_figure_caption_bottom{display:block}.o_page_content .o_image.o_image_size_style_fill img,.o_page_content .o_video.o_image_size_style_fill img,.o_page_content_editor .o_image.o_image_size_style_fill img,.o_page_content_editor .o_video.o_image_size_style_fill img{width:100%;display:block}.o_page_content .o_image img.o_image_classic,.o_page_content .o_video img.o_image_classic,.o_page_content_editor .o_image img.o_image_classic,.o_page_content_editor .o_video img.o_image_classic{padding:0;border:0;border-radius:0}.o_page_content .o_image img.o_image_border,.o_page_content .o_video img.o_image_border,.o_page_content_editor .o_image img.o_image_border,.o_page_content_editor .o_video img.o_image_border{padding:3px;border:solid 1px #CCC}.o_page_content .o_image img.o_image_shadow,.o_page_content .o_video img.o_image_shadow,.o_page_content_editor .o_image img.o_image_shadow,.o_page_content_editor .o_video img.o_image_shadow{padding:0;border:0;-moz-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);-webkit-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19)}.o_page_content .o_image img.o_image_frame,.o_page_content .o_video img.o_image_frame,.o_page_content_editor .o_image img.o_image_frame,.o_page_content_editor .o_video img.o_image_frame{padding:0;border:0;border-radius:0;-moz-box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);-webkit-box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);margin:15px}.o_page_content .o_image img.o_image_polaroid,.o_page_content .o_video img.o_image_polaroid,.o_page_content_editor .o_image img.o_image_polaroid,.o_page_content_editor .o_video img.o_image_polaroid{padding:0;border-radius:0;border:1px solid #dcdcdc;background:#fff;padding:10px 10px 45px 10px;-webkit-box-shadow:3px 3px 3px rgba(0,0,0,0.2);-moz-box-shadow:3px 3px 3px rgba(0,0,0,0.2);box-shadow:3px 3px 3px rgba(0,0,0,0.2)}.o_page_content .o_image img.o_image_round,.o_page_content .o_video img.o_image_round,.o_page_content_editor .o_image img.o_image_round,.o_page_content_editor .o_video img.o_image_round{padding:3px;border:solid 1px #CCC;border-radius:50%}.o_page_content .o_image .o_image_title_dark,.o_page_content .o_video .o_image_title_dark,.o_page_content_editor .o_image .o_image_title_dark,.o_page_content_editor .o_video .o_image_title_dark{color:#000}.o_page_content .o_image .o_image_title_bright,.o_page_content .o_video .o_image_title_bright,.o_page_content_editor .o_image .o_image_title_bright,.o_page_content_editor .o_video .o_image_title_bright{color:#f9f9f9}.o_page_content .o_image .o_image_title,.o_page_content .o_video .o_image_title,.o_page_content_editor .o_image .o_image_title,.o_page_content_editor .o_video .o_image_title{position:relative}.o_page_content .o_image .o_image_title .o_image_title_top,.o_page_content .o_image .o_image_title .o_image_title_centered,.o_page_content .o_image .o_image_title .o_image_title_bottom,.o_page_content .o_video .o_image_title .o_image_title_top,.o_page_content .o_video .o_image_title .o_image_title_centered,.o_page_content .o_video .o_image_title .o_image_title_bottom,.o_page_content_editor .o_image .o_image_title .o_image_title_top,.o_page_content_editor .o_image .o_image_title .o_image_title_centered,.o_page_content_editor .o_image .o_image_title .o_image_title_bottom,.o_page_content_editor .o_video .o_image_title .o_image_title_top,.o_page_content_editor .o_video .o_image_title .o_image_title_centered,.o_page_content_editor .o_video .o_image_title .o_image_title_bottom{position:absolute;left:50%;margin-right:-50%;transform:translate(-50%, -50%)}.o_page_content .o_image .o_image_title .o_image_title_top,.o_page_content .o_video .o_image_title .o_image_title_top,.o_page_content_editor .o_image .o_image_title .o_image_title_top,.o_page_content_editor .o_video .o_image_title .o_image_title_top{top:10%}.o_page_content .o_image .o_image_title .o_image_title_centered,.o_page_content .o_video .o_image_title .o_image_title_centered,.o_page_content_editor .o_image .o_image_title .o_image_title_centered,.o_page_content_editor .o_video .o_image_title .o_image_title_centered{top:50%}.o_page_content .o_image .o_image_title .o_image_title_bottom,.o_page_content .o_video .o_image_title .o_image_title_bottom,.o_page_content_editor .o_image .o_image_title .o_image_title_bottom,.o_page_content_editor .o_video .o_image_title .o_image_title_bottom{bottom:10%}.o_page_content .o_image.o_image_size_style_none .o_image_title_top,.o_page_content .o_image.o_image_size_style_none .o_image_title_centered,.o_page_content .o_image.o_image_size_style_none .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_none .o_image_title_top,.o_page_content .o_video.o_image_size_style_none .o_image_title_centered,.o_page_content .o_video.o_image_size_style_none .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_bottom{font-size:24px}.o_page_content .o_image.o_image_size_style_small .o_image_title_top,.o_page_content .o_image.o_image_size_style_small .o_image_title_centered,.o_page_content .o_image.o_image_size_style_small .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_small .o_image_title_top,.o_page_content .o_video.o_image_size_style_small .o_image_title_centered,.o_page_content .o_video.o_image_size_style_small .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_bottom{font-size:18px}.o_page_content .o_image.o_image_size_style_medium .o_image_title_top,.o_page_content .o_image.o_image_size_style_medium .o_image_title_centered,.o_page_content .o_image.o_image_size_style_medium .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_medium .o_image_title_top,.o_page_content .o_video.o_image_size_style_medium .o_image_title_centered,.o_page_content .o_video.o_image_size_style_medium .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_bottom{font-size:32px}.o_page_content .o_image.o_image_size_style_large .o_image_title_top,.o_page_content .o_image.o_image_size_style_large .o_image_title_centered,.o_page_content .o_image.o_image_size_style_large .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_large .o_image_title_top,.o_page_content .o_video.o_image_size_style_large .o_image_title_centered,.o_page_content .o_video.o_image_size_style_large .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_bottom{font-size:40px}.o_page_content .o_image.o_image_size_style_fill .o_image_title_top,.o_page_content .o_image.o_image_size_style_fill .o_image_title_centered,.o_page_content .o_image.o_image_size_style_fill .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_fill .o_image_title_top,.o_page_content .o_video.o_image_size_style_fill .o_image_title_centered,.o_page_content .o_video.o_image_size_style_fill .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_bottom{font-size:56px}.o_page_add_contents{clear:both;margin-top:30px}.o_ce_html_raw.o_html_col2,.o_ce_html_paragraph.o_html_col2{column-count:2;column-gap:1em}.o_ce_html_raw.o_html_col3,.o_ce_html_paragraph.o_html_col3{column-count:3;column-gap:1em}.o_ce_html_raw.o_html_col4,.o_ce_html_paragraph.o_html_col4{column-count:4;column-gap:1em}table.o_ce_table caption{caption-side:bottom}.o_ce_add_main_btns{margin-top:2em}.o_ce_add{border:none;margin-bottom:0px}.o_ce_add .o_ce_tools{display:flex;flex-direction:row;flex-wrap:wrap;width:100%}.o_ce_add .o_ce_tools .o_ce_tool{padding:0px;margin:0px;width:33%}.o_ce_add .o_ce_tools .o_ce_tool a{padding:6px 3px;margin:0px;display:block;width:100%;height:100%}.o_ce_add .o_ce_tools .o_ce_tool a:hover{padding:5px 2px;border:1px solid #e7e7e7;border-radius:4px}.o_ce_add_list .o_ce_add_list_item{border-style:none;padding:0px;margin:0px -15px}.o_ce_add_list .o_ce_add_list_item a{padding:5px 25px;margin:0px;display:block;width:100%;height:100%}.o_ce_add_list .o_ce_add_list_item a:hover{text-decoration:none;background-color:#f5f5f5}.o_visual{position:absolute;top:0;left:0;overflow:hidden;height:120px;width:180px;vertical-align:middle}@media (min-width: 768px) and (max-width: 991px){.o_visual{height:80px;width:120px}}@media (max-width: 767px){.o_visual{height:50px;width:75px}}.o_visual img{width:100%;height:auto}.o_visual .o_visual_not_available{width:100%;height:100%;background-image:url("../light/images/no_preview.png");background-repeat:no-repeat;background-position:50% 50%;background-size:contain}.o_coursetable.o_rendertype_custom .o_table_row{position:relative;border:1px solid #ccc;border-radius:4px;background:#fcfcfc;margin-bottom:10px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual{box-sizing:content-box;border-top-left-radius:4px;border-bottom-left-radius:4px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual .o_visual_not_available{background-color:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_access{position:absolute;top:0;right:0;height:120px;width:180px;overflow:hidden;border-left:1px solid #ccc;padding-top:0.25em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_completion{text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{padding:0 1em;height:20px;line-height:20px;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{position:relative;left:2px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score .o_label{color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social{position:absolute;width:100%;bottom:32px;height:20px;padding-left:1em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_title,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating o_rating_legend,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_explanation{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings{padding:0 0 0 1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label{margin-bottom:0.8em;font-weight:bold}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{right:0;border-bottom-right-radius:4px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start{color:#fff;background-color:#209d9e;border-color:#1c8889}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#209d9e;border-color:#1c8889}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#209d9e;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{color:#fff;background-color:#209d9e;border-color:#1c8889}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active{background-color:#209d9e;border-color:#1c8889}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book .badge{color:#209d9e;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#a6a6a6;border-color:#999}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#8d8d8d;border-color:#7b7b7b}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#a6a6a6;border-color:#999}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#a6a6a6;background-color:#fff}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{height:80px;width:120px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_comments,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_label{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{width:60px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:60px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:120px;margin:0 180px 0 180px;position:relative;padding:1em 0.5em 0.25em 1em;background:#fcfcfc;border-left:1px solid #ccc;overflow:hidden}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{margin:0;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{display:block;color:#342c24}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover{color:#16130f}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author{margin-top:0.5em;line-height:normal;font-size:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d;background:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle{position:absolute;top:5px;right:40px;z-index:2px;background:#fcfcfc;padding:0 3px 3px 3px;border-radius:0px 0px 3px 3px;font-size:90%;line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active{color:#3c763d}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active:hover{color:#2b542c}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{margin-top:0.5em;background:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark{position:absolute;top:-1px;right:15px}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:80px;margin:0 120px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:50px;margin:0 0 0 75px;padding:0 0 0 1em}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{line-height:50px}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{border-right:37px solid transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_go_xs{position:absolute;top:0;right:0;padding:0 1em;height:50px;width:37px;line-height:50px;color:#fff;background-color:#209d9e;border-top-right-radius:4px;border-bottom-right-radius:4px}.o_coursetable.o_rendertype_classic .o_rating_explanation{display:none}.o_coursetable.o_rendertype_classic .o_start,.o_coursetable.o_rendertype_classic .o_book{white-space:nowrap}.o_coursetable.o_rendertype_classic .o_repoentry_type{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac ul{display:inline-block}.o_catalog .o_level{position:relative;margin-bottom:10px;padding:0;border-top:1px solid #ccc;border-bottom:1px solid #ccc}.o_catalog .o_level .o_visual{height:180px}.o_catalog .o_level .o_meta{position:relative;min-height:180px;height:180px;overflow:hidden;margin:0 0 0 180px;padding:1em 0.5em 0.5em 2em}.o_catalog .o_level .o_meta .o_title{margin:0}.o_catalog .o_level .o_meta .o_title a{display:block;color:#342c24}.o_catalog .o_level .o_meta .o_title a:hover{color:#16130f}.o_catalog .o_level .o_meta .o_desc{padding:1em 0 0.5em 0}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_level .o_visual{height:120px}.o_catalog .o_level .o_meta{min-height:120px;height:120px;margin:0 0 0 120px}}@media (max-width: 767px){.o_catalog .o_level .o_visual{height:75px}.o_catalog .o_level .o_meta{min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em}.o_catalog .o_level .o_meta .o_title{line-height:75px}.o_catalog .o_level .o_meta .o_desc{display:none}}.o_catalog .o_sublevels_list .o_sublevel{position:relative;border:1px solid #ccc;margin-bottom:10px}.o_catalog .o_sublevels_list .o_sublevel .o_visual{height:75px;width:75px}.o_catalog .o_sublevels_list .o_sublevel .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_catalog .o_sublevels_list .o_sublevel .o_title{margin:0}.o_catalog .o_sublevels_list .o_sublevel .o_meta{border-left:1px solid #ccc;min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em;overflow:hidden}.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_title{line-height:75px}.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_desc{display:none}.o_catalog .o_sublevels_list .o_sublevel .o_meta h4.o_title>a,.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_cal .fc-header-title h2.o_title>a,.o_cal .fc-header-title .o_catalog .o_sublevels_list .o_sublevel .o_meta h2.o_title>a{font-family:inherit;font-weight:inherit}.o_catalog .o_sublevels_list .o_sublevel .o_meta h4.o_title>a>i,.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_cal .fc-header-title h2.o_title>a>i,.o_cal .fc-header-title .o_catalog .o_sublevels_list .o_sublevel .o_meta h2.o_title>a>i{display:none}.o_catalog .o_sublevels_list .o_sublevel.o_fill_sublevels{border:1px solid transparent}.o_catalog .o_sublevels_list .o_sublevel.o_fill_sublevels .o_meta{border-left:1px solid transparent}.o_catalog .o_sublevels{position:relative;margin-bottom:20px}.o_catalog .o_sublevels:before,.o_catalog .o_sublevels:after{content:" ";display:table}.o_catalog .o_sublevels:after{clear:both}.o_catalog .o_sublevels .o_sublevel{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_catalog .o_sublevels .o_sublevel:last-child{margin-right:0}.o_catalog .o_sublevels .o_sublevel .o_visual{border:1px solid #ccc;position:relative;height:180px}.o_catalog .o_sublevels .o_sublevel .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_catalog .o_sublevels .o_sublevel .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #ccc;border-top:0;background-color:rgba(255,255,255,0.8)}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a{display:block;color:#342c24;font-family:inherit;font-weight:inherit}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover{color:#16130f}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a>i{display:none}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 10px 10px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (max-width: 767px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 1px 1px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px;width:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (min-width: 768px){.o_catalog .o_sublevels_list,.o_catalog .o_sublevels_compact{-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2;columns:2}}.o_repo_details{position:relative}.o_repo_details .o_lead{margin-bottom:10px}.o_repo_details .o_lead .o_author{margin-top:0.5em;margin-bottom:1em;font-size:120%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d}.o_repo_details .o_lead .o_media{float:right;margin-left:2em;margin-bottom:2em}.o_repo_details .o_lead .o_media.o_desc_empty{float:none;margin-left:0;margin-bottom:0}.o_repo_details .o_lead h1{font-size:37px}.o_repo_details .o_lead h1 i{display:none}.o_repo_details .o_overview i{margin-right:0.5em}.o_repo_details .o_overview div{margin-bottom:0.25em}.o_repo_details .o_start_wrapper{clear:both;margin:2em 0 -10px 0;text-align:right}.o_repo_details .o_start_wrapper .o_start_inner{display:inline-block}.o_repo_details .o_start,.o_repo_details .o_book{max-width:400px;display:inline-block}.o_repo_details .o_social:before,.o_repo_details .o_social:after{content:" ";display:table}.o_repo_details .o_social:after{clear:both}.o_repo_details .o_social .o_rating_wrapper{float:left}.o_repo_details .o_social .o_comments{margin-left:1em}@media (max-width: 767px){.o_repo_details .o_lead p{font-size:16px}.o_repo_details .o_lead .o_media{margin-left:0;float:none;text-align:center}.o_repo_details .o_start_wrapper{text-align:center}.o_repo_details .o_start_wrapper .o_start_inner{display:block}.o_repo_details .o_start,.o_repo_details .o_book{max-width:100%;display:block}}@media (max-width: 613px){.o_repo_details .o_subcolumn{width:100%}}.o_meta .o_closed{padding:2px 5px;margin:5px 0}.o_overview .o_closed{padding:12px 15px;margin:15px 0}.o_ac_configuration span.o_ac_infos{font-weight:normal;color:grey}.o_ac_configuration div.o_ac_method{background-color:#efefef;padding:5px;border-radius:3px}.o_ac_configuration div.o_ac_methods.form-group{padding-bottom:0;margin-bottom:0}.o_repo_with_explanation{padding-bottom:0;margin-bottom:0}.o_repo_explanation{color:#f2af40}tr.o_entry_closed,tr.o_entry_closed td,tr.o_entry_closed td span,tr.o_entry_unpublished,tr.o_entry_unpublished td,tr.o_entry_unpublished td span{text-decoration:line-through}a.o_repo_tools_status{cursor:pointer;margin:0 2px 2px 2px;text-align:left}.o_labeled.o_repo_status_preparation,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_preparation{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_labeled.o_repo_status_review,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_review{background-color:#FCCA46;border-color:#FCCA46;color:#fff}.o_labeled.o_repo_status_coachpublished,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_coachpublished{background-color:#1DC63F;border-color:#1DC63F;color:#fff}.o_labeled.o_repo_status_published,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_published{background-color:#14892c;border-color:#14892c;color:#fff}.o_labeled.o_repo_status_closed,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_closed{background-color:#99583D;border-color:#99583D;color:#fff}.o_labeled.o_repo_status_trash,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_trash{background-color:#5A5958;border-color:#5A5958;color:#fff}.o_labeled.o_repo_status_deleted,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_deleted{background-color:#888;border-color:#888;color:#fff}.o_labeled.o_repo_role,.o_toolbar .o_tools_container a.o_labeled.o_repo_role{background-color:#777;border-color:#777;color:#fff}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_preparation{background-color:#384e64}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_review{background-color:#fbbc14}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_coachpublished{background-color:#169a31}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_published{background-color:#0e5c1e}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_closed{background-color:#75432e}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_trash{background-color:#40403f}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_deleted{background-color:#6f6f6f}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_role{background-color:#919191;border-color:#919191}.o_labeled_light.o_repo_status_preparation,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_preparation{border-color:#4a6785;color:#4a6785}.o_labeled_light.o_repo_status_review,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_review{border-color:#FCCA46;color:#FCCA46}.o_labeled_light.o_repo_status_coachpublished,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_coachpublished{border-color:#1DC63F;color:#1DC63F}.o_labeled_light.o_repo_status_published,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_published{border-color:#14892c;color:#14892c}.o_labeled_light.o_repo_status_closed,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_closed{border-color:#99583D;color:#99583D}.o_labeled_light.o_repo_status_trash,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_trash{border-color:#5A5958;color:#5A5958}.o_labeled_light.o_repo_status_deleted,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_deleted{border-color:#888;color:#888}.badge.o_midpub{background-color:#3c763d}.badge.o_midwarn{background-color:#8a6d3b}.badge.o_midlock{background-color:#31708f}.badge.o_miderr{background-color:#a94442}.badge.o_middel{background-color:#777}.o_course_editor_legend .badge{font-size:80%}.o_course_editor_legend .badge:before{content:none}.o_course_edit_overview_table tr.o_deleted,.o_course_edit_overview_table tr.o_deleted td,.o_course_edit_overview_table tr.o_deleted td span,.o_course_edit_overview_table tr.o_deleted td a{color:#aaa}.o_lp_tree.o_tree{border:1px solid #e7e7e7}.o_lp_tree.o_tree ul li div{border-bottom:none}.o_lp_tree.o_tree .o_tree_link:last-child:hover,.o_lp_tree.o_tree .o_tree_link:last-child:focus{background-color:transparent}.o_lp_tree.o_tree li div a.o_tree_oc_l0{left:8px}.o_lp_tree.o_tree li div span.o_tree_l0{padding:10px 2px 10px 2px;margin-left:22px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l1{left:23px}.o_lp_tree.o_tree li div span.o_tree_l1{padding:10px 2px 10px 2px;margin-left:37px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l2{left:38px}.o_lp_tree.o_tree li div span.o_tree_l2{padding:10px 2px 10px 2px;margin-left:52px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l3{left:53px}.o_lp_tree.o_tree li div span.o_tree_l3{padding:10px 2px 10px 2px;margin-left:67px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l4{left:68px}.o_lp_tree.o_tree li div span.o_tree_l4{padding:10px 2px 10px 2px;margin-left:82px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l5{left:83px}.o_lp_tree.o_tree li div span.o_tree_l5{padding:10px 2px 10px 2px;margin-left:97px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l6{left:98px}.o_lp_tree.o_tree li div span.o_tree_l6{padding:10px 2px 10px 2px;margin-left:112px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l7{left:113px}.o_lp_tree.o_tree li div span.o_tree_l7{padding:10px 2px 10px 2px;margin-left:127px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l8{left:128px}.o_lp_tree.o_tree li div span.o_tree_l8{padding:10px 2px 10px 2px;margin-left:142px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l9{left:143px}.o_lp_tree.o_tree li div span.o_tree_l9{padding:10px 2px 10px 2px;margin-left:157px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l10{left:158px}.o_lp_tree.o_tree li div span.o_tree_l10{padding:10px 2px 10px 2px;margin-left:172px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l11{left:173px}.o_lp_tree.o_tree li div span.o_tree_l11{padding:10px 2px 10px 2px;margin-left:187px;z-index:9}.o_lp_tree.o_tree .o_tree_link>a>i.o_icon,.o_lp_tree.o_tree .o_progress_failed .o_tree_link>a>i.inset:after,.o_progress_failed .o_lp_tree.o_tree .o_tree_link>a>i.inset:after,.o_lp_tree.o_tree .o_progress_passed .o_tree_link>a>i.inset:after,.o_progress_passed .o_lp_tree.o_tree .o_tree_link>a>i.inset:after{display:none}.o_lp_tree.o_tree li.children_visible{background:rgba(0,0,0,0.025)}.o_lp_tree.o_tree li{position:relative}.o_lp_tree.o_tree li:before{content:' ';position:absolute;top:25px;left:8px;height:29px;width:2px}.o_lp_tree.o_tree li:after{position:absolute;top:13px;left:3px;height:12px;width:12px;display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_lp_tree.o_tree li:before{border-left:2px solid #888}.o_lp_tree.o_tree li:after{content:"ï„Œ";color:#888}.o_lp_tree.o_tree li.o_lp_not_accessible:before{border-left:2px dotted #919191}.o_lp_tree.o_tree li.o_lp_not_accessible:after{content:"ïž";color:#919191}.o_lp_tree.o_tree li.o_lp_ready:before{border-left:2px dotted #919191}.o_lp_tree.o_tree li.o_lp_ready:after{content:"ï„Œ";color:#FCCA46}.o_lp_tree.o_tree li.o_lp_in_progress:before{border-left:2px solid #FCCA46}.o_lp_tree.o_tree li.o_lp_in_progress:after{content:"ï€";color:#FCCA46}.o_lp_tree.o_tree li.o_lp_done:before{border-left:2px solid #3c763d}.o_lp_tree.o_tree li.o_lp_done:after{content:"ï˜";color:#3c763d}.o_lp_tree.o_tree li.o_last_node:before{border:none}.o_lp_tree.o_tree li.o_lp_not_in_sequence:not(:last-child):not(.o_last_node):before,.o_lp_tree.o_tree li.o_lp_contains_no_sequence.children_visible:not(.o_last_node):before,.o_lp_tree.o_tree li.o_lp_contains_no_sequence.children_visible:not(.o_last_node) li.o_lp_not_in_sequence:before{border-left:2px solid #888}.o_lp_list i.o_status.o_lp_not_accessible::before{color:#919191;content:"ïž"}.o_lp_list i.o_status.o_lp_ready::before{color:#919191;content:"ï„Œ"}.o_lp_list i.o_status.o_lp_in_progress::before{color:#FCCA46;content:"ï€"}.o_lp_list i.o_status.o_lp_done::before{color:#3c763d;content:"ï˜"}.o_lp_identity .o_user_infos{margin-top:20px}.o_course_progress{position:absolute;left:0;width:100%}.o_course_progress .progress{height:3px;line-height:3px;-webkit-box-shadow:none;box-shadow:none;border-top-left-radius:0;border-top-right-radius:0}.o_course_progress{top:-37px}@media (max-width: 991px){.o_course_progress{top:-37px}}@media (max-width: 767px){.o_course_progress{top:-37px}}.o_with_toolbar .o_course_progress{top:23px}@media (max-width: 991px){.o_with_toolbar .o_course_progress{top:17px}}@media (max-width: 767px){.o_with_toolbar .o_course_progress{top:5px}}.o_with_breadcrumb .o_course_progress{top:-2px}@media (max-width: 991px){.o_with_breadcrumb .o_course_progress{top:-2px}}@media (max-width: 767px){.o_with_breadcrumb .o_course_progress{top:-2px}}.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:49px}@media (max-width: 991px){.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:44px}}@media (max-width: 767px){.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:32px}}.gugs>.o_course_progress{top:10px}.o_passed{color:#3c763d;font-weight:bold}.o_passed a:hover{color:#2b542c}.o_passed th{color:#2d2926}.o_failed{color:#a94442;font-weight:bold}.o_failed a:hover{color:#66512c}.o_failed th{color:#2d2926}.o_unknown{color:#8a6d3b;font-weight:bold}.o_unknown a:hover{color:#66512c}.o_unknown th{color:#2d2926}.o_noinfo{color:#777}.o_course_run .o_toc .o_entry .o_shorttitle{border-bottom:1px solid #777}.o_course_run .o_toc .o_entry .o_displaytitle{margin-top:5px;color:#777}.o_course_run .o_toc .o_entry .o_objectives{margin-top:10px;font-style:italic}.o_course_run .o_in_review{font-style:italic;position:relative}.o_course_run.o_titled_wrapper>h2 i{display:none}.o_course_run .o_cal_toptoolbar{margin-right:26px}.o_course_run .o_titled_wrapper .o_cal_toptoolbar{margin-right:0px}.o_tree.o_course_menu div.o_tree_l0>a:first-child{background-color:none}.o_st_peekview ul li{margin-bottom:0.5em}.o_cl_line{margin-bottom:10px;padding-bottom:5px}.o_cl_line.o_even{background-color:#f9f9f9}.o_ll_container h5{margin-bottom:5px}.o_ll_container h5 a.o_desc{color:#342c24}.o_ll_container h5 a.o_desc small{display:none}.o_ll_container h5 a.o_desc:hover{color:#16130f;text-decoration:none}.o_ll_container h5 a.o_desc:hover small{color:#5e5e5e;display:inline}.o_ll_container div.o_comment{color:#777}.o_course_pagination{margin-bottom:10px;display:flex;justify-content:flex-end}.o_course_pagination :not(:first-child){margin-left:5px}.o_course_pagination .o_previous a,.o_course_pagination .o_next a{width:60px}.o_cmembers .o_cmember{margin:12px 0;display:table}.o_cmembers .o_cmember .o_portrait{padding-right:10px;display:table-cell;vertical-align:top;min-width:60px}.o_cmembers .o_cmember .o_portrait img{width:50px;height:50px}.o_cmembers .o_cmember .o_cmember_info_wrapper{display:table-cell;vertical-align:middle;color:#777}.o_cmembers .o_cmember .o_cmember_info_wrapper .o_mail{margin-left:6px}.o_cmembers .o_cmember .o_curriculum_displayname,.o_cmembers .o_cmember .o_curriculum_root_el_identifier,.o_cmembers .o_cmember .o_curriculum_root_el_displayname{font-size:12px}.o_cmembers .o_cmember a.o_mail{display:none}.o_cmembers .o_cmember:hover a.o_mail{display:inline}.o_cmembers_print{color:#000}.o_cmembers_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_cmembers_print #o_print_brand img{width:100%}.o_cmembers_print .o_portrait{width:100px;height:100px;position:relative}.o_cmembers_print .o_portrait img{border-radius:0px;max-width:100%;max-height:100%;width:auto;height:auto;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto}.o_cmembers_print .o_cmember{padding-left:0px;padding-right:15px;margin-bottom:20px}.o_cmembers_print .o_cmember .o_cmember_info_wrapper{word-wrap:break-word}.o_cmembers_print .o_cmember .o_prop.o_zipCode{float:left;padding-right:0.5em}.o_cmembers_print h1{font-size:18pt;color:#000}.o_cmembers_print h3{font-size:14pt;margin-top:5px;font-weight:normal;color:#000}.o_cmembers_print h4,.o_cmembers_print .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_cmembers_print h2{font-size:11pt;font-weight:strong;color:#000;padding-bottom:10px;border-bottom:1px solid #eee}.o_cmembers_print .o_cmember_info_wrapper{font-size:7pt;color:#000}.o_cmembers_print .o_cmember_info_wrapper strong{font-size:8pt}.tag.label.label-info{margin-right:3px}.input-group.o_tag_inputgroup .form-control{height:auto}div.o_correction_navigation .o_correction_navigation_back{float:left;line-height:32px}div.o_correction_navigation .o_correction_navigation_previous{position:absolute;right:50%;margin-right:102px}div.o_correction_navigation #o_cocurrent_item_SELBOX{width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:absolute;left:50%;margin-left:-100px}div.o_correction_navigation .o_correction_navigation_next{position:absolute;left:50%;margin-left:102px}@media (max-width: 767px){div.o_correction_navigation .o_correction_navigation_previous span,div.o_correction_navigation .o_correction_navigation_next span{display:none}}.o_ms_stack_panel .o_toolbar{margin-top:0px}.o_ms_bold{font-weight:bold}.o_ms_legend{padding:5px}.o_ms_legend li{display:block;font-size:90%}.o_ms_legend .ident{font-weight:bold}.o_browser_ie10 .o_paella_wrapper iframe,.o_browser_ie11 .o_paella_wrapper iframe{display:none}.o_browser_ie10 .o_paella_wrapper .o_paella_error,.o_browser_ie11 .o_paella_wrapper .o_paella_error{display:block}.o_paella_wrapper iframe{width:100%;height:400px}@media (max-width: 768px){.o_paella_wrapper iframe{height:300px}}.o_paella_wrapper .o_paella_error{display:none}.o_curriculum_el_listing tr.o_curriculum_element_inactive,.o_curriculum_el_listing tr.o_curriculum_element_inactive td,.o_curriculum_el_listing tr.o_curriculum_element_inactive td span,.o_curriculum_el_listing tr.o_curriculum_element_inactive td a{color:#777}.o_curriculum_el_listing tr.o_curriculum_element_unfiltered,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td span,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td a{color:#aaa}.o_curriculum_el_listing tr.o_curriculum_element_deleted,.o_curriculum_el_listing tr.o_curriculum_element_deleted td,.o_curriculum_el_listing tr.o_curriculum_element_deleted td span,.o_curriculum_el_listing tr.o_curriculum_element_deleted td a{color:#777;text-decoration:line-through}.o_curriculumtable tr.o_curriculum_element_l0 td:nth-thild(first){padding-left:0px}.o_curriculumtable tr.o_curriculum_element_l1 td:nth-thild(first){padding-left:15px}.o_curriculumtable tr.o_curriculum_element_l2 td:nth-thild(first){padding-left:30px}.o_curriculumtable tr.o_curriculum_element_l3 td:nth-thild(first){padding-left:45px}.o_curriculumtable tr.o_curriculum_element_l4 td:nth-thild(first){padding-left:60px}.o_curriculumtable tr.o_curriculum_element_l5 td:nth-thild(first){padding-left:75px}.o_curriculumtable tr.o_curriculum_element_l6 td:nth-thild(first){padding-left:90px}.o_curriculumtable tr.o_curriculum_element_l7 td:nth-thild(first){padding-left:105px}.o_curriculumtable tr.o_curriculum_element_l8 td:nth-thild(first){padding-left:120px}.o_curriculumtable tr.o_curriculum_element_l9 td:nth-thild(first){padding-left:135px}.o_curriculumtable tr.o_curriculum_element_l10 td:nth-thild(first){padding-left:150px}.o_curriculumtable tr.o_curriculum_element_l11 td:nth-thild(first){padding-left:165px}.o_curriculumtable tr.o_curriculum_element_inactive,.o_curriculumtable tr.o_curriculum_element_inactive td,.o_curriculumtable tr.o_curriculum_element_inactive td span{color:#777}.o_curriculumtable tr.o_curriculum_element_deleted,.o_curriculumtable tr.o_curriculum_element_deleted td,.o_curriculumtable tr.o_curriculum_element_deleted td span{color:#777;text-decoration:line-through}.o_curriculumtable.o_rendertype_custom .container-fluid{padding-left:0;padding-right:0}.o_curriculumtable.o_rendertype_custom .o_table_row{position:relative;vertical-align:top;margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row:before,.o_curriculumtable.o_rendertype_custom .o_table_row:after{content:" ";display:table}.o_curriculumtable.o_rendertype_custom .o_table_row:after{clear:both}.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{background:none;border:none;position:relative}.o_curriculumtable.o_rendertype_custom .o_table_row .o_ext_id{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_hierarchy_info{display:none;position:absolute;top:0;right:30px;font-size:70%;z-index:5;background:gold}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_title{margin-top:0;margin-bottom:0;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_title small{white-space:nowrap}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars{padding-left:6px;color:#777}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle.o_active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars.o_active{color:#3c763d}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle.o_active:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars.o_active:hover{color:#2b542c}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_desc{padding:6px 6px 16px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_empty{font-style:italic;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{position:relative;padding-left:132px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:50px;padding-left:87px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_visual{left:0;border:none;background-color:#fff;max-height:80px;max-width:120px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_author,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_location,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_lifecycle{color:#3c763d}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state{position:absolute;right:0;bottom:30px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_failed{font-weight:normal}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_state,.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_score{display:inline-block}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_state+.o_score:before{content:', '}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion{display:inline-block;min-width:89px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion .progress{height:14px;margin-bottom:-2px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion .progress-bar{font-size:10px;line-height:unset}.o_curriculumtable.o_rendertype_custom .o_table_row .o_bookmark{position:absolute;top:-1px;right:2px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access{position:absolute;bottom:0;right:0;overflow:hidden;width:180px;height:30px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start{right:0;color:#fff;background-color:#209d9e;border-color:#1c8889}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#209d9e;border-color:#1c8889}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#209d9e;background-color:#fff}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#a6a6a6;border-color:#999}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#8d8d8d;border-color:#7b7b7b}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#a6a6a6;border-color:#999}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#a6a6a6;background-color:#fff}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_author,.o_curriculumtable.o_rendertype_custom .o_table_row .o_bookmark,.o_curriculumtable.o_rendertype_custom .o_table_row .o_lifecycle,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_desc,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_desc,.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state,.o_curriculumtable.o_rendertype_custom .o_table_row .o_details{display:none}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_row_inner_wrapper{background:#f6f6f6;border:1px solid #eee}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_element_title{background:transparent;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_element_title{background:#ebebeb;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry{display:inline-block;width:50%;border-right:12px solid transparent;margin-top:0 !important}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry_title{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_row_inner_wrapper{background:#f6f6f6;border:1px solid #eee}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_element_title{background:transparent;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_element_title{background:#ebebeb;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_calendars{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{background:#f6f6f6;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{background:none;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_entry{min-height:50px}}@media print{.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state{position:relative;bottom:0}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access{display:none}}table.table.o_qti_item_kprim>thead>tr>th,table.table.o_qti_item_kprim>tbody>tr>td{border:none}td.o_qti_item_kprim_input,th.o_qti_item_kprim_input{text-align:center}td.o_qti_item_kprim_input .radio,th.o_qti_item_kprim_input .radio{display:inline}td.o_qti_item_kprim_text{width:80%}div.o_qti_menu_section,div.o_qti_menu_section_clickable,div.o_qti_menu_section_active{margin-top:10px}div.o_qti_menu_item a,div.o_qti_menu_section a{text-decoration:none}div.o_qti_menu_item{padding:.1em}div.o_qti_menu_item_active{padding:.1em;font-weight:bold}div.o_qti_item_itemfeedback{background-color:#ffffff;border-color:#000000}div.o_qti_item_choice_option_flow{display:inline-block;padding:.5em;border:1px solid transparent}.d3chart .bar_green{fill:#78be20}.d3chart .bar_red{fill:#d6001c}.d3chart .bar_grey{fill:lightgrey}.d3chart circle.bubble_green{fill:#78be20}div.o_qti_statistics ul{list-style-type:none;padding:0;margin:0;font-size:90%}div.o_qti_statistics ul strong{font-weight:normal}div.o_qti_statistics ul li{padding-left:48px;margin-left:0;margin-bottom:10px}div.o_qti_statistics ul li.o_qti_statistics-ncorrect:before{font-size:125%;content:'\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-correct:before{font-size:125%;content:'\2713\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kplus:before{font-size:125%;content:'\2713\00A0\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kminus:before{font-size:125%;content:'\2A2F\00A0\2713\00A0\00A0'}div.o_qti_statistics ul li img{vertical-align:top}div.o_qti_statistics table.o_qti_statistics_figures tr{float:left}div.o_qti_statistics table.o_qti_statistics_figures tr:nth-child(2n+1){clear:left;padding-right:20px}div.o_qti_statistics table.o_qti_statistics_figures td{width:200px;padding-left:0;vertical-align:bottom}div.o_qti_statistics table.o_qti_statistics_figures td+td{width:100px}div.o_qti_statistics .o_qti_statistics_answer{background:#F5F5F5;padding:1px 2px;width:90%}div.o_qti_statistics div.o_qti_statistics_legend{padding-top:10px;width:470px;border:1px solid #ddd;border-radius:4px}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_green{background-color:#9dd53a}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_red{background-color:#f85032}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_grey{background-color:lightgrey}div.o_qti_metadatas .panel-body{border-top:none}.o_qti_menu_item_attempts:after,.o_qti_menu_item_attempts_marked:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_qti_menu_item_attempts:after{content:"ï„"}.o_qti_menu_item_attempts_marked:after{content:"";color:#209d9e}.o_qti_print div.o_qti_statistics{width:680px}@media print{div.o_qti_statistics{width:680px}}ul.sessionControl{list-style:none;margin:1em;text-align:center}ul.sessionControl li{display:inline;padding:0.2em}.association{margin:20px 20px 20px 40px;background:transparent url("../light/images/association_bg.png") repeat-x center center}.o_associate_item{padding:5px;margin:0 15px 10px 0;border:2px solid #999}.o_associate_item.oo-selected{border:2px solid #209d9e}.o_associate_item.oo-choosed{border:none !important}.o_associate_item.oo-drag{border:2px solid #209d9e !important}.association_box{border:3px dotted #999}.association_box.oo-filled{border:3px solid #999}.association_box{background-color:white}.prompt{font-weight:bold}.sketch{position:relative}#tmp_canvas{position:absolute;left:0px;right:0;bottom:0;top:0;cursor:crosshair}.sketch,.sketch>canvas{touch-action:none;user-drag:none;-webkit-user-drag:none;user-select:none;-moz-user-select:none;-webkit-user-drag:none;-webkit-user-select:none;-ms-user-select:none}#colors .black .o_icon:before{color:#000000}#colors .blue .o_icon:before{color:#0000FF}#colors .green .o_icon:before{color:#008000}#colors .yellow .o_icon:before{color:#FFFF00}#colors .red .o_icon:before{color:#FF0000}#colors .purple .o_icon:before{color:#800080}.o_gap_item{padding:5px;margin:5px;background-repeat:no-repeat;background-position:center center}.o_gap_item.oo-choosed{position:relative;left:auto;top:auto;padding:3px;margin:0}.o_gap_item.oo-selected{border:3px solid #209d9e}.o_item_container_help,.o_items_container_help{font-size:90%;font-style:italic;color:#777;padding:5px}.items_container{padding:15px}.items_container .o_item{float:left}#o_qti_hotspots_edit{min-height:100px;min-width:400px;background-repeat:no-repeat}#o_qti_hotspots_edit.o_qti_hotspot-standard .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-standard .o_draw_rectangle{background-color:rgba(255,255,255,0.5);border-color:#6E6E6E}#o_qti_hotspots_edit.o_qti_hotspot-standard .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-standard .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(45,0,255,0.5);border-color:#0000ff}#o_qti_hotspots_edit.o_qti_hotspot-light .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-light .o_draw_rectangle{background-color:rgba(221,221,221,0);border-color:#7E7E7E}#o_qti_hotspots_edit.o_qti_hotspot-light .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-light .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(51,122,183,0.05);border-color:#337ab7}#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_draw_rectangle{background-color:rgba(110,110,110,0.5);border-color:#3E3E3E}#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(222,222,222,0.2);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-green .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-green .o_draw_rectangle{background-color:rgba(142,142,142,0.25);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-green .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-green .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(134,195,81,0.5);border-color:#518b33}#o_qti_hotspots_edit.o_qti_hotspot-purple .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-purple .o_draw_rectangle{background-color:rgba(142,142,142,0.33);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-purple .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-purple .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(234,168,255,0.5);border-color:#ab47cb}div.hotspotInteraction{overflow-x:auto}img.o_hotspot_responsive[usemap]{max-width:100%;width:auto;height:auto}.form-inline.o_qti_gaptext_add_first_alternative,.o_qti_gaptext_add_first_alternative.o_navbar-form{padding:9px 0 3px 0}.form-inline.o_qti_gaptext_add_alternative,.o_qti_gaptext_add_alternative.o_navbar-form{margin-bottom:3px}.o_qti_gaptext_alternatives{background-color:#eee;color:#555;border:1px solid #eee;border-radius:4px;padding:2px 5px}span.o_qti_gaptext_score_alternative{padding-left:2em;color:#555}.o_qti_item_body .extendedTextInteraction{margin:15px 0}.o_qti_item_body .extendedTextInteraction textarea{resize:vertical !important;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_qti_item_body .extendedTextInteraction pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_qti_item_body .extendedTextInteraction .o_qti_essay_last_save{padding:2px 2px;font-style:italic;font-size:90%;text-align:right}.extendedTextInteraction div.form-control.textarea_disabled{white-space:pre-wrap;height:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#555 !important}#o_qti_run_title{margin:0 15px 0.5em 15px}#o_qti_run_title h3{margin:15px 0 0 0}#o_qti_run_infos{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:10px 0;margin:0 15px 1em 15px}#o_qti_run_infos .progress{background-color:#eee}#o_qti_run_infos #o_qti_scoreinfo .progress-bar{background-color:#209d9e}.progress-striped #o_qti_run_infos #o_qti_scoreinfo .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}#o_qti_run_infos #o_qti_questioninfo .progress-bar{background-color:#209d9e}.progress-striped #o_qti_run_infos #o_qti_questioninfo .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}#o_qti_run_infos #o_qti_run_scoreinfo,#o_qti_run_infos #o_qti_run_scoreprogress{white-space:nowrap}#o_main_wrapper #o_main_container #o_qti_run #o_main_left #o_main_left_toggle{top:50px}#o_qti_results_infos{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:10px 0;margin:0 0 1em 0}#o_qti_results_infos .progress{background-color:#eee}#o_qti_results_infos #o_qti_run_scoreinfo,#o_qti_results_infos #o_qti_run_scoreprogress{white-space:nowrap}#o_qti_assessment_test_timer{border:1px solid #e7e7e7;border-radius:4px;padding:10px;margin:0 15px 1em 15px}#o_qti_assessment_test_timer.o_10_minutes{background-color:#fcf8e3}#o_qti_assessment_test_timer.o_5_minutes{background-color:#f2dede}#o_qti_assessment_test_timer.o_panic{background-color:#ce8383}#o_qti_assessment_test_timer.o_15_seconds{background-color:#fcf8e3}#o_qti_assessment_test_timer.o_panic{background-color:#f2dede}#o_qti_assessment_test_timer .o_qti_times_up{padding-left:2em;font-weight:bold}#o_qti_assessment_test_timer .o_qti_times_message{padding-left:2em;font-weight:bold}.o_draw_circle.o_qti_hotspot_correct,.o_draw_rectangle.o_qti_hotspot_correct{background-color:rgba(229,255,204,0.6)}#width_range_ui,#opacity_range_ui{width:120px}.o_slider_width_range,.o_slider_opacity_range{margin:3px 10px 0 0}.o_qti_hotspot_label{padding-left:48%}.o_assessmentsection_rubrics_wrapper{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:4px;padding:5px 10px;margin:0 0 0.5em 0}.o_assessmentsection_rubrics_correction_wrapper{background:#f8f8f8;border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;padding:5px 10px}.o_info.o_assessmentsection_rubrics{margin:5px -10px;position:relative;display:block}.o_info.o_assessmentsection_rubrics.o_hide{display:none}.o_info.o_assessmentsection_rubrics a.o_hide{position:absolute;bottom:0.5em;right:1em}.o_assessmentitem h1{margin-bottom:0}.o_assessmentitem div.badResponse,.o_assessmentitem span.badResponse{color:#d6001c;font-weight:bold}.o_assessmentitem input.badResponse{border:1px solid #d6001c}.o_assessmentitem .infoControl input{margin-right:0.5em}.o_assessmentitem .infoControl .infoControlContent{display:none}.o_assessmentitem .sliderInteraction{margin:1em}.o_assessmentitem .sliderInteraction .sliderVertical .sliderValue{margin:1em 0}.o_assessmentitem .sliderInteraction .sliderVertical .sliderWidget{height:200px}.o_assessmentitem .sliderInteraction .sliderHorizontal .sliderValue{text-align:center}.o_assessmentitem div.orderInteraction div.highlight{border:1px solid #d6001c}.o_assessmentitem div.orderInteraction div.box.vertical{width:50%;float:left;position:relative;padding:0;margin-top:5px}.o_assessmentitem div.orderInteraction div.box.vertical ul{min-height:200px}.o_assessmentitem div.orderInteraction div.box.horizontal ul{min-height:50px;width:100%}.o_assessmentitem div.orderInteraction div.box.source{padding:5px 10px;border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8}.o_assessmentitem div.orderInteraction div.box.source.horizontal{padding:5px 10px 15px 10px}.o_assessmentitem div.orderInteraction div.box.target ul{border:2px solid #a6a6a6;border-radius:4px;background:#d9edf7}.o_assessmentitem div.orderInteraction div.box.target ul.oo-accepted{border-color:#666}.o_assessmentitem div.orderInteraction div.box.target.vertical{padding:6px 0 0 10px}.o_assessmentitem div.orderInteraction div.box.target.vertical ul{padding:10px}.o_assessmentitem div.orderInteraction div.box.target.horizontal{padding-top:10px}.o_assessmentitem div.orderInteraction div.box.target.horizontal ul{padding:10px 10px 0 10px}.o_assessmentitem div.orderInteraction div.box.horizontal ul li{float:left;width:auto;margin-right:10px;min-width:50px}.o_assessmentitem div.orderInteraction div.box span.info{color:#666;font-style:italic;font-size:smaller}.o_assessmentitem div.orderInteraction ul{list-style-type:none;margin:0;padding:0}.o_assessmentitem .hottext{position:relative;margin:-2px 0.15em -2px 0.15em;white-space:nowrap}.o_assessmentitem .hottext input{margin:0 3px 0 2px;position:absolute;top:0.1em;left:0.05em}.o_assessmentitem .hottext input+label{display:inline;padding:0 0.1em 0 1.2em;background:#f8f8f8;border:1px solid #e7e7e7;border-radius:2px;color:#2d2926;font-weight:normal;white-space:normal}.o_assessmentitem .hottext input:checked+label{color:#2d2926;background:#d9edf7;border:1px solid #bce8f1}.o_assessmentitem .gap{font-weight:bold;border:1px dashed #000}.o_assessmentitem .textEntryInteraction input,.o_assessmentitem .textEntryInteraction span.o_input_value{margin:-1px 2px;line-height:90%;vertical-align:middle;font-size:13.72px;line-height:1.5;border:1px solid #999;background:#fff;padding:1px 1px;color:#2d2926;max-width:100%}.o_assessmentitem .textEntryInteraction input:valid,.o_assessmentitem .textEntryInteraction input:disabled,.o_assessmentitem .textEntryInteraction input.o_input_value_wrapper,.o_assessmentitem .textEntryInteraction span.o_input_value:valid,.o_assessmentitem .textEntryInteraction span.o_input_value:disabled,.o_assessmentitem .textEntryInteraction span.o_input_value.o_input_value_wrapper{color:#2d2926;-webkit-text-fill-color:#2d2926;background:#d9edf7;border:1px solid #bce8f1}li.o_assessmentitem_order_item{padding:10px;margin-bottom:10px;border:2px dashed #999;border-radius:4px;background-color:#ffffff;background:#fcf8e3;list-style-type:none}li.o_assessmentitem_order_item:before,li.o_assessmentitem_order_item:after{content:" ";display:table}li.o_assessmentitem_order_item:after{clear:both}body>li.o_assessmentitem_order_item{display:block}.o_assessmentitem_wrapper .itemTitle{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:4px 4px 0 0;margin-top:0;margin-bottom:0;padding:5px 10px;line-height:1.5em;position:relative}.o_assessmentitem_wrapper .itemTitle .o_qti_item_max_score{position:absolute;left:49%}.o_assessmentitem_wrapper .o_qti_item_body{min-height:200px;margin:0;padding:5px 10px;border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;font-size:14px;line-height:1.8}.o_assessmentitem_wrapper .o_assessment_item_not_final.o_warning{margin:0}.o_assessmentitem_wrapper .modalFeedback h4:first-of-type,.o_assessmentitem_wrapper .modalFeedback .o_cal .fc-header-title h2:first-of-type,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback h2:first-of-type{padding-left:10px;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper h4,.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper h2{border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;padding-bottom:5px;margin-bottom:0}.o_assessmentitem_wrapper ul.o_testpartnavigation,.o_qti_menu_buttonstyle ul.o_testpartnavigation{list-style:none;padding:0;margin:0}.o_assessmentitem_wrapper li.o_assessmentitem,.o_qti_menu_buttonstyle li.o_assessmentitem{margin-bottom:2px}.o_assessmentitem_wrapper .o_assessmentitem_status,.o_qti_menu_buttonstyle .o_assessmentitem_status{float:right;display:block;padding:0.3em;margin-left:1em;border-radius:0.3em;border-width:1px;font-size:0.8em;line-height:1.2em;color:#fff}.o_assessmentitem_wrapper .o_assessmentitem_status.ended,.o_qti_menu_buttonstyle .o_assessmentitem_status.ended{background-color:#a6a6a6}.o_assessmentitem_wrapper .o_assessmentitem_status.invalid,.o_qti_menu_buttonstyle .o_assessmentitem_status.invalid{background-color:#d6001c}.o_assessmentitem_wrapper .o_assessmentitem_status.answered,.o_qti_menu_buttonstyle .o_assessmentitem_status.answered{background-color:#78be20}.o_assessmentitem_wrapper .o_assessmentitem_status.notAnswered,.o_qti_menu_buttonstyle .o_assessmentitem_status.notAnswered{background-color:#f2af40}.o_assessmentitem_wrapper .o_assessmentitem_status.notPresented,.o_qti_menu_buttonstyle .o_assessmentitem_status.notPresented{background-color:#ddd}.o_assessmentitem_wrapper .o_assessmentitem_status.review,.o_qti_menu_buttonstyle .o_assessmentitem_status.review{background-color:#a6a6a6}.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotAllowed,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewInvalid,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotAnswered,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotSeen,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotAllowed,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewInvalid,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotAnswered,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotSeen{background-color:#a6a6a6;opacity:0.7}.o_assessmentitem_wrapper .o_assessmentitem_status i:before,.o_qti_menu_buttonstyle .o_assessmentitem_status i:before{color:#fff}.o_assessmentitem_controls{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:0 0 4px 4px;margin-top:0;margin-bottom:16px;padding:5px 10px}.o_assessmentitem_controls button,.o_assessmentitem_controls a{margin-bottom:0}.o_assessmentitem_controls .o_sel_assessment_item_submit span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_next_question span:after{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï”";padding-left:0.5em}.o_assessmentitem_controls .o_sel_question_menu span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_end_testpart span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_back_test_feedback span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï“";padding-right:0.5em}.o_assessmentitem_controls .o_sel_show_solution span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„©";padding-right:0.5em}.o_assessmentitem_controls .o_sel_solution_hide span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„©";padding-right:0.5em}.o_assessmentitem_controls .o_sel_skip_question span:before,.o_assessmentitem_controls .o_sel_back_question span:before,.o_assessmentitem_controls .o_sel_retry_question span:before{padding-right:0.5em;margin-bottom:0}.o_assessmentitem_control_view_solution{background:#f8f8f8;border:1px solid #e7e7e7;margin:0;padding:5px 10px}.o_assessmentitem_scoring{background:#f8f8f8;border:1px solid #e7e7e7;border-bottom:0;border-radius:4px 4px 0 0;margin-top:0;margin-bottom:0;padding:5px 10px}.o_assessmentitem_scoring_buttons{background:#f8f8f8;border:1px solid #e7e7e7;border-top:0;border-radius:0 0 4px 4px;margin-top:0;margin-bottom:16px;padding:5px 10px}.o_assessmentitem_scoring_override_window{width:300px}.itemPrompt{margin:1.5em 0;font-style:italic;color:#666666}.o_qti_item_body{margin:1em 0}.o_sel_assessment_item_hint{margin-top:1em}.o_assessment_test_results .o_sel_assessment_item_hint{display:none}tr.choiceinteraction td.control{padding:0.5em}tr.choiceinteraction td.choiceInteraction{padding:0.5em}.choiceInteraction label{font-weight:normal}.choiceInteraction input+i{background-color:red}.choiceInteraction div.o_qti_item_choice_option_flow{display:inline-block;padding:.5em;border:1px solid transparent}.choiceInteraction div.o_qti_item_choice_option_flow label span{font-weight:normal}.choiceInteraction div.o_qti_item_choice_option_flow label span>p{display:inline-block}.choiceInteraction.choiceright table tr td.choiceInteraction{background-color:#e7e7e7;border-bottom:3px solid white}.matchInteraction.choiceright table tr td.o_qti_item_kprim_text{background-color:#e7e7e7;border-bottom:3px solid white}table.o_qti_item_kprim td.o_qti_item_kprim_input_correct{background-color:#d8f3b7}table.o_qti_item_kprim td.o_qti_item_kprim_input_wrong{background-color:#ffa3af}table.o_qti_item_kprim td.o_qti_item_kprim_input_correct,table.o_qti_item_kprim td.o_qti_item_kprim_input_wrong,table.o_qti_item_kprim th.o_qti_item_kprim_input_correct,table.o_qti_item_kprim th.o_qti_item_kprim_input_wrong{width:11%}table.o_qti_item_kprim td.o_qti_item_kprim_text,table.o_qti_item_kprim th.o_qti_item_kprim_text{width:88%}.matchInteraction input[type='text']{display:inline;width:auto}.matchInteraction div.bar_green{background-color:#78be20}.matchInteraction div.bar_red{background-color:#d6001c}.source-left,.target-left,.source-right,.target-right{width:50%;float:left;position:relative;padding:0;margin-top:5px}.o_match_dnd_sources{padding:10px 10px 0 10px;min-height:60px;border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8}.o_match_dnd_sources.oo-accepted{border-color:#666}.o_match_dnd_source{padding:10px;margin-bottom:10px;border:2px dashed #999;border-radius:4px;background-color:#ffffff;background:#fcf8e3;cursor:move;cursor:grab;cursor:-moz-grab;cursor:-webkit-grab}.o_match_dnd_source:before,.o_match_dnd_source:after{content:" ";display:table}.o_match_dnd_source:after{clear:both}.o_match_dnd_source.oo-selected{border:2px dashed #f2af40;background:#fae1b7}.o_match_dnd_source.oo-drag{border:2px dashed #f2af40 !important}.source-bottom .o_match_dnd_source,.source-top .o_match_dnd_source{margin:0 0 10px 0}.o_match_dnd_targets .oo-accepted{border:2px solid #666;border-radius:4px}.o_match_dnd_target{padding:10px 10px 0 10px;margin:0 0 10px 10px;border:2px solid #a6a6a6;border-radius:4px;background:#d9edf7}.o_match_dnd_target:before,.o_match_dnd_target:after{content:" ";display:table}.o_match_dnd_target:after{clear:both}.o_match_dnd_target .o_match_dnd_target_drop_zone{margin:0;padding:5px 0 0 15px;min-height:30px}.o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source{border:2px dashed #777}.target-bottom .o_match_dnd_target,.target-top .o_match_dnd_target{margin:0 0 10px 0}.target-bottom .o_match_dnd_target .o_match_dnd_target_drop_zone,.target-top .o_match_dnd_target .o_match_dnd_target_drop_zone{padding-left:0px}.target-bottom .o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source,.target-top .o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source{padding-left:15px}.table.o_match_true_false_edit th.o_sel_match_target_0,.table.o_match_true_false_edit th.o_sel_match_target_1,.table.o_match_true_false_edit th.o_sel_match_target_2{width:12%}.match_true_false input[type="checkbox"]{-webkit-appearance:radio;-moz-appearance:radio;-ms-appearance:radio;appearance:radio}.match_true_false .table>tbody>tr>td.o_match_true_false_unanswered,.match_true_false .table>tbody>tr>td.o_match_true_false_right,.match_true_false .table>tbody>tr>td.o_match_true_false_wrong{vertical-align:middle;width:11%}.match_true_false th.o_match_true_false_unanswered,.match_true_false th.o_match_true_false_right,.match_true_false th.o_match_true_false_wrong{width:11%}.match_true_false td.o_match_true_false_answer,.match_true_false th.o_match_true_false_answer{width:67%}.match_true_false td.o_match_true_false_unanswered{background-color:#fbfbfb}.match_true_false td.o_match_true_false_right{background-color:#d8f3b7}.match_true_false td.o_match_true_false_wrong{background-color:#ffa3af}.o_assessmentitem .mathEntryInteraction{border:1px solid #ddedfc;background-color:#edf1f6;background:linear-gradient(to top, #edf1f6 0%, #f6f9fb 100%);border-radius:0.4em;padding:1em;margin:0.5em 0}.o_assessmentitem .mathEntryInteraction .inputPanel{line-height:1em;text-align:left}.o_assessmentitem .mathEntryInteraction .inputPanel input{margin:0;padding:0}.o_assessmentitem .mathEntryInteraction .previewPanel{text-align:center}.o_assessmentitem .mathEntryInteraction.horizontal{min-height:5em;width:40em}.o_assessmentitem .mathEntryInteraction.horizontal .inputPanel{width:45%;float:left;margin:2em 0}.o_assessmentitem .mathEntryInteraction.horizontal .previewPanel{width:50%;margin-left:40%}.o_assessmentitem .mathEntryInteraction.vertical{min-height:6em}.o_assessmentitem .mathEntryInteraction.vertical .inputPanel{padding:0 5em}.o_assessmentitem .mathEntryInteraction.vertical .inputPanel:before{content:'Input Maths: '}.o_assessmentitem .mathEntryInteraction.vertical .previewPanel{margin-top:2em;min-height:4em}.o_assessmentitem div.upConversionAjaxControlMessage{width:auto;text-align:center;display:inline;padding:0.5em 0 0.5em 20px}.o_assessmentitem div.success{background:#78be20}.o_assessmentitem div.failure{background-color:#f2af40}.o_assessmentitem div.error{background-color:#d6001c}.o_assessmentitem div.upConversionAjaxControlPreview{margin:0.5em 0;font-size:110%}.o_assessmentitem table.inputHelp{border-collapse:collapse;width:100%;font-size:90%}.o_assessmentitem table.inputHelp th{border:1px solid #999999;padding:0.2em 0.5em;background-color:#cad8e5}.o_assessmentitem table.inputHelp td{color:#999999;border:1px solid #999999;padding:0.2em 0.5em}.o_assessmentitem table.inputHelp kbd{color:black;font-size:100%;line-height:100%}.o_assessmentitem table.inputHelp .longComma{margin-right:0.5em}.o_togglebox_wrapper #modal-correct-solution div.o_togglebox_content{background-color:#fcf8e3;border-color:#8a6d3b}.o_candidatecomment{padding:0;margin:2em 0 1em 0;border:none}.o_candidatecomment legend{font-size:110%;font-weight:bold;color:#777;margin-bottom:0;border-bottom:0}.o_candidatecomment div.o_item_container_help{margin:0;padding:0}.o_candidatecomment textarea{display:block;color:#777}.o_qti_menu_menustyle ul.o_testpartnavigation{list-style:none;padding:0;margin:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:0 1em 0.5em 1em;margin:0 0 0.5em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection header{margin:0 0 1em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection header div.rubric{font-style:italic}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection ul.o_testpartnavigation_inner{list-style:none;padding:0;margin:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem{padding:0.1em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a{color:#777;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a:hover,.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a:focus{color:#333;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a{color:#209d9e;font-weight:bold;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a:hover,.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a:focus{color:#177374;background-color:#eee;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem span{vertical-align:middle}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_status{display:inline;position:relative;left:-0.3em;background:transparent;border:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_status span{display:none}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts{float:right;display:block;padding:0.3em;border-radius:2px;background-color:#fafafa;color:#777;font-size:0.7em}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts.o_assessmentitem_attempts_limited{color:#f2af40}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts.o_assessmentitem_attempts_nomore{color:#a6a6a6}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_marks{float:right;display:inline-block;font-size:0.8em;position:relative;top:0.3em;right:-0.5em}.o_qti_menu_menustyle ul.o_testpartnavigation .o_assessmentitem .questionTitle{margin-right:1em;overflow-wrap:break-word}.testFeedback h1:first-of-type{margin-top:0}ul.testPartDrilldown{list-style:none;padding:0;margin:0}ul.testPartDrilldown li.o_assessmentsection{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:0 1em 0.5em 1em}ul.testPartDrilldown li.o_assessmentsection header{margin:0 0 1em 0}ul.testPartDrilldown li.o_assessmentsection header div.rubric{font-style:italic}ul.testPartDrilldown li.o_assessmentsection ul.testPartDrilldownInner{list-style:none;padding:0;margin:0}ul.testPartDrilldown li.currentItem{border:1px solid #e7e7e7;border-radius:0.5em;padding:0 1em;margin-top:1em}.testItemControl{margin-top:0.5em}ul.o_qti_statistics_answers li span.o_qti_statistics_answer{background:#F5F5F5;padding:1px 3px;width:90%;display:inline-block}.o_assessment_test_results .o_qti_assessment_title{border-bottom:1px solid #ddd}.o_assessment_test_results table th{width:40%}.o_assessment_test_results .o_qti_sectionsummary .o_qti_section{text-align:center}.o_assessment_test_results .o_qti_sectionsummary .o_qti_section .o_qti_section_sublisting{padding:0 10%;min-height:3em}.o_assessment_test_results .o_qti_sections .o_qti_section{margin-top:40px}.o_assessment_test_results .o_qti_sections .o_qti_section h3{margin-bottom:20px}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_id{display:none}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment{margin:0;padding:5px 10px 10px 5px;border-top:1px solid #ddd;broder-bottom:1px solid #ddd}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h4,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2{font-size:100%;font-weight:bold;color:inherit}.o_assessment_test_results .o_qti_to_overview{text-align:right}.o_sel_assessment_item_feedbacks{min-height:250px}.o_alternative_question_types h4 select,.o_alternative_question_types .o_cal .fc-header-title h2 select,.o_cal .fc-header-title .o_alternative_question_types h2 select{display:inline-block;width:auto}@media print{canvas,div.hotspotInteraction>div>div{-webkit-print-color-adjust:exact;color-adjust:exact}.choiceInteraction label{font-weight:normal}.choiceinteraction input[type="radio"][disabled],.choiceinteraction input[type="checkbox"][disabled],.matchInteraction input[type="radio"][disabled],.matchInteraction input[type="checkbox"][disabled]{display:none}.choiceinteraction input+i,.matchInteraction input+i{font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.choiceInteraction input[type="radio"][disabled]+i:before,.matchInteraction input[type="radio"][disabled]+i:before,.matchInteraction.match_true_false input[type="checkbox"][disabled]+i:before{content:"ï„Œ"}.choiceInteraction input[type="radio"][disabled]:checked+i:before,.matchInteraction input[type="radio"][disabled]:checked+i:before,.matchInteraction.match_true_false input[type="checkbox"][disabled]:checked+i:before{content:""}.choiceInteraction input[type="checkbox"][disabled]+i:before,.matchInteraction input[type="checkbox"][disabled]+i:before{content:"ï‚–"}.choiceInteraction input[type="checkbox"][disabled]:checked+i:before,.matchInteraction input[type="checkbox"][disabled]:checked+i:before{content:"ï†"}}#o_dev_tool #o_dev_tool_mode{width:1em;height:1em;float:left;border:1px solid #000;margin-right:5px}a.o_dev{position:absolute;left:0;top:0;z-index:4000;background:#f0ad4e;border:1px solid #d59645;border-top:none;border-left:none;border-radius:0 0 4px 0;color:#fff}a.o_dev:hover{color:#d9534f}.o_dev_w{margin:1px}.o_dev_w .o_dev_h{color:#000;font-size:8px;line-height:10px;margin:0}.o_dev_w .o_dev_h span{background:#f4c37d;border:1px solid #f0ad4e;border-bottom:0}.o_dev_w .o_dev_c{position:relative;border:1px dotted #eee}.o_dev_w .o_dev_c .o_dev_i{position:absolute;top:0px;left:24px;height:auto;width:auto;padding:5px;border:1px solid black;display:none;margin:0px;z-index:999;font-size:11px;background-color:#BBF}.o_dev_w.o_dev_m>.o_dev_c{border:1px solid #f0ad4e;margin:0px;background-color:#f8e9d4}.o_wikimod_nav{margin-right:20px}.o_wikimod_nav .o_noti{margin:0}.o_wikimod_nav .o_portfolio_collector{position:relative;top:-5px}.o_wikimod_editform_wrapper{margin-top:30px}.o_wiki-file-deleted{text-decoration:line-through}div.o_wiki_wrapper a.wikiimg{text-decoration:none;color:inherit;font-weight:inherit}div.o_wiki_wrapper div.imgcaption{padding:0.3em 0em 0.2em 0.3em}div.o_wiki_wrapper div.imgleft{clear:left;float:left;margin:0.3em 0.3em 0.3em 0em}div.o_wiki_wrapper div.imgright{clear:right;float:right;margin:0.3em 0em 0.3em 0.3em}div.o_wiki_wrapper div.imgcenter{clear:both;overflow:hidden;text-align:center;margin:0.3em 0em 0.3em 0em}div.o_wiki_wrapper div.imgthumb{border:1px solid #bbbbbb;padding:0.3em}div.o_wiki_wrapper table.gallery{border:1px solid #ccc;margin:2px;padding:2px;background-color:white}div.o_wiki_wrapper table.gallery tr{vertical-align:middle}div.o_wiki_wrapper table.gallery td{background-color:#f9f9f9;border:solid 2px white;text-align:center;vertical-align:middle;width:150px}div.o_wiki_wrapper img.gallery{border:1px solid #bbbbbb;padding:0.3em}div.o_wiki_wrapper a.edit{font-style:italic;color:red}div.o_wiki_wrapper a.externallink:before{padding-right:2px}div.o_wiki_wrapper a.externallink:before:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï‚Ž"}.o_ep_icon_map:before{content:""}.o_ep_icon_collection:before{content:""}.o_ep_icon_page:before{content:""}.o_ep_icon_struct:before{content:""}.o_ep_icon_liveblog:before{content:"ï‚¡"}.o_artefact_closed:before{content:""}.o_portfolio_toc .o_ep_link{float:right;margin-right:0px}.o_portfolio_toc .o_ep_commentlink{float:right;margin-right:10%}.o_portfolio_toc li.level1{font-size:1.2em;margin:1.2em 0 0.2em 0;border-bottom:1px solid #ddd}.o_portfolio_toc li.level2{padding-left:20px;font-size:1.1em;border-bottom:1px dotted #ddd}.o_portfolio_toc li.level3{padding-left:40px}.o_eportfolio_page .o_eportfolio_structure>h5{border-bottom:1px solid #ddd;margin-top:1.2em}.o_eportfolio_maps .panel{font-family:'Century Gothic', 'Apple Gothic', sans-serif;box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .panel-heading{padding:5px 10px}.o_eportfolio_maps h4,.o_eportfolio_maps .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps h2{padding:11px 15px;background:rgba(255,255,230,0.7) none;border-radius:6px}.o_eportfolio_maps .table>tbody>tr>td{border-top:none}.o_eportfolio_maps .panel-body{border-top:none}.o_eportfolio_maps .panel>.panel-body+.table{border-top:none}.panel-footer .o_ep_options{display:inline-block}.o_eportfolio_map{padding:0 20px 2px 3px;border-radius:6px 10px 6px 0;font-family:'Century Gothic', 'Apple Gothic', sans-serif}.o_map_header{padding-left:5px}.o_eportfolio_map ul.nav-tabs li:not(.active) a{background-color:rgba(240,240,240,0.7);border-radius:4px 4px 0 0}.o_eportfolio_edit{border-radius:4px 4px 0 0}.o_ep_actualpage,.o_eportfolio_edit{padding:15px;background-color:#fff}.o_ep_content{margin-top:15px}.o_ep_filter .o_date.form-inline .form-group,.o_ep_filter .o_date.o_navbar-form .form-group{margin-left:8px}.o_eportfolio_share_policy_wrapper{border:1px solid #ddd;border-radius:4px}.o_eportfolio_share_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5}.o_eportfolio_share_policy{padding:10px 15px}.o_map-default{background:#fafafa;background:#fafafa -webkit-gradient(linear, 37% 20%, 53% 100%, from(#fafafa), to(#efefef));background:#fafafa -moz-linear-gradient(43% 71% 101deg, #efefef, #fafafa);background:#fafafa -o-linear-gradient(#fafafa, #efefef);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#fafafa', EndColorStr='#efefef');border:1px solid #efefef;border-left:3px solid rgba(188,188,188,0.8)}.o_eportfolio_maps .o_map-default h4,.o_eportfolio_maps .o_map-default .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-default h2{color:#444;background:none}.o_eportfolio_maps .o_map-default .panel-body,.o_eportfolio_maps .o_map-default td,.o_eportfolio_maps .o_map-default a{color:#000}.o_map-comic{background:#a2c3e8 none;font-family:'Comic Sans MS', 'Comic Sans', fantasy;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_map-leather{background-color:#957352;background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(248,248,248,0.7)), color-stop(100%, rgba(193,193,193,0.5))),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-webkit-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-moz-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-ms-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-o-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");font-family:Palatino, Georgia, serif;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-leather h4,.o_eportfolio_maps .o_map-leather .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-leather h2{background:rgba(243,230,225,0.3) none}.o_eportfolio_maps .o_map-leather .panel-body,.o_eportfolio_maps .o_map-leather td{color:#333}.o_eportfolio_maps .o_map-leather a{color:#fad9a4}.o_eportfolio_map.o_map-leather .o_map_header h4,.o_eportfolio_map.o_map-leather .o_map_header .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_map.o_map-leather .o_map_header h2,.o_eportfolio_map.o_map-leather .o_map_header p,.o_eportfolio_map.o_map-leather .o_map_header a,.o_eportfolio_map.o_map-leather .o_map_header span,.o_eportfolio_map.o_map-leather .o_map_header label{color:#333}.o_map-epmst-green{background-color:#ECF69A;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-green h4,.o_eportfolio_maps .o_map-epmst-green .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green h2{color:#444}.o_eportfolio_maps .o_map-epmst-green .panel-body,.o_eportfolio_maps .o_map-epmst-green td,.o_eportfolio_maps .o_map-epmst-green a{color:#000}.o_map-epmst-green2{background:#99E44D;background:#99E44D -webkit-gradient(linear, 37% 20%, 53% 100%, from(#99E44D), to(#CBF1A5));background:#99E44D -moz-linear-gradient(43% 71% 101deg, #CBF1A5, #99E44D);background:#99E44D -o-linear-gradient(#99E44D, #CBF1A5);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#99E44D', EndColorStr='#CBF1A5');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green2 h4,.o_eportfolio_maps .o_map-epmst-green2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green2 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green2 .panel-body,.o_eportfolio_maps .o_map-epmst-green2 td,.o_eportfolio_maps .o_map-epmst-green2 a{color:#000}.o_map-epmst-green3{background:#DFF0C1;background:#DFF0C1 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#DFF0C1), to(#A0D346));background:#DFF0C1 -moz-linear-gradient(43% 71% 101deg, #A0D346, #DFF0C1);background:#DFF0C1 -o-linear-gradient(#DFF0C1, #A0D346);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#DFF0C1', EndColorStr='#A0D346');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green3 h4,.o_eportfolio_maps .o_map-epmst-green3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green3 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green3 .panel-body,.o_eportfolio_maps .o_map-epmst-green3 td,.o_eportfolio_maps .o_map-epmst-green3 a{color:#000}.o_map-epmst-green4{background-color:#D7DBB5;border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green4 h4,.o_eportfolio_maps .o_map-epmst-green4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green4 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green4 .panel-body,.o_eportfolio_maps .o_map-epmst-green4 td,.o_eportfolio_maps .o_map-epmst-green4 a{color:#000}.o_map-epmst-red{background:#FFBA71;background:#FFBA71 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FFBA71), to(#FFBA99));background:#FFBA71 -moz-linear-gradient(43% 71% 101deg, #FFBA99, #FFBA71);background:#FFBA71 -o-linear-gradient(#FFBA71, #FFBA99);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFBA71', EndColorStr='#FFBA99');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red h4,.o_eportfolio_maps .o_map-epmst-red .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red h2{color:#444}.o_eportfolio_maps .o_map-epmst-red .panel-body,.o_eportfolio_maps .o_map-epmst-red td,.o_eportfolio_maps .o_map-epmst-red a{color:#000}.o_map-epmst-red2{background:#FF9772;background:#FF9772 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FF9772), to(#FF9780));background:#FF9772 -moz-linear-gradient(43% 71% 101deg, #FF9780, #FF9772);background:#FF9772 -o-linear-gradient(#FF9772, #FF9780);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FF9772', EndColorStr='#FF9780');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red2 h4,.o_eportfolio_maps .o_map-epmst-red2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red2 .panel-body,.o_eportfolio_maps .o_map-epmst-red2 td,.o_eportfolio_maps .o_map-epmst-red2 a{color:#000}.o_map-epmst-red3{background:#E8AFBB;background:#E8AFBB -webkit-gradient(linear, 37% 20%, 53% 100%, from(#E8AFBB), to(#E8AFA0));background:#E8AFBB -moz-linear-gradient(43% 71% 101deg, #E8AFA0, #E8AFBB);background:#E8AFBB -o-linear-gradient(#E8AFBB, #E8AFA0);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#E8AFBB', EndColorStr='#E8AFA0');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red3 h4,.o_eportfolio_maps .o_map-epmst-red3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red3 .panel-body,.o_eportfolio_maps .o_map-epmst-red3 td,.o_eportfolio_maps .o_map-epmst-red3 a{color:#000}.o_map-epmst-red4{background:#FFA800;background:#FFA800 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FFA800), to(#FFAF00));background:#FFA800 -moz-linear-gradient(43% 71% 101deg, #FFAF00, #FFA800);background:#FFA800 -o-linear-gradient(#FFA800, #FFAF00);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFA800', EndColorStr='#FFAF00');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red4 h4,.o_eportfolio_maps .o_map-epmst-red4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red4 .panel-body,.o_eportfolio_maps .o_map-epmst-red4 td,.o_eportfolio_maps .o_map-epmst-red4 a{color:#000}.o_map-epmst-blue{background:#00D2F8;background:#00D2F8 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#00D2F8), to(#4A9EAD));background:#00D2F8 -moz-linear-gradient(43% 71% 101deg, #4A9EAD, #00D2F8);background:#00D2F8 -o-linear-gradient(#00D2F8, #4A9EAD);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#00D2F8', EndColorStr='#4A9EAD');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue h4,.o_eportfolio_maps .o_map-epmst-blue .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue .panel-body,.o_eportfolio_maps .o_map-epmst-blue td,.o_eportfolio_maps .o_map-epmst-blue a{color:#000}.o_map-epmst-blue2{background-color:#C4F6FF;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue2 h4,.o_eportfolio_maps .o_map-epmst-blue2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue2 .panel-body,.o_eportfolio_maps .o_map-epmst-blue2 td,.o_eportfolio_maps .o_map-epmst-blue2 a{color:#000}.o_map-epmst-blue3{background-color:#B3E2F7;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue3{box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .o_map-epmst-blue3 h4,.o_eportfolio_maps .o_map-epmst-blue3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue3 .panel-body,.o_eportfolio_maps .o_map-epmst-blue3 td,.o_eportfolio_maps .o_map-epmst-blue3 a{color:#000}.o_map-epmst-blue4{background:#DEE7F7;background:#DEE7F7 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#DEE7F7), to(#C1E9FD));background:#DEE7F7 -moz-linear-gradient(43% 71% 101deg, #C1E9FD, #DEE7F7);background:#DEE7F7 -o-linear-gradient(#DEE7F7, #C1E9FD);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#DEE7F7', EndColorStr='#C1E9FD');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue4 h4,.o_eportfolio_maps .o_map-epmst-blue4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue4 .panel-body,.o_eportfolio_maps .o_map-epmst-blue4 td,.o_eportfolio_maps .o_map-epmst-blue4 a{color:#000}.o_portfolio div#o_main_toolbar.o_toolbar{margin-top:0px}.o_portfolio_home .o_portfolio_my li,.o_portfolio_home .o_portfolio_shared li{margin:2em 1em 2em 0;text-align:center;vertical-align:top}.o_portfolio_home .o_portfolio_my li.o_pf_trash_entry,.o_portfolio_home .o_portfolio_shared li.o_pf_trash_entry{border-right:5px dashed #eee;padding-right:2em}.o_portfolio_home .o_portfolio_my li a,.o_portfolio_home .o_portfolio_shared li a{display:block;width:9em}.o_portfolio_home .o_portfolio_my li a i,.o_portfolio_home .o_portfolio_shared li a i{display:inline-block;font-size:4em}.o_portfolio_home .o_portfolio_my li a span,.o_portfolio_home .o_portfolio_shared li a span{display:block;margin-top:0.8em}@media (max-width: 1199px){.o_portfolio_home .o_portfolio_my,.o_portfolio_home .o_portfolio_shared{font-size:90%}}@media (max-width: 767px){.o_portfolio_home .o_portfolio_my,.o_portfolio_home .o_portfolio_shared{font-size:80%}.o_portfolio_home .o_portfolio_my li.o_pf_trash_entry,.o_portfolio_home .o_portfolio_shared li.o_pf_trash_entry{border-right:none;padding-right:0}}.o_portfolio_home #o_my_last_binders .o_table_body{margin-top:0;padding-left:0}.o_portfolio_home #o_my_last_pages .o_table_body{margin-top:0}.o_portfolio_home #o_my_last_pages .o_table_toolbar{display:none}.o_portfolio_home #o_my_last_pages .o_portfolio_page{margin-top:0;margin-bottom:1em}.o_section_lead,.o_page_lead,.o_assignment_lead{padding:10px 10px;margin-bottom:10px;background-color:#f2f2f2;border-radius:3px;border:1px #d9d9d9 solid}.o_section_ended .o_section_lead{border-color:#ff3d56;background-color:#ff7083}.o_media.o_media_right,.o_media.o_media_right_large{float:right;margin-left:2em;margin-bottom:2em}.o_media.o_media_left,.o_media.o_media_left_large{float:left;margin-right:2em;margin-bottom:2em}.o_media.o_media_left,.o_media.o_media_right{max-height:200px;max-width:50%}.o_media.o_media_left img,.o_media.o_media_right img{max-height:200px}.o_media.o_media_right_large,.o_media.o_media_left_large{max-height:300px;max-width:75%}.o_media.o_media_right_large img,.o_media.o_media_left_large img{max-height:300px}.o_media img{border-radius:3px;border:1px #d9d9d9 solid;background:#fff;height:auto;width:auto}@media (max-width: 767px){.o_page_lead .o_media.o_media_right,.o_page_lead .o_media.o_media_right_large{margin-left:1em;margin-bottom:1em}.o_page_lead .o_media.o_media_left,.o_page_lead .o_media.o_media_left_large{margin-right:1em;margin-bottom:1em}.o_page_lead .o_media.o_media_left,.o_page_lead .o_media.o_media_right{max-height:120px;max-width:30%}.o_page_lead .o_media.o_media_left img,.o_page_lead .o_media.o_media_right img{max-height:120px}.o_page_lead .o_media.o_media_right_large,.o_page_lead .o_media.o_media_left_large{max-height:180px;max-width:50%}.o_page_lead .o_media.o_media_right_large img,.o_page_lead .o_media.o_media_left_large img{max-height:180px}}.o_page_lead{padding:20px}.o_page_lead h2{margin-bottom:5px}.o_page_lead .o_portfolio_page_meta{margin-bottom:5px}.o_page_lead .o_page_summary{font-size:18px}.o_page_lead .o_media.o_desc_empty{max-height:300px;text-align:center}.o_page_lead .o_media.o_desc_empty img{max-height:300px}.o_page_lead .o_portfolio_status_block{border-top:1px solid #d9d9d9;padding-top:1em;margin-bottom:-1em}.o_page_lead .o_edit_page_meta{padding-right:2em}.o_page_lead .o_portfolio_status{display:inline-block;padding-right:2em}.o_page_lead.o_block_imagebg .o_portfolio_status{padding:2px;background-color:rgba(255,255,255,0.8)}.o_portfolio_status_block p.o_section_ended{font-size:120%}.o_page_assignment{font-size:12px}.o_page_assignment.o_togglebox_wrapper div.o_togglebox_content{margin:10px 0 20px 0;padding:20px;border-left:3px solid #d6001c;background-color:#f2dede}.o_page_assignment .o_page_assignement_info{position:relative;left:-1em}.o_page_export .o_page_assignment .o_opener,.o_binder_export .o_page_assignment .o_opener{visibility:hidden}.o_page_export .o_page_assignment .o_closer,.o_binder_export .o_page_assignment .o_closer{display:none}.o_portfolio_listing.o_rendertype_custom .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry{position:relative;display:inline-block;height:230px;width:400px;vertical-align:top;margin-right:10px}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry ul{padding-left:2em}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry .oo-accepted{box-shadow:10px 10px 10px pink}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry .o_binder_tools a{color:#2d2926}.o_portfolio_listing.o_rendertype_custom .panel-imagebg .panel-body ul{margin:0;padding:0;list-style-type:none}.o_portfolio_listing.o_rendertype_custom .panel-imagebg .panel-body ul li{padding:2px}.o_binder.o_portfolio_assignments .panel-heading,.o_binder.o_portfolio_assignments .panel-body{border-left:3px solid #d6001c}.panel-default.o_portfolio_assignments .panel-heading,.panel-default.o_portfolio_assignments .panel-body{border-left:3px solid #d6001c}.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body{border-left:3px solid #d6001c}.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body .o_portfolio_page_meta_wrapper,.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body .o_portfolio_page_summary{padding-left:10px}.o_portfolio_page_summary .o_media.o_media_right,.o_portfolio_page_summary .o_media.o_media_right_large{margin-left:1em;margin-bottom:1em}.o_portfolio_page_summary .o_media.o_media_left,.o_portfolio_page_summary .o_media.o_media_left_large{margin-right:1em;margin-bottom:1em}.o_portfolio_page_summary .o_media.o_media_left,.o_portfolio_page_summary .o_media.o_media_right{max-height:150px}.o_portfolio_page_summary .o_media.o_media_left img,.o_portfolio_page_summary .o_media.o_media_right img{max-height:150px}.o_portfolio_page_summary .o_media.o_media_right_large,.o_portfolio_page_summary .o_media.o_media_left_large{max-height:230px}.o_portfolio_page_summary .o_media.o_media_right_large img,.o_portfolio_page_summary .o_media.o_media_left_large img{max-height:230px}.o_portfolio_categories .tag{font-size:80%;font-weight:normal}.o_portfolio_categories div,.o_portfolio_categories form{display:inline-block}.o_portfolio_categories_edit .bootstrap-tagsinput{margin-bottom:0;padding:0px 4px}.o_portfolio_last_modified+.o_portfolio_categories,.o_portfolio_page_meta+.o_portfolio_categories{margin-left:1em}.o_rendertype_classic .o_pf_page,.o_rendertype_classic .o_pf_assignment{padding-left:1em}.o_portfolio_timeline .o_timeline_up{text-align:center}.o_portfolio_timeline .o_timeline_down{text-align:center}.o_portfolio_timeline .axis path,.o_portfolio_timeline .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_portfolio_timeline .x.axis line,.o_portfolio_timeline .x.axis path{display:none}.o_portfolio_timeline path.o_timeline_curve{fill:none;stroke:#ccc;shape-rendering:crispEdges}.o_portfolio_timeline .y.axis .tick line,.o_portfolio_timeline .y.axis path.domain{stroke:#ddd}.o_portfolio_timeline text{fill:#888;stroke:none;font-size:10px}.o_portfolio_timeline .dot.o_pf_status_draft{fill:#f2af40}.o_portfolio_timeline .dot.o_pf_status_published{fill:#209d9e}.o_portfolio_timeline .dot.o_pf_status_inrevision{fill:#d6001c}.o_portfolio_timeline .dot.o_pf_status_closed{fill:#78be20}.o_portfolio_timeline .dot.o_pf_status_deleted{fill:#000}.o_pf_comments{margin-top:3em}.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file{background-color:#f8f8f8;padding:10px;border-radius:10px}.o_pf_content .o_forum,.gu-mirror .o_forum{border:1px #f8f8f8 solid;padding:10px;border-radius:10px}.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_forum,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_forum,.gu-mirror .o_wiki{background-color:#f8f8f8;padding:10px;border-radius:10px}.o_pf_content .o_efficiencystatement h3,.o_pf_content .o_efficiencystatement .h3,.o_pf_content .o_feed h3,.o_pf_content .o_feed .h3,.o_pf_content .o_forum h3,.o_pf_content .o_forum .h3,.o_pf_content .o_wiki h3,.o_pf_content .o_wiki .h3,.gu-mirror .o_efficiencystatement h3,.gu-mirror .o_efficiencystatement .h3,.gu-mirror .o_feed h3,.gu-mirror .o_feed .h3,.gu-mirror .o_forum h3,.gu-mirror .o_forum .h3,.gu-mirror .o_wiki h3,.gu-mirror .o_wiki .h3{font-size:14px}.o_pf_content .o_efficiencystatement .row,.o_pf_content .o_feed .row,.o_pf_content .o_forum .row,.o_pf_content .o_wiki .row,.gu-mirror .o_efficiencystatement .row,.gu-mirror .o_feed .row,.gu-mirror .o_forum .row,.gu-mirror .o_wiki .row{margin:0}.o_pf_content .o_efficiencystatement .o_block_with_datecomp,.o_pf_content .o_feed .o_block_with_datecomp,.o_pf_content .o_forum .o_block_with_datecomp,.o_pf_content .o_wiki .o_block_with_datecomp,.gu-mirror .o_efficiencystatement .o_block_with_datecomp,.gu-mirror .o_feed .o_block_with_datecomp,.gu-mirror .o_forum .o_block_with_datecomp,.gu-mirror .o_wiki .o_block_with_datecomp{margin-top:0.5em;margin-bottom:0}.o_pf_video_placeholder{background-color:#f8f8f8;border:1px solid #f8f8f8;border-radius:10px;display:table;min-width:400px;text-align:center;padding:40px 10px}.o_pf_video_placeholder i{display:table-cell;vertical-align:middle}.o_binder_page_listing .o_portfolio_page_links{background-color:#f8f8f8;border-radius:4px}.o_binder_page_listing .o_portfolio_page_links .o_portfolio_comment{float:right}.o_portfolio_toc .o_portfolio_toc_section{position:relative;padding-right:80px}.o_portfolio_toc .o_portfolio_section_meta{margin-top:-0.5em}.o_portfolio_toc .o_section_actions{position:absolute;top:-10px;right:0}.o_portfolio_toc .o_section_actions .o_section_move_up_and_down,.o_portfolio_toc .o_section_actions .o_section_dropdown{vertical-align:middle;display:inline-block}.o_portfolio_toc a.o_comment{color:#777;margin-left:1em}.o_portfolio_toc .o_section ul{padding-left:1em;line-height:24px}.o_portfolio div span.badge{padding:3px 7px}.o_portfolio div .o_portfolio_entry_draft{background-color:#f2af40}.o_portfolio div .o_portfolio_published{background-color:#209d9e}.o_portfolio div .o_portfolio_entry_revision{background-color:#d6001c}.o_portfolio div .o_portfolio_entry_closed{background-color:#78be20}.o_portfolio div .o_portfolio_entry_deleted{background-color:#000}.o_portfolio div .o_portfolio_entry_incoming{background-color:#78be20}.o_portfolio div .o_portfolio_entry_inprocess{background-color:#c8c8c8}.o_portfolio div .o_portfolio_entry_done{background-color:#78be20}.o_portfolio div .o_popover,.o_portfolio div .popover:hover{color:#2d2926;text-decoration:none}.o_portfolio_content .o_portfolio_toc.o_portfolio_toc_withtimeline{width:70%;float:left}.o_portfolio_content .o_portfolio_timeline{width:29%;float:right}.o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline,.o_portfolio_content .o_portfolio_entries.o_portfolio_withtimeline{width:70%;float:left}.o_portfolio_content .o_portfolio_timeline{width:29%;float:right}.o_portfolio_page{background:#fcfcfc;border:1px solid #eee;border-radius:4px}.o_portfolio_page_meta_wrapper{background-position:left top;background-repeat:no-repeat}.o_portfolio_rights table .o_portfolio_section td:first-child{padding-left:1.5em}.o_portfolio_rights table .o_portfolio_page td:first-child{padding-left:2.5em}.o_portfolio_publication table{padding-bottom:10px}.o_portfolio_publication table td{padding:5px 5px 5px 0}.o_portfolio_publication .o_portfolio_ac{font-size:90%}.o_portfolio_publication .o_portfolio_ac table td:nth-of-type(2){width:200px;white-space:nowrap}.o_portfolio_publication .o_portfolio_ac table td:nth-of-type(3){width:40px;white-space:nowrap}.o_portfolio_publication ul ul{margin-left:2em;margin-bottom:5px}.o_portfolio_publication ul li{background:#fbfbfb;padding:3px;margin-bottom:2px}.o_portfolio_publication ul li li{background:#f2f2f2}.o_portfolio_publication ul li li li{background:#eee}.o_portfolio_publication ul li li .table{margin-bottom:0px}@media (max-width: 767px){.o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline,.o_portfolio_content .o_portfolio_entries.o_portfolio_withtimeline{width:100%;float:none}.o_portfolio_content .o_sel_timeline_off,.o_portfolio_content .o_sel_timeline_on,.o_portfolio_content .o_portfolio_timeline{display:none}.o_portfolio_content .o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline{width:100%;float:none}}.o_portfolio_media_browser .o_portfolio_medias{position:relative;margin-bottom:20px;margin-top:20px}.o_portfolio_media_browser .o_portfolio_medias:before,.o_portfolio_media_browser .o_portfolio_medias:after{content:" ";display:table}.o_portfolio_media_browser .o_portfolio_medias:after{clear:both}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media:last-child{margin-right:0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{border:1px solid #209d9e;position:relative;height:180px;width:180px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon span.o_visual_not_available,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after span.o_visual_not_available,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after span.o_visual_not_available,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after span.o_visual_not_available,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after span.o_visual_not_available{background-image:none}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:6em;text-align:center;color:#eee;line-height:140px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #209d9e;border-top:0;background-color:rgba(255,255,255,0.8)}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a{display:block;color:#209d9e;font-family:inherit;font-weight:inherit}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:hover{color:#177374}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a>i{display:none}@media (min-width: 768px) and (max-width: 991px){.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{width:80px;margin:0 10px 10px 0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{height:80px;width:80px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:2.5em;line-height:55px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_title{font-size:90%}}@media (max-width: 767px){.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{width:80px;margin:0 1px 1px 0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{height:80px;width:80px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:2.5em;line-height:55px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_title{font-size:90%}}.o_portfolio_status_legend{margin-top:3em}.o_portfolio_status_legend h6{margin-bottom:5px}.o_ed_htitle h1,.o_ed_htitle .h1{font-size:30px}.o_ed_htitle h2,.o_ed_htitle .h2{font-size:24px}.o_ed_htitle h3,.o_ed_htitle .h3{font-size:18px}.o_ed_htitle h4,.o_ed_htitle .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_ed_htitle h2,.o_ed_htitle .h4{font-size:14px}.o_ed_htitle h5,.o_ed_htitle .h5{font-size:12px}.o_ed_htitle h6,.o_ed_htitle .h6{font-size:12px}@media print{.o_binder h1{font-size:43.2px;margin-top:10cm}.o_portfolio_section{margin-bottom:1cm}.o_portfolio_section h3:first-of-type{font-size:36px}.o_page_lead{border:0;border-bottom:1px solid #d9d9d9;border-radius:0;background-color:none;padding:0;margin-bottom:10px}.o_page_lead .o_portfolio_status_block{border-top:0;margin-bottom:0}.o_page_lead .o_media img{border:0}.o_page_lead .o_portfolio_categories{display:block;margin-left:0}.o_page_lead .o_portfolio_status_block{padding-top:0}.o_page_lead .o_page_summary{margin-top:1em;font-style:italic}.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.o_pf_content .o_forum,.o_pf_content .o_image,.o_pf_content .o_video,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_forum,.o_pf_content .o_wiki{padding:0;border-radius:0;border:0}.o_pf_content .o_cit .o_desc p,.o_pf_content .o_text .o_desc p,.o_pf_content .o_file .o_desc p,.o_pf_content .o_forum .o_desc p,.o_pf_content .o_image .o_desc p,.o_pf_content .o_video .o_desc p,.o_pf_content .o_efficiencystatement .o_desc p,.o_pf_content .o_feed .o_desc p,.o_pf_content .o_forum .o_desc p,.o_pf_content .o_wiki .o_desc p{margin:0}.o_efficiencystatement table{font-size:90%}.o_artefact_metadata{page-break-inside:avoid;border:0;border-left:5px solid #eee;padding-left:10px;font-size:80%}.o_artefact_metadata table td,.o_artefact_metadata table th{border:0 !important;padding:2px !important}.o_artefact_metadata table th:first-of-type{width:20%}.o_pf_video_placeholder{background-color:#f8f8f8 !important;-webkit-print-color-adjust:exact;color-adjust:exact}.o_pf_video_placeholder.visible-print-block{display:table !important}}.o_evaluation_form .o_evaluation_block{margin-top:2em;margin-bottom:2em}.o_evaluation_form .o_rubric_name{font-weight:bold;margin-bottom:1em}.o_evaluation_form .o_evaluation_step_labels{margin-bottom:1em;font-weight:bold}.o_evaluation_form .o_evaluation_step_labels div,.o_evaluation_form .o_evaluation_step_labels span{display:inline-block;text-align:center;align-self:flex-end;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o_evaluation_form .o_slider_wrapper{height:33px;overflow:hidden}.o_evaluation_form .o_slider{margin-bottom:1em}.o_evaluation_form .o_slider label{padding:0}.o_evaluation_form .o_slider input{padding:0;margin:0;position:relative}.o_evaluation_form .o_slider.hover{background-color:#f5f5f5}.o_evaluation_form .o_evaluation_continous .o_evaluation_no_response div.radio{padding:0;margin:0}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps{display:flex;justify-content:space-between}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps label{padding:0;margin:0;text-align:center}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps .radio{background-color:#f9f9f9;padding:0px;margin-top:0px;text-align:center}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps .radio:hover{background-color:#f5f5f5}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_no_response div.radio{margin-top:2px}.o_evaluation_form .o_evaluation_discrete_radio .o_evaluation_step_labels{display:flex;justify-content:space-between}.o_evaluation_form .o_slider .ui-slider.ui-slider-horizontal.ui-widget-content{margin-top:0.3em;margin-bottom:10px}.o_evaluation_form .o_evaluation_left_label{text-align:right;font-weight:normal}.o_evaluation_form .o_evaluation_left_label.o_evaluation_left_label_la{text-align:left;padding-left:0px;font-weight:normal}.o_evaluation_form .o_evaluation_right_label{text-align:left;font-weight:normal}.o_evaluation_form .o_evaluation_text_legend{margin-bottom:1em}.o_evaluation_form .o_evaluation_legend{padding-left:0.5em;margin-bottom:0.5em}.o_evaluation_form .o_evaluation_fileupload{margin-bottom:2em}.o_evaluation_form .o_evaluation_mc_other{margin-top:-10px;margin-left:10px;margin-right:10px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_slider{margin-left:15px;margin-right:15px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_end_label{text-align:right;padding-right:20px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_continous .x .tick{visibility:hidden}.o_evaluation_form .o_ed_rubrictablehandler .table{margin-top:5px}.o_evaluation_form .svg-container{display:inline-block;position:relative;width:100%;padding-bottom:50%;vertical-align:top;overflow:hidden}.o_evaluation_form .svg-content-responsive{display:inline-block;position:absolute;top:10px;left:0}.d3chart .o_eva_bar{fill:#209d9e}.d3chart .o_rubric_sufficient{fill:#78be20}.d3chart .o_rubric_neutral{fill:#f2af40}.d3chart .o_rubric_insufficient{fill:#d6001c}.d3chart .o_rubric_unrated{fill:#209d9e}.o_qual_hm_legend{padding:5px}.o_qual_hm_legend li{font-size:90%}.o_qual_hm_legend .ident{font-weight:bold}.o_evaluation_discrete_slider .o_evaluation_step_labels{position:relative}.o_evaluation_discrete_slider .o_evaluation_step_labels div:first-child{position:absolute;left:0px;text-align:left}.o_evaluation_discrete_slider .o_evaluation_step_labels div{display:inline-block;text-align:center}.o_evaluation_discrete_slider .o_evaluation_step_labels div:last-child{position:absolute;right:0px;text-align:right}.o_slider_overview{width:100%;height:20px;position:relative}.o_slider_overview .o_slider_overview_line{top:5px;left:0px;position:absolute;width:100%;height:11px;border:1px solid #999;border-radius:4px}.o_slider_overview .o_slider_overview_point{position:absolute;width:10px;height:10px;background-color:#209d9e}.o_evaluation_editor_form{margin:10px 10px 0 10px}.o_evaluation_editor_form .o_slider_editor{margin-top:10px}@media (max-width: 992px){.o_evaluation_editor_form .o_slider_editor{margin-bottom:20px}}@media (max-width: 992px){.o_evaluation_editor_form .o_evaluation_step_label{text-align:unset;margin-bottom:5px;padding-top:unset}}.o_evaluation_editor_form .o_evaluation_step_labels{display:inline-block}.o_evaluation_editor_form .o_evaluation_step_labels input{width:100%}.o_evaluation_editor_form .o_slider_descrete_radio{display:flex;justify-content:space-between}.o_evaluation_editor_form .o_slider_descrete_radio .radio{background-color:#f9f9f9;padding:0px;margin-top:0px;text-align:center}.o_evaluation_editor_form .o_slider_descrete_radio .radio:hover{background-color:#f5f5f5}@media (max-width: 992px){.o_evaluation_editor_form input[type="text"]{margin-bottom:5px}}.o_evaluation_editor_form .o_slider_continous{padding-top:10px;padding-bottom:-10px}.o_evaluation_editor_form .o_slider_descrete{padding-top:5px;padding-bottom:-5px}.o_evaluation_editor_form .o_evaluation_example{font-size:90%}.o_evaluation_editor_form .o_slider_top{margin-top:23px}.o_evaluation_editor_form .o_slider_buttons .pull-right div:not(:first-child){display:inline-block}.o_evaluation_editor_form .o_slider_buttons .pull-right .btn{margin-top:-3px}.o_evaluation_editor_form .o_slider_weight{max-width:40px}@media (max-width: 768px){.o_evaluation_form .o_evaluation_left_label{text-align:left;margin-bottom:0.5em}.o_evaluation_form .o_evaluation_right_label{text-align:right}.o_evaluation_form .o_evaluation_no_response{text-align:left}.o_evaluation_form .o_evaluation_no_response .o_evaluation_no_resp_value{font-weight:bold}.o_evaluation_form .o_slider{margin-bottom:2em}.o_evaluation_form .o_slider div{padding-left:0}.o_evaluation_form .o_slider .o_evaluation_no_response{margin-top:0.7em}}@media (min-width: 768px){.o_evaluation_form .o_evaluation_no_resp_value{display:none}}@media print{.o_evaluation_discrete_radio .o_slider .o_evaluation_steps div.radio{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#f9f9f9 !important}.o_icon_rubric_insufficient::before{color:#d6001c !important}.o_icon_rubric_neutral::before{color:#f2af40 !important}.o_icon_rubric_sufficient::before{color:#78be20 !important}}.o_eva_report_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_eva_report_print #o_print_brand img{width:100%}.o_eva_report_print .o_eva_content{margin-top:4em}.o_eva_report_print .o_eva_overview .panel table{margin:0px 0px 1px 0px}.o_eva_report_print .o_evaluation_duration,.o_eva_report_print .o_participated_users{display:none}.o_surv_run.withCmds .o_eva_report{margin-top:-44px}.o_eva_report .o_eva_overview .o_eva_rubric .table{margin-top:5px}.o_eva_report .o_ed_rubrictablehandler .o_table_footer{font-weight:bold}.o_eva_report .o_rubric_avg{font-weight:bold;white-sprace:nowrap}.o_eva_report .o_rubric_table .o_table_wrapper{margin-bottom:10px}.o_eva_report .o_rubric_table_legend{display:block}.o_eva_report .o_rubric_table_legend .ident{font-weight:bold}.o_eva_report .o_rubric_table_legend .list-inline{margin-bottom:0px}.o_eva_report .o_rubric_table_legend.o_last{margin-bottom:15px}.o_evaluation_execution .o_evaluation_anonymous_info{display:inherit}.o_qual_main .o_labeled.o_qual_dc_status_preparation,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_preparation{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_ready,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_ready{background-color:#ffd351;border-color:#ffd351;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_running,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_running{background-color:#933;border-color:#933;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_finished,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_finished{background-color:#14892c;border-color:#14892c;color:#fff}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_preparation{background-color:#384e64}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_ready{background-color:#ffc61e}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_running{background-color:#732626}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_finished{background-color:#0e5c1e}.o_qual_main .o_qual_dc_list tbody tr td:nth-child(1){padding-top:3px}.o_qual_main .o_labeled_light.o_qual_dc_status_preparation_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_preparation_light{border-color:#4a6785;color:#4a6785}.o_qual_main .o_labeled_light.o_qual_dc_status_ready_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_ready_light{border-color:#ffd351;color:#333}.o_qual_main .o_labeled_light.o_qual_dc_status_running_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_running_light{border-color:#933;color:#933}.o_qual_main .o_labeled_light.o_qual_dc_status_finished_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_finished_light{border-color:#14892c;color:#14892c}.o_qual_main .o_qual_exec_list tbody tr td:nth-child(1){padding-top:3px}.o_qual_main .o_qual_exec_status_future_light{border-color:#4a6785;color:#4a6785}.o_qual_main .o_qual_exec_status_ready_light{border-color:#ffd351;color:#333}.o_qual_main .o_qual_exec_status_participating_light{border-color:#933;color:#933}.o_qual_main .o_qual_exec_status_participated_light{border-color:#14892c;color:#14892c}.o_qual_main .o_qual_exec_status_over_light{border-color:#aaa;color:#aaa}.o_qual_execute_header .o_qual_context_table,.o_qual_report_header .o_qual_context_table{margin-bottom:0}.o_qual_execute_header .o_qual_context_table th,.o_qual_report_header .o_qual_context_table th{width:40%;border-top:none;padding:4px 8px}.o_qual_execute_header .o_qual_context_table td,.o_qual_report_header .o_qual_context_table td{width:60%;border-top:none;padding:4px 8px}.o_qual_ana_table .o_table_body{padding:0}.o_qual_ana_filter .o_date_range{margin-bottom:0px}.o_qual_ana_filter .o_date_range .control-label{margin-bottom:5px}.o_qual_ana_filter .o_date_range .o_date{margin-bottom:15px;padding-right:12px}.o_qual_ana_filter .o_date_range .o_date_range_from{padding-right:12px}.o_qual_ana_filter .o_date_range .o_date_range_to{padding-right:0px}.o_qual_hm_basecolor{background-color:#337ab7}.o_qual_hm .o_circle_container{display:flex}.o_qual_hm .o_circle_box{display:flex;align-items:center;justify-content:center}.o_qual_hm .o_circle{border-radius:50%}.o_qual_hm .o_circle.o_rubric_insufficient{background-color:#d6001c !important}.o_qual_hm .o_circle.o_rubric_neutral{background-color:#f2af40 !important}.o_qual_hm .o_circle.o_rubric_sufficient{background-color:#78be20 !important}.o_qual_hm .o_avg{display:flex;align-items:center;margin-left:5px}.o_qual_trend_invisible{visibility:hidden}.o_qual_trend .o_qual_ana_trend_up{transform:rotate(315deg);-webkit-transform:rotate(315deg);-moz-transform:rotate(315deg);-ms-transform:rotate(315deg);-o-transform:rotate(315deg)}.o_qual_trend .o_qual_ana_trend_down{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg)}.o_qual_trend .o_rubric_insufficient{color:#d6001c}.o_qual_trend .o_rubric_neutral{color:#f2af40}.o_qual_trend .o_rubric_sufficient{color:#78be20}.o_qual_trend .o_qual_ana_unrated{color:#337ab7}.o_qual_filtered_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_qual_filtered_print #o_print_brand img{width:100%}.o_qual_filtered_print .o_qual_content{margin-top:4em}.o_qual_filtered_print .o_groupby_config,.o_qual_filtered_print .o_slider_trend_config,.o_qual_filtered_print .o_qual_hm tr td:last-child,.o_qual_filtered_print .o_qual_hm tr th:last-child{display:none}.o_evaluation_bar_chart_legend{padding:5px}.o_evaluation_bar_chart_legend li{font-size:90%}.o_evaluation_bar_chart_legend .ident{font-weight:bold}@media (max-width: 768px){.o_hm_group_select{padding-bottom:12px}.o_hm_panel_body{margin-bottom:-12px}}@media (min-width: 768px){.o_hm_trend_row{padding-top:12px}}@media print{.o_qual_hm .o_circle{-webkit-print-color-adjust:exact;color-adjust:exact}.o_qual_hm .o_circle.o_rubric_insufficient{background-color:#d6001c !important}.o_qual_hm .o_circle.o_rubric_neutral{background-color:#f2af40 !important}.o_qual_hm .o_circle.o_rubric_sufficient{background-color:#78be20 !important}.o_qual_hm .o_circle.o_qual_hm_basecolor{background-color:#337ab7 !important}.o_qual_trend{-webkit-print-color-adjust:exact;color-adjust:exact}.o_qual_trend .o_rubric_insufficient::before{color:#d6001c !important}.o_qual_trend .o_rubric_neutral::before{color:#f2af40 !important}.o_qual_trend .o_rubric_sufficient::before{color:#78be20 !important}.o_qual_trend .o_qual_ana_unrated::before{color:#337ab7 !important}}.o_cit{position:relative;margin:10px 0}.o_cit blockquote.o_quote{color:#555;font-size:18px;margin-top:6px;margin-bottom:0;padding:0 12px;font-style:italic;padding:5px 5px 0;border:0}.o_cit blockquote.o_quote p:last-child:after{content:'1)';top:-0.5em;font-size:75%;line-height:0;position:relative;vertical-align:baseline}.o_cit .o_cit_bibinfo{font-size:90%;margin-left:1em;position:relative}.o_cit .o_cit_bibinfo>div:first-child:before{content:'1)';position:absolute;top:0.5em;left:-1em;font-size:75%;line-height:0;vertical-align:baseline}.o_cit .title,.o_cit .url,.o_cit .authors,.o_cit .pages,.o_cit .date,.o_cit .dateAdded,.o_cit .place,.o_cit .institution,.o_cit .issue,.o_cit .publisher,.o_cit .publicationTitle,.o_cit .edition,.o_cit .series,.o_cit .volume{margin-right:0.5em}.o_cit .title{font-style:italic}.o_cit .publicationTitle{color:black}.o_cit .links{padding-left:2em}.o_cit .notes{padding-left:2em;color:grey}.o_cit .note{font-style:italic}.o_cit .note p:first-child{margin-top:0}.o_cit .note p:first-child{margin-bottom:0}.o_cit .listing.web .item{padding-left:0;text-indent:0}.o_cit .listing.web .title{display:block;font-weight:bold;font-style:normal}.o_cit .listing.web .publicationTitle{display:block;font-style:italic}.o_cit .listing.web .url{display:block}.o_cit .listing.web .links{padding-left:0}.o_cit .listing.web .notes{padding-left:0}.o_cit .general-info{border-top:1px solid #eee;padding-top:30px;margin-top:30px}.o_cit .copyright{display:none}@media print{.o_cit blockquote.o_quote{page-break-inside:avoid}}.o_video_poster{position:relative;display:inline-block;width:400px;max-width:100%;height:225px;background-size:cover;background-repeat:no-repeat;border:1px solid #eee}.o_video_poster_select{text-align:center}.o_video_poster_select .o_video_poster{margin:5px}.o_video_poster_select .o_video_poster a{position:absolute;left:0;top:0;width:100%;height:100%}.o_video_poster_select .o_video_poster a span{position:absolute;bottom:0;width:100%;display:block;line-height:3em;background:#f8f8f8;opacity:0.8}.o_video_poster_select .o_video_poster a:hover{border:1px solid #bbb}.o_video_poster_select .o_video_poster a:hover span{opacity:0.9}.o_video_peekview{text-align:center}.o_video_listing .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_video_listing .o_video_entry{position:relative;display:inline-block;height:230px;width:250px;vertical-align:top;margin-right:10px}.o_video_listing .o_video_poster{width:250px;max-width:100%;height:140px;border:1px solid #eee}.o_video_listing .o_timecode{position:absolute;bottom:2px;right:3px;padding:3px 4px;background:#333;color:#fff;font-size:12px;line-height:12px}.o_video_listing .o_meta{padding:2px;font-size:11px}.o_video_listing .o_meta h5{font-size:14px;margin-top:0;margin-bottom:5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o_video_listing .o_date{margin-left:10px;display:inline-block}.o_video_listing .o_date:before{content:'\002022';margin-right:10px;display:inline-block}.o_video_run h1{font-size:1.8rem;font-weight:normal}.o_video_run .o_author{margin-top:0.5em;margin-bottom:1em;line-height:normal;font-size:90%;color:#3c763d}.o_video_run .o_ratings_and_comments{margin-top:2em;border-top:1px solid #eee;padding-top:1em}.o_video_chapter_editor .o_table_wrapper.o_table_flexi .table,.o_video_marker_editor .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_video_marker_editor .o_video_question.mejs__overlay{overflow:scroll}.o_video_question.mejs__overlay.o_video_large_question{align-items:flex-start;padding:1em 1em 0 1em;z-index:5}.o_video_question.mejs__overlay.o_video_large_question #o_qti_container{border:1px solid #eee}.o_video_marker{position:absolute;background-color:#efefef;opacity:0.85;border-left:3px solid #a6a6a6;padding:5px}.o_video_marker.o_video_marker_gray{border-left-color:#333}.o_video_marker.o_video_marker_blue{border-left-color:#bce8f1}.o_video_marker.o_video_marker_green{border-left-color:#78be20}.o_video_marker.o_video_marker_yellow{border-left-color:#f2af40}.o_video_marker.o_video_marker_red{border-left-color:#d6001c}.o_video_question.mejs__overlay{width:100%;height:100%;background-color:rgba(255,255,255,0.5)}.o_video_question #itemBody,.o_video_question .modalFeedback{background-color:white;opacity:1.0}.o_video_question .o_assessmentitem_wrapper .o_qti_item_body{min-height:50px}.o_video_question #o_qti_assessment_test_timer{border:none;padding:5px;margin:0}.o_video_question #o_qti_progress .progress{height:10px}.o_video_question #o_qti_container{background-color:white;padding:5px;border-radius:3px}.o_video_question .o_sel_additional_feedback{float:left;font-size:26px}.o_video_question .o_sel_additional_feedback .o_icon_passed{color:#78be20}.o_video_question .o_sel_additional_feedback .o_icon_failed{color:#d6001c}.mejs__time-rail .o_video_marker_gray{background:#333}.mejs__time-rail .o_video_marker_blue{background:#bce8f1}.mejs__time-rail .o_video_marker_green{background:#78be20}.mejs__time-rail .o_video_marker_yellow{background:#f2af40}.mejs__time-rail .o_video_marker_red{background:#d6001c}.mejs__controls .mejs__sourcechooser-button>button{background:transparent;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}.mejs__controls .mejs__sourcechooser-button>button:before{content:"";color:white;font-size:18px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector{visibility:visible !important;width:170px;padding-left:10px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label{font-weight:normal;font-size:10px;width:140px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label:hover{color:#eee}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label .type{display:none}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li input{visibility:hidden;margin:0;width:0}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li input:checked+label{color:#d6001c}.mejs__controls .mejs__captions-button .mejs__captions-selector{right:-26px}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label{font-weight:normal;font-size:10px}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label:hover{color:#eee}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label .type{display:none}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li input{visibility:hidden;margin:0;width:0}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li input:checked+label{color:#d6001c}.mejs__button.mejs__speed-button{width:36px}.mejs__controls .mejs__speed-button>button{background:transparent;width:36px;margin:11px 0 0 0;font-size:11px;line-height:normal;color:#ffffff}.mejs__controls .mejs__speed-button .mejs__speed-selector{height:150px;top:auto;bottom:40px}.mejs__controls .mejs__speed-button .mejs__speed-selector ul li label{font-weight:normal;font-size:10px}.mejs__chapters .mejs__chapter .mejs__chapter-block .ch-title,.mejs__chapters .mejs__chapter .mejs__chapter-block .ch-time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.mejs__time-marker{background-color:#a6a6a6}.o_userbulk_changedcell{font-style:italic;font-weight:bold}.o_qpool_source_status{text-align:center}.o_qitem_author{white-space:nowrap}a.o_qpool_status{margin:0 2px 2px 2px;text-align:left}.o_labeled.o_qpool_status_draft,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_draft{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_labeled.o_qpool_status_review,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_review{background-color:#ffd351;border-color:#ffd351;color:#fff}.o_labeled.o_qpool_status_revised,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_revised{background-color:#933;border-color:#933;color:#fff}.o_labeled.o_qpool_status_finalVersion,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_finalVersion{background-color:#14892c;border-color:#14892c;color:#fff}.o_labeled.o_qpool_status_endOfLife,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_endOfLife{background-color:#aaa;border-color:#aaa;color:#fff}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_draft{background-color:#384e64}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_review{background-color:#ffc61e}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_revised{background-color:#732626}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_finalVersion{background-color:#0e5c1e}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_endOfLife{background-color:#919191}.o_labeled_light.o_qpool_status_draft_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_draft_light{border-color:#4a6785;color:#4a6785}.o_labeled_light.o_qpool_status_review_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_review_light{border-color:#ffd351;color:#333}.o_labeled_light.o_qpool_status_revised_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_revised_light{border-color:#933;color:#933}.o_labeled_light.o_qpool_status_finalVersion_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_finalVersion_light{border-color:#14892c;color:#14892c}.o_labeled_light.o_qpool_status_endOfLife_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_endOfLife_light{border-color:#aaa;color:#aaa}.btn-arrow-right.o_qpool_qitem_draft{background:#f8f8f8;border-bottom-color:#4a6785;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_review{background:#f8f8f8;border-bottom-color:#ffd351;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_revised{background:#f8f8f8;border-bottom-color:#933;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_final{background:#f8f8f8;border-bottom-color:#14892c;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_end_of_life{background:#f8f8f8;border-bottom-color:#aaa;border-bottom-width:3px}.btn-arrow-right.o_qpool_status_slected{background-color:#e7e7e7;color:#555}.btn-arrow-right,.btn-arrow-left{position:relative;padding-left:18px;padding-right:18px;margin-bottom:5px}.btn-arrow-right{padding-left:36px}.btn-arrow-left{padding-right:36px}.btn-arrow-right:before,.btn-arrow-right:after,.btn-arrow-left:before,.btn-arrow-left:after{content:"";position:absolute;top:5px;width:22.627417px;height:22.627417px;background:inherit;border:inherit;border-left-color:transparent;border-bottom-color:transparent;border-radius:0px 4px 0px 0px;-webkit-border-radius:0px 4px 0px 0px;-moz-border-radius:0px 4px 0px 0px}.btn-arrow-right:before,.btn-arrow-right:after{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-o-transform:rotate(45deg);-ms-transform:rotate(45deg)}.btn-arrow-left:before,.btn-arrow-left:after{transform:rotate(225deg);-webkit-transform:rotate(225deg);-moz-transform:rotate(225deg);-o-transform:rotate(225deg);-ms-transform:rotate(225deg)}.btn-arrow-right:before,.btn-arrow-left:before{left:-11px}.btn-arrow-right:after,.btn-arrow-left:after{right:-11px}.btn-arrow-right:after,.btn-arrow-left:before{z-index:1}.btn-arrow-right:before,.btn-arrow-left:after{background-color:white}body.o_dmz{background:transparent}body.o_dmz #o_bg{position:absolute;top:0;left:0;width:100%;height:100%;border-top:50px solid transparent;border-bottom:70px solid transparent;background:url("images/infinite.jpg");background-size:cover;background-position:center center;background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 )}body.o_dmz #o_bg:after{content:" ";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to left, rgba(255,255,255,0) 0.2%,rgba(255,255,255,0.3) 60%,rgba(255,255,255,0.5) 100%);background-size:cover;background-position:center center;background-repeat:no-repeat}body.o_dmz #o_toplink{display:none}body.o_dmz #o_main_wrapper,body.o_dmz #o_main_wrapper #o_main_container{background:transparent}body.o_dmz label>select{font-weight:normal}.o_login{padding-bottom:20px;padding-left:10%;padding-right:10%;padding-right:10%}.o_login .o_login_intro h1{margin-bottom:40px;color:#342c24}.o_login .o_login_intro .lead{color:#2d2926}.o_login .o_login_intro .lead h1,.o_login .o_login_intro .lead h2,.o_login .o_login_intro .lead h3,.o_login .o_login_intro .lead h4,.o_login .o_login_intro .lead .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_login .o_login_intro .lead h2,.o_login .o_login_intro .lead h5{margin-bottom:20px;color:#342c24}.o_login .o_login_messages,.o_login .o_login_box{display:inline-block;width:400px;text-align:left}.o_login .o_login_messages .o_infomessage_wrapper{background:rgba(255,255,255,0.5);border:1px solid transparent;border-radius:4px;padding:6px 12px}.o_login .o_login_messages .o_infomessage_wrapper .o_info,.o_login .o_login_messages .o_infomessage_wrapper .o_warning,.o_login .o_login_messages .o_infomessage_wrapper .o_note{margin:0}.o_login .o_login_box{padding-top:10px}.o_login .o_login_providers{margin-bottom:6px;border-radius:4px;-webkit-box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3);box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3)}.o_login .o_login_providers a span{display:block;font-size:9px;padding-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_login .o_login_providers .o_icon_provider_olat{font-size:1em}.o_login .o_login_provider{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3);box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3)}.o_login .o_login_form{position:relative;padding:10px 12px}.o_login .o_login_form .o_login_pwd{position:absolute;bottom:2em;right:12px}.o_login .o_login_form .o_form .o_desc{margin:0 0 30px 0;padding:0;border-left:0;background-color:transparent}.o_login .o_login_register{display:block;line-height:2em;font-size:18px;text-align:center;color:#fff;background-color:#f2af40;border-color:#f2af40;border-radius:4px;margin-top:16px;padding:10px 12px}.o_login .o_login_register:hover,.o_login .o_login_register:focus,.o_login .o_login_register.focus,.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{color:#fff;background-color:#ef9b10;border-color:#e59510}.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{background-image:none}.o_login .o_login_register.disabled,.o_login .o_login_register.disabled:hover,.o_login .o_login_register.disabled:focus,.o_login .o_login_register.disabled.focus,.o_login .o_login_register.disabled:active,.o_login .o_login_register.disabled.active,.o_login .o_login_register[disabled],.o_login .o_login_register[disabled]:hover,.o_login .o_login_register[disabled]:focus,.o_login .o_login_register[disabled].focus,.o_login .o_login_register[disabled]:active,.o_login .o_login_register[disabled].active,fieldset[disabled] .o_login .o_login_register,fieldset[disabled] .o_login .o_login_register:hover,fieldset[disabled] .o_login .o_login_register:focus,fieldset[disabled] .o_login .o_login_register.focus,fieldset[disabled] .o_login .o_login_register:active,fieldset[disabled] .o_login .o_login_register.active{background-color:#f2af40;border-color:#f2af40}.o_login .o_login_register .badge{color:#f2af40;background-color:#fff}.o_login .o_login_register small{font-size:14px}.o_login .o_login_social{position:relative;padding:10px 12px}.o_login .o_login_social li{padding:10px 12px}.o_login .o_login_social li>a{display:block;line-height:2em;text-align:center;font-size:18px;border-radius:4px;padding:10px 12px}.o_login .o_login_social .btn-default.o_sel_auth_facebook{color:#fff;background-color:#4568b2;border-color:#3e5da0}.o_login .o_login_social .btn-default.o_sel_auth_facebook:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_facebook.dropdown-toggle{color:#fff;background-color:#37538d;border-color:#2d4374}.o_login .o_login_social .btn-default.o_sel_auth_facebook:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_facebook.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled],.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook.active{background-color:#4568b2;border-color:#3e5da0}.o_login .o_login_social .btn-default.o_sel_auth_facebook .badge{color:#4568b2;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_twitter{color:#fff;background-color:#2cc5ff;border-color:#13beff}.o_login .o_login_social .btn-default.o_sel_auth_twitter:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_twitter.dropdown-toggle{color:#fff;background-color:#00b4f8;border-color:#009ad4}.o_login .o_login_social .btn-default.o_sel_auth_twitter:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_twitter.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled],.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter.active{background-color:#2cc5ff;border-color:#13beff}.o_login .o_login_social .btn-default.o_sel_auth_twitter .badge{color:#2cc5ff;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_google{color:#fff;background-color:#e15f4f;border-color:#dd4b39}.o_login .o_login_social .btn-default.o_sel_auth_google:hover,.o_login .o_login_social .btn-default.o_sel_auth_google:focus,.o_login .o_login_social .btn-default.o_sel_auth_google.focus,.o_login .o_login_social .btn-default.o_sel_auth_google:active,.o_login .o_login_social .btn-default.o_sel_auth_google.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_google.dropdown-toggle{color:#fff;background-color:#d83825;border-color:#ba3120}.o_login .o_login_social .btn-default.o_sel_auth_google:active,.o_login .o_login_social .btn-default.o_sel_auth_google.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_google.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_google.disabled,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled],.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google.active{background-color:#e15f4f;border-color:#dd4b39}.o_login .o_login_social .btn-default.o_sel_auth_google .badge{color:#e15f4f;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_linkedin{color:#fff;background-color:#0181bd;border-color:#0170a4}.o_login .o_login_social .btn-default.o_sel_auth_linkedin:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_linkedin.dropdown-toggle{color:#fff;background-color:#015e8a;border-color:#014667}.o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_linkedin.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled],.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin.active{background-color:#0181bd;border-color:#0170a4}.o_login .o_login_social .btn-default.o_sel_auth_linkedin .badge{color:#0181bd;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_adfs{color:#fff;background-color:#209d9e;border-color:#1c8889}.o_login .o_login_social .btn-default.o_sel_auth_adfs:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_adfs.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_login .o_login_social .btn-default.o_sel_auth_adfs:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_adfs.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled],.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs.active{background-color:#209d9e;border-color:#1c8889}.o_login .o_login_social .btn-default.o_sel_auth_adfs .badge{color:#209d9e;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect{color:#fff;background-color:#209d9e;border-color:#1c8889}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled],.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active{background-color:#209d9e;border-color:#1c8889}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect .badge{color:#209d9e;background-color:#fff}.o_old_browser{display:none}.o_browser_ie10 .o_old_browser{display:block}@media (max-width: 767px){body.o_dmz #o_bg{background:none;display:none}.o_login{padding:0}.o_login .o_login_intro{padding:0;text-align:left}.o_login .o_login_box_wrapper{text-align:center;padding:0}.o_login .o_login_box{padding-left:0;padding-right:0}.o_login .o_login_box .o_login_providers,.o_login .o_login_box .o_login_provider{-webkit-box-shadow:none;box-shadow:none}.o_login .o_login_messages,.o_login .o_login_box{width:100%;display:block}}.o_home_main h1{text-align:center}.o_home_main .o_icon_rss{line-height:20px;vertical-align:middle}.o_showall{font-size:12px;text-align:right;margin-bottom:5px;margin-top:10px}.o_portlet{position:relative;background-color:#fcfcfc;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_portlet .o_header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_portlet .o_content{padding:6px 12px}.o_portlet .o_portlet_table{margin:-12px;margin-bottom:-6px;margin-top:0}.o_portlet .o_table_empty.o_info{padding:6px}.o_portlet .o_toolbox{position:absolute;top:-1px;right:-1px;z-index:2;background-color:#fff;border:1px solid #faebcc;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;padding:6px 12px}.o_portlet .o_toolbox div{display:inline}.o_portlet .o_edit_shim{position:absolute;height:100%;width:100%;z-index:1;background:#fcf8e3;opacity:0.8}.o_inactive .o_header a{float:right;margin-left:12px;margin-top:10px}.o_portlet_dyk_q{margin-top:5px;font-style:italic}.o_portlet_dyk_a{margin:5px 0}.o_portlet_dyk_next{margin:5px 0;text-align:right}.o_library_icon:before{content:""}.o_library ul{list-style:none;margin:0 0 15px 0;padding:0}.o_library ul ul{margin:0}.o_library_overview .o_library_newest_files ul li{float:left;margin-right:15px}.o_library_catalog_title h2,.o_library_catalog_title h3,.o_library_catalog_title h4,.o_library_catalog_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_catalog_title h2{margin-top:0}.o_library_item{margin-bottom:10px;position:relative}.o_library_item .o_library_visual,.o_library_item .o_library_extra,.o_library_item .o_library_meta{margin-top:15px}.o_library_item .o_library_visual{float:left;background-color:#fff;border-radius:4px;border:1px solid #ddd}.o_library_item .o_library_visual .o_thumbnail_available,.o_library_item .o_library_visual .o_thumbnail_unavailable{background-size:146px auto;width:150px !important;height:150px !important;background-repeat:no-repeat;background-position:50% 50%}.o_library_item .o_library_visual .o_thumbnail_available:before,.o_library_item .o_library_visual .o_thumbnail_unavailable:before{content:none}.o_library_item .o_library_visual .o_thumbnail_available{background-size:146px auto}.o_library_item .o_library_visual .o_thumbnail_unavailable{display:none}.o_library_item .o_library_extra{float:right;width:200px}.o_library_item .o_library_meta{clear:both}.o_library_item .o_library_meta .o_library_desc{padding-bottom:10px}.o_library_item .o_library_meta small{display:block;word-wrap:break-word}.o_library_item h4,.o_library_item .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_item h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:normal}.o_library_item .btn{display:block;margin-bottom:0.5em}.o_library_item .o_comments{display:inline-block}.o_library_item .table{table-layout:fixed;word-wrap:break-word;margin-bottom:0}.o_library_item p.o_library_show_more{text-align:right;margin:0;padding-top:20px}.o_library_item .o_library_more{padding-top:20px;display:none}.o_library_folder{margin-top:-20px}.o_library .o_ratings_and_comments .o_rating_title,.o_library .o_ratings_and_comments .o_rating_explanation{display:none}@media (min-width: 768px){.o_library_item .o_library_meta{clear:none;margin-left:150px;margin-right:200px;padding:0 10px}.o_library_item .o_library_more{display:none}.o_library_item .o_library_more table tbody{vertical-align:top}.o_library_item .o_library_more table tr,.o_library_item .o_library_more table th,.o_library_item .o_library_more table td{display:inline-block}.o_library_item .o_library_more table tr{width:49%}.o_library_item .o_library_more table th{width:30%}.o_library_item .o_library_more table td{width:70%}}.o_library_item_compact .o_library_extra{width:auto}.o_library_item_compact .o_library_meta{padding:0 10px 0 0;margin:0;overflow:hidden}.o_library_item_compact .btn{display:inline-block}.o_library_item_compact h4,.o_library_item_compact .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_item_compact h2{overflow:hidden;margin-right:70px}.o_library_item_compact h4 a,.o_library_item_compact .o_cal .fc-header-title h2 a,.o_cal .fc-header-title .o_library_item_compact h2 a{text-overflow:ellipsis;white-space:nowrap}.o_library_item_compact p.o_library_show_more{padding:20px;position:absolute;top:0;right:0}span.o_translation_i18nitem{position:relative !important}span.o_translation_i18nitem a.o_translation_i18nitem_launcher{position:absolute !important;z-index:100 !important;width:18px !important;height:20px !important;top:0 !important;left:5px !important;background:#fff;border:1px solid #209d9e !important;border-radius:3px;text-align:center;padding:0 !important}.o_user_infos{position:relative}.o_user_infos .o_user_portrait{position:absolute;top:0;left:15px;width:100px;height:100px}.o_user_infos .o_user_infos_inner{margin:0 30px 0 100px}.o_user_infos .o_user_infos_inner table{margin:0 30px 15px 30px}.o_useradmin .o_user_infos .o_user_infos_inner{margin-right:45px}div.o_skype_button{display:inline-block}div.o_skype_button p{margin:0 0 0 0}div.o_skype_button p a img{margin:0 !important;vertical-align:middle !important}.o_useradmin div#o_main_toolbar.o_toolbar{margin-top:0px}.o_members_pagination{text-align:center}.o_bcard_logo{margin-left:10px;height:66px}.o_bcard_title_with_logo{clear:both;padding:20px 0 0 0}.o_visitingcard_image,.o_visitingcard_logo{height:66px}.o_visitingcard .o_icon_visitingcard{display:none}.o_visitingcard .o_portrait_avatar,.o_visitingcard .o_portrait_dummy,.o_visitingcard .o_portrait_dummy_female_big,.o_visitingcard .o_portrait_dummy_male_big,.o_visitingcard .o_portrait_anonymous{width:66px;height:66px;margin-right:10px}@media (max-width: 767px){.o_visitingcard .o_portrait_avatar,.o_visitingcard .o_portrait_dummy,.o_visitingcard .o_portrait_dummy_female_big,.o_visitingcard .o_portrait_dummy_male_big,.o_visitingcard .o_portrait_anonymous{width:50px;height:50px;margin:5px 5px 0 0}.o_visitingcard_image,.o_visitingcard_logo{height:50px}.o_visitingcard_logo,.o_bcard_logo{height:50px;margin:5px 0 0 5px}.o_visitingcard_logo img,.o_bcard_logo img{position:relative;transform:scale(.7575757576);top:-8px}}@media (max-width: 414px){.o_visitingcard_logo img{max-width:260px}}@media (max-width: 375px){.o_visitingcard_logo img{max-width:220px}}@media (max-width: 320px){.o_visitingcard_logo img{max-width:180px}.o_bcard_logo img{max-width:150px}}.o_gta_coach_selection .o_noti{display:inline-block;float:none;margin:0}.o_gta_coach_selection .o_gta_coach_selection_bar{position:relative}.o_gta_coach_selection .o_gta_coach_selection_bar .o_noti{position:absolute;top:3px;right:0}p.o_gta_reopen_warning{margin-top:-20px}.o_lecture_authorized_absence div.form-inline,.o_lecture_authorized_absence div.o_navbar-form{display:inline}.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_date,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_startTime,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_endTime,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_details,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_tools{width:1%}.o_lectures_teacher_overview .o_lectures_current_wrapper{border:1px solid transparent;background:#f8f8f8;border-radius:4px;margin:10px -10px 20px -10px;padding:10px}.o_lectures_teacher_overview .o_lectures_current_wrapper .o_button_group{margin-bottom:0}.o_lectures_teacher_overview .o_lectures_teacher_search .o_form .o_date{padding-right:10px;position:relative}.o_lectures_teacher_overview .o_lectures_teacher_search div.o_chelp_wrapper_and_buttons{position:absolute;top:0;right:0}.o_header_with_buttons .o_day_chooser{position:relative;float:right}.o_lectures_rollcall legend{margin-bottom:10px}.o_lectures_rollcall .o_desc,.o_lectures_rollcall .o_preparation{margin:0}.o_rollcall_next_previous_group{text-align:center}.o_rollcall_next_previous_group a.o_sel_close{float:left}.o_rollcall_next_previous_group a.o_sel_close span{display:none}.o_rollcall_next_previous_group .form-control{display:inline;width:auto}@media (max-width: 767px){.o_rollcall_next_previous_group a span{display:none}}.o_lecture_free{color:#777}.o_rollcall_portrait>div{margin:0 auto 10px auto;width:100px}.o_edubase_pv{overflow:hidden;padding-top:10px}.o_edubase_pv_fig{display:inline-block;vertical-align:top;width:110px;margin-right:3%}.o_edubase_run_enabled .o_edubase_page{font-size:12px;color:#777}.o_edubase_run_disabled .o_edubase_booksection{margin-right:3%;margin-bottom:3%;width:177px;display:inline-table}.o_edubase_run_disabled .o_edubase_page{font-size:12px;color:#777}.o_edubase_bs_buttons{padding-top:10px}.o_edubase_bs_book_id{margin-top:-2px}.o_edubase_bs_details{margin-left:-20px}.o_edubase_bs_details_label{visibility:hidden}.o_edubase_bs_cover object{margin-left:10px;margin-top:10px;height:120px}.o_edubase_bs_cover img{margin-left:10px;margin-top:10px;height:120px}.o_edubase_edit_books .o_icon_error{visibility:hidden}.o_edubase_edit_books .o_icon_help{margin-bottom:0px}.o_edubase_edit_books .row{margin-bottom:5px}.o_edusharing_container.o_in_iframe .edusharing_metadata_wrapper{margin-top:5px}.o_edusharing_container.o_in_iframe .edusharing_metadata.open{position:unset;margin:0;padding:0}.o_edusharing_container.o_in_iframe .edusharing_metadata.open:before{content:unset;border:unset;top:unset;position:unset;left:unset;width:unset;height:unset}.o_edusharing_container.o_hide_license .license{display:none}.o_edusharing_container.o_hide_infos .edusharing_metadata_wrapper{display:none}.o_edusharing_left{display:block;float:left;margin:5px 5px 5px 0}.o_edusharing_right{display:block;float:right;margin:5px 0 5px 5px}.o_edusharing_inline{display:inline-block;margin:0 5px}.o_edusharing_none{display:block;float:none;margin:5px 0}.eduContainer{width:180px;color:transparent}.edusharing_spinner_inner{width:30px;height:50px;display:inline-block}.edusharing_spinner1{background:url("../light/images/edusharing/hex1.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.1s;-moz-animation-delay:0.1s;animation-delay:0.1s}.edusharing_spinner2{background:url("../light/images/edusharing/hex2.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.25s;-moz-animation-delay:0.25s;animation-delay:0.25s}.edusharing_spinner3{background:url("../light/images/edusharing/hex3.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.5s;-moz-animation-delay:0.5s;animation-delay:0.5s}@-webkit-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-moz-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-ms-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-o-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5) rotate(90deg)}100%{transform:scale(1)}}body.o_doceditor_body{margin-bottom:0px}body.o_doceditor_body .o_container_offcanvas{max-width:100%}body.o_doceditor_body .container-fluid{padding-left:0px;padding-right:0px;margin-left:0px;margin-right:0px}body.o_doceditor_body #o_toplink{display:none}.o_doceditor{margin-top:10px}.o_doceditor .o_doceditor_config .nav button{margin-top:3px}.o_doceditor .navbar-collapse{border-top:0 !important}.o_doceditor .navbar-collapse.collapse{display:block !important}.o_doceditor .navbar-nav{margin:0}.o_doceditor .navbar-nav>li,.o_doceditor .navbar-nav{float:left !important}.o_doceditor .navbar-right{float:right !important}.o_doceditor .navbar-nav>li>.dropdown-menu{background-color:#f8f8f8;border-color:#e7e7e7;position:absolute;right:0;left:auto}.o_doceditor .navbar-nav>li>a{padding-top:10px !important;padding-bottom:10px !important;line-height:20px !important}.o_doceditor .o_collabora iframe,.o_doceditor .o_onlyoffice iframe,.o_doceditor .o_office365 iframe{width:100%;height:calc(100vh - 61px);height:calc(var(--doceditorvh, 1vh) * 100 - 61px);margin-top:10px;border-width:0px}.o_doceditor.o_web_document .o_collabora iframe,.o_doceditor.o_web_document .o_onlyoffice iframe,.o_doceditor.o_web_document .o_office365 iframe{width:100%;height:calc(100vh - 321px);height:calc(var(--doceditorvh, 1vh) * 100 - 321px);margin-top:10px;margin-bottom:10px;border-width:1px}.o_doceditor.o_web_document_edit .o_collabora iframe,.o_doceditor.o_web_document_edit .o_onlyoffice iframe,.o_doceditor.o_web_document_edit .o_office365 iframe{width:100%;height:calc(100vh - 276px);height:calc(var(--doceditorvh, 1vh) * 100 - 276px);margin-top:10px;margin-bottom:25px;border-width:1px}.o_doceditor .o_file_editor,.o_doceditor .o_doceditor_data_transfer{margin-right:15px;margin-left:15px}.o_web_content .o_doceditor{margin-top:0px}.o_taxonomy div#o_main_toolbar.o_toolbar{margin-top:0px}.o_taxonomy_listing.o_rendertype_custom .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_taxonomy_listing.o_rendertype_custom .o_taxonomy_row{position:relative;display:inline-block;height:225px;width:450px;vertical-align:top;margin-right:10px}.o_taxonomy_listing.o_rendertype_custom .o_taxonomy_row ul{padding-left:2em}.ui-widget{font-family:Roboto,"Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;font-size:100%}.ui-widget-header{border-top:none;border-left:none;border-right:none;border-bottom:1px solid #eee;background:#fff;font-weight:bold}.ui-icon,.ui-widget-content .ui-icon,.ui-widget-header .ui-icon,.ui-state-default .ui-icon,.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-active .ui-icon,.ui-state-highlight .ui-icon,.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background:none;background-image:none}.ui-dialog{-webkit-box-shadow:0px 1px 8px -1px rgba(0,0,0,0.35);box-shadow:0px 1px 8px -1px rgba(0,0,0,0.35);background-color:#fefefe}.ui-dialog .ui-widget-header .ui-dialog-title{color:#342c24;font-weight:500;font-family:inherit;line-height:1.1}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close:before{content:"ï€" !important}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close span{display:none}.ui-dialog .ui-widget-header .ui-button.ui-corner-all{border:none !important;background:#fff !important;float:right}.ui-dialog .ui-widget-content{border-color:#fff;padding:5px;overflow:auto;background:white !important}.ui-dialog .ui-dialog-titlebar{padding:4px 7px 4px 7px;background-color:#eee !important}.ui-dialog.ui-corner-all{border-radius:4px}.ui-dialog.ui-widget-content{border:1px solid transparent}.ui-dialog.o_modal-ui{max-width:100vw;max-height:100vh}.ui-dialog.o_modal-ui div.ui-dialog-buttonpane{display:none}@media (max-width: 767px){.ui-dialog.o_modal-ui{height:100vh !important;width:100vw !important}.ui-dialog.o_modal-ui div.ui-dialog-content{height:90vh !important}}.ui-slider.ui-slider-horizontal.ui-widget-content{border-color:#aaa;background:#f9f9f9}.ui-slider.ui-slider-horizontal.ui-widget-content.ui-state-disabled{opacity:0.65}.o_has_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:1px solid #209d9e;background-image:none;background-color:#209d9e}.o_no_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:3px solid #209d9e;background-image:none}.ui-datepicker{z-index:2000 !important;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.ui-datepicker .ui-widget-header .ui-corner-all,.ui-datepicker .ui-widget-header .ui-datepicker-next.ui-corner-all{border:none !important;background:#fff !important}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e:before{content:"ï¡";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w:before{content:"ï ";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e,.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w{font-family:'FontAwesome';display:inline-block;background-image:none;background-position:0 0;font-weight:normal;text-indent:0;color:white}.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-next-hover{top:2px}.ui-datepicker .ui-state-default{background:#eee}.ui-datepicker .ui-state-highlight,.ui-datepicker .ui-widget-content .ui-state-highlight{border:1px solid #1c8889;background:#209d9e;color:#fff}.ui-datepicker.ui-corner-all{border-radius:4px}.ui-datepicker.ui-widget-content{border:1px solid transparent}label.mce-label{display:inline;max-width:150px;margin-bottom:0;font-weight:normal}.o_richtext_mce_without_path .mce-statusbar{border:none}.o_richtext_mce_without_path .mce-path{display:none !important}.o_richtext_mce_without_path .mce-menubtn.mce-fixed-width span{width:auto}.o_richtext_mce>.o_richtext_mce_modes{text-align:right;padding-right:4px}.o_richtext_mce>.o_richtext_mce_modes a{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}i.mce-ico.mce-i-media,i.mce-ico.mce-i-movie,i.mce-ico.mce-i-help,i.mce-ico.mce-i-gaptext,i.mce-ico.mce-i-gapnumerical,i.mce-ico.mce-i-hottext,i.mce-ico.mce-i-edit{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}i.mce-ico.mce-i-media:before{content:""}i.mce-ico.mce-i-movie:before{content:""}i.mce-ico.mce-i-gaptext:before{content:"ï…"}i.mce-ico.mce-i-gapnumerical:before{content:""}i.mce-ico.mce-i-hottext:before{content:"ï"}i.mce-ico.mce-i-math:before{content:'\03A3'}i.mce-ico.mce-i-edit:before{content:"ï„"}i.mce-ico.mce-i-help{width:9px;height:9px;padding-top:1px}i.mce-ico.mce-i-help:before{content:"ï™";color:white}.mce-tabs span.o_chelp_wrapper{float:right;margin:5px}.mce-wordcount:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0);content:"ï™"}.mce-danger .mce-wordcount:after{color:#d6001c;content:"ïª"}.mce-statusbar.mce-danger{background-color:#f2dede}.mce-textbox.mce-danger{border-color:#ce8383;background-color:#f2dede}@media (max-width: 470px){.mce-foot .mce-container-body.mce-abs-layout{left:-337px}}div.o_table_search>span.twitter-typeahead{padding-top:5px}.tag.label.label-info{margin-right:3px}@media print{a[href]:after{content:""}#o_header_wrapper,#o_offcanvas_right,#o_navbar_wrapper,#o_footer_wrapper,#o_toplink,#o_main_left,#o_main_right,#o_main_toolbar,#jsMath_PrintWarning,.o_segments,.o_table_toolbar,.o_breadcrumb,.o_bookmark,.o_noti,.o_opener,.o_hide,.o_noprint{display:none !important}.o_container_offcanvas{max-width:100%;margin-left:5px;margin-right:5px}.o_print_break_avoid{page-break-inside:avoid}.o_print_break_before{page-break-before:always}.o_print_break_after{clear:both;page-break-after:always}.btn{display:none}.o_form textarea,.o_form .form-control.textarea_disabled{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fff !important;height:auto !important;color:#000 !important;resize:none}#o_comment_form_link,.o_comments form{display:none !important}.o_avatar{display:none}body.o_dmz{background:white !important;-webkit-print-color-adjust:exact;color-adjust:exact}.modal-content{border:0}.modal-header{display:none}.modal-body{padding:0}.modal-dialog{margin:0 !important;width:100% !important;height:100% !important;background:#fff !important;-webkit-print-color-adjust:exact;color-adjust:exact}.progress{page-break-inside:avoid;-webkit-print-color-adjust:exact;color-adjust:exact;background-color:rgba(0,0,0,0.1) !important;border:1px solid rgba(0,0,0,0.5)}.progress-bar{-webkit-print-color-adjust:exact;background-color:#000 !important;border:10px solid #000}.ui-slider.ui-slider-horizontal.ui-widget-content{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f9f9f9 !important}.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{-webkit-print-color-adjust:exact;color-adjust:exact}.o_has_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{background-color:#209d9e !important}.o_no_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:none !important}.radial-progress,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{page-break-inside:avoid;-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#eee !important}.radial-progress .circle .mask .fill{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#000 !important}.radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#fff !important}.radial-progress .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{opacity:0.3;transition:opacity 0.3}.radial-progress .inset .bgIcon:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon:before,.radial-progress .inset .o_icon_progress_danger:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .o_icon_progress_danger:before,.radial-progress .inset .o_icon_progress_success:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .o_icon_progress_success:before{opacity:0.3;transition:opacity 0.3;color:#777 !important}.radial-progress:not([data-progress="0"]) .inset .bgIcon{opacity:0.3;transition:opacity 0.3;color:#777 !important}body{margin:0;zoom:0.6}table,figure,figure{page-break-inside:avoid}h1,h2,h3,h4,.o_cal .fc-header-title h2,h5,h6{page-break-after:avoid}.o_disclaimer .o_disclaimer_content{max-height:none}}.o_highscore .o_position{text-align:center;font-size:1.2em;font-weight:bold}.o_highscore .o_position h2{font-size:3em;font-weight:700;line-height:1.2em}@media screen and (-webkit-min-device-pixel-ratio: 0){.o_highscore .o_position h2{background:linear-gradient(330deg, #e05252 0%, #99e052 25%, #52e0e0 50%, #9952e0 75%, #e05252 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline}.o_highscore .o_position h2:after{content:"\A";white-space:pre}}.o_highscore .o_position_relative{font-size:1em;font-weight:normal}.o_highscore .o_podium{position:relative;vertical-align:bottom;height:300px;margin-bottom:50px}.o_highscore .o_rank{width:30%;position:absolute;bottom:0;text-shadow:rgba(102,102,102,0.5) 0 -1px 0,rgba(255,255,255,0.6) 0 2px 1px}.o_highscore .o_rank:before{position:absolute;bottom:0;left:0;width:100%;text-align:center}.o_highscore .o_rank .o_name{position:absolute;top:100%;width:100%;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:1em;text-shadow:none}.o_highscore .o_rank .o_score{color:#777;font-size:90%;width:100%;text-align:center;position:absolute;top:-20px;text-shadow:none}.o_highscore .o_rank .o_singleportrait{position:absolute;width:100%;text-align:center;top:-125px}.o_highscore .o_rank .o_rank_portraits{position:relative;left:0;top:-210px;height:180px;width:200px;text-align:center;vertical-align:bottom;display:table-cell}.o_highscore .o_rank .o_rank_portraits ul{display:inline-block}.o_highscore .o_rank .o_rank_portraits .o_portrait{margin:5px}.o_highscore .o_first{height:150px;left:30%;border:1px solid #d9d9d9;border-top-left-radius:4px;border-top-right-radius:4px;background:gold;background:-moz-linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);background:-webkit-linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);background:linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 )}.o_highscore .o_first:before{content:"1";font-size:700%;line-height:150px;color:#666}.o_highscore .o_second{height:100px;left:0;background:silver;background:-moz-linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);background:-webkit-linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);background:linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 );border-left:1px solid #d9d9d9;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-top-left-radius:4px}.o_highscore .o_second:before{content:"2";font-size:500%;line-height:100px;color:#666}.o_highscore .o_third{height:80px;left:60%;background:#cd7f32;background:-moz-linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);background:-webkit-linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);background:linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 );border-right:1px solid #d9d9d9;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-top-right-radius:4px}.o_highscore .o_third:before{content:"3";font-size:300%;line-height:80px;color:#666}.o_highscore .o_histogram{position:relative;bottom:-40px;margin-bottom:40px}.o_highscore .o_histogram .d3chart{width:100%;padding-top:50px;height:300px}.o_highscore .o_histogram .d3chart text{fill:#888}.o_highscore .o_histogram .d3chart .axis path,.o_highscore .o_histogram .d3chart .axis line{stroke:#888}.o_highscore .o_histogram .d3chart .o_myself{fill:#209d9e}.o_highscore .o_histogram .d3chart .o_myself:hover{fill:#29c7c8}.o_highscore .o_histogram .d3chart .o_other{fill:#777}.o_highscore .o_histogram .d3chart .o_other:hover{fill:#919191}.o_highscore .o_histogram .d3chart .o_empty{fill:#000}.o_listing .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_listing table th:nth-of-type(1),.o_listing table th :nth-of-type(2){width:5em}.o_navbar-brand{background-image:url("images/OpenOlat_Logo_RGB.svg");background-position:-35px -62px;background-size:250px;background-repeat:no-repeat;height:50px;width:60px}#o_print_brand .o_navbar-brand{background-image:url("images/OpenOlat_Logo_RGB.svg")}.o_cmembers_print #o_print_brand{width:5cm}#o_body.o_dmz .o_navbar-brand{display:none}#o_body.o_dmz .o_login .o_login_intro{position:relative;text-align:center}#o_body.o_dmz .o_login .o_login_intro:before{content:' ';display:inline-block;background-image:url("images/OpenOlat_Logo_claim_RGB.svg");background-repeat:no-repeat;background-position:0px -110px;background-size:100%;width:400px;max-width:100%;height:90px}#o_body.o_dmz .o_login .o_login_intro h1{display:none}@media (min-width: 767px){#o_body.o_dmz #o_bg{background-position:top left;border-top:0;border-bottom:0}#o_body.o_dmz #o_navbar_wrapper{border:0}#o_body.o_dmz .o_login{background:rgba(255,255,255,0.8);width:480px;left:10%;padding:40px;border-radius:20px;position:relative}#o_body.o_dmz .o_login .o_login_intro{padding-top:120px}#o_body.o_dmz .o_login .o_login_intro:before{position:absolute;top:0;left:-25px;background-position:-40px -150px;background-size:510px;width:460px;height:110px}#o_body.o_dmz .o_infomessage_wrapper{background:rgba(255,255,255,0.8);left:500px;width:400px;top:-30px;width:400xp;position:absolute;border-radius:20px}#o_body.o_dmz #o_navbar_wrapper{background:transparent}#o_body.o_dmz .o_navbar-nav>li>a,#o_body.o_dmz #o_footer_wrapper a{color:#FFF}#o_body.o_dmz .o_navbar-nav>li>a:hover,#o_body.o_dmz #o_footer_wrapper a:hover{background-color:transparent}#o_body.o_dmz #o_footer_wrapper{background:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.2) 40%, rgba(0,0,0,0.5) 100%);border:0;height:100px;padding-top:30px}#o_body.o_dmz #o_footer_container{background:transparent;color:#FFF}#o_body.o_dmz #o_share_social_container a{color:#209d9e}#o_body.o_dmz #o_share_social_container a:hover{color:#177374}}#o_footer_wrapper{border-top:1px solid #e6e6e6} +**//*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff !important}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:Roboto,"Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;font-size:14px;line-height:1.428571429;color:#2d2926;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#209d9e;text-decoration:none}a:hover,a:focus{color:#177374;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail,.o_form .o_filepreview img,.o_feed .o_media{padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,.o_cal .fc-header-title h2,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:#342c24}h1 small,h1 .small,h2 small,h2 .small,h3 small,h3 .small,h4 small,.o_cal .fc-header-title h2 small,h4 .small,.o_cal .fc-header-title h2 .small,h5 small,h5 .small,h6 small,h6 .small,.h1 small,.h1 .small,.h2 small,.h2 .small,.h3 small,.h3 .small,.h4 small,.h4 .small,.h5 small,.h5 .small,.h6 small,.h6 .small{font-weight:normal;line-height:1;color:#777}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,h1 .small,.h1 small,.h1 .small,h2 small,h2 .small,.h2 small,.h2 .small,h3 small,h3 .small,.h3 small,.h3 .small{font-size:65%}h4,.o_cal .fc-header-title h2,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.o_cal .fc-header-title h2 small,h4 .small,.o_cal .fc-header-title h2 .small,.h4 small,.h4 .small,h5 small,h5 .small,.h5 small,.h5 .small,h6 small,h6 .small,.h6 small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.o_cal .fc-header-title h2,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width: 768px){.lead{font-size:21px}}small,.small{font-size:85%}mark,.mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#209d9e}a.text-primary:hover{color:#177374}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff}.bg-primary{background-color:#209d9e}a.bg-primary:hover{background-color:#177374}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ul ol,ol ul,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}.dl-horizontal dd:before,.dl-horizontal dd:after{content:" ";display:table}.dl-horizontal dd:after{clear:both}@media (min-width: 768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.428571429;color:#777}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse footer:before,.blockquote-reverse small:before,.blockquote-reverse .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,.blockquote-reverse small:after,.blockquote-reverse .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:bold;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container:before,.container:after{content:" ";display:table}.container:after{clear:both}@media (min-width: 768px){.container{width:750px}}@media (min-width: 992px){.container{width:970px}}@media (min-width: 1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.container-fluid:before,.container-fluid:after{content:" ";display:table}.container-fluid:after{clear:both}.row{margin-left:-15px;margin-right:-15px}.row:before,.row:after{content:" ";display:table}.row:after{clear:both}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-1{width:8.3333333333%}.col-xs-2{width:16.6666666667%}.col-xs-3{width:25%}.col-xs-4{width:33.3333333333%}.col-xs-5{width:41.6666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.3333333333%}.col-xs-8{width:66.6666666667%}.col-xs-9{width:75%}.col-xs-10{width:83.3333333333%}.col-xs-11{width:91.6666666667%}.col-xs-12{width:100%}.col-xs-pull-0{right:auto}.col-xs-pull-1{right:8.3333333333%}.col-xs-pull-2{right:16.6666666667%}.col-xs-pull-3{right:25%}.col-xs-pull-4{right:33.3333333333%}.col-xs-pull-5{right:41.6666666667%}.col-xs-pull-6{right:50%}.col-xs-pull-7{right:58.3333333333%}.col-xs-pull-8{right:66.6666666667%}.col-xs-pull-9{right:75%}.col-xs-pull-10{right:83.3333333333%}.col-xs-pull-11{right:91.6666666667%}.col-xs-pull-12{right:100%}.col-xs-push-0{left:auto}.col-xs-push-1{left:8.3333333333%}.col-xs-push-2{left:16.6666666667%}.col-xs-push-3{left:25%}.col-xs-push-4{left:33.3333333333%}.col-xs-push-5{left:41.6666666667%}.col-xs-push-6{left:50%}.col-xs-push-7{left:58.3333333333%}.col-xs-push-8{left:66.6666666667%}.col-xs-push-9{left:75%}.col-xs-push-10{left:83.3333333333%}.col-xs-push-11{left:91.6666666667%}.col-xs-push-12{left:100%}.col-xs-offset-0{margin-left:0%}.col-xs-offset-1{margin-left:8.3333333333%}.col-xs-offset-2{margin-left:16.6666666667%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-4{margin-left:33.3333333333%}.col-xs-offset-5{margin-left:41.6666666667%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-7{margin-left:58.3333333333%}.col-xs-offset-8{margin-left:66.6666666667%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-10{margin-left:83.3333333333%}.col-xs-offset-11{margin-left:91.6666666667%}.col-xs-offset-12{margin-left:100%}@media (min-width: 768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-1{width:8.3333333333%}.col-sm-2{width:16.6666666667%}.col-sm-3{width:25%}.col-sm-4{width:33.3333333333%}.col-sm-5{width:41.6666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.3333333333%}.col-sm-8{width:66.6666666667%}.col-sm-9{width:75%}.col-sm-10{width:83.3333333333%}.col-sm-11{width:91.6666666667%}.col-sm-12{width:100%}.col-sm-pull-0{right:auto}.col-sm-pull-1{right:8.3333333333%}.col-sm-pull-2{right:16.6666666667%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.3333333333%}.col-sm-pull-5{right:41.6666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.3333333333%}.col-sm-pull-8{right:66.6666666667%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.3333333333%}.col-sm-pull-11{right:91.6666666667%}.col-sm-pull-12{right:100%}.col-sm-push-0{left:auto}.col-sm-push-1{left:8.3333333333%}.col-sm-push-2{left:16.6666666667%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.3333333333%}.col-sm-push-5{left:41.6666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.3333333333%}.col-sm-push-8{left:66.6666666667%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.3333333333%}.col-sm-push-11{left:91.6666666667%}.col-sm-push-12{left:100%}.col-sm-offset-0{margin-left:0%}.col-sm-offset-1{margin-left:8.3333333333%}.col-sm-offset-2{margin-left:16.6666666667%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.3333333333%}.col-sm-offset-5{margin-left:41.6666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.3333333333%}.col-sm-offset-8{margin-left:66.6666666667%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.3333333333%}.col-sm-offset-11{margin-left:91.6666666667%}.col-sm-offset-12{margin-left:100%}}@media (min-width: 992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-1{width:8.3333333333%}.col-md-2{width:16.6666666667%}.col-md-3{width:25%}.col-md-4{width:33.3333333333%}.col-md-5{width:41.6666666667%}.col-md-6{width:50%}.col-md-7{width:58.3333333333%}.col-md-8{width:66.6666666667%}.col-md-9{width:75%}.col-md-10{width:83.3333333333%}.col-md-11{width:91.6666666667%}.col-md-12{width:100%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.3333333333%}.col-md-pull-2{right:16.6666666667%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.3333333333%}.col-md-pull-5{right:41.6666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.3333333333%}.col-md-pull-8{right:66.6666666667%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.3333333333%}.col-md-pull-11{right:91.6666666667%}.col-md-pull-12{right:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.3333333333%}.col-md-push-2{left:16.6666666667%}.col-md-push-3{left:25%}.col-md-push-4{left:33.3333333333%}.col-md-push-5{left:41.6666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.3333333333%}.col-md-push-8{left:66.6666666667%}.col-md-push-9{left:75%}.col-md-push-10{left:83.3333333333%}.col-md-push-11{left:91.6666666667%}.col-md-push-12{left:100%}.col-md-offset-0{margin-left:0%}.col-md-offset-1{margin-left:8.3333333333%}.col-md-offset-2{margin-left:16.6666666667%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.3333333333%}.col-md-offset-5{margin-left:41.6666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.3333333333%}.col-md-offset-8{margin-left:66.6666666667%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.3333333333%}.col-md-offset-11{margin-left:91.6666666667%}.col-md-offset-12{margin-left:100%}}@media (min-width: 1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-1{width:8.3333333333%}.col-lg-2{width:16.6666666667%}.col-lg-3{width:25%}.col-lg-4{width:33.3333333333%}.col-lg-5{width:41.6666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.3333333333%}.col-lg-8{width:66.6666666667%}.col-lg-9{width:75%}.col-lg-10{width:83.3333333333%}.col-lg-11{width:91.6666666667%}.col-lg-12{width:100%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.3333333333%}.col-lg-pull-2{right:16.6666666667%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.3333333333%}.col-lg-pull-5{right:41.6666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.3333333333%}.col-lg-pull-8{right:66.6666666667%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.3333333333%}.col-lg-pull-11{right:91.6666666667%}.col-lg-pull-12{right:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.3333333333%}.col-lg-push-2{left:16.6666666667%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.3333333333%}.col-lg-push-5{left:41.6666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.3333333333%}.col-lg-push-8{left:66.6666666667%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.3333333333%}.col-lg-push-11{left:91.6666666667%}.col-lg-push-12{left:100%}.col-lg-offset-0{margin-left:0%}.col-lg-offset-1{margin-left:8.3333333333%}.col-lg-offset-2{margin-left:16.6666666667%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.3333333333%}.col-lg-offset-5{margin-left:41.6666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.3333333333%}.col-lg-offset-8{margin-left:66.6666666667%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.3333333333%}.col-lg-offset-11{margin-left:91.6666666667%}.col-lg-offset-12{margin-left:100%}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>thead>tr>td,.table>tbody>tr>th,.table>tbody>tr>td,.table>tfoot>tr>th,.table>tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>th,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>thead>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>thead>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>thead>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>thead>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>thead>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width: 767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}input[type="range"]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;background-color:#fcfcfc;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;-o-transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;transition:border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#fafafa;opacity:1}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio: 0){input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{line-height:34px}input[type="date"].input-sm,.input-group-sm>input[type="date"].form-control,.input-group-sm>input[type="date"].input-group-addon,.input-group-sm>.input-group-btn>input[type="date"].btn,input[type="time"].input-sm,.input-group-sm>input[type="time"].form-control,.input-group-sm>input[type="time"].input-group-addon,.input-group-sm>.input-group-btn>input[type="time"].btn,input[type="datetime-local"].input-sm,.input-group-sm>input[type="datetime-local"].form-control,.input-group-sm>input[type="datetime-local"].input-group-addon,.input-group-sm>.input-group-btn>input[type="datetime-local"].btn,input[type="month"].input-sm,.input-group-sm>input[type="month"].form-control,.input-group-sm>input[type="month"].input-group-addon,.input-group-sm>.input-group-btn>input[type="month"].btn{line-height:30px}input[type="date"].input-lg,.input-group-lg>input[type="date"].form-control,.input-group-lg>input[type="date"].input-group-addon,.input-group-lg>.input-group-btn>input[type="date"].btn,input[type="time"].input-lg,.input-group-lg>input[type="time"].form-control,.input-group-lg>input[type="time"].input-group-addon,.input-group-lg>.input-group-btn>input[type="time"].btn,input[type="datetime-local"].input-lg,.input-group-lg>input[type="datetime-local"].form-control,.input-group-lg>input[type="datetime-local"].input-group-addon,.input-group-lg>.input-group-btn>input[type="datetime-local"].btn,input[type="month"].input-lg,.input-group-lg>input[type="month"].form-control,.input-group-lg>input[type="month"].input-group-addon,.input-group-lg>.input-group-btn>input[type="month"].btn{line-height:46px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="radio"].disabled,fieldset[disabled] input[type="radio"],input[type="checkbox"][disabled],input[type="checkbox"].disabled,fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}.radio-inline.disabled,fieldset[disabled] .radio-inline,.checkbox-inline.disabled,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,fieldset[disabled] .radio label,.checkbox.disabled label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.input-group-lg>.form-control-static.form-control,.input-group-lg>.form-control-static.input-group-addon,.input-group-lg>.input-group-btn>.form-control-static.btn,.form-control-static.input-sm,.input-group-sm>.form-control-static.form-control,.input-group-sm>.form-control-static.input-group-addon,.input-group-sm>.input-group-btn>.form-control-static.btn{padding-left:0;padding-right:0}.input-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn,.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm,.input-group-sm>select.form-control,.input-group-sm>select.input-group-addon,.input-group-sm>.input-group-btn>select.btn,.form-group-sm .form-control{height:30px;line-height:30px}textarea.input-sm,.input-group-sm>textarea.form-control,.input-group-sm>textarea.input-group-addon,.input-group-sm>.input-group-btn>textarea.btn,.form-group-sm .form-control,select[multiple].input-sm,.input-group-sm>select[multiple].form-control,.input-group-sm>select[multiple].input-group-addon,.input-group-sm>.input-group-btn>select[multiple].btn,.form-group-sm .form-control{height:auto}.input-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn,.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg,.input-group-lg>select.form-control,.input-group-lg>select.input-group-addon,.input-group-lg>.input-group-btn>select.btn,.form-group-lg .form-control{height:46px;line-height:46px}textarea.input-lg,.input-group-lg>textarea.form-control,.input-group-lg>textarea.input-group-addon,.input-group-lg>.input-group-btn>textarea.btn,.form-group-lg .form-control,select[multiple].input-lg,.input-group-lg>select[multiple].form-control,.input-group-lg>select[multiple].input-group-addon,.input-group-lg>.input-group-btn>select[multiple].btn,.form-group-lg .form-control{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback,.input-group-lg>.form-control+.form-control-feedback,.input-group-lg>.input-group-addon+.form-control-feedback,.input-group-lg>.input-group-btn>.btn+.form-control-feedback{width:46px;height:46px;line-height:46px}.input-sm+.form-control-feedback,.input-group-sm>.form-control+.form-control-feedback,.input-group-sm>.input-group-addon+.form-control-feedback,.input-group-sm>.input-group-btn>.btn+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label ~ .form-control-feedback{top:25px}.has-feedback label.sr-only ~ .form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#726860}@media (min-width: 768px){.form-inline .form-group,.o_navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control,.o_navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static,.o_navbar-form .form-control-static{display:inline-block}.form-inline .input-group,.o_navbar-form .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.o_navbar-form .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.o_navbar-form .input-group .input-group-btn,.form-inline .input-group .form-control,.o_navbar-form .input-group .form-control{width:auto}.form-inline .input-group>.form-control,.o_navbar-form .input-group>.form-control{width:100%}.form-inline .control-label,.o_navbar-form .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.o_navbar-form .radio,.form-inline .checkbox,.o_navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.o_navbar-form .radio label,.form-inline .checkbox label,.o_navbar-form .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.o_navbar-form .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"],.o_navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback,.o_navbar-form .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{content:" ";display:table}.form-horizontal .form-group:after{clear:both}@media (min-width: 768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width: 768px){.form-horizontal .form-group-lg .control-label{padding-top:14.3px}}@media (min-width: 768px){.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn.focus,.btn:active:focus,.btn:active.focus,.btn.active:focus,.btn.active.focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#333;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fcfcfc;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default.focus,.btn-default:active,.btn-default.active,.open>.btn-default.dropdown-toggle{color:#333;background-color:#e3e3e3;border-color:#adadad}.btn-default:active,.btn-default.active,.open>.btn-default.dropdown-toggle{background-image:none}.btn-default.disabled,.btn-default.disabled:hover,.btn-default.disabled:focus,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled.active,.btn-default[disabled],.btn-default[disabled]:hover,.btn-default[disabled]:focus,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled].active,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default:hover,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default.active{background-color:#fcfcfc;border-color:#ccc}.btn-default .badge{color:#fcfcfc;background-color:#333}.btn-primary{color:#fff;background-color:#209d9e;border-color:#1c8889}.btn-primary:hover,.btn-primary:focus,.btn-primary.focus,.btn-primary:active,.btn-primary.active,.open>.btn-primary.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.btn-primary:active,.btn-primary.active,.open>.btn-primary.dropdown-toggle{background-image:none}.btn-primary.disabled,.btn-primary.disabled:hover,.btn-primary.disabled:focus,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled.active,.btn-primary[disabled],.btn-primary[disabled]:hover,.btn-primary[disabled]:focus,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary:hover,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary.active{background-color:#209d9e;border-color:#1c8889}.btn-primary .badge{color:#209d9e;background-color:#fff}.btn-success{color:#fff;background-color:#78be20;border-color:#6aa81c}.btn-success:hover,.btn-success:focus,.btn-success.focus,.btn-success:active,.btn-success.active,.open>.btn-success.dropdown-toggle{color:#fff;background-color:#5c9219;border-color:#497414}.btn-success:active,.btn-success.active,.open>.btn-success.dropdown-toggle{background-image:none}.btn-success.disabled,.btn-success.disabled:hover,.btn-success.disabled:focus,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled.active,.btn-success[disabled],.btn-success[disabled]:hover,.btn-success[disabled]:focus,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled].active,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success:hover,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success.active{background-color:#78be20;border-color:#6aa81c}.btn-success .badge{color:#78be20;background-color:#fff}.btn-info{color:#fff;background-color:#a6a6a6;border-color:#999}.btn-info:hover,.btn-info:focus,.btn-info.focus,.btn-info:active,.btn-info.active,.open>.btn-info.dropdown-toggle{color:#fff;background-color:#8d8d8d;border-color:#7b7b7b}.btn-info:active,.btn-info.active,.open>.btn-info.dropdown-toggle{background-image:none}.btn-info.disabled,.btn-info.disabled:hover,.btn-info.disabled:focus,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled.active,.btn-info[disabled],.btn-info[disabled]:hover,.btn-info[disabled]:focus,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled].active,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info:hover,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info.active{background-color:#a6a6a6;border-color:#999}.btn-info .badge{color:#a6a6a6;background-color:#fff}.btn-warning{color:#fff;background-color:#f2af40;border-color:#f0a528}.btn-warning:hover,.btn-warning:focus,.btn-warning.focus,.btn-warning:active,.btn-warning.active,.open>.btn-warning.dropdown-toggle{color:#fff;background-color:#ef9b10;border-color:#cd850e}.btn-warning:active,.btn-warning.active,.open>.btn-warning.dropdown-toggle{background-image:none}.btn-warning.disabled,.btn-warning.disabled:hover,.btn-warning.disabled:focus,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled.active,.btn-warning[disabled],.btn-warning[disabled]:hover,.btn-warning[disabled]:focus,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning:hover,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning.active{background-color:#f2af40;border-color:#f0a528}.btn-warning .badge{color:#f2af40;background-color:#fff}.btn-danger{color:#fff;background-color:#d6001c;border-color:#bd0019}.btn-danger:hover,.btn-danger:focus,.btn-danger.focus,.btn-danger:active,.btn-danger.active,.open>.btn-danger.dropdown-toggle{color:#fff;background-color:#a30015;border-color:#7f0011}.btn-danger:active,.btn-danger.active,.open>.btn-danger.dropdown-toggle{background-image:none}.btn-danger.disabled,.btn-danger.disabled:hover,.btn-danger.disabled:focus,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled.active,.btn-danger[disabled],.btn-danger[disabled]:hover,.btn-danger[disabled]:focus,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger:hover,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger.active{background-color:#d6001c;border-color:#bd0019}.btn-danger .badge{color:#d6001c;background-color:#fff}.btn-link{color:#209d9e;font-weight:normal;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#177374;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:hover,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity 0.15s linear;-o-transition:opacity 0.15s linear;transition:opacity 0.15s linear}.fade.in{opacity:1}.collapse{display:none;visibility:hidden}.collapse.in{display:block;visibility:visible}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:0.35s;transition-duration:0.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fcfcfc;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#209d9e}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#777}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width: 768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar:before,.btn-toolbar:after{content:" ";display:table}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle,.btn-group-lg.btn-group>.btn+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret,.btn-group-lg>.btn .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret,.dropup .btn-group-lg>.btn .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{content:" ";display:table}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*="col-"]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.input-group-addon.btn{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.input-group-addon.btn{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav:before,.nav:after{content:" ";display:table}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#209d9e}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#209d9e}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified,.nav-tabs.nav-justified{width:100%}.nav-justified>li,.nav-tabs.nav-justified>li{float:none}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width: 768px){.nav-justified>li,.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a,.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified,.nav-tabs.nav-justified{border-bottom:0}.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs.nav-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width: 768px){.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs.nav-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none;visibility:hidden}.tab-content>.active{display:block;visibility:visible}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{content:" ";display:table}.navbar:after{clear:both}@media (min-width: 768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{content:" ";display:table}.navbar-header:after{clear:both}@media (min-width: 768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{content:" ";display:table}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media (min-width: 768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block !important;visibility:visible !important;height:auto !important;padding-bottom:0;overflow:visible !important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width: 480px) and (orientation: landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width: 768px){.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width: 768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width: 768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width: 768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width: 768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width: 767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width: 768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (min-width: 768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width: 767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width: 768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm,.btn-group-sm>.navbar-btn.btn{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs,.btn-group-xs>.navbar-btn.btn{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width: 768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width: 768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right ~ .navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}@media (max-width: 767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#333}.navbar-default .btn-link[disabled]:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:hover,fieldset[disabled] .navbar-default .btn-link:focus{color:#ccc}.navbar-inverse{background-color:#222;border-color:#090909}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#090909;color:#fff}@media (max-width: 767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#090909}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#fff}.navbar-inverse .btn-link[disabled]:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:hover,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/ ";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.428571429;text-decoration:none;color:#209d9e;background-color:#fcfcfc;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>a:focus,.pagination>li>span:hover,.pagination>li>span:focus{color:#177374;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:hover,.pagination>.active>a:focus,.pagination>.active>span,.pagination>.active>span:hover,.pagination>.active>span:focus{z-index:2;color:#fcfcfc;background-color:#209d9e;border-color:#209d9e;cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager:before,.pager:after{content:" ";display:table}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fcfcfc;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#777;background-color:#fcfcfc;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label:empty{display:none}.btn .label{position:relative;top:-1px}a.label:hover,a.label:focus{color:#fff;text-decoration:none;cursor:pointer}.label-default{background-color:#777}.label-default[href]:hover,.label-default[href]:focus{background-color:#5e5e5e}.label-primary{background-color:#209d9e}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#177374}.label-success{background-color:#78be20}.label-success[href]:hover,.label-success[href]:focus{background-color:#5c9219}.label-info{background-color:#a6a6a6}.label-info[href]:hover,.label-info[href]:focus{background-color:#8d8d8d}.label-warning{background-color:#f2af40}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ef9b10}.label-danger{background-color:#d6001c}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#a30015}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge,.btn-group-xs>.btn .badge{top:0;padding:1px 5px}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#209d9e;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.jumbotron,.o_repo_details .o_lead{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.o_repo_details .o_lead h1,.jumbotron .h1,.o_repo_details .o_lead .h1{color:#342c24}.jumbotron p,.o_repo_details .o_lead p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr,.o_repo_details .o_lead>hr{border-top-color:#d5d5d5}.container .jumbotron,.container .o_repo_details .o_lead,.o_repo_details .container .o_lead,.container-fluid .jumbotron,.container-fluid .o_repo_details .o_lead,.o_repo_details .container-fluid .o_lead{border-radius:6px}.jumbotron .container,.o_repo_details .o_lead .container{max-width:100%}@media screen and (min-width: 768px){.jumbotron,.o_repo_details .o_lead{padding:48px 0}.container .jumbotron,.container .o_repo_details .o_lead,.o_repo_details .container .o_lead,.container-fluid .jumbotron,.container-fluid .o_repo_details .o_lead,.o_repo_details .container-fluid .o_lead{padding-left:60px;padding-right:60px}.jumbotron h1,.o_repo_details .o_lead h1,.jumbotron .h1,.o_repo_details .o_lead .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border 0.2s ease-in-out;-o-transition:border 0.2s ease-in-out;transition:border 0.2s ease-in-out}.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto;margin-left:auto;margin-right:auto}.thumbnail .caption{padding:9px;color:#2d2926}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#209d9e}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4,.alert .o_cal .fc-header-title h2,.o_cal .fc-header-title .alert h2{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#209d9e;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;-o-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar,.progress-bar-striped{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#78be20}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#a6a6a6}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f2af40}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d6001c}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fcfcfc;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;color:#555;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#209d9e;border-color:#209d9e}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#9febeb}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fcfcfc;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{content:" ";display:table}.panel-body:after{clear:both}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table,.panel-collapse>.table,.panel-collapse>.table-responsive>.table,.panel-collapse>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption,.panel-collapse>.table caption,.panel-collapse>.table-responsive>.table caption,.panel-collapse>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child,.panel-collapse>.table:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel-collapse>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel-collapse>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel-collapse>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child,.panel-collapse>.table:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel-collapse>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel-collapse>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel-collapse>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body,.panel-collapse>.panel-body+.table,.panel-collapse>.panel-body+.table-responsive,.panel-collapse>.table+.panel-body,.panel-collapse>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td,.panel-collapse>.table>tbody:first-child>tr:first-child th,.panel-collapse>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered,.panel-collapse>.table-bordered,.panel-collapse>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel-collapse>.table-bordered>thead>tr>th:first-child,.panel-collapse>.table-bordered>thead>tr>td:first-child,.panel-collapse>.table-bordered>tbody>tr>th:first-child,.panel-collapse>.table-bordered>tbody>tr>td:first-child,.panel-collapse>.table-bordered>tfoot>tr>th:first-child,.panel-collapse>.table-bordered>tfoot>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel-collapse>.table-bordered>thead>tr>th:last-child,.panel-collapse>.table-bordered>thead>tr>td:last-child,.panel-collapse>.table-bordered>tbody>tr>th:last-child,.panel-collapse>.table-bordered>tbody>tr>td:last-child,.panel-collapse>.table-bordered>tfoot>tr>th:last-child,.panel-collapse>.table-bordered>tfoot>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel-collapse>.table-bordered>thead>tr:first-child>td,.panel-collapse>.table-bordered>thead>tr:first-child>th,.panel-collapse>.table-bordered>tbody>tr:first-child>td,.panel-collapse>.table-bordered>tbody>tr:first-child>th,.panel-collapse>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel-collapse>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel-collapse>.table-bordered>tbody>tr:last-child>td,.panel-collapse>.table-bordered>tbody>tr:last-child>th,.panel-collapse>.table-bordered>tfoot>tr:last-child>td,.panel-collapse>.table-bordered>tfoot>tr:last-child>th,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel-collapse>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel-collapse>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive,.panel-collapse>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#209d9e}.panel-primary>.panel-heading{color:#fff;background-color:#209d9e;border-color:#209d9e}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#209d9e}.panel-primary>.panel-heading .badge{color:#209d9e;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#209d9e}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);-o-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform 0.3s ease-out;-moz-transition:-moz-transform 0.3s ease-out;-o-transition:-o-transform 0.3s ease-out;transition:transform 0.3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box;outline:0}.modal-backdrop{position:absolute;top:0;right:0;left:0;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.428571429px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{content:" ";display:table}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width: 768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}.modal-sm{width:300px}}@media (min-width: 992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;visibility:visible;font-family:Roboto,"Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;font-size:12px;font-weight:normal;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:Roboto,"Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important;visibility:hidden !important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none !important}@media (max-width: 767px){.visible-xs{display:block !important}table.visible-xs{display:table}tr.visible-xs{display:table-row !important}th.visible-xs,td.visible-xs{display:table-cell !important}}@media (max-width: 767px){.visible-xs-block{display:block !important}}@media (max-width: 767px){.visible-xs-inline{display:inline !important}}@media (max-width: 767px){.visible-xs-inline-block{display:inline-block !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm{display:block !important}table.visible-sm{display:table}tr.visible-sm{display:table-row !important}th.visible-sm,td.visible-sm{display:table-cell !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-block{display:block !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-inline{display:inline !important}}@media (min-width: 768px) and (max-width: 991px){.visible-sm-inline-block{display:inline-block !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md{display:block !important}table.visible-md{display:table}tr.visible-md{display:table-row !important}th.visible-md,td.visible-md{display:table-cell !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-block{display:block !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-inline{display:inline !important}}@media (min-width: 992px) and (max-width: 1199px){.visible-md-inline-block{display:inline-block !important}}@media (min-width: 1200px){.visible-lg{display:block !important}table.visible-lg{display:table}tr.visible-lg{display:table-row !important}th.visible-lg,td.visible-lg{display:table-cell !important}}@media (min-width: 1200px){.visible-lg-block{display:block !important}}@media (min-width: 1200px){.visible-lg-inline{display:inline !important}}@media (min-width: 1200px){.visible-lg-inline-block{display:inline-block !important}}@media (max-width: 767px){.hidden-xs{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.hidden-sm{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.hidden-md{display:none !important}}@media (min-width: 1200px){.hidden-lg{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}body .modal{position:absolute;overflow:visible}body div.tooltip-inner{max-width:400px}body div.popover{max-width:450px}body div.popover input{max-width:100%}body .modal-body.alert{border-radius:0}body .progress{margin-bottom:0}.panel-body:nth-child(n+2){border-top:1px solid #ddd}.panel .panel-heading[data-toggle="collapse"]{cursor:pointer}#o_ajax_busy_backdrop{bottom:0;z-index:1020}.form-control-feedback{top:10px}.form-horizontal .has-feedback .form-control-feedback{top:10px}.btn.btn-primary.o_disabled{color:#fff !important}body .progress-bar[aria-valuenow="1"],body .progress-bar[aria-valuenow="2"]{min-width:1px}td.text-left>div.form-inline>label.checkbox-inline>input[type='checkbox'],td.text-left>div.o_navbar-form>label.checkbox-inline>input[type='checkbox']{position:relative}@-moz-document url-prefix(){fieldset{display:table-cell}}@media screen and (max-width: 768px){@supports (-webkit-overflow-scrolling: touch){.form-control,.ui-widget input,.ui-widget select,.ui-widget textarea{font-size:16px}}}@font-face{font-family:'openolat';src:url("../light/fonts/openolat/openolat.eot?4yacgg");src:url("../light/fonts/openolat/openolat.woff") format("woff"),url("../light/fonts/openolat/openolat.ttf") format("truetype"),url("../light/fonts/openolat/openolat.svg") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:'FontAwesome';src:url("../../font-awesome/fonts/fontawesome-webfont.eot");src:url("../../font-awesome/fonts/fontawesome-webfont.woff2") format("woff2"),url("../../font-awesome/fonts/fontawesome-webfont.woff") format("woff"),url("../../font-awesome/fonts/fontawesome-webfont.ttf") format("truetype");font-weight:normal;font-style:normal}.o_icon,.o_progress_failed .inset:after,.o_progress_passed .inset:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_icon-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-15%}.o_icon-2x{font-size:2em}.o_icon-3x{font-size:3em}.o_icon-4x{font-size:4em}.o_icon-5x{font-size:5em}.o_icon-fw{width:1.2857142857em;text-align:center}.o_icon-ul{padding-left:0;margin-left:2.1428571429em;list-style-type:none}.o_icon-ul>li{position:relative}.o_icon-li{position:absolute;left:-2.1428571429em;width:2.1428571429em;top:.1428571429em;text-align:center}.o_icon-li.o_icon-lg{left:-1.8571428571em}.o_icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.o_icon-pull-left{float:left}.o_icon-pull-right{float:right}.o_icon.o_icon-pull-left,.o_progress_failed .o_icon-pull-left.inset:after,.o_progress_passed .o_icon-pull-left.inset:after{margin-right:.3em}.o_icon.o_icon-pull-right,.o_progress_failed .o_icon-pull-right.inset:after,.o_progress_passed .o_icon-pull-right.inset:after{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.o_icon.pull-left,.o_progress_failed .pull-left.inset:after,.o_progress_passed .pull-left.inset:after{margin-right:.3em}.o_icon.pull-right,.o_progress_failed .pull-right.inset:after,.o_progress_passed .pull-right.inset:after{margin-left:.3em}.o_icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.o_icon-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.o_icon-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.o_icon-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.o_icon-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.o_icon-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.o_icon-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .o_icon-rotate-90,:root .o_icon-rotate-180,:root .o_icon-rotate-270,:root .o_icon-flip-horizontal,:root .o_icon-flip-vertical{filter:none}.o_icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.o_icon-stack-1x,.o_icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.o_icon-stack-1x{line-height:inherit}.o_icon-stack-2x{font-size:2em}.o_icon-inverse{color:#fff}.o_icon_absence:before{content:"ï€"}.o_icon_absence_authorized:before{content:"ï";color:#78be20}.o_icon_absence_leave:before{content:""}.o_icon_absence_unauthorized:before{content:"ïª";color:#d6001c}.o_icon_accepted:before{content:"ï…¤"}.o_icon_accessibility:before{content:""}.o_icon_actions:before{content:"ï‚…"}.o_icon_activate:before{content:"ï"}.o_icon_add_html:before{content:"ï„¡"}.o_icon_align_left:before{content:""}.o_icon_align_middle:before{content:""}.o_icon_align_right:before{content:""}.o_icon_archive_tool:before{content:""}.o_icon_assessment_mode:before{content:"ï„"}.o_icon_assessment_tool:before{content:"ï‚‘"}.o_icon_assignment:before{content:"";color:#d6001c}.o_icon_attempt_limit:before{content:""}.o_icon_accept:before{content:"";color:#78be20}.o_icon_add:before{content:"ï•"}.o_icon_add_member:before{content:""}.o_icon_add_search:before{content:""}.o_icon_audio:before{content:""}.o_icon_back:before{content:"ï“"}.o_icon_back_history:before{content:""}.o_icon_banned:before{content:"";color:#d6001c}.o_icon_bold:before{content:""}.o_icon_booking:before{content:"ïº"}.o_icon_bookmark:before{content:"";color:#8f1f40}.o_icon_bookmark_add:before{content:"ï‚—";color:#8f1f40}.o_icon_bookmark_header:before{content:""}.o_icon_browse:before{content:""}.o_icon_brush:before{content:""}.o_icon_browsercheck:before{content:"ï…¤"}.o_icon_busy:before{content:"ï„"}.o_icon_calendar:before{content:"ï³"}.o_icon_calendar_enabled:before{content:"ï†"}.o_icon_calendar_disabled:before{content:"ï‚–"}.o_icon_calendar:before{content:"ï³"}.o_icon_calendar_sync:before{content:""}.o_icon_cancelled:before{content:"ïž"}.o_icon_caret:before{content:""}.o_icon_caret_right:before{content:""}.o_icon_catalog:before{content:""}.o_icon_catalog_sub:before{content:"ï»"}.o_icon_certificate:before{content:"ï‚£"}.o_icon_chat:before{content:""}.o_icon_check:before{content:""}.o_icon_check_off:before{content:"ï‚–"}.o_icon_check_on:before{content:"ï†"}.o_icon_checkbox:before{content:"ï‚–"}.o_icon_checkbox_checked:before{content:"ï…Š"}.o_icon_circle:before{content:""}.o_icon_circle_color:before{content:"ï„‘"}.o_icon_citation:before{content:"ï„"}.o_icon_cleanup:before{content:""}.o_icon_clear_all:before{content:""}.o_icon_close:before{content:"ï€"}.o_icon_close_resource:before{content:""}.o_icon_close_tab:before{content:"ï€"}.o_icon_close_tool:before{content:"ï€"}.o_icon_close_tree:before{content:""}.o_icon_close_togglebox:before,.o_togglebox_wrapper .o_opener.o_in i:before,.o_search_result .o_opener.o_in i:before{content:""}.o_icon_code:before{content:"ï„¡"}.o_icon_coach:before{content:"ï†"}.o_icon_color_picker:before{content:"ïƒ"}.o_icon_column:before{content:""}.o_icon_columns:before{content:""}.o_icon_container:before{content:""}.o_icon_copy:before{content:""}.o_icon_course_previous:before{content:"ï“"}.o_icon_course_next:before{content:"ï”"}.o_icon_courseareas:before{content:""}.o_icon_coursedb:before{content:""}.o_icon_courseeditor:before{content:"ï„"}.o_icon_coursefolder:before{content:"ï„”"}.o_icon_courserun:before{content:""}.o_icon_comments:before{content:""}.o_icon_comments_none:before{content:""}.o_icon_compress:before{content:"ï¦"}.o_icon_compulsory:before{content:"ï©"}.o_icon_content_popup:before{content:"ï‚Ž"}.o_icon_correct_answer:before{content:"";color:#78be20}.o_icon_correct_response:before{content:"ï";color:#78be20}.o_icon_correction:before{content:"ï€"}.o_icon_curriculum_element:before{content:""}.o_icon_customize:before{content:""}.o_icon_deactivate:before{content:"ïž"}.o_icon_delete_item:before{content:""}.o_icon_delete:before{content:"ï–";color:#A87E7E}.o_icon_deleted:before{content:""}.o_icon_details:before{content:""}.o_icon_description:before{content:"ïš"}.o_icon_dev:before{content:""}.o_icon_disabled:before{content:"ï„Œ"}.o_icon_dispensation_authorized:before{content:"ï";color:#78be20}.o_icon_dispensation_unauthorized:before{content:"ï±";color:#f2af40}.o_icon_download:before{content:""}.o_icon_edit:before{content:"ï„"}.o_icon_edit_file:before{content:"ï„"}.o_icon_edit_metadata:before{content:""}.o_icon_element_after:before{content:"ï£"}.o_icon_element_before:before{content:"ï¢"}.o_icon_enabled:before{content:"ï„‘"}.o_icon_enlarge:before{content:""}.o_icon_eportfolio_add:before{content:"ï„®"}.o_icon_eportfolio_link:before{content:"ï„®"}.o_icon_eraser:before{content:"ï„"}.o_icon_error:before{content:"ïª";color:#d6001c}.o_icon_exclamation:before{content:""}.o_icon_expand:before{content:"ï¥"}.o_icon_expenditure:before{content:""}.o_icon_export:before{content:"ï…"}.o_icon_extend:before{content:""}.o_icon_external_link:before{content:"ï‚Ž"}.o_icon_extra_time:before{content:""}.o_icon_failed:before{content:"ï—"}.o_icon_files:before{content:""}.o_icon_fileupload:before{content:""}.o_icon_filter:before{content:"ï‚°"}.o_icon_graduate:before{content:"ï†"}.o_icon_group:before,.o_BusinessGroup_icon:before{content:""}.o_icon_header:before{content:""}.o_icon_help:before{content:"ï™";cursor:help}.o_icon_home:before{content:""}.o_icon_image:before{content:""}.o_icon_impress:before{content:"ïš"}.o_icon_important:before{content:"ï±";color:#f2af40}.o_icon_import:before{content:"ï‚“"}.o_icon_incorrect_response:before{content:"ïœ";color:#d6001c}.o_icon_info:before{content:"ïš";color:#a6a6a6}.o_icon_info_msg:before{content:"ïª";color:#d6001c}.o_icon_info_resource:before{content:"ïš"}.o_icon_inheritance_root:before{content:"ï‚«"}.o_icon_inheritance_inherited:before{content:""}.o_icon_inheritance_none:before{content:"ï„Œ"}.o_icon_inline_editable:before{content:"ï„"}.o_icon_institution:before{content:""}.o_icon_italic:before{content:""}.o_icon_landingpage:before{content:"ï…€"}.o_icon_language:before{content:""}.o_icon_layout:before{content:""}.o_icon_learning_path:before{content:""}.o_icon_lecture:before{content:"ï€"}.o_icon_left:before{content:""}.o_icon_levels:before{content:""}.o_icon_line:before{content:""}.o_icon_link:before{content:"ïƒ"}.o_icon_link_extern:before{content:"ï‚Ž"}.o_icon_list:before{content:""}.o_icon_list_num:before{content:""}.o_icon_lifecycle:before{content:""}.o_icon_lifecycle_date:before{content:"ï³"}.o_icon_locked:before{content:""}.o_icon_log:before{content:"ï…œ"}.o_icon_login:before{content:"ï‚"}.o_icon_logout:before{content:"ï‚‹"}.o_icon_mandatory:before{content:"ï©";color:#f0ad4e}.o_icon_managed:before{content:"ï¹";color:#777}.o_icon_manual:before{content:"ï€";cursor:help}.o_icon_mail:before{content:""}.o_icon_math:before{content:"\03a3"}.o_icon_media:before{content:""}.o_icon_mediacenter:before{content:"ï¼"}.o_icon_membersmanagement:before{content:""}.o_icon_menuhandel:before{content:""}.o_icon_message:before{content:"ïƒ "}.o_icon_mobile:before{content:"ï„‹"}.o_icon_move:before{content:"ï‡"}.o_icon_order:before{content:"ï½"}.o_icon_move_down:before{content:""}.o_icon_move_left:before{content:"ï„€"}.o_icon_move_right:before{content:"ï„"}.o_icon_move_up:before{content:"ï„‚"}.o_icon_ms_done:before{content:""}.o_icon_ms_pending:before{content:"ï‹"}.o_icon_new:before{content:"ï©";color:#78be20}.o_icon_new_document:before{content:"ï…œ"}.o_icon_new_folder:before{content:"ï»"}.o_icon_new_portfolio:before{content:"ï€"}.o_icon_news:before{content:"ïš"}.o_icon_next:before{content:""}.o_icon_next_step:before{content:"ï„"}.o_icon_next_page:before{content:"ï„"}.o_icon_next_toolbar:before{content:""}.o_icon_node_after:before{content:"ï…µ"}.o_icon_node_before:before{content:"ï…¶"}.o_icon_node_under:before{content:"ï„’"}.o_icon_node_up_down:before{content:"ï½"}.o_icon_notes:before{content:""}.o_icon_notice_authorized:before{content:"ï";color:#78be20}.o_icon_notice_unauthorized:before{content:"ï±";color:#f2af40}.o_icon_notification:before{content:"ï‚ž"}.o_icon_number_of:before{content:""}.o_icon_ok:before{content:"";color:#78be20}.o_icon_open_tree:before{content:""}.o_icon_open_togglebox:before,.o_togglebox_wrapper .o_opener i:before,.o_search_result .o_opener i:before{content:""}.o_icon_openolat:before,.o_icon_provider_olat:before{content:"\E600";font-family:openolat;font-size:10px}.o_icon_options:before{content:""}.o_icon_origin:before{content:""}.o_icon_others:before{content:""}.o_icon_owner:before{content:""}.o_icon_pageing:before{content:"ï…"}.o_icon_paragraph:before{content:"ï‡"}.o_icon_passed:before{content:"ï˜"}.o_icon_password:before{content:""}.o_icon_pending:before{content:"ï„"}.o_icon_phone:before{content:"ï‚•"}.o_icon_post:before{content:""}.o_icon_presence:before{content:""}.o_icon_preview:before{content:"ï®"}.o_icon_previous:before{content:"ï„·"}.o_icon_previous_page:before{content:"ï„€"}.o_icon_previous_step:before{content:"ï„€"}.o_icon_previous_toolbar:before{content:""}.o_icon_print:before{content:""}.o_icon_private:before{content:""}.o_icon_progress_success:before{content:"";color:#e5efe5}.o_icon_progress_danger:before{content:"ï€";color:#efe5e5}.o_icon_provider_adfs:before{content:"ï…º"}.o_icon_provider_facebook:before{content:"ï‚š"}.o_icon_provider_google:before{content:"ï† "}.o_icon_provider_guest:before{content:""}.o_icon_provider_ldap:before{content:""}.o_icon_provider_linkedin:before{content:""}.o_icon_provider_oauth:before{content:""}.o_icon_provider_openid:before{content:""}.o_icon_provider_performx:before{content:""}.o_icon_provider_shibboleth:before{content:""}.o_icon_provider_tequila:before{content:""}.o_icon_provider_twitter:before{content:"ï‚™"}.o_icon_publish:before{content:"ï¤"}.o_icon_pull:before{content:""}.o_icon_quota:before{content:""}.o_icon_qrcode:before{content:""}.o_icon_quickview:before{content:"ï®"}.o_icon_radio_off:before{content:"ï„Œ"}.o_icon_radio_on:before{content:"ï"}.o_icon_rating_on:before,.o_rating .o_rating_items.o_enabled .o_icon:hover:before{content:""}.o_icon_rating_off:before{content:""}.o_icon_read:before{content:"ï„Œ"}.o_icon_readonly:before{content:"ï„";color:red}.o_icon_readwrite:before{content:"ï„"}.o_icon_recycle:before{content:""}.o_icon_rectangle:before{content:"ï‚–"}.o_icon_redo:before{content:""}.o_icon_refresh:before{content:""}.o_icon_reject:before{content:"ï€";color:#d6001c}.o_icon_rejected:before{content:"ï…¥"}.o_icon_reminder:before{content:""}.o_icon_remove:before{content:"ï€"}.o_icon_remove_filters:before{content:"ï—"}.o_icon_reopen:before{content:"ï„’"}.o_icon_replace:before{content:""}.o_icon_reply:before{content:"ï„’"}.o_icon_reply_with_quote:before{content:"ï„¢"}.o_icon_report:before{content:""}.o_icon_reset:before{content:"ïˆ"}.o_icon_response_feedback:before{content:""}.o_icon_restore:before{content:"ï…¤"}.o_icon_results_visible:before{content:"ï®"}.o_icon_results_hidden:before{content:"ï°"}.o_icon_reviewer:before{content:""}.o_icon_right:before{content:"ï‚©"}.o_icon_rss:before{content:"ï‚ž"}.o_icon_rss_unsubscribe:before{content:"ï‚ž";color:#996633}.o_icon_role:before{content:""}.o_icon_rubric:before{content:""}.o_icon_rubric_insufficient:before{content:"ï—";color:#d6001c}.o_icon_rubric_sufficient:before{content:"ï˜";color:#78be20}.o_icon_rubric_neutral:before{content:"ïª";color:#f2af40}.o_icon_save:before{content:""}.o_icon_search:before{content:""}.o_icon_select:before{content:""}.o_icon_send:before{content:"ïƒ "}.o_icon_settings:before{content:"ï‚…"}.o_icon_share:before{content:"ï¤"}.o_icon_show_more:before{content:"ï…"}.o_icon_show_less:before{content:"ï…‘"}.o_icon_show_send:before{content:""}.o_icon_shuffle:before{content:"ï´"}.o_icon_sign_out:before{content:"ï‚‹"}.o_icon_slide_down:before{content:"ï¸"}.o_icon_slide_up:before{content:"ï·"}.o_icon_spacer:before{content:"ï¾"}.o_icon_split:before{content:""}.o_icon_sort:before{content:""}.o_icon_sort_asc:before{content:""}.o_icon_sort_desc:before{content:"ïƒ"}.o_icon_sort_amount_asc:before{content:"ï… "}.o_icon_sort_amount_desc:before{content:"ï…¡"}.o_icon_sort_menu:before{content:"ï… "}.o_icon_start:before{content:"ï”"}.o_icon_status_available:before{content:"ï„‘";color:#063}.o_icon_status_chat:before{content:"ïµ"}.o_icon_status_dnd:before{content:"";color:#cc3}.o_icon_status_unavailable:before{content:"ïœ";color:#963}.o_icon_status_not_ready:before{content:"ïž"}.o_icon_status_not_started:before{content:"ï„Œ"}.o_icon_status_in_progress:before{content:"ï‹"}.o_icon_status_in_review:before{content:""}.o_icon_status_done:before{content:"ï˜"}.o_icon_status_undone:before{content:"ï"}.o_icon_statistics_tool:before{content:"ï‚€"}.o_icon_submit:before{content:""}.o_icon_table:before{content:""}.o_icon_table_custom:before{content:""}.o_icon_table_large:before{content:""}.o_icon_tags:before{content:""}.o_icon_textinput:before{content:""}.o_icon_time:before{content:""}.o_icon_timelimit:before{content:""}.o_icon_timelimit_start:before{content:""}.o_icon_timelimit_half:before{content:""}.o_icon_timelimit_end:before{content:""}.o_icon_timetable:before{content:""}.o_icon_toggle:before{content:"ï„‘"}.o_icon_toggle_on:before{content:""}.o_icon_toggle_off:before{content:""}.o_icon_to_read:before{content:"ï„‘"}.o_icon_tool:before{content:""}.o_icon_tool_pdf:before{content:"ï‡"}.o_icon_tools:before{content:"ï‚"}.o_icon_top:before{content:"ï·"}.o_icon_translation_item:before{content:""}.o_icon_translation_package:before{content:"ï„•"}.o_icon_unlocked:before{content:"ï‚œ"}.o_icon_undo:before{content:""}.o_icon_user:before{content:""}.o_icon_user_vip:before{content:"ï†"}.o_icon_user_anonymous:before{content:""}.o_icon_update:before{content:""}.o_icon_upload:before{content:"ï‚“"}.o_icon_version:before{content:""}.o_icon_video:before{content:""}.o_icon_visitingcard.o_icon_waiting:before{content:""}.o_icon_warn:before{content:"ï±";color:#f2af40}.o_icon_width_expand:before{content:"ï¥"}.o_icon_width_collapse:before{content:"ï¦"}.o_icon_wizard:before{content:"ïƒ"}.o_icon_xing:before{content:"ï…¨";color:#cfdc00}.o_BinderTemplate_icon:before{content:""}.o_CourseModule_icon:before,.o_course_icon:before{content:""}.o_EPStructuredMapTemplate_icon:before{content:"ï„®"}.o_FileResource-BLOG_icon:before{content:"ï‚¡"}.o_FileResource-IMSCP_icon:before{content:""}.o_FileResource-FORM_icon:before{content:""}.o_FileResource-PODCAST_icon:before{content:""}.o_FileResource-SHAREDFOLDER:before{content:"ï‚Ž"}.o_FileResource-SCORMCP_icon:before{content:""}.o_FileResource-SURVEY_icon:before{content:"ï„š"}.o_FileResource-TEST_icon:before{content:"ï„"}.o_FileResource-IMSQTI21_icon:before{content:"ï…‹"}.o_FileResource-WIKI_icon:before{content:""}.o_FileResource-SHAREDFOLDER_icon:before{content:"ï„•"}.o_FileResource-GLOSSARY_icon:before{content:"ï†"}.o_FileResource-PDF_icon:before{content:"ï‡"}.o_FileResource-XLS_icon:before{content:""}.o_FileResource-PPT_icon:before{content:""}.o_FileResource-DOC_icon:before{content:""}.o_FileResource-ANIM_icon:before{content:""}.o_FileResource-IMAGE_icon:before{content:""}.o_FileResource-SOUND_icon:before{content:""}.o_FileResource-MOVIE_icon:before{content:""}.o_FileResource-FILE_icon:before{content:""}.o_FileResource-VIDEO_icon:before{content:""}.o_CourseModule_icon_closed:before{content:"ïž"}.o_icon_repo_status_preparation:before{content:"ï€"}.o_icon_repo_status_review:before{content:""}.o_icon_repo_status_coachpublished:before{content:""}.o_icon_repo_status_published:before{content:""}.o_icon_repo_status_closed:before{content:"ïž"}.o_icon_repo_status_trash:before{content:""}.o_icon_repo_status_deleted:before{content:""}.o_sp_icon:before{content:""}.o_st_icon:before{content:""}.o_tu_icon:before{content:"ï‚Ž"}.o_bc_icon:before{content:"ï„•"}.o_lti_icon:before{content:"ï‚Ž"}.o_cp_icon:before{content:""}.o_cp_item:before{content:""}.o_scorm_icon:before{content:""}.o_en_icon:before{content:"ï‚"}.o_fo_icon:before{content:""}.o_co_icon:before{content:""}.o_infomsg_icon:before{content:"ïš"}.o_cal_icon:before{content:"ï³"}.o_wiki_icon:before{content:""}.o_podcast_icon:before{content:""}.o_pf_icon:before{content:""}.o_blog_icon:before{content:"ï‚¡"}.o_ep_icon:before{content:""}.o_ep_icon_v1:before{content:"ï„®"}.o_iqtest_icon:before{content:"ï„"}.o_iqself_icon:before{content:"ï„"}.o_iqsurv_icon:before{content:"ï„š"}.o_survey_icon:before{content:""}.o_qtiassessment_icon:before{content:"ï…‹"}.o_ta_icon:before{content:"ï‚®"}.o_gta_icon:before{content:"ï‚®"}.o_ms_icon:before{content:""}.o_dialog_icon:before{content:""}.o_projectbroker_icon:before{content:"ï„Œ"}.o_ll_icon:before{content:"ïƒ"}.o_den_icon:before{content:""}.o_cmembers_icon:before{content:""}.o_cl_icon:before{content:"ï†"}.o_vc_icon:before{content:""}.o_video_icon:before{content:""}.o_vitero_icon:before{content:""}.o_openmeetings_icon:before{content:""}.o_gotomeeting_icon:before{content:""}.o_card2brain_icon:before{content:"\E800";font-family:openolat;font-size:120%}.o_edubase_icon:before{content:"\E885";font-family:openolat}.o_livestream_icon:before{content:""}.o_unkown_icon:before{content:""}.o_portlet_infomsg_icon:before{content:"ïš"}.o_portlet_quickstart_icon:before{content:""}.o_portlet_bookmark_icon:before{content:""}.o_portlet_groups_icon:before{content:""}.o_portlet_notes_icon:before{content:""}.o_portlet_noti_icon:before{content:"ï‚ž"}.o_portlet_eff_icon:before{content:"ï‚£"}.o_portlet_repository_student_icon:before{content:""}.o_portlet_repository_teacher_icon:before{content:"ï†"}.o_portlet_iframe_icon:before{content:""}.o_portlet_sysinfo_icon:before{content:""}.o_portlet_dyk_icon:before{content:""}.o_portlet_infomessages_icon:before{content:""}.o_portlet_cal_icon:before{content:"ï³"}.o_portlet_institutions_icon:before{content:""}.o_portlet_links_icon:before{content:"ïƒ"}.o_portlet_shibboleth_icon:before{content:"ï‚"}.o_icon_qpool:before{content:""}.o_icon_pool_private:before{content:"ï‚–"}.o_icon_pool_public:before{content:"ï†"}.o_icon_pool_my_items:before{content:""}.o_icon_pool_favorits:before{content:""}.o_icon_pool_collection:before{content:""}.o_icon_pool_pool:before{content:""}.o_icon_pool_share:before{content:""}.o_icon_qitem_commands:before{content:"ï‚…"}.o_icon_qitem_convert:before{content:""}.o_icon_qitem_copy:before{content:""}.o_icon_qitem_delete:before{content:""}.o_icon_qitem_draft:before{content:"ï€"}.o_icon_qitem_endOfLife:before{content:""}.o_icon_qitem_finalVersion:before{content:""}.o_icon_qitem_export:before{content:""}.o_icon_qitem_hide_metadata:before{content:""}.o_icon_qitem_import:before{content:"ï‚“"}.o_icon_qitem_new:before{content:"ï•"}.o_icon_qitem_review:before{content:""}.o_icon_qitem_revised:before{content:""}.o_icon_qitem_share:before{content:"ï¤"}.o_icon_qitem_show_metadata:before{content:""}.o_icon_qitem_status:before{content:"ï¡"}.o_forum_message_icon:before{content:""}.o_calendar_icon:before{content:"ï³"}.o_icon_pf_section_draft:before{content:"ï°";color:#f2af40}.o_icon_pf_section_progress:before{content:"";color:#f2af40}.o_icon_pf_section_submitted:before{content:"";color:#209d9e}.o_icon_pf_section_closed:before{content:"";color:#78be20}.o_icon_pf_binder:before{content:""}.o_icon_pf_entry:before{content:"ï…›"}.o_icon_pf_entry_draft:before{content:"ï„‘";color:#f2af40}.o_icon_pf_entry_published:before{content:"ï„‘";color:#209d9e}.o_icon_pf_entry_revision:before{content:"ï„‘";color:#d6001c}.o_icon_pf_entry_closed:before{content:"ï„‘";color:#78be20}.o_icon_pf_entry_deleted:before{content:"";color:#000}.o_icon_pf_history:before{content:""}.o_icon_pf_my_shares:before{content:"ï‡ "}.o_icon_pf_new_entry:before{content:"ï€"}.o_icon_pf_quick_links:before{content:"ï¤"}.o_icon_pf_page:before{content:""}.o_icon_pf_section:before{content:""}.o_icon_pf_shared_with_me:before{content:""}.o_icon_pf_trash:before{content:""}.o_forum_status_thread_icon:before{content:""}.o_forum_status_sticky_closed_icon:before{content:"ïž"}.o_forum_status_sticky_icon:before{content:""}.o_forum_status_closed_icon:before{content:"ïž";color:#a94442}.o_forum_status_opened_icon:before{content:"ïž";color:#3c763d}.o_forum_status_hidden_icon:before{content:"ï°";color:#a94442}.o_forum_status_visible_icon:before{content:"ï®";color:#3c763d}.o_forum_all_icon:before{content:""}.o_forum_all_flat_icon:before{content:""}.o_forum_one_icon:before{content:"ï®"}.o_forum_marked_icon:before{content:""}.o_forum_new_icon:before{content:"ï©"}.o_mi_qpool_import:before{content:""}.o_mi_qtidrawing:before{content:""}.o_mi_qtisection:before{content:""}.o_mi_qtisc:before{content:""}.o_mi_qtimatch:before{content:""}.o_mi_qtimatch_draganddrop:before{content:"ï‰"}.o_mi_qtimatch_truefalse:before{content:""}.o_mi_qtimc:before{content:"ï†"}.o_mi_qtikprim:before{content:"ï…Š"}.o_mi_qtifib:before{content:"ï…"}.o_mi_qtinumerical:before{content:""}.o_mi_qtihotspot:before{content:""}.o_mi_qtihottext:before{content:"ï"}.o_mi_qtiessay:before{content:""}.o_mi_qtiunkown:before{content:""}.o_mi_qtiupload:before{content:"ï‚“"}.o_as_mode_leadtime:before{content:""}.o_as_mode_assessment:before{content:"ï‹"}.o_as_mode_followup:before{content:"ïž"}.o_as_mode_closed:before{content:'-'}.o_as_mode_stop:before{content:"ï"}.o_icon_qti_notPresented:before{content:"";color:#ddd}.o_icon_qti_notAnswered:before{content:"ï…„";color:#f2af40}.o_icon_qti_answered:before{content:"ï˜";color:#78be20}.o_icon_qti_ended:before{content:"ïž";color:#a6a6a6}.o_icon_qti_invalid:before{content:"ïª";color:#d6001c}.o_icon_qti_review:before{content:"ï®";color:#a6a6a6}.o_icon_qti_reviewNotSeen:before,.o_icon_qti_reviewNotAnswered:before,.o_icon_qti_reviewInvalid:before{content:"ï°";color:#a6a6a6}.o_icon_qti_end_testpart:before{content:""}.o_icon_qti_close_test:before{content:"ï‹“"}.o_icon_qti_cancel:before{content:"ï"}.o_icon_qti_suspend:before{content:"ïŒ"}.o_icon_qti_close_results:before{content:"ï‹“"}.o_icon_qti_hint:before{content:"ï™"}.o_icon_qti_summary_notAnswered:before{content:"ï„‘";color:#f2af40}.o_icon_qti_summary_ended:before{content:"ï—";color:#d6001c}.o_icon_qti_summary_correct:before{content:"ï˜";color:#78be20}.o_lectures_current:before{content:"ï„‘";color:#f2af40}.o_lectures_next:before{content:""}.o_lectures_pending:before{content:"ï„‘";color:#d6001c}.o_lectures_closed:before{content:"ï„‘"}.o_lectures_rollcall_ok:before{content:"ï„‘";color:#78be20}.o_lectures_rollcall_warning:before{content:"ï‚";color:#f2af40}.o_lectures_rollcall_danger:before{content:"ï„Œ";color:#d6001c}.o_lectures_rollcall_free:before{content:"ï„‘";color:#969696}.o_lectures_rollcall_notice:before{content:"ï„‘";color:#969696}.o_lectures_rollcall_pending:before{content:"";color:#b8b8b8}.o_lectures_attended:before{content:"ï„‘";color:#78be20}.o_lectures_authorized:before{content:"ï„‘";color:#f2af40}.o_lectures_absent:before{content:"ï„‘";color:#d6001c}.o_absences_col_warning:before{content:"ï±"}.o_absences_col_alert:before{content:"ïª"}.o_icon_taxonomy:before{content:""}.o_icon_taxonomy_level:before{content:""}.o_icon_taxonomy_level_leaf:before{content:"ï„•"}.o_icon_taxonomy_templates:before{content:""}.o_icon_taxonomy_levels:before{content:""}.o_black_led:before{content:"ï„‘";color:#209d9e}.o_green_led:before{content:"ï„‘";color:#78be20}.o_yellow_led:before{content:"ï„‘";color:#f2af40}.o_red_led:before{content:"ï„‘";color:#d6001c}.o_grader_active:before{content:"ï";color:#78be20}.o_grader_inactive:before{content:"ïž";color:#d6001c}.o_grader_absence:before{content:"";color:#f2af40}.o_grad_assignment_unassigned:before{content:"ïª";color:#d6001c}.o_grad_assignment_assigned:before{content:"ï‚–"}.o_grad_assignment_inprocess:before{content:""}.o_grad_assignment_done:before{content:"ï†"}.o_icon_identity_permanent:before{content:""}.o_icon_identity_pending:before{content:""}.o_icon_identity_login_denied:before{content:"ïž"}.o_icon_identity_deleted:before{content:""}.o_ac_token_icon:before{content:"ï‚„"}.o_ac_free_icon:before{content:"ï«"}.o_ac_group_icon:before{content:""}.o_ac_membersonly_icon:before{content:""}.o_ac_guests_icon:before{content:""}.o_ac_paypal_icon:before{content:""}.o_ac_status_canceled_icon:before{content:"ï¨";color:#f2af40}.o_ac_status_error_icon:before{content:"ï€";color:#d6001c}.o_ac_status_new_icon:before{content:"ï©";color:#209d9e}.o_ac_status_success_icon:before{content:"";color:#78be20}.o_ac_status_waiting_icon:before{content:"";color:#209d9e}.o_ac_order_status_new_icon:before{content:"ï©";color:#209d9e}.o_ac_order_status_prepayment_icon:before{content:"";color:#a6a6a6}.o_ac_order_status_payed_icon:before{content:"";color:#78be20}.o_ac_order_status_canceled_icon:before{content:"ï¨";color:#f2af40}.o_ac_order_status_error_icon:before{content:"ï€";color:#d6001c}.o_ac_order_status_warning_icon:before{content:"";color:#f2af40}.o_scorm_org:before{content:""}.o_scorm_item:before{content:""}.o_scorm_completed:before,.o_scorm_passed:before{content:"ï˜"}.o_scorm_failed:before{content:"ï±"}.o_scorm_incomplete:before{content:"ï±"}.o_scorm_not_attempted:before{background:none}.o_midpub:before{content:"ï˜"}.o_midwarn:before{content:"ï±"}.o_midlock:before{content:""}.o_miderr:before{content:"ïª"}.o_middel:before{content:"ï„"}i.o_lp_not_accessible:before{content:"ïž"}i.o_lp_ready:before{content:"ïž"}i.o_lp_in_progress:before{content:"ï‹"}i.o_lp_done:before{content:""}.o_filetype_file:before,.o_filetype_ico:before{content:""}.o_filetype_folder:before{content:"ï„”"}.o_filetype_folder_open:before{content:"ï„•"}.o_filetype_zip:before,.o_filetype_gz:before,.o_filetype_tar:before,.o_filetype_tgz:before{content:""}.o_filetype_css:before,.o_filetype_js:before,.o_filetype_java:before,.o_filetype_numbers:before,.o_filetype_ods:before,.o_filetype_xml:before,.o_filetype_xsl:before{content:""}.o_filetype_bat_icon:before,.o_filetype_bat:before,.o_filetype_exe:before,.o_filetype_app:before,.o_filetype_sh:before{content:""}.o_filetype_xls:before,.o_filetype_xlsx:before{content:""}.o_filetype_png:before,.o_filetype_tiff:before,.o_filetype_webp:before,.o_filetype_gif:before,.o_filetype_ico:before,.o_filetype_jpeg:before,.o_filetype_bmp:before,.o_filetype_odg:before,.o_filetype_eps:before,.o_filetype_jpg:before{content:""}.o_filetype_psd:before,.o_filetype_avi:before,.o_filetype_dvi:before,.o_filetype_mp4:before,.o_filetype_m4v:before,.o_filetype_webm:before,.o_filetype_ogg:before,.o_filetype_video:before,.o_filetype_mov:before,.o_filetype_mpeg:before,.o_filetype_mpg:before,.o_filetype_qt:before,.o_filetype_ra:before,.o_filetype_ram:before,.o_filetype_swf:before,.o_filetype_flv:before{content:""}.o_filetype_midi:before,.o_filetype_audio:before,.o_filetype_mp3:before,.o_filetype_m3u:before,.o_filetype_wav:before{content:""}.o_filetype_ps:before,.o_filetype_pdf:before{content:"ï‡"}.o_filetype_key:before,.o_filetype_odp:before,.o_filetype_ppt:before,.o_filetype_pptx:before{content:""}.o_filetype_odf:before,.o_filetype_rtf:before,.o_filetype_readme:before,.o_filetype_README:before,.o_filetype_log:before,.o_filetype_txt:before,.o_filetype_htm:before,.o_filetype_html:before{content:""}.o_filetype_odt:before,.o_filetype_pages:before,.o_filetype_doc:before,.o_filetype_docx:before{content:""}.o_icon_share_social:before{content:"ï…"}.o_icon_apple:before{content:"ï…¹"}.o_icon_facebook:before{content:"ï‚‚"}.o_icon_twitter:before{content:"ï‚"}.o_icon_google:before{content:""}.o_icon_delicious:before{content:""}.o_icon_digg:before{content:""}.o_icon_mailto:before{content:""}.o_icon_link:before{content:"ïƒ"}.o_icon_yahoo:before{content:""}.o_icon_eva_disclaimer:before{content:""}.o_icon_eva_end_show:before{content:"ï¾"}.o_icon_eva_end_hide:before{content:"ï…¸"}.o_icon_eva_export:before{content:""}.o_icon_eva_pdf:before{content:"ï‡"}.o_icon_eva_print:before{content:""}.o_icon_eva_session_info:before{content:"ï„©"}.o_icon_eva_mc:before{content:"ï†"}.o_icon_eva_sc:before{content:""}.o_icon_eva_sc:before{content:""}.o_icon_surv_reset:before{content:"ï„"}.o_icon_qual_ana_hide_filter:before{content:""}.o_icon_qual_ana_pres_edit:before{content:"ï‚"}.o_icon_qual_ana_export:before{content:""}.o_icon_qual_ana_pres_delete:before{content:"ïž"}.o_icon_qual_ana_pdf:before{content:"ï‡"}.o_icon_qual_ana_print:before{content:""}.o_icon_qual_ana_show_filter:before{content:""}.o_icon_qual_ana_trend:before{content:"ïˆ"}.o_icon_qual_ana_trend_arrow:before{content:"ï‚©"}.o_icon_qual_dc_create:before{content:"ï•"}.o_icon_qual_dc_delete:before{content:""}.o_icon_qual_dc_finished:before{content:"ï˜"}.o_icon_qual_dc_preparation:before{content:"ï„"}.o_icon_qual_dc_ready:before{content:"ï€"}.o_icon_qual_dc_running:before{content:"ï…„"}.o_icon_qual_exec_future:before{content:"ïœ"}.o_icon_qual_exec_over:before{content:"ï—"}.o_icon_qual_exec_participating:before{content:"ï…„"}.o_icon_qual_exec_participated:before{content:"ï˜"}.o_icon_qual_exec_ready:before{content:"ï€"}.o_icon_qual_gen_ce_add:before{content:"ï•"}.o_icon_qual_gen_create:before{content:"ï•"}.o_icon_qual_gen_delete:before{content:""}.o_icon_qual_gen_disabled:before{content:"ïž"}.o_icon_qual_gen_enabled:before{content:""}.o_icon_qual_gen_re_add:before{content:"ï•"}.o_icon_qual_part_user_add:before{content:""}.o_icon_qual_part_user_add_course:before{content:""}.o_icon_qual_part_user_add_curele:before{content:""}.o_icon_qual_part_execute:before{content:"ï‹"}.o_icon_lic_add:before{content:"ï•"}.o_icon_lic_public_domain:before{content:"\E810";font-family:openolat;font-size:120%}.o_icon_lic_cc0:before{content:"\E811";font-family:openolat;font-size:120%}.o_icon_lic_by:before{content:"\E812";font-family:openolat;font-size:120%}.o_icon_lic_by_sa:before{content:"\E813";font-family:openolat;font-size:120%}.o_icon_lic_by_nd:before{content:"\E814";font-family:openolat;font-size:120%}.o_icon_lic_by_nc:before{content:"\E815";font-family:openolat;font-size:120%}.o_icon_lic_by_nc_sa:before{content:"\E817";font-family:openolat;font-size:120%}.o_icon_lic_by_nc_nd:before{content:"\E819";font-family:openolat;font-size:120%}.o_icon_lic_all_rights_reserved:before{content:""}.o_icon_lic_freetext:before{content:""}.o_icon_lic_general:before{content:""}.o_icon_lic_youtube:before{content:"ï…¦"}a.o_icon:hover,.o_progress_failed a.inset:hover:after,.o_progress_passed a.inset:hover:after,a.o_icon:focus,.o_progress_failed a.inset:focus:after,.o_progress_passed a.inset:focus:after{text-decoration:none}img.o_emoticons_angel{background:url(../light/images/emoticons/smiley-angel.png);width:16px;height:16px}img.o_emoticons_angry{background:url(../light/images/emoticons/smiley-mad.png);width:16px;height:16px}img.o_emoticons_blushing{background:url(../light/images/emoticons/smiley-red.png);width:16px;height:16px}img.o_emoticons_confused{background:url(../light/images/emoticons/smiley-confuse.png);width:16px;height:16px}img.o_emoticons_cool{background:url(../light/images/emoticons/smiley-cool.png);width:16px;height:16px}img.o_emoticons_cry{background:url(../light/images/emoticons/smiley-cry.png);width:16px;height:16px}img.o_emoticons_devil{background:url(../light/images/emoticons/smiley-evil.png);width:16px;height:16px}img.o_emoticons_grin{background:url(../light/images/emoticons/smiley-grin.png);width:16px;height:16px}img.o_emoticons_kiss{background:url(../light/images/emoticons/smiley-kiss.png);width:16px;height:16px}img.o_emoticons_ohoh{background:url(../light/images/emoticons/smiley-eek.png);width:16px;height:16px}img.o_emoticons_sad{background:url(../light/images/emoticons/smiley-sad.png);width:16px;height:16px}img.o_emoticons_sick{background:url(../light/images/emoticons/smiley-sad-blue.png);width:16px;height:16px}img.o_emoticons_smile{background:url(../light/images/emoticons/smiley.png);width:16px;height:16px}img.o_emoticons_tongue{background:url(../light/images/emoticons/smiley-razz.png);width:16px;height:16px}img.o_emoticons_ugly{background:url(../light/images/emoticons/smiley-money.png);width:16px;height:16px}img.o_emoticons_weird{background:url(../light/images/emoticons/smiley-nerd.png);width:16px;height:16px}img.o_emoticons_wink{background:url(../light/images/emoticons/smiley-wink.png);width:16px;height:16px}img.o_emoticons_worried{background:url(../light/images/emoticons/smiley-roll-blue.png);width:16px;height:16px}img.o_emoticons_up{background:url(../light/images/emoticons/thumb-up.png);width:16px;height:16px}img.o_emoticons_down{background:url(../light/images/emoticons/thumb.png);width:16px;height:16px}.o_block_bottom,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry,.o_header_with_buttons,.o_search_result{margin-bottom:1em}.o_block_top,.o_block,.o_button_group,.o_block_with_datecomp .o_content,.o_course_run .o_toc .o_entry{margin-top:1em}.o_block_small_bottom,.o_block_small{margin-bottom:0.5em}.o_block_small_top,.o_block_small{margin-top:0.5em}.o_block_large_bottom,.o_block_large,.o_block_with_datecomp,.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left,.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right,.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle,.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill,.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file,.o_pf_content .o_forum,.gu-mirror .o_forum,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_wiki,.o_login .o_login_footer_wrapper,.o_portlet{margin-bottom:2em}.o_block_large_top,.o_block_large,.o_block_with_datecomp,.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left,.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right,.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle,.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill,.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file,.o_pf_content .o_forum,.gu-mirror .o_forum,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_wiki,.o_login .o_login_footer_wrapper,.o_portlet{margin-top:2em}.o_block_move_up{margin-top:-1em}.o_block_move_up_small{margin-top:-0.5em}.o_block_move_up_large{margin-top:-2em}.o_block_inline,.o_block_inline_left,.o_block_inline_both,.o_block_inline_right{display:inline-block;vertical-align:top}.o_block_inline_left,.o_block_inline_both{margin-left:0.5em}.o_block_inline_right,.o_block_inline_both{margin-right:0.5em}.o_block_centered_wrapper{display:table;width:100%;height:100%}.o_block_centered_content{display:table-cell;vertical-align:middle;text-align:center}.o_block_imagebg{background-repeat:no-repeat;background-position:center;background-size:cover}.o_block_imagebg span{padding:2px;background-color:rgba(255,255,255,0.8)}.o_block_imagebg h1,.o_block_imagebg h2,.o_block_imagebg h3,.o_block_imagebg h4,.o_block_imagebg .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_block_imagebg h2,.o_block_imagebg h5,.o_block_imagebg p{padding:2px;background-color:rgba(255,255,255,0.8);display:inline-block}.o_block_imagebg h1:after,.o_block_imagebg h2:after,.o_block_imagebg h3:after,.o_block_imagebg h4:after,.o_block_imagebg .o_cal .fc-header-title h2:after,.o_cal .fc-header-title .o_block_imagebg h2:after,.o_block_imagebg h5:after,.o_block_imagebg p:after{content:' ';display:block}.o_scrollblock,div.b_scrollblock{overflow-x:auto;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_button_group{text-align:center}.o_button_group a,.o_button_group input,.o_button_group button,.o_button_group .btn-group{margin-right:5px;margin-bottom:0.5em}.o_button_group a:last-child,.o_button_group input:last-child,.o_button_group button:last-child,.o_button_group .btn-group:last-child{margin-right:0}.o_button_group .btn-group a,.o_button_group .btn-group input,.o_button_group .btn-group button{margin-right:0;margin-bottom:0}.o_button_group .dropdown-menu{text-align:left}.o_button_group_left{text-align:left}.o_button_group_right{text-align:right}.o_button_group_top{margin-top:0}.o_header_with_buttons:before,.o_header_with_buttons:after{content:" ";display:table}.o_header_with_buttons:after{clear:both}.o_header_with_buttons h1,.o_header_with_buttons h2,.o_header_with_buttons h3,.o_header_with_buttons h4,.o_header_with_buttons .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_header_with_buttons h2,.o_header_with_buttons h5,.o_header_with_buttons h6{display:inline-block}.o_header_with_buttons .o_button_group{margin-bottom:0;float:right}.o_header_with_buttons h1+.o_button_group{margin-top:28px}.o_header_with_buttons h2+.o_button_group{margin-top:24px}.o_header_with_buttons h3+.o_button_group{margin-top:20px}.o_header_with_buttons h4+.o_button_group,.o_header_with_buttons .o_cal .fc-header-title h2+.o_button_group,.o_cal .fc-header-title .o_header_with_buttons h2+.o_button_group{margin-top:10px}.o_header_with_buttons h5+.o_button_group{margin-top:6.6666666667px}.o_header_with_buttons h6+.o_button_group{margin-top:5px}#o_main_center .o_header_with_buttons h2+.o_button_group{margin-top:0}.panel-heading.o_header_with_buttons{margin-bottom:0}.o_button_textstyle:before{content:'['}.o_button_textstyle:after{content:']'}.panel-imagebg{background-repeat:no-repeat;background-position:center;background-size:cover}.panel-imagebg.panel-default>.panel-heading{background-color:rgba(255,255,255,0.8);border-bottom:transparent}.panel-imagebg .panel-body span{padding:2px;background-color:rgba(255,255,255,0.8)}.panel-placeholder{border-width:2px;border-style:dashed;border-color:#ccc;border-radius:10px;background-color:#fcfcfc}.panel-placeholder .panel-body{padding:10px}.panel-placeholder .panel-body:nth-child(n+2){border-top:none}.panel-placeholder .panel-body h3:nth-child(1),.panel-placeholder .panel-body h4:nth-child(1),.panel-placeholder .panel-body .o_cal .fc-header-title h2:nth-child(1),.o_cal .fc-header-title .panel-placeholder .panel-body h2:nth-child(1),.panel-placeholder .panel-body h5:nth-child(1){margin-top:0}.panel-placeholder .panel-body .o_button_group{margin-bottom:0}.panel-placeholder .panel-heading{border-top-right-radius:8px;border-top-left-radius:8px;border-width:2px;border-style:dashed;border-color:#ccc;border-top:none;border-left:none;border-right:none;color:#888;font-weight:bold}.panel-placeholder .panel-footer{border-bottom-right-radius:8px;border-bottom-left-radius:8px;border-width:2px;border-style:dashed;border-color:#ccc;border-bottom:none;border-left:none;border-right:none}.o_xsmall,.b_xsmall,p.b_xsmall,div.b_xsmall{font-size:11px}.o_small,.b_small,p.b_small,div.b_small,.o_comments .o_comment_wrapper h5,.o_comments .o_comment_wrapper .o_comment,.o_bc_meta,.tooltip,.o_htmleditor .o_metadata .o_lastmodified,.o_noti,.o_block_with_datecomp .o_meta,.o_togglebox_wrapper div.o_togglebox_content .o_hide,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label,.o_course_run .o_toc .o_entry,.o_assessment_test_results .o_qti_to_overview{font-size:12px}.o_large,.b_large,p.b_large,div.b_large{font-size:18px}.o_xlarge,.b_xlarge,p.b_xlarge,div.b_xlarge{font-size:20px}.o_disabled,.b_disabled,p.b_disabled,div.b_disabled{color:#777 !important;cursor:default}.o_disabled:hover,.b_disabled:hover{color:#777 !important}.o_dimmed,.b_dimmed,p.b_dimmed,div.b_dimmed{opacity:.4;filter:alpha(opacity=40)}.o_selected,.b_selected,p.b_selected,div.b_selected{font-weight:bold}.o_deleted,.b_deleted,p.b_deleted,div.b_deleted{text-decoration:line-through}.o_highlight_on_hover:hover{background-color:#f5f5f5}.o_clickable{cursor:pointer}.o_ochre{color:#c8a959}.o_blue{color:#12223F}.o_undecorated:hover,.o_undecorated:focus,.o_disabled:hover,.b_disabled:hover,#o_main_wrapper #o_toplink:hover,#o_footer_powered a:hover,#o_share a:hover,#o_share_social_container a:hover,.o_toolbar .o_tools_container a:hover,.o_button_toggle:hover,.o_im_message_group .o_im_from:hover,.o_noti .o_label:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover,.o_catalog .o_level .o_meta .o_title a:hover,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover,.o_repo_details .o_social .o_comments:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:hover,.o_login .o_login_register:hover,.o_disabled:focus,.b_disabled:focus,#o_main_wrapper #o_toplink:focus,#o_footer_powered a:focus,#o_share a:focus,#o_share_social_container a:focus,.o_toolbar .o_tools_container a:focus,.o_button_toggle:focus,.o_im_message_group .o_im_from:focus,.o_noti .o_label:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_comments:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:focus,.o_catalog .o_level .o_meta .o_title a:focus,.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:focus,.o_repo_details .o_social .o_comments:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:focus,.o_login .o_login_register:focus{text-decoration:none}.o_copy_code,.b_copy_code,p.b_copy_code,div.b_copy_code,code,pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}.o_copy_code input,.o_copy_code textarea,.b_copy_code input,code input,pre input,.b_copy_code textarea,code textarea,pre textarea{border:0;width:90%;background:transparent}.o_nowrap,.b_copy_code,p.b_copy_code,div.b_copy_code,code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o_titled_wrapper .o_content{margin-top:20px}.o_video,.o_video video,.b_video,.o_video_wrapper{display:inline-block;max-width:100%;height:auto;max-width:100%}.o_image,.o_image img,img,.b_image{display:inline-block;max-width:100%;height:auto;max-width:100%}.o_figure_caption_bottom{display:inline-block;min-width:50%}.o_figure_caption_bottom figure{display:table}.o_image_vertical_center_helper{display:inline-block;height:100%;vertical-align:middle}.o_image_vertical_center_helper+.o_image img{vertical-align:middle}.o_with_hyphens{-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o_page_margins{padding:25px}.o_dragable,.o_page_fragment_edit .o_page_tools_dd:before,.o_page_drop{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.o_dragable:active,.o_page_fragment_edit .o_page_tools_dd:active:before,.o_page_drop:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_draging,.gu-mirror{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_draging:active,.gu-mirror:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.o_hidden{visibility:hidden}h1{color:#342c24}h2{color:#342c24}h3{color:#342c24}h4,.o_cal .fc-header-title h2{color:#342c24}h5{color:#342c24}h5{color:#342c24}fieldset legend{color:#342c24}.o_user_content_block a{color:#209d9e;text-decoration:none}.o_user_content_block a:hover,.o_user_content_block a:focus{color:#177374;text-decoration:underline}.b_border_box,p.b_border_box,div.b_border_box{border:1px solid #777;padding:1em;border-top-right-radius:3px;border-top-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}table td{line-height:1.428571429;vertical-align:top}table.b_default td,table.b_default th{padding:8px;vertical-align:top}table.b_grid{width:99.5%;background:transparent;border-collapse:separate}table.b_grid td,table.b_grid th{padding:8px;border:1px solid #777}table.b_grid thead td,table.b_grid th{background:#eee;font-weight:bold}table.b_border{width:99.5%;background:transparent;border-collapse:collapse}table.b_border td,table.b_border th{padding:8px;border:1px solid #777}table.b_border thead td,table.b_border th{background:#eee;font-weight:bold}table.b_borderless{width:99.5%;background:transparent;border-collapse:separate}table.b_borderless td,table.b_borderless th{padding:8px;border:0 !important}table.b_borderless thead td,table.b_borderless th{font-weight:bold}table.b_full{width:99.5%}table.b_middle{background:transparent}table.b_middle td{vertical-align:middle}table.b_gray{border-collapse:collapse}table.b_gray td,table.b_gray th{padding:8px;background:#eee;border:1px solid #fbfbfb}table.b_gray thead td,table.b_gray th{background:#d5d5d5;font-weight:bold}table.b_gray tbody tr:nth-child(even) td{background:#fbfbfb;border:1px solid #eee}table.b_gray.b_no_stripes tbody tr:nth-child(even) td{background:#eee;border:1px solid #fbfbfb}@media print{table.b_gray td,table.b_gray th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eee !important}table.b_gray thead td,table.b_gray th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#d5d5d5 !important}table.b_gray tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fbfbfb !important}}table.b_blue{border-collapse:collapse}table.b_blue td,table.b_blue th{padding:8px;background:#d9edf7;border:1px solid #eef7fb}table.b_blue thead td,table.b_blue th{background:#afd9ee;font-weight:bold}table.b_blue tbody tr:nth-child(even) td{background:#eef7fb;border:1px solid #d9edf7}table.b_blue.b_no_stripes tbody tr:nth-child(even) td{background:#d9edf7;border:1px solid #eef7fb}@media print{table.b_blue td,table.b_blue th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#d9edf7 !important}table.b_blue thead td,table.b_blue th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#afd9ee !important}table.b_blue tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eef7fb !important}}table.b_green{border-collapse:collapse}table.b_green td,table.b_green th{padding:8px;background:#dff0d8;border:1px solid #eef7ea}table.b_green thead td,table.b_green th{background:#c1e2b3;font-weight:bold}table.b_green tbody tr:nth-child(even) td{background:#eef7ea;border:1px solid #dff0d8}table.b_green.b_no_stripes tbody tr:nth-child(even) td{background:#dff0d8;border:1px solid #eef7ea}@media print{table.b_green td,table.b_green th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#dff0d8 !important}table.b_green thead td,table.b_green th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#c1e2b3 !important}table.b_green tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#eef7ea !important}}table.b_yellow{border-collapse:collapse}table.b_yellow td,table.b_yellow th{padding:8px;background:#fcf8e3;border:1px solid #fefefa}table.b_yellow thead td,table.b_yellow th{background:#f7ecb5;font-weight:bold}table.b_yellow tbody tr:nth-child(even) td{background:#fefefa;border:1px solid #fcf8e3}table.b_yellow.b_no_stripes tbody tr:nth-child(even) td{background:#fcf8e3;border:1px solid #fefefa}@media print{table.b_yellow td,table.b_yellow th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fcf8e3 !important}table.b_yellow thead td,table.b_yellow th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f7ecb5 !important}table.b_yellow tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fefefa !important}}table.b_red{border-collapse:collapse}table.b_red td,table.b_red th{padding:8px;background:#f2dede;border:1px solid #f9f0f0}table.b_red thead td,table.b_red th{background:#e4b9b9;font-weight:bold}table.b_red tbody tr:nth-child(even) td{background:#f9f0f0;border:1px solid #f2dede}table.b_red.b_no_stripes tbody tr:nth-child(even) td{background:#f2dede;border:1px solid #f9f0f0}@media print{table.b_red td,table.b_red th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f2dede !important}table.b_red thead td,table.b_red th{-webkit-print-color-adjust:exact;color-adjust:exact;background:#e4b9b9 !important}table.b_red tbody tr:nth-child(even) td{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f9f0f0 !important}}table.a_responsive{width:auto !important}@media (max-width: 768px){.a_responsive td{display:block}}.b_align_normal{text-align:left}.b_align_center{text-align:center}.b_align_inverse{text-align:right}.b_align_justified{text-align:justify}a.b_link_extern{color:#209d9e}a.b_link_extern:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï‚Ž"}a.b_link_mailto{color:#209d9e}a.b_link_mailto:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:""}a.b_link_forward{color:#209d9e}a.b_link_forward:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï¤"}img.b_float_left{float:left;margin:0 2em 2em 0}img.b_float_left_clear{clear:both;margin:0 2em 2em 0;display:block}img.b_float_right{float:right;margin:0 0 2em 2em}img.b_float_right_clear{clear:both;display:block;margin:0 0 2em auto}img.b_float_left_clear_nomargin{float:left;display:block;margin:0 0 0 0}img.b_centered{clear:both;display:block;margin:0 auto 2em auto}img.b_circle{border-radius:50%}img.b_with_border{border:1px solid #ddd;padding:3px;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}p.b_figure_title{margin:20px 0 5px 0;font-size:85%;font-family:inherit}p.b_figure_caption{clear:both;margin:5px 0 20px 0}caption,figcaption,.o_caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left;font-style:italic}.b_clear_float,p.b_clear_float,div.b_clear_float{clear:both}figure.align-left{float:left}figure.align-right{float:right}figure.image{display:inline-block;border:1px solid gray;margin:0 2px 0 1px;background:#f5f2f0}figure.image img{margin:8px 8px 0 8px}figure.image figcaption{margin:6px 8px 6px 8px;text-align:center}img.align-left{float:left}img.align-right{float:right}.mce-toc{border:1px solid gray}.mce-toc h2{margin:4px}.mce-toc li{list-style-type:none}figure.image.align-center{display:block;text-align:center}figure.image.align-left{float:none;display:block;text-align:left}figure.image.align-left figcaption{text-align:left}figure.image.align-right{float:none;display:block;text-align:right}figure.image.align-right figcaption{text-align:right}figure.image{margin:2em 0 2em 0;border:0;background:none}figure.image img.b_float_left,figure.image img.b_float_left_clear,figure.image img.b_float_right,figure.image img.b_float_right_clear,figure.image img.b_float_left_clear_nomargin,figure.image img.b_centered{float:none;display:inline-block;margin:0}figure.image figcaption{font-size:90%;font-style:italic}.radial-progress,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{margin:10px;width:120px;height:120px;background-color:#eee;border-radius:50%;font-size:21.6px;display:inline-block;position:relative}.radial-progress .circle,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle{display:block}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask,.radial-progress .circle .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .fill,.radial-progress .circle .shadow,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .shadow{display:block;width:100%;height:100%;position:absolute;border-radius:50%}.radial-progress .circle .shadow,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .shadow{box-shadow:none inset}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask,.radial-progress .circle .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .fill{-webkit-backface-visibility:hidden;transition:-webkit-transform 1s;transition:-ms-transform 1s;transition:transform 1s;border-radius:50%}.radial-progress .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask{clip:rect(0px, 120px, 120px, 60px)}.radial-progress .circle .mask .fill{clip:rect(0px, 60px, 120px, 0px);background-color:#209d9e}.radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{display:block;width:90px;height:90px;position:absolute;border-radius:50%;margin-left:15px;margin-top:15px;overflow:hidden;background-color:#fff;box-shadow:none;font-size:80px;line-height:80px;text-align:center}.radial-progress .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{position:absolute;top:5px;left:-5px;opacity:0;transition:opacity 0;transition-delay:1s}.radial-progress .percentage,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage{height:80%;width:80%;position:absolute;top:10%;left:10%;display:table;line-height:1}.radial-progress .percentage .centeredWrapper,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .centeredWrapper{display:table-cell;vertical-align:middle;text-align:center}.radial-progress .percentage .centeredWrapper .number{display:block;margin-right:-0.4em;font-weight:800;color:#209d9e}.radial-progress .percentage .centeredWrapper .addon{display:block;color:#777;margin-top:0.2em;margin-bottom:-0.4em}.radial-progress .percentage .centeredWrapper .addon>span{display:block;font-size:0.6em;font-weight:bold}.radial-progress .percentage .centeredWrapper .addon>span+span{display:block;margin-top:2px;font-size:0.5em}.radial-progress[data-progress="0"] .circle .mask.full,.radial-progress[data-progress="0"] .circle .fill{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.radial-progress[data-progress="0"] .circle .fill.fix{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.radial-progress[data-progress="1"] .circle .mask.full,.radial-progress[data-progress="1"] .circle .fill{-webkit-transform:rotate(1.8deg);-ms-transform:rotate(1.8deg);transform:rotate(1.8deg)}.radial-progress[data-progress="1"] .circle .fill.fix{-webkit-transform:rotate(3.6deg);-ms-transform:rotate(3.6deg);transform:rotate(3.6deg)}.radial-progress[data-progress="2"] .circle .mask.full,.radial-progress[data-progress="2"] .circle .fill{-webkit-transform:rotate(3.6deg);-ms-transform:rotate(3.6deg);transform:rotate(3.6deg)}.radial-progress[data-progress="2"] .circle .fill.fix{-webkit-transform:rotate(7.2deg);-ms-transform:rotate(7.2deg);transform:rotate(7.2deg)}.radial-progress[data-progress="3"] .circle .mask.full,.radial-progress[data-progress="3"] .circle .fill{-webkit-transform:rotate(5.4deg);-ms-transform:rotate(5.4deg);transform:rotate(5.4deg)}.radial-progress[data-progress="3"] .circle .fill.fix{-webkit-transform:rotate(10.8deg);-ms-transform:rotate(10.8deg);transform:rotate(10.8deg)}.radial-progress[data-progress="4"] .circle .mask.full,.radial-progress[data-progress="4"] .circle .fill{-webkit-transform:rotate(7.2deg);-ms-transform:rotate(7.2deg);transform:rotate(7.2deg)}.radial-progress[data-progress="4"] .circle .fill.fix{-webkit-transform:rotate(14.4deg);-ms-transform:rotate(14.4deg);transform:rotate(14.4deg)}.radial-progress[data-progress="5"] .circle .mask.full,.radial-progress[data-progress="5"] .circle .fill{-webkit-transform:rotate(9deg);-ms-transform:rotate(9deg);transform:rotate(9deg)}.radial-progress[data-progress="5"] .circle .fill.fix{-webkit-transform:rotate(18deg);-ms-transform:rotate(18deg);transform:rotate(18deg)}.radial-progress[data-progress="6"] .circle .mask.full,.radial-progress[data-progress="6"] .circle .fill{-webkit-transform:rotate(10.8deg);-ms-transform:rotate(10.8deg);transform:rotate(10.8deg)}.radial-progress[data-progress="6"] .circle .fill.fix{-webkit-transform:rotate(21.6deg);-ms-transform:rotate(21.6deg);transform:rotate(21.6deg)}.radial-progress[data-progress="7"] .circle .mask.full,.radial-progress[data-progress="7"] .circle .fill{-webkit-transform:rotate(12.6deg);-ms-transform:rotate(12.6deg);transform:rotate(12.6deg)}.radial-progress[data-progress="7"] .circle .fill.fix{-webkit-transform:rotate(25.2deg);-ms-transform:rotate(25.2deg);transform:rotate(25.2deg)}.radial-progress[data-progress="8"] .circle .mask.full,.radial-progress[data-progress="8"] .circle .fill{-webkit-transform:rotate(14.4deg);-ms-transform:rotate(14.4deg);transform:rotate(14.4deg)}.radial-progress[data-progress="8"] .circle .fill.fix{-webkit-transform:rotate(28.8deg);-ms-transform:rotate(28.8deg);transform:rotate(28.8deg)}.radial-progress[data-progress="9"] .circle .mask.full,.radial-progress[data-progress="9"] .circle .fill{-webkit-transform:rotate(16.2deg);-ms-transform:rotate(16.2deg);transform:rotate(16.2deg)}.radial-progress[data-progress="9"] .circle .fill.fix{-webkit-transform:rotate(32.4deg);-ms-transform:rotate(32.4deg);transform:rotate(32.4deg)}.radial-progress[data-progress="10"] .circle .mask.full,.radial-progress[data-progress="10"] .circle .fill{-webkit-transform:rotate(18deg);-ms-transform:rotate(18deg);transform:rotate(18deg)}.radial-progress[data-progress="10"] .circle .fill.fix{-webkit-transform:rotate(36deg);-ms-transform:rotate(36deg);transform:rotate(36deg)}.radial-progress[data-progress="11"] .circle .mask.full,.radial-progress[data-progress="11"] .circle .fill{-webkit-transform:rotate(19.8deg);-ms-transform:rotate(19.8deg);transform:rotate(19.8deg)}.radial-progress[data-progress="11"] .circle .fill.fix{-webkit-transform:rotate(39.6deg);-ms-transform:rotate(39.6deg);transform:rotate(39.6deg)}.radial-progress[data-progress="12"] .circle .mask.full,.radial-progress[data-progress="12"] .circle .fill{-webkit-transform:rotate(21.6deg);-ms-transform:rotate(21.6deg);transform:rotate(21.6deg)}.radial-progress[data-progress="12"] .circle .fill.fix{-webkit-transform:rotate(43.2deg);-ms-transform:rotate(43.2deg);transform:rotate(43.2deg)}.radial-progress[data-progress="13"] .circle .mask.full,.radial-progress[data-progress="13"] .circle .fill{-webkit-transform:rotate(23.4deg);-ms-transform:rotate(23.4deg);transform:rotate(23.4deg)}.radial-progress[data-progress="13"] .circle .fill.fix{-webkit-transform:rotate(46.8deg);-ms-transform:rotate(46.8deg);transform:rotate(46.8deg)}.radial-progress[data-progress="14"] .circle .mask.full,.radial-progress[data-progress="14"] .circle .fill{-webkit-transform:rotate(25.2deg);-ms-transform:rotate(25.2deg);transform:rotate(25.2deg)}.radial-progress[data-progress="14"] .circle .fill.fix{-webkit-transform:rotate(50.4deg);-ms-transform:rotate(50.4deg);transform:rotate(50.4deg)}.radial-progress[data-progress="15"] .circle .mask.full,.radial-progress[data-progress="15"] .circle .fill{-webkit-transform:rotate(27deg);-ms-transform:rotate(27deg);transform:rotate(27deg)}.radial-progress[data-progress="15"] .circle .fill.fix{-webkit-transform:rotate(54deg);-ms-transform:rotate(54deg);transform:rotate(54deg)}.radial-progress[data-progress="16"] .circle .mask.full,.radial-progress[data-progress="16"] .circle .fill{-webkit-transform:rotate(28.8deg);-ms-transform:rotate(28.8deg);transform:rotate(28.8deg)}.radial-progress[data-progress="16"] .circle .fill.fix{-webkit-transform:rotate(57.6deg);-ms-transform:rotate(57.6deg);transform:rotate(57.6deg)}.radial-progress[data-progress="17"] .circle .mask.full,.radial-progress[data-progress="17"] .circle .fill{-webkit-transform:rotate(30.6deg);-ms-transform:rotate(30.6deg);transform:rotate(30.6deg)}.radial-progress[data-progress="17"] .circle .fill.fix{-webkit-transform:rotate(61.2deg);-ms-transform:rotate(61.2deg);transform:rotate(61.2deg)}.radial-progress[data-progress="18"] .circle .mask.full,.radial-progress[data-progress="18"] .circle .fill{-webkit-transform:rotate(32.4deg);-ms-transform:rotate(32.4deg);transform:rotate(32.4deg)}.radial-progress[data-progress="18"] .circle .fill.fix{-webkit-transform:rotate(64.8deg);-ms-transform:rotate(64.8deg);transform:rotate(64.8deg)}.radial-progress[data-progress="19"] .circle .mask.full,.radial-progress[data-progress="19"] .circle .fill{-webkit-transform:rotate(34.2deg);-ms-transform:rotate(34.2deg);transform:rotate(34.2deg)}.radial-progress[data-progress="19"] .circle .fill.fix{-webkit-transform:rotate(68.4deg);-ms-transform:rotate(68.4deg);transform:rotate(68.4deg)}.radial-progress[data-progress="20"] .circle .mask.full,.radial-progress[data-progress="20"] .circle .fill{-webkit-transform:rotate(36deg);-ms-transform:rotate(36deg);transform:rotate(36deg)}.radial-progress[data-progress="20"] .circle .fill.fix{-webkit-transform:rotate(72deg);-ms-transform:rotate(72deg);transform:rotate(72deg)}.radial-progress[data-progress="21"] .circle .mask.full,.radial-progress[data-progress="21"] .circle .fill{-webkit-transform:rotate(37.8deg);-ms-transform:rotate(37.8deg);transform:rotate(37.8deg)}.radial-progress[data-progress="21"] .circle .fill.fix{-webkit-transform:rotate(75.6deg);-ms-transform:rotate(75.6deg);transform:rotate(75.6deg)}.radial-progress[data-progress="22"] .circle .mask.full,.radial-progress[data-progress="22"] .circle .fill{-webkit-transform:rotate(39.6deg);-ms-transform:rotate(39.6deg);transform:rotate(39.6deg)}.radial-progress[data-progress="22"] .circle .fill.fix{-webkit-transform:rotate(79.2deg);-ms-transform:rotate(79.2deg);transform:rotate(79.2deg)}.radial-progress[data-progress="23"] .circle .mask.full,.radial-progress[data-progress="23"] .circle .fill{-webkit-transform:rotate(41.4deg);-ms-transform:rotate(41.4deg);transform:rotate(41.4deg)}.radial-progress[data-progress="23"] .circle .fill.fix{-webkit-transform:rotate(82.8deg);-ms-transform:rotate(82.8deg);transform:rotate(82.8deg)}.radial-progress[data-progress="24"] .circle .mask.full,.radial-progress[data-progress="24"] .circle .fill{-webkit-transform:rotate(43.2deg);-ms-transform:rotate(43.2deg);transform:rotate(43.2deg)}.radial-progress[data-progress="24"] .circle .fill.fix{-webkit-transform:rotate(86.4deg);-ms-transform:rotate(86.4deg);transform:rotate(86.4deg)}.radial-progress[data-progress="25"] .circle .mask.full,.radial-progress[data-progress="25"] .circle .fill{-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.radial-progress[data-progress="25"] .circle .fill.fix{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.radial-progress[data-progress="26"] .circle .mask.full,.radial-progress[data-progress="26"] .circle .fill{-webkit-transform:rotate(46.8deg);-ms-transform:rotate(46.8deg);transform:rotate(46.8deg)}.radial-progress[data-progress="26"] .circle .fill.fix{-webkit-transform:rotate(93.6deg);-ms-transform:rotate(93.6deg);transform:rotate(93.6deg)}.radial-progress[data-progress="27"] .circle .mask.full,.radial-progress[data-progress="27"] .circle .fill{-webkit-transform:rotate(48.6deg);-ms-transform:rotate(48.6deg);transform:rotate(48.6deg)}.radial-progress[data-progress="27"] .circle .fill.fix{-webkit-transform:rotate(97.2deg);-ms-transform:rotate(97.2deg);transform:rotate(97.2deg)}.radial-progress[data-progress="28"] .circle .mask.full,.radial-progress[data-progress="28"] .circle .fill{-webkit-transform:rotate(50.4deg);-ms-transform:rotate(50.4deg);transform:rotate(50.4deg)}.radial-progress[data-progress="28"] .circle .fill.fix{-webkit-transform:rotate(100.8deg);-ms-transform:rotate(100.8deg);transform:rotate(100.8deg)}.radial-progress[data-progress="29"] .circle .mask.full,.radial-progress[data-progress="29"] .circle .fill{-webkit-transform:rotate(52.2deg);-ms-transform:rotate(52.2deg);transform:rotate(52.2deg)}.radial-progress[data-progress="29"] .circle .fill.fix{-webkit-transform:rotate(104.4deg);-ms-transform:rotate(104.4deg);transform:rotate(104.4deg)}.radial-progress[data-progress="30"] .circle .mask.full,.radial-progress[data-progress="30"] .circle .fill{-webkit-transform:rotate(54deg);-ms-transform:rotate(54deg);transform:rotate(54deg)}.radial-progress[data-progress="30"] .circle .fill.fix{-webkit-transform:rotate(108deg);-ms-transform:rotate(108deg);transform:rotate(108deg)}.radial-progress[data-progress="31"] .circle .mask.full,.radial-progress[data-progress="31"] .circle .fill{-webkit-transform:rotate(55.8deg);-ms-transform:rotate(55.8deg);transform:rotate(55.8deg)}.radial-progress[data-progress="31"] .circle .fill.fix{-webkit-transform:rotate(111.6deg);-ms-transform:rotate(111.6deg);transform:rotate(111.6deg)}.radial-progress[data-progress="32"] .circle .mask.full,.radial-progress[data-progress="32"] .circle .fill{-webkit-transform:rotate(57.6deg);-ms-transform:rotate(57.6deg);transform:rotate(57.6deg)}.radial-progress[data-progress="32"] .circle .fill.fix{-webkit-transform:rotate(115.2deg);-ms-transform:rotate(115.2deg);transform:rotate(115.2deg)}.radial-progress[data-progress="33"] .circle .mask.full,.radial-progress[data-progress="33"] .circle .fill{-webkit-transform:rotate(59.4deg);-ms-transform:rotate(59.4deg);transform:rotate(59.4deg)}.radial-progress[data-progress="33"] .circle .fill.fix{-webkit-transform:rotate(118.8deg);-ms-transform:rotate(118.8deg);transform:rotate(118.8deg)}.radial-progress[data-progress="34"] .circle .mask.full,.radial-progress[data-progress="34"] .circle .fill{-webkit-transform:rotate(61.2deg);-ms-transform:rotate(61.2deg);transform:rotate(61.2deg)}.radial-progress[data-progress="34"] .circle .fill.fix{-webkit-transform:rotate(122.4deg);-ms-transform:rotate(122.4deg);transform:rotate(122.4deg)}.radial-progress[data-progress="35"] .circle .mask.full,.radial-progress[data-progress="35"] .circle .fill{-webkit-transform:rotate(63deg);-ms-transform:rotate(63deg);transform:rotate(63deg)}.radial-progress[data-progress="35"] .circle .fill.fix{-webkit-transform:rotate(126deg);-ms-transform:rotate(126deg);transform:rotate(126deg)}.radial-progress[data-progress="36"] .circle .mask.full,.radial-progress[data-progress="36"] .circle .fill{-webkit-transform:rotate(64.8deg);-ms-transform:rotate(64.8deg);transform:rotate(64.8deg)}.radial-progress[data-progress="36"] .circle .fill.fix{-webkit-transform:rotate(129.6deg);-ms-transform:rotate(129.6deg);transform:rotate(129.6deg)}.radial-progress[data-progress="37"] .circle .mask.full,.radial-progress[data-progress="37"] .circle .fill{-webkit-transform:rotate(66.6deg);-ms-transform:rotate(66.6deg);transform:rotate(66.6deg)}.radial-progress[data-progress="37"] .circle .fill.fix{-webkit-transform:rotate(133.2deg);-ms-transform:rotate(133.2deg);transform:rotate(133.2deg)}.radial-progress[data-progress="38"] .circle .mask.full,.radial-progress[data-progress="38"] .circle .fill{-webkit-transform:rotate(68.4deg);-ms-transform:rotate(68.4deg);transform:rotate(68.4deg)}.radial-progress[data-progress="38"] .circle .fill.fix{-webkit-transform:rotate(136.8deg);-ms-transform:rotate(136.8deg);transform:rotate(136.8deg)}.radial-progress[data-progress="39"] .circle .mask.full,.radial-progress[data-progress="39"] .circle .fill{-webkit-transform:rotate(70.2deg);-ms-transform:rotate(70.2deg);transform:rotate(70.2deg)}.radial-progress[data-progress="39"] .circle .fill.fix{-webkit-transform:rotate(140.4deg);-ms-transform:rotate(140.4deg);transform:rotate(140.4deg)}.radial-progress[data-progress="40"] .circle .mask.full,.radial-progress[data-progress="40"] .circle .fill{-webkit-transform:rotate(72deg);-ms-transform:rotate(72deg);transform:rotate(72deg)}.radial-progress[data-progress="40"] .circle .fill.fix{-webkit-transform:rotate(144deg);-ms-transform:rotate(144deg);transform:rotate(144deg)}.radial-progress[data-progress="41"] .circle .mask.full,.radial-progress[data-progress="41"] .circle .fill{-webkit-transform:rotate(73.8deg);-ms-transform:rotate(73.8deg);transform:rotate(73.8deg)}.radial-progress[data-progress="41"] .circle .fill.fix{-webkit-transform:rotate(147.6deg);-ms-transform:rotate(147.6deg);transform:rotate(147.6deg)}.radial-progress[data-progress="42"] .circle .mask.full,.radial-progress[data-progress="42"] .circle .fill{-webkit-transform:rotate(75.6deg);-ms-transform:rotate(75.6deg);transform:rotate(75.6deg)}.radial-progress[data-progress="42"] .circle .fill.fix{-webkit-transform:rotate(151.2deg);-ms-transform:rotate(151.2deg);transform:rotate(151.2deg)}.radial-progress[data-progress="43"] .circle .mask.full,.radial-progress[data-progress="43"] .circle .fill{-webkit-transform:rotate(77.4deg);-ms-transform:rotate(77.4deg);transform:rotate(77.4deg)}.radial-progress[data-progress="43"] .circle .fill.fix{-webkit-transform:rotate(154.8deg);-ms-transform:rotate(154.8deg);transform:rotate(154.8deg)}.radial-progress[data-progress="44"] .circle .mask.full,.radial-progress[data-progress="44"] .circle .fill{-webkit-transform:rotate(79.2deg);-ms-transform:rotate(79.2deg);transform:rotate(79.2deg)}.radial-progress[data-progress="44"] .circle .fill.fix{-webkit-transform:rotate(158.4deg);-ms-transform:rotate(158.4deg);transform:rotate(158.4deg)}.radial-progress[data-progress="45"] .circle .mask.full,.radial-progress[data-progress="45"] .circle .fill{-webkit-transform:rotate(81deg);-ms-transform:rotate(81deg);transform:rotate(81deg)}.radial-progress[data-progress="45"] .circle .fill.fix{-webkit-transform:rotate(162deg);-ms-transform:rotate(162deg);transform:rotate(162deg)}.radial-progress[data-progress="46"] .circle .mask.full,.radial-progress[data-progress="46"] .circle .fill{-webkit-transform:rotate(82.8deg);-ms-transform:rotate(82.8deg);transform:rotate(82.8deg)}.radial-progress[data-progress="46"] .circle .fill.fix{-webkit-transform:rotate(165.6deg);-ms-transform:rotate(165.6deg);transform:rotate(165.6deg)}.radial-progress[data-progress="47"] .circle .mask.full,.radial-progress[data-progress="47"] .circle .fill{-webkit-transform:rotate(84.6deg);-ms-transform:rotate(84.6deg);transform:rotate(84.6deg)}.radial-progress[data-progress="47"] .circle .fill.fix{-webkit-transform:rotate(169.2deg);-ms-transform:rotate(169.2deg);transform:rotate(169.2deg)}.radial-progress[data-progress="48"] .circle .mask.full,.radial-progress[data-progress="48"] .circle .fill{-webkit-transform:rotate(86.4deg);-ms-transform:rotate(86.4deg);transform:rotate(86.4deg)}.radial-progress[data-progress="48"] .circle .fill.fix{-webkit-transform:rotate(172.8deg);-ms-transform:rotate(172.8deg);transform:rotate(172.8deg)}.radial-progress[data-progress="49"] .circle .mask.full,.radial-progress[data-progress="49"] .circle .fill{-webkit-transform:rotate(88.2deg);-ms-transform:rotate(88.2deg);transform:rotate(88.2deg)}.radial-progress[data-progress="49"] .circle .fill.fix{-webkit-transform:rotate(176.4deg);-ms-transform:rotate(176.4deg);transform:rotate(176.4deg)}.radial-progress[data-progress="50"] .circle .mask.full,.radial-progress[data-progress="50"] .circle .fill{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.radial-progress[data-progress="50"] .circle .fill.fix{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.radial-progress[data-progress="51"] .circle .mask.full,.radial-progress[data-progress="51"] .circle .fill{-webkit-transform:rotate(91.8deg);-ms-transform:rotate(91.8deg);transform:rotate(91.8deg)}.radial-progress[data-progress="51"] .circle .fill.fix{-webkit-transform:rotate(183.6deg);-ms-transform:rotate(183.6deg);transform:rotate(183.6deg)}.radial-progress[data-progress="52"] .circle .mask.full,.radial-progress[data-progress="52"] .circle .fill{-webkit-transform:rotate(93.6deg);-ms-transform:rotate(93.6deg);transform:rotate(93.6deg)}.radial-progress[data-progress="52"] .circle .fill.fix{-webkit-transform:rotate(187.2deg);-ms-transform:rotate(187.2deg);transform:rotate(187.2deg)}.radial-progress[data-progress="53"] .circle .mask.full,.radial-progress[data-progress="53"] .circle .fill{-webkit-transform:rotate(95.4deg);-ms-transform:rotate(95.4deg);transform:rotate(95.4deg)}.radial-progress[data-progress="53"] .circle .fill.fix{-webkit-transform:rotate(190.8deg);-ms-transform:rotate(190.8deg);transform:rotate(190.8deg)}.radial-progress[data-progress="54"] .circle .mask.full,.radial-progress[data-progress="54"] .circle .fill{-webkit-transform:rotate(97.2deg);-ms-transform:rotate(97.2deg);transform:rotate(97.2deg)}.radial-progress[data-progress="54"] .circle .fill.fix{-webkit-transform:rotate(194.4deg);-ms-transform:rotate(194.4deg);transform:rotate(194.4deg)}.radial-progress[data-progress="55"] .circle .mask.full,.radial-progress[data-progress="55"] .circle .fill{-webkit-transform:rotate(99deg);-ms-transform:rotate(99deg);transform:rotate(99deg)}.radial-progress[data-progress="55"] .circle .fill.fix{-webkit-transform:rotate(198deg);-ms-transform:rotate(198deg);transform:rotate(198deg)}.radial-progress[data-progress="56"] .circle .mask.full,.radial-progress[data-progress="56"] .circle .fill{-webkit-transform:rotate(100.8deg);-ms-transform:rotate(100.8deg);transform:rotate(100.8deg)}.radial-progress[data-progress="56"] .circle .fill.fix{-webkit-transform:rotate(201.6deg);-ms-transform:rotate(201.6deg);transform:rotate(201.6deg)}.radial-progress[data-progress="57"] .circle .mask.full,.radial-progress[data-progress="57"] .circle .fill{-webkit-transform:rotate(102.6deg);-ms-transform:rotate(102.6deg);transform:rotate(102.6deg)}.radial-progress[data-progress="57"] .circle .fill.fix{-webkit-transform:rotate(205.2deg);-ms-transform:rotate(205.2deg);transform:rotate(205.2deg)}.radial-progress[data-progress="58"] .circle .mask.full,.radial-progress[data-progress="58"] .circle .fill{-webkit-transform:rotate(104.4deg);-ms-transform:rotate(104.4deg);transform:rotate(104.4deg)}.radial-progress[data-progress="58"] .circle .fill.fix{-webkit-transform:rotate(208.8deg);-ms-transform:rotate(208.8deg);transform:rotate(208.8deg)}.radial-progress[data-progress="59"] .circle .mask.full,.radial-progress[data-progress="59"] .circle .fill{-webkit-transform:rotate(106.2deg);-ms-transform:rotate(106.2deg);transform:rotate(106.2deg)}.radial-progress[data-progress="59"] .circle .fill.fix{-webkit-transform:rotate(212.4deg);-ms-transform:rotate(212.4deg);transform:rotate(212.4deg)}.radial-progress[data-progress="60"] .circle .mask.full,.radial-progress[data-progress="60"] .circle .fill{-webkit-transform:rotate(108deg);-ms-transform:rotate(108deg);transform:rotate(108deg)}.radial-progress[data-progress="60"] .circle .fill.fix{-webkit-transform:rotate(216deg);-ms-transform:rotate(216deg);transform:rotate(216deg)}.radial-progress[data-progress="61"] .circle .mask.full,.radial-progress[data-progress="61"] .circle .fill{-webkit-transform:rotate(109.8deg);-ms-transform:rotate(109.8deg);transform:rotate(109.8deg)}.radial-progress[data-progress="61"] .circle .fill.fix{-webkit-transform:rotate(219.6deg);-ms-transform:rotate(219.6deg);transform:rotate(219.6deg)}.radial-progress[data-progress="62"] .circle .mask.full,.radial-progress[data-progress="62"] .circle .fill{-webkit-transform:rotate(111.6deg);-ms-transform:rotate(111.6deg);transform:rotate(111.6deg)}.radial-progress[data-progress="62"] .circle .fill.fix{-webkit-transform:rotate(223.2deg);-ms-transform:rotate(223.2deg);transform:rotate(223.2deg)}.radial-progress[data-progress="63"] .circle .mask.full,.radial-progress[data-progress="63"] .circle .fill{-webkit-transform:rotate(113.4deg);-ms-transform:rotate(113.4deg);transform:rotate(113.4deg)}.radial-progress[data-progress="63"] .circle .fill.fix{-webkit-transform:rotate(226.8deg);-ms-transform:rotate(226.8deg);transform:rotate(226.8deg)}.radial-progress[data-progress="64"] .circle .mask.full,.radial-progress[data-progress="64"] .circle .fill{-webkit-transform:rotate(115.2deg);-ms-transform:rotate(115.2deg);transform:rotate(115.2deg)}.radial-progress[data-progress="64"] .circle .fill.fix{-webkit-transform:rotate(230.4deg);-ms-transform:rotate(230.4deg);transform:rotate(230.4deg)}.radial-progress[data-progress="65"] .circle .mask.full,.radial-progress[data-progress="65"] .circle .fill{-webkit-transform:rotate(117deg);-ms-transform:rotate(117deg);transform:rotate(117deg)}.radial-progress[data-progress="65"] .circle .fill.fix{-webkit-transform:rotate(234deg);-ms-transform:rotate(234deg);transform:rotate(234deg)}.radial-progress[data-progress="66"] .circle .mask.full,.radial-progress[data-progress="66"] .circle .fill{-webkit-transform:rotate(118.8deg);-ms-transform:rotate(118.8deg);transform:rotate(118.8deg)}.radial-progress[data-progress="66"] .circle .fill.fix{-webkit-transform:rotate(237.6deg);-ms-transform:rotate(237.6deg);transform:rotate(237.6deg)}.radial-progress[data-progress="67"] .circle .mask.full,.radial-progress[data-progress="67"] .circle .fill{-webkit-transform:rotate(120.6deg);-ms-transform:rotate(120.6deg);transform:rotate(120.6deg)}.radial-progress[data-progress="67"] .circle .fill.fix{-webkit-transform:rotate(241.2deg);-ms-transform:rotate(241.2deg);transform:rotate(241.2deg)}.radial-progress[data-progress="68"] .circle .mask.full,.radial-progress[data-progress="68"] .circle .fill{-webkit-transform:rotate(122.4deg);-ms-transform:rotate(122.4deg);transform:rotate(122.4deg)}.radial-progress[data-progress="68"] .circle .fill.fix{-webkit-transform:rotate(244.8deg);-ms-transform:rotate(244.8deg);transform:rotate(244.8deg)}.radial-progress[data-progress="69"] .circle .mask.full,.radial-progress[data-progress="69"] .circle .fill{-webkit-transform:rotate(124.2deg);-ms-transform:rotate(124.2deg);transform:rotate(124.2deg)}.radial-progress[data-progress="69"] .circle .fill.fix{-webkit-transform:rotate(248.4deg);-ms-transform:rotate(248.4deg);transform:rotate(248.4deg)}.radial-progress[data-progress="70"] .circle .mask.full,.radial-progress[data-progress="70"] .circle .fill{-webkit-transform:rotate(126deg);-ms-transform:rotate(126deg);transform:rotate(126deg)}.radial-progress[data-progress="70"] .circle .fill.fix{-webkit-transform:rotate(252deg);-ms-transform:rotate(252deg);transform:rotate(252deg)}.radial-progress[data-progress="71"] .circle .mask.full,.radial-progress[data-progress="71"] .circle .fill{-webkit-transform:rotate(127.8deg);-ms-transform:rotate(127.8deg);transform:rotate(127.8deg)}.radial-progress[data-progress="71"] .circle .fill.fix{-webkit-transform:rotate(255.6deg);-ms-transform:rotate(255.6deg);transform:rotate(255.6deg)}.radial-progress[data-progress="72"] .circle .mask.full,.radial-progress[data-progress="72"] .circle .fill{-webkit-transform:rotate(129.6deg);-ms-transform:rotate(129.6deg);transform:rotate(129.6deg)}.radial-progress[data-progress="72"] .circle .fill.fix{-webkit-transform:rotate(259.2deg);-ms-transform:rotate(259.2deg);transform:rotate(259.2deg)}.radial-progress[data-progress="73"] .circle .mask.full,.radial-progress[data-progress="73"] .circle .fill{-webkit-transform:rotate(131.4deg);-ms-transform:rotate(131.4deg);transform:rotate(131.4deg)}.radial-progress[data-progress="73"] .circle .fill.fix{-webkit-transform:rotate(262.8deg);-ms-transform:rotate(262.8deg);transform:rotate(262.8deg)}.radial-progress[data-progress="74"] .circle .mask.full,.radial-progress[data-progress="74"] .circle .fill{-webkit-transform:rotate(133.2deg);-ms-transform:rotate(133.2deg);transform:rotate(133.2deg)}.radial-progress[data-progress="74"] .circle .fill.fix{-webkit-transform:rotate(266.4deg);-ms-transform:rotate(266.4deg);transform:rotate(266.4deg)}.radial-progress[data-progress="75"] .circle .mask.full,.radial-progress[data-progress="75"] .circle .fill{-webkit-transform:rotate(135deg);-ms-transform:rotate(135deg);transform:rotate(135deg)}.radial-progress[data-progress="75"] .circle .fill.fix{-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.radial-progress[data-progress="76"] .circle .mask.full,.radial-progress[data-progress="76"] .circle .fill{-webkit-transform:rotate(136.8deg);-ms-transform:rotate(136.8deg);transform:rotate(136.8deg)}.radial-progress[data-progress="76"] .circle .fill.fix{-webkit-transform:rotate(273.6deg);-ms-transform:rotate(273.6deg);transform:rotate(273.6deg)}.radial-progress[data-progress="77"] .circle .mask.full,.radial-progress[data-progress="77"] .circle .fill{-webkit-transform:rotate(138.6deg);-ms-transform:rotate(138.6deg);transform:rotate(138.6deg)}.radial-progress[data-progress="77"] .circle .fill.fix{-webkit-transform:rotate(277.2deg);-ms-transform:rotate(277.2deg);transform:rotate(277.2deg)}.radial-progress[data-progress="78"] .circle .mask.full,.radial-progress[data-progress="78"] .circle .fill{-webkit-transform:rotate(140.4deg);-ms-transform:rotate(140.4deg);transform:rotate(140.4deg)}.radial-progress[data-progress="78"] .circle .fill.fix{-webkit-transform:rotate(280.8deg);-ms-transform:rotate(280.8deg);transform:rotate(280.8deg)}.radial-progress[data-progress="79"] .circle .mask.full,.radial-progress[data-progress="79"] .circle .fill{-webkit-transform:rotate(142.2deg);-ms-transform:rotate(142.2deg);transform:rotate(142.2deg)}.radial-progress[data-progress="79"] .circle .fill.fix{-webkit-transform:rotate(284.4deg);-ms-transform:rotate(284.4deg);transform:rotate(284.4deg)}.radial-progress[data-progress="80"] .circle .mask.full,.radial-progress[data-progress="80"] .circle .fill{-webkit-transform:rotate(144deg);-ms-transform:rotate(144deg);transform:rotate(144deg)}.radial-progress[data-progress="80"] .circle .fill.fix{-webkit-transform:rotate(288deg);-ms-transform:rotate(288deg);transform:rotate(288deg)}.radial-progress[data-progress="81"] .circle .mask.full,.radial-progress[data-progress="81"] .circle .fill{-webkit-transform:rotate(145.8deg);-ms-transform:rotate(145.8deg);transform:rotate(145.8deg)}.radial-progress[data-progress="81"] .circle .fill.fix{-webkit-transform:rotate(291.6deg);-ms-transform:rotate(291.6deg);transform:rotate(291.6deg)}.radial-progress[data-progress="82"] .circle .mask.full,.radial-progress[data-progress="82"] .circle .fill{-webkit-transform:rotate(147.6deg);-ms-transform:rotate(147.6deg);transform:rotate(147.6deg)}.radial-progress[data-progress="82"] .circle .fill.fix{-webkit-transform:rotate(295.2deg);-ms-transform:rotate(295.2deg);transform:rotate(295.2deg)}.radial-progress[data-progress="83"] .circle .mask.full,.radial-progress[data-progress="83"] .circle .fill{-webkit-transform:rotate(149.4deg);-ms-transform:rotate(149.4deg);transform:rotate(149.4deg)}.radial-progress[data-progress="83"] .circle .fill.fix{-webkit-transform:rotate(298.8deg);-ms-transform:rotate(298.8deg);transform:rotate(298.8deg)}.radial-progress[data-progress="84"] .circle .mask.full,.radial-progress[data-progress="84"] .circle .fill{-webkit-transform:rotate(151.2deg);-ms-transform:rotate(151.2deg);transform:rotate(151.2deg)}.radial-progress[data-progress="84"] .circle .fill.fix{-webkit-transform:rotate(302.4deg);-ms-transform:rotate(302.4deg);transform:rotate(302.4deg)}.radial-progress[data-progress="85"] .circle .mask.full,.radial-progress[data-progress="85"] .circle .fill{-webkit-transform:rotate(153deg);-ms-transform:rotate(153deg);transform:rotate(153deg)}.radial-progress[data-progress="85"] .circle .fill.fix{-webkit-transform:rotate(306deg);-ms-transform:rotate(306deg);transform:rotate(306deg)}.radial-progress[data-progress="86"] .circle .mask.full,.radial-progress[data-progress="86"] .circle .fill{-webkit-transform:rotate(154.8deg);-ms-transform:rotate(154.8deg);transform:rotate(154.8deg)}.radial-progress[data-progress="86"] .circle .fill.fix{-webkit-transform:rotate(309.6deg);-ms-transform:rotate(309.6deg);transform:rotate(309.6deg)}.radial-progress[data-progress="87"] .circle .mask.full,.radial-progress[data-progress="87"] .circle .fill{-webkit-transform:rotate(156.6deg);-ms-transform:rotate(156.6deg);transform:rotate(156.6deg)}.radial-progress[data-progress="87"] .circle .fill.fix{-webkit-transform:rotate(313.2deg);-ms-transform:rotate(313.2deg);transform:rotate(313.2deg)}.radial-progress[data-progress="88"] .circle .mask.full,.radial-progress[data-progress="88"] .circle .fill{-webkit-transform:rotate(158.4deg);-ms-transform:rotate(158.4deg);transform:rotate(158.4deg)}.radial-progress[data-progress="88"] .circle .fill.fix{-webkit-transform:rotate(316.8deg);-ms-transform:rotate(316.8deg);transform:rotate(316.8deg)}.radial-progress[data-progress="89"] .circle .mask.full,.radial-progress[data-progress="89"] .circle .fill{-webkit-transform:rotate(160.2deg);-ms-transform:rotate(160.2deg);transform:rotate(160.2deg)}.radial-progress[data-progress="89"] .circle .fill.fix{-webkit-transform:rotate(320.4deg);-ms-transform:rotate(320.4deg);transform:rotate(320.4deg)}.radial-progress[data-progress="90"] .circle .mask.full,.radial-progress[data-progress="90"] .circle .fill{-webkit-transform:rotate(162deg);-ms-transform:rotate(162deg);transform:rotate(162deg)}.radial-progress[data-progress="90"] .circle .fill.fix{-webkit-transform:rotate(324deg);-ms-transform:rotate(324deg);transform:rotate(324deg)}.radial-progress[data-progress="91"] .circle .mask.full,.radial-progress[data-progress="91"] .circle .fill{-webkit-transform:rotate(163.8deg);-ms-transform:rotate(163.8deg);transform:rotate(163.8deg)}.radial-progress[data-progress="91"] .circle .fill.fix{-webkit-transform:rotate(327.6deg);-ms-transform:rotate(327.6deg);transform:rotate(327.6deg)}.radial-progress[data-progress="92"] .circle .mask.full,.radial-progress[data-progress="92"] .circle .fill{-webkit-transform:rotate(165.6deg);-ms-transform:rotate(165.6deg);transform:rotate(165.6deg)}.radial-progress[data-progress="92"] .circle .fill.fix{-webkit-transform:rotate(331.2deg);-ms-transform:rotate(331.2deg);transform:rotate(331.2deg)}.radial-progress[data-progress="93"] .circle .mask.full,.radial-progress[data-progress="93"] .circle .fill{-webkit-transform:rotate(167.4deg);-ms-transform:rotate(167.4deg);transform:rotate(167.4deg)}.radial-progress[data-progress="93"] .circle .fill.fix{-webkit-transform:rotate(334.8deg);-ms-transform:rotate(334.8deg);transform:rotate(334.8deg)}.radial-progress[data-progress="94"] .circle .mask.full,.radial-progress[data-progress="94"] .circle .fill{-webkit-transform:rotate(169.2deg);-ms-transform:rotate(169.2deg);transform:rotate(169.2deg)}.radial-progress[data-progress="94"] .circle .fill.fix{-webkit-transform:rotate(338.4deg);-ms-transform:rotate(338.4deg);transform:rotate(338.4deg)}.radial-progress[data-progress="95"] .circle .mask.full,.radial-progress[data-progress="95"] .circle .fill{-webkit-transform:rotate(171deg);-ms-transform:rotate(171deg);transform:rotate(171deg)}.radial-progress[data-progress="95"] .circle .fill.fix{-webkit-transform:rotate(342deg);-ms-transform:rotate(342deg);transform:rotate(342deg)}.radial-progress[data-progress="96"] .circle .mask.full,.radial-progress[data-progress="96"] .circle .fill{-webkit-transform:rotate(172.8deg);-ms-transform:rotate(172.8deg);transform:rotate(172.8deg)}.radial-progress[data-progress="96"] .circle .fill.fix{-webkit-transform:rotate(345.6deg);-ms-transform:rotate(345.6deg);transform:rotate(345.6deg)}.radial-progress[data-progress="97"] .circle .mask.full,.radial-progress[data-progress="97"] .circle .fill{-webkit-transform:rotate(174.6deg);-ms-transform:rotate(174.6deg);transform:rotate(174.6deg)}.radial-progress[data-progress="97"] .circle .fill.fix{-webkit-transform:rotate(349.2deg);-ms-transform:rotate(349.2deg);transform:rotate(349.2deg)}.radial-progress[data-progress="98"] .circle .mask.full,.radial-progress[data-progress="98"] .circle .fill{-webkit-transform:rotate(176.4deg);-ms-transform:rotate(176.4deg);transform:rotate(176.4deg)}.radial-progress[data-progress="98"] .circle .fill.fix{-webkit-transform:rotate(352.8deg);-ms-transform:rotate(352.8deg);transform:rotate(352.8deg)}.radial-progress[data-progress="99"] .circle .mask.full,.radial-progress[data-progress="99"] .circle .fill{-webkit-transform:rotate(178.2deg);-ms-transform:rotate(178.2deg);transform:rotate(178.2deg)}.radial-progress[data-progress="99"] .circle .fill.fix{-webkit-transform:rotate(356.4deg);-ms-transform:rotate(356.4deg);transform:rotate(356.4deg)}.radial-progress[data-progress="100"] .circle .mask.full,.radial-progress[data-progress="100"] .circle .fill{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.radial-progress[data-progress="100"] .circle .fill.fix{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}.radial-progress:not([data-progress="0"]) .inset .bgIcon{opacity:1}.radial-progress+.o_progress_label_wrapper,.o_coursetable.o_rendertype_classic .o_progress .radial-progress+.o_progress_label_wrapper{margin-left:0.5em}.radial-progress-sm{width:60px;height:60px;font-size:14.4px}.radial-progress-sm .circle .mask{clip:rect(0px, 60px, 60px, 30px)}.radial-progress-sm .circle .mask .fill{clip:rect(0px, 30px, 60px, 0px)}.radial-progress-sm .inset{width:45px;height:45px;margin-left:7.5px;margin-top:7.5px;font-size:80px;line-height:35px;font-size:40px}.radial-progress-sm .inset .bgIcon{position:absolute;top:5px}.radial-progress-lg{width:180px;height:180px;font-size:32.4px}.radial-progress-lg .circle .mask{clip:rect(0px, 180px, 180px, 90px)}.radial-progress-lg .circle .mask .fill{clip:rect(0px, 90px, 180px, 0px)}.radial-progress-lg .inset{width:135px;height:135px;margin-left:22.5px;margin-top:22.5px;font-size:115px;line-height:125px}.radial-progress-lg .inset .bgIcon{position:absolute;top:5px}.radial-progress-inline,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{width:20px;height:20px;margin:0;vertical-align:bottom;display:inline-block}.radial-progress-inline .circle .mask,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask{clip:rect(0px, 20px, 20px, 10px)}.radial-progress-inline .circle .mask .fill,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 10px, 20px, 0px)}.radial-progress-inline .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{width:14px;height:14px;margin-left:3px;margin-top:3px}.radial-progress-inline .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{display:none}.radial-progress-pie .percentage .centeredWrapper .number,.radial-progress-pie .percentage .centeredWrapper .o_progress_label{color:#fff;text-shadow:1px 1px 2px #000000}.radial-progress-success .circle .mask .fill,.radial-progress-success .circle .fill{background-color:#78be20}.radial-progress-success .inset .percentage .number span{color:#78be20}.radial-progress-info .circle .mask .fill,.radial-progress-info .circle .fill{background-color:#a6a6a6}.radial-progress-info .inset .percentage .number span{color:#a6a6a6}.radial-progress-danger .circle .mask .fill,.radial-progress-danger .circle .fill{background-color:#d6001c}.radial-progress-danger .inset .percentage .number span{color:#d6001c}.radial-progress-warning .circle .mask .fill,.radial-progress-warning .circle .fill{background-color:#f2af40}.radial-progress-warning .inset .percentage .number span{color:#f2af40}.o_toolbar .o_tool .o_progress{width:37px;height:33px;position:relative;display:inline-block;overflow:visible}.o_toolbar .o_tool .o_progress .radial-progress{width:45px;height:45px;font-size:12px;position:absolute;top:-5px;left:0;margin:0}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask{clip:rect(0px, 45px, 45px, 22.5px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 22.5px, 45px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset{width:37px;height:37px;margin-left:4px;margin-top:4px;font-size:37px;line-height:37px;background:#f8f8f8}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .number{color:#777;margin-right:-0.3em}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .addon{margin-top:-0.1em;margin-bottom:-0.3em}.o_toolbar .o_tool .o_progress .radial-progress .percentage .centeredWrapper .addon>span{font-size:0.8em;font-weight:normal}.o_toolbar .o_tool .o_progress .radial-progress .percentage .o_progress_label{display:none}@media (max-width: 991px){.o_toolbar .o_tool .o_progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress{width:35px;height:31px}.o_toolbar .o_tool .o_progress .radial-progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{width:41px;height:41px;font-size:11px;top:-3px}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask{clip:rect(0px, 41px, 41px, 20.5px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 20.5px, 41px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset{width:35px;height:35px;margin-left:3px;margin-top:3px;font-size:35px;line-height:35px}.o_coursetable.o_rendertype_custom .o_completion .o_progress{display:inline-block}.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{position:relative;top:0;left:-4px;margin:0}}@media (max-width: 767px){.o_toolbar .o_tool .o_progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress{width:22px;height:22px}.o_toolbar .o_tool .o_progress .radial-progress,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress{width:26px;height:26px;top:-2px}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask{clip:rect(0px, 26px, 26px, 13px)}.o_toolbar .o_tool .o_progress .radial-progress .circle .mask .fill,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .circle .mask .fill{clip:rect(0px, 13px, 26px, 0px)}.o_toolbar .o_tool .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset{width:20px;height:20px;margin-left:3px;margin-top:3px}.o_toolbar .o_tool .o_progress .radial-progress .inset:after,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .inset:after{display:none}.o_toolbar .o_tool .o_progress .radial-progress .percentage,.o_coursetable.o_rendertype_custom .o_completion .o_progress .radial-progress .percentage{display:none}}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset:after{display:none}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage{position:relative;left:28px}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .number{font-size:14px;line-height:1.428571429;font-weight:normal;color:#2d2926}.o_coursetable.o_rendertype_classic .o_progress .radial-progress .percentage .addon{display:none}.o_progress_failed .radial-progress-inline .inset,.o_progress_failed .o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .o_progress_failed .radial-progress .inset,.o_progress_passed .radial-progress-inline .inset,.o_progress_passed .o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .o_progress_passed .radial-progress .inset{display:none}.o_progress_failed .radial-progress-toolbar .inset,.o_progress_passed .radial-progress-toolbar .inset{font-size:37px;line-height:37px}.o_progress_failed .inset:after{content:"ï€";color:#efe5e5}.o_progress_passed .inset:after{content:"";color:#e5efe5}html{position:relative;min-height:100%}body{min-height:100%;margin-bottom:80px}#o_main_wrapper{background:#fff;z-index:3}#o_main_wrapper #o_main_container{background:#fff}#o_main_wrapper #o_main_container #o_main_left{float:left;z-index:2;position:relative;background:#fff}#o_main_wrapper #o_main_container #o_main_left #o_main_left_content{padding:0 0 0 15px}#o_main_wrapper #o_main_container #o_main_left #o_main_left_toggle{position:absolute;display:none;right:0;top:70px;margin-right:-30px;font-size:25px;line-height:35px;text-align:center;width:30px;height:35px;z-index:3;border:1px solid #ddd;border-left:none;border-bottom-right-radius:4px;border-top-right-radius:4px;background-color:#fbfbfb;-webkit-box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);box-shadow:2px 0px 4px 1px rgba(0,0,0,0.15);color:#209d9e}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas{background:#fbfbfb;-webkit-box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);box-shadow:0px 0px 6px 1px rgba(0,0,0,0.2);min-width:250px}#o_main_wrapper #o_main_container #o_main_left.o_offcanvas #o_main_left_content{padding:0 0 0 0}#o_main_wrapper #o_main_container #o_main_right{float:right;z-index:2;position:relative;background:inherit}#o_main_wrapper #o_main_container #o_main_right #o_main_right_content{padding:0 15px 0 0}#o_main_wrapper #o_main_container #o_main_center{position:relative;z-index:1;background:inherit}#o_main_wrapper #o_main_container #o_main_center h2:first-child{margin-top:0}@media screen and (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center{margin-left:0 !important}}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:0 15px}#o_main_wrapper #o_main_container #o_main_center #o_main_center_content #o_main_center_content_inner{padding-bottom:15px}#o_main_wrapper #o_toplink{position:absolute;bottom:0;right:15px;text-align:center;z-index:3}@media (max-width: 767px){#o_main_wrapper #o_main_container #o_main_center #o_main_center_content{padding:15px}}#o_back_wrapper,#o_preview_wrapper{margin-top:10px}#o_back_wrapper.o_toolbar .o_breadcrumb .breadcrumb,#o_preview_wrapper.o_toolbar .o_breadcrumb .breadcrumb{font-size:14px}body.o_message #o_main_center_content_inner{min-height:150px;max-width:500px;padding:15px;margin:60px auto}#o_footer_wrapper{position:absolute;bottom:0;width:100%;height:70px;overflow:hidden;background-color:#f5f5f5;color:#999;line-height:16px;font-size:12px}#o_footer_wrapper a{color:#999}#o_footer_wrapper a:hover{color:#000}#o_footer_container{position:relative;padding-top:10px;min-height:70px;background:#f5f5f5;z-index:1}#o_footer_user{position:absolute;left:15px;top:10px;z-index:1}#o_footer_user #o_counter{white-space:nowrap}#o_footer_user #o_username{white-space:nowrap;margin-right:1em}#o_footer_version{position:absolute;right:15px;top:10px;text-align:right;z-index:1}@media (max-width: 767px){#o_footer_version{padding-top:10px;text-align:left}}#o_footer_powered{position:absolute;top:30px;right:15px;z-index:1}#o_footer_powered img{opacity:.6;filter:alpha(opacity=60);width:120px}#o_footer_powered img:hover{opacity:1;filter:alpha(opacity=100)}#o_footer_impressum{position:absolute;top:10px;width:100%;text-align:center;z-index:-1}#o_footer_impressum i{display:none}#o_footer_textline{position:absolute;top:30px;width:100%;text-align:center;z-index:-1}#o_share{margin-top:10px}#o_share a{opacity:.6;filter:alpha(opacity=60)}#o_share a:hover{opacity:1;filter:alpha(opacity=100)}#o_share a,#o_share_social_container a{color:#999;margin:0 0.25em 0 0}#o_share a:hover,#o_share_social_container a:hover{color:#000}@media (max-width: 767px){#o_counter,#o_footer_version,#o_share{display:none}#o_footer_impressum{top:30px;text-align:left}#o_footer_textline{top:50px;text-align:left}#o_footer_powered{top:10px}#o_footer_powered a:after{content:"\221E";font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:bold;font-size:14px}#o_footer_powered img{display:none}}#o_navbar_wrapper{z-index:4;border-top:1px solid #e7e7e7;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1)}#o_navbar_wrapper #o_navbar_container{position:relative}a.o_disabled.navbar-text{margin:0}.o_navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid #e7e7e7;background-color:#f8f8f8}.o_navbar:before,.o_navbar:after{content:" ";display:table}.o_navbar:after{clear:both}.o_navbar .o_navbar_tabs li{max-width:150px}.o_navbar .o_navbar_tabs li a{padding-right:30px}.o_navbar .o_navbar_tabs li a:first-child span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o_navbar .o_navbar_tabs .o_icon-fw{position:absolute;top:15px;left:0.5em;padding-top:3px;width:1em;height:1em;display:none}.o_navbar .o_navbar_tabs .o_navbar_tab_close{position:absolute;top:15px;right:0.5em;padding:0;width:1em;height:1em}.o_navbar .o_navbar_tabs .o_navbar_tab_close i:before{color:#d6001c}.o_navbar .o_navbar_tabs .o_navbar_tab_close:hover i:before{color:#a30015}.o_navbar .o_custom_navbar-brand{background-position:5px 0;background-repeat:no-repeat;height:50px;width:120px}.o_navbar #o_navbar_langchooser{color:#777;padding:7px 15px}.o_navbar #o_navbar_langchooser form span+div{display:inline}.o_navbar #o_navbar_tools_permanent #o_navbar_print a,.o_navbar #o_navbar_tools_permanent #o_navbar_impress a,.o_navbar #o_navbar_tools_permanent #o_navbar_help a{color:#777;padding-right:0}.o_navbar #o_navbar_tools_permanent #o_navbar_login a{color:#f2af40}.o_navbar .o_navbar_tools>#o_navbar_tools_permanent>li>a>span{display:none}@media (min-width: 768px){.o_navbar .o_navbar_tools li.o_portrait>a>span{display:inline}}.o_navbar #o_navbar_tools_personal .o_navbar_tool a,.o_navbar #o_navbar_tools_permanent .o_navbar_tool a{padding-right:5px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu a,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu a{padding-left:45px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .dropdown-menu a,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu .dropdown-menu a{padding-left:15px}.o_navbar #o_navbar_tools_personal #o_navbar_my_menu .o_portrait,.o_navbar #o_navbar_tools_permanent #o_navbar_my_menu .o_portrait{position:absolute;left:7px;top:10px}.o_navbar #o_navbar_tools_personal .o_logout,.o_navbar #o_navbar_tools_permanent .o_logout{color:#d6001c}.o_navbar.o_navbar-offcanvas .o_navbar_tab_close{top:10px;right:10px}.o_navbar.o_navbar-offcanvas .o_navbar-right a{padding:3px 20px;color:#9d9d9d}.o_navbar.o_navbar-offcanvas .o_navbar-right a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-right a:focus{color:#fff;background-color:transparent}.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout{color:#d6001c}.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout:hover,.o_navbar.o_navbar-offcanvas .o_navbar-right a.o_logout:focus{color:#a30015}.o_navbar.o_navbar-offcanvas .o_navbar-right a .o_icon-lg{font-size:1.0em;vertical-align:baseline}.o_navbar.o_navbar-offcanvas .o_navbar-right .divider{height:1px;margin:9px 0;overflow:hidden;background-color:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-header{padding-left:15px}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-toggle{display:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-menu{box-shadow:none;position:relative;top:0;left:0;display:block;float:none;background-color:#222;color:#9d9d9d;font-size:14px;border:none}.o_navbar.o_navbar-offcanvas .o_navbar-right .dropdown-menu .divider{background:none}.o_navbar.o_navbar-offcanvas .o_navbar-nav a{color:#9d9d9d;text-shadow:none}.o_navbar.o_navbar-offcanvas .o_navbar-nav a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav a:focus{background-color:transparent;color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .active a:focus{background-color:#090909;color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .o_navbar-link{color:#9d9d9d}.o_navbar.o_navbar-offcanvas .o_navbar-nav .o_navbar-link:hover{color:#fff}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a{color:#777}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a:hover,.o_navbar.o_navbar-offcanvas .o_navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}#o_navbar_impress a span,#o_navbar_search_opener a span{display:none}body.o_dmz #o_navbar_print a span,body.o_dmz #o_navbar_impress a span,body.o_dmz #o_navbar_help a span,body.o_dmz #o_navbar_search_opener a span{display:inline}.o_navbar-collapse{max-height:340px;overflow-x:visible;padding-right:15px;padding-left:15px;-webkit-overflow-scrolling:touch}.o_navbar-collapse:before,.o_navbar-collapse:after{content:" ";display:table}.o_navbar-collapse:after{clear:both}.o_navbar-collapse.o_collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.o_navbar-offcanvas .o_navbar-collapse{width:auto;box-shadow:none;margin-top:10px;margin-right:-15px;margin-left:-15px}.o_navbar-brand{float:left;font-size:18px;line-height:20px;height:50px;color:#777}.o_navbar-brand:hover,.o_navbar-brand:focus{text-decoration:none;color:#5e5e5e;background-color:transparent}.o_navbar-toggle{position:relative;margin-right:15px;margin-left:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;border:1px solid #ddd;border-radius:4px;background-color:transparent;background-image:none}.o_navbar-toggle:hover,.o_navbar-toggle:focus{outline:none;background-color:#ddd}.o_navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px;background-color:#888}.o_navbar-toggle .icon-bar+.icon-bar{margin-top:4px}#o_navbar_left-toggle{float:left}#o_navbar_right-toggle{float:right}.o_navbar-link{color:#777}.o_navbar-link:hover{color:#333}.o_navbar-nav{margin:7.5px -15px}.o_navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px;color:#777}.o_navbar-nav>li>a:hover,.o_navbar-nav>li>a:focus{color:#333;background-color:transparent}.o_navbar-nav>.active>a,.o_navbar-nav>.active>a:hover,.o_navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.o_navbar-nav>.disabled>a,.o_navbar-nav>.disabled>a:hover,.o_navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.o_navbar-nav>.open>a,.o_navbar-nav>.open>a:hover,.o_navbar-nav>.open>a:focus{background-color:#e7e7e7;color:#555}.o_collapse .o_navbar-nav{float:left;margin:0}.o_collapse .o_navbar-nav>li{float:left}.o_collapse .o_navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.o_collapse .o_navbar-nav.o_navbar-right:last-child{margin-right:-15px}.o_collapse.o_navbar-collapse .o_navbar-left{float:left !important}.o_collapse.o_navbar-collapse .o_navbar-right{float:right !important}.o_navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:8px;margin-bottom:8px}@media (max-width: 767px){.o_navbar-form .form-group{margin-bottom:5px}}.o_collapse .o_navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.o_collapse .o_navbar-form.o_navbar-right:last-child{margin-right:-15px}.o_navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.o_navbar-fixed-bottom .o_navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.o_navbar-btn{margin-top:8px;margin-bottom:8px}.o_navbar-btn.btn-sm,.btn-group-sm>.o_navbar-btn.btn{margin-top:10px;margin-bottom:10px}.o_navbar-btn.btn-xs,.btn-group-xs>.o_navbar-btn.btn{margin-top:14px;margin-bottom:14px}.o_navbar-text{margin-top:15px;margin-bottom:15px;color:#777}.o_collapse .o_navbar-text{float:left;margin-left:15px;margin-right:15px}.o_collapse .o_navbar-text.o_navbar-right:last-child{margin-right:0}.o_dropdown_tab{position:relative}.o_dropdown_tab>a:first-child{padding-right:30px}.o_dropdown_tab>a:first-child .o_icon-fw{display:none;position:absolute;top:0;left:10px;padding-top:3px;line-height:20px}.o_dropdown_tab>a:first-child span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.o_dropdown_tab .o_navbar_tab_close{position:absolute;top:0px;right:10px;padding-left:0px;padding-right:0px;color:#d6001c;background-color:inherit}.o_dropdown_tab .o_navbar_tab_close:focus,.o_dropdown_tab .o_navbar_tab_close:hover{color:#a30015;background-color:inherit}#o_navbar_more .dropdown-menu .divider:last-child{display:none}@media (min-width: 768px){#o_navbar_more .dropdown-menu{max-width:300px}}@media (max-width: 767px){#o_navbar_more>li{position:inherit}#o_navbar_more .dropdown-menu{left:0px;right:0px}#o_navbar_more .dropdown-menu a,#o_navbar_more .dropdown-menu i{line-height:30px}#o_navbar_more .dropdown-menu .o_navbar_tab_close{line-height:inherit}}.o_body_popup #o_topnav_printview{display:inline-block}.o_body_popup #o_topnav_close{float:right}.o_body_popup #o_topnav_close span{display:block}.o_body_popup #o_navbar_tools_permanent li>a{background-color:transparent}.o_toolbar{position:relative;margin-bottom:25px;margin-top:-10px;border:1px solid #e7e7e7}.o_toolbar:before,.o_toolbar:after{content:" ";display:table}.o_toolbar:after{clear:both}@media (min-width: 768px){.o_toolbar{border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}}.o_toolbar.o_toolbar_with_segments{margin-bottom:35px}.o_toolbar .o_breadcrumb:before,.o_toolbar .o_breadcrumb:after{content:" ";display:table}.o_toolbar .o_breadcrumb:after{clear:both}.o_toolbar .o_breadcrumb .breadcrumb{margin-bottom:0;padding:5px 9px;font-size:11px;line-height:15px;border-radius:0;background:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close{float:right;position:relative;margin:0 0 0 15px;vertical-align:middle}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a{line-height:15px;color:#d6001c}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a:hover{color:#8a0012}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a i{font-size:16px}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close a span{display:none}.o_toolbar .o_breadcrumb .breadcrumb .o_breadcrumb_close:before{content:none}.o_toolbar .o_tools_container{text-align:center;min-height:37px;position:relative;background-color:#f8f8f8;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_toolbar .o_tools_container:before,.o_toolbar .o_tools_container:after{content:" ";display:table}.o_toolbar .o_tools_container:after{clear:both}@media (max-width: 991px){.o_toolbar .o_tools_container{min-height:35px}}@media (max-width: 767px){.o_toolbar .o_tools_container{min-height:22px;text-align:left}}.o_toolbar .o_tools_container span.o_tool_text{color:#777;display:inline-block}.o_toolbar .o_tools_container a{color:#777;display:inline-block}.o_toolbar .o_tools_container a:hover{color:#333}.o_toolbar .o_tools_container a.o_disabled{color:#aaa !important}.o_toolbar .o_tools_container a.o_disabled:hover{color:#aaa !important}.o_toolbar .o_tools_container a.active{color:#209d9e;background-color:transparent}.o_toolbar .o_tools_container a.btn-primary{color:#fff}.o_toolbar .o_tools_container .dropdown-menu a{display:block}.o_toolbar .o_tools_container .dropdown-menu a.active{color:#209d9e;background-color:transparent}.o_toolbar .o_breadcrumb+.o_tools_container{border-top:1px solid #e7e7e7}.o_toolbar .o_tools{margin-top:8px;margin-bottom:5px}.o_toolbar .o_tool,.o_toolbar .o_text{position:relative;margin:0 10px}.o_toolbar .o_tool:first-child,.o_toolbar .o_text:first-child{margin-left:0}.o_toolbar .o_tool:last-child,.o_toolbar .o_text:last-child{margin-right:0}.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:18px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:block;font-size:12px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{position:absolute;right:50%;top:-18px;margin-right:-12px;font-size:13px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:16px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{font-size:11px}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{top:-16.5px;margin-right:-11px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool a i,.o_toolbar .o_tool .o_disabled i,.o_toolbar .o_text a i,.o_toolbar .o_text .o_disabled i{font-size:20px}.o_toolbar .o_tool a span,.o_toolbar .o_tool .o_disabled span,.o_toolbar .o_text a span,.o_toolbar .o_text .o_disabled span{display:none}.o_toolbar .o_tool a span.badge,.o_toolbar .o_tool .o_disabled span.badge,.o_toolbar .o_text a span.badge,.o_toolbar .o_text .o_disabled span.badge{display:block;position:relative;top:0;left:0;margin-right:0}}.o_toolbar .o_tool .o_chelp,.o_toolbar .o_text .o_chelp{position:relative;top:-1em;vertical-align:top;color:#fff}.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{padding:0;margin-top:5px;border:1px solid #ccc;background-color:#eee}.o_toolbar .o_tool_next a,.o_toolbar .o_tool_previous a{color:#777}.o_toolbar .o_tool_next a:hover,.o_toolbar .o_tool_previous a:hover{color:#333}.o_toolbar .o_tool_next a.o_disabled,.o_toolbar .o_tool_previous a.o_disabled{color:#aaa !important}.o_toolbar .o_tool_next a.o_disabled:hover,.o_toolbar .o_tool_previous a.o_disabled:hover{color:#aaa !important}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:21px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{margin-top:4px}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:18px}}@media (max-width: 767px){.o_toolbar .o_tool_next,.o_toolbar .o_tool_previous{margin-top:0}.o_toolbar .o_tool_next i,.o_toolbar .o_tool_previous i{font-size:20px}}.o_toolbar .o_tool_previous{margin-left:10px;border-bottom-left-radius:4px;border-top-left-radius:4px;border-right:0}.o_toolbar .o_tool_next{border-bottom-right-radius:4px;border-top-right-radius:4px}.o_toolbar .o_tool_dropdown{margin:0 10px}.o_toolbar .o_tool_dropdown:first-child{margin-left:0}.o_toolbar .o_tool_dropdown:last-child{margin-right:0}.o_toolbar .o_tool_dropdown a.dropdown-toggle{position:relative}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:18px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label{display:block;font-size:12px;text-align:center}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{position:absolute;right:50%;top:4px;margin-right:-20px;font-size:14px}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:16px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label,.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{font-size:11px}.o_toolbar .o_tool_dropdown a.dropdown-toggle .o_icon_caret{top:4px;margin-right:-18px;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown a.dropdown-toggle{padding:0 10px 0 5px}.o_toolbar .o_tool_dropdown a.dropdown-toggle i{font-size:20px}.o_toolbar .o_tool_dropdown a.dropdown-toggle span.o_label{display:none}}.o_toolbar .o_tool_dropdown .dropdown-menu{text-align:left}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{line-height:16px;font-size:70% !important;padding:0 18px 0 4px;position:relative;top:-2px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:12px !important;margin:0 0 3px 0}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{position:absolute;right:5px;top:2px;margin-right:0}@media (min-width: 767px) and (max-width: 991px){.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{line-height:14px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:10px !important}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{right:5px;top:2px;margin-right:0;font-size:12px}}@media (max-width: 767px){.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light{padding:0 18px 0 4px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled i,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light i{font-size:20px}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled+.o_icon_caret,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light+.o_icon_caret{right:15px;top:2px;margin-right:0}.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled span.o_inner_text,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled span.o_label,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light span.o_inner_text,.o_toolbar .o_tool_dropdown .o_inner_wrapper.o_labeled_light span.o_label{display:none}}.o_toolbar .o_tool_dropdown .dropdown-toggle.o_with_labeled .o_inner_wrapper.o_labeled+.o_icon_caret{color:#fff !important}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled{padding:0;margin:0}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled .o_labeled{text-align:left}.o_toolbar .o_tool_dropdown .dropdown-menu.o_with_labeled>li>a{padding:5px 5px;margin:1px}.o_toolbar .o_tools_left{float:left}.o_toolbar .o_tools_right{float:right}.o_toolbar .o_tools_right_edge{float:right}.o_toolbar .o_tools_center{float:both;margin-left:auto;margin-right:auto}.o_toolbar .o_tools_segments{margin:0 auto -1.1em auto}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}@media (max-width: 991px){.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools.o_tools_segments{margin:0 auto -1.1em auto}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}.o_toolbar .o_tool span{max-width:10em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_toolbar .o_tools_segments .o_tool span{display:block}.o_toolbar .o_tool,.o_toolbar .o_text,.o_toolbar .o_tool_dropdown{margin:0 5px}}@media (max-width: 767px){.o_toolbar .o_tools{margin-top:6px;margin-bottom:4px}.o_toolbar .o_tools .o_chelp{top:0;vertical-align:top}.o_toolbar .o_tools.o_tools_segments{margin:0 auto -1.1em auto;text-align:center}.o_toolbar .o_tools_segments.o_tools_segments_alone{margin-top:1.5em}.o_toolbar .o_tools_center{float:left}.o_toolbar .o_tool,.o_toolbar .o_text,.o_toolbar .o_tool_dropdown{margin:0 0;position:static}.o_toolbar .o_tool_dropdown .dropdown-menu{left:0px;right:0px}.o_toolbar .o_tool_dropdown .dropdown-menu a,.o_toolbar .o_tool_dropdown .dropdown-menu i{line-height:30px}.o_toolbar .o_tool_dropdown .dropdown-menu .o_navbar_tab_close{line-height:inherit}}#o_main_container .o_toolbar_message{display:table;margin:0 auto 25px auto}#o_main_container .o_toolbar_message.o_warning{padding-top:5px;padding-bottom:5px;border:1px solid #8a6d3b;border-radius:3px}.o_edit_mode .o_toolbar .o_tools_container{background:repeating-linear-gradient(300deg, #fff0d9, #fff0d9 10px, #fcfcfc 10px, #fcfcfc 20px)}.o_edit_mode .o_toolbar .o_edit_mode .o_tools_container{background:#f8f8f8}body{overflow-x:hidden}.o_container_offcanvas{position:relative;max-width:1324px}#o_container_page_width_toggler{position:absolute;top:25px;margin-top:-.75em;right:10px;z-index:5;display:none}@media (min-width: 1364px){#o_container_page_width_toggler{display:block}#o_container_page_width_toggler #o_go_standard_width{display:none}#o_container_page_width_toggler #o_go_full_width{display:block}body.o_width_full .o_container_offcanvas{max-width:100%;margin-left:20px;margin-right:20px}body.o_width_full #o_container_page_width_toggler #o_go_standard_width{display:block}body.o_width_full #o_container_page_width_toggler #o_go_full_width{display:none}}body.o_dmz #o_container_page_width_toggler{display:none !important}#o_offcanvas_right{position:absolute;top:0;right:-250px;width:250px;padding:15px 15px;background-color:#222;color:#9d9d9d;border:1px solid #090909;-webkit-box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);min-height:100%;z-index:10;display:none}#o_offcanvas_right:before,#o_offcanvas_right:after{content:" ";display:table}#o_offcanvas_right:after{clear:both}@media screen and (max-width: 767px){.row-offcanvas{position:relative;-webkit-transition:all .25s ease-out;-moz-transition:all .25s ease-out;transition:all .25s ease-out}.row-offcanvas-right{right:0}.row-offcanvas-right .sidebar-offcanvas{right:-50%}.row-offcanvas-right.active{right:50%}.row-offcanvas-left{left:0}.row-offcanvas-left .sidebar-offcanvas{left:-50%}.row-offcanvas-left.active{left:50%}.sidebar-offcanvas{position:absolute;top:0;width:50%}}.o_info,.b_info,p.b_info,div.b_info,.o_form .o_info,.o_togglebox_wrapper div.o_togglebox_content,div.o_qti_item_itemfeedback,.o_assessmentitem_wrapper .modalFeedback .o_info{margin:20px 0;padding:20px;border-left:3px solid #777;background-color:#eee}.o_info h2,.o_info h3,.o_info h4,.o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_info h2,.o_info h5,.b_info h2,.o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback h2,.o_assessmentitem_wrapper .modalFeedback .o_info h2,.b_info h3,.o_form .o_info h3,.o_togglebox_wrapper div.o_togglebox_content h3,div.o_qti_item_itemfeedback h3,.o_assessmentitem_wrapper .modalFeedback .o_info h3,.b_info h4,.o_form .o_info h4,.o_togglebox_wrapper div.o_togglebox_content h4,div.o_qti_item_itemfeedback h4,.o_assessmentitem_wrapper .modalFeedback .o_info h4,.b_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_info h2,.o_form .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_info h2,.o_togglebox_wrapper div.o_togglebox_content .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_togglebox_wrapper div.o_togglebox_content h2,div.o_qti_item_itemfeedback .o_cal .fc-header-title h2,.o_cal .fc-header-title div.o_qti_item_itemfeedback h2,.o_assessmentitem_wrapper .modalFeedback .o_info .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info h2,.b_info h5,.o_form .o_info h5,.o_togglebox_wrapper div.o_togglebox_content h5,div.o_qti_item_itemfeedback h5,.o_assessmentitem_wrapper .modalFeedback .o_info h5{color:#777}.o_note,.b_note,p.b_note,div.b_note,.o_form .o_desc,.o_course_run .o_statusinfo,.o_course_stats .o_desc,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment{margin:20px 0;padding:20px;border-left:3px solid #31708f;background-color:#d9edf7}.o_note h2,.o_note h3,.o_note h4,.o_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_note h2,.o_note h5,.b_note h2,.o_form .o_desc h2,.o_course_run .o_statusinfo h2,.o_course_stats .o_desc h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h2,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2,.b_note h3,.o_form .o_desc h3,.o_course_run .o_statusinfo h3,.o_course_stats .o_desc h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h3,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h3,.b_note h4,.o_form .o_desc h4,.o_course_run .o_statusinfo h4,.o_course_stats .o_desc h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h4,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h4,.b_note .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_note h2,.o_form .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_desc h2,.o_course_run .o_statusinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_statusinfo h2,.o_course_stats .o_desc .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_stats .o_desc h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h2,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2,.b_note h5,.o_form .o_desc h5,.o_course_run .o_statusinfo h5,.o_course_stats .o_desc h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback h5,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h5{color:#31708f}.o_important,.b_important,p.b_important,div.b_important,.o_bc_empty,.o_course_run .o_no_scoreinfo{margin:20px 0;padding:20px;border-left:3px solid #F4D000;background-color:#FFF1A4}.o_important h2,.o_important h3,.o_important h4,.o_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_important h2,.o_important h5,.b_important h2,.o_bc_empty h2,.o_course_run .o_no_scoreinfo h2,.b_important h3,.o_bc_empty h3,.o_course_run .o_no_scoreinfo h3,.b_important h4,.o_bc_empty h4,.o_course_run .o_no_scoreinfo h4,.b_important .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_important h2,.o_bc_empty .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_bc_empty h2,.o_course_run .o_no_scoreinfo .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_course_run .o_no_scoreinfo h2,.b_important h5,.o_bc_empty h5,.o_course_run .o_no_scoreinfo h5{color:#F4D000}.o_success,.b_success,p.b_success,div.b_success,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback{margin:20px 0;padding:20px;border-left:3px solid #3c763d;background-color:#dff0d8}.o_success h2,.o_success h3,.o_success h4,.o_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_success h2,.o_success h5,.b_success h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h2,.b_success h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h3,.b_success h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h4,.b_success .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_success h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h2,.b_success h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback h5{color:#3c763d}.o_warning,.b_warning,p.b_warning,div.b_warning,.o_instruction,.o_form .o_warning,p.o_gta_reopen_warning{margin:20px 0;padding:20px;border-left:3px solid #8a6d3b;background-color:#fcf8e3}.o_warning h2,.o_warning h3,.o_warning h4,.o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_warning h2,.o_warning h5,.b_warning h2,.o_instruction h2,.o_form .o_warning h2,p.o_gta_reopen_warning h2,.b_warning h3,.o_instruction h3,.o_form .o_warning h3,p.o_gta_reopen_warning h3,.b_warning h4,.o_instruction h4,.o_form .o_warning h4,p.o_gta_reopen_warning h4,.b_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_warning h2,.o_instruction .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_instruction h2,.o_form .o_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_form .o_warning h2,p.o_gta_reopen_warning .o_cal .fc-header-title h2,.o_cal .fc-header-title p.o_gta_reopen_warning h2,.b_warning h5,.o_instruction h5,.o_form .o_warning h5,p.o_gta_reopen_warning h5{color:#8a6d3b}.o_error,.b_error,p.b_error,div.b_error,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback{margin:20px 0;padding:20px;border-left:3px solid #a94442;background-color:#f2dede}.o_error h2,.o_error h3,.o_error h4,.o_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_error h2,.o_error h5,.b_error h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h2,.b_error h3,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h3,.b_error h4,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h4,.b_error .o_cal .fc-header-title h2,.o_cal .fc-header-title .b_error h2,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h2,.b_error h5,.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback h5{color:#a94442}.o_instruction{margin-top:0px;border-left:none;padding-top:10px;padding-bottom:10px}.o_instruction>.o_button_group{margin-bottom:0px}div.o_callout_overlay{position:fixed;top:0;left:0;width:100%;height:100%;zoom:1;background:#000;opacity:0;filter:alpha(opacity=0)}.o_alert_info{position:fixed;top:-100%;left:0;display:none;z-index:2000;width:100%;text-align:center}.o_alert_info .alert{position:relative;width:auto;margin:0 auto;text-align:left;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.o_alert_info .alert .o_alert_close{float:right;color:#777}.o_alert_info .alert .o_alert_close:hover{color:#555}@media (min-width: 768px){.o_alert_info .alert{width:600px}}#o_msg_sticky,#o_msg_sticky_preview{position:relative;color:#a94442;background-color:#f2dede;border:1px solid #ebccd1;padding:10px 16px 10px 60px;min-height:40px;margin:-20px 0 20px 0}#o_msg_sticky .o_icon_info_msg,#o_msg_sticky_preview .o_icon_info_msg{position:absolute;left:10px;top:5px;font-size:40px}#o_msg_sticky.o_msg_sticky_fullscreen,#o_msg_sticky_preview.o_msg_sticky_fullscreen{margin-top:0}@media (min-width: 768px){.modal .o_modal_fullwidth{width:90%}}@media (min-width: 992px){.modal .o_modal_fullwidth{width:80%}}.modal .modal-header h4,.modal .modal-header .o_cal .fc-header-title h2,.o_cal .fc-header-title .modal .modal-header h2{color:#342c24;font-weight:500;font-family:inherit;line-height:1.1}.o_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_tree a{color:#777;background-color:none}.o_tree a:hover,.o_tree a:focus{color:#333}.o_tree .o_tree_link{background-color:none}.o_tree .o_tree_link:hover,.o_tree .o_tree_link:focus{background-color:#f8f8f8}.o_tree .o_tree_link:first-child{background-color:transparent}.o_tree .o_tree_link:last-child:hover,.o_tree .o_tree_link:last-child:focus{background-color:#f8f8f8}.o_tree .o_insertion_point>a>span{padding:5px;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_tree .o_insertion_source>a>span.o_tree_item,.o_tree .o_insertion_source>a>span.o_dnd_item{border-bottom:solid #f90 4px;background-color:#fefbf6}.o_tree ul{margin:0;padding:0;list-style-type:none}.o_tree ul li{margin:0;padding:0;white-space:nowrap}.o_tree ul li div{position:relative;border-bottom:1px solid #ddd}.o_tree ul li div.popover{position:absolute;left:auto;right:0}.o_tree ul li div a.o_tree_oc_l0{position:absolute;top:10px;left:-4px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l0,.o_tree ul .o_tree_level_close.b_tree_oc_l0{z-index:10}.o_tree ul li div a.o_tree_oc_l1{position:absolute;top:10px;left:11px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l1,.o_tree ul .o_tree_level_close.b_tree_oc_l1{z-index:10}.o_tree ul li div a.o_tree_oc_l2{position:absolute;top:10px;left:26px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l2,.o_tree ul .o_tree_level_close.b_tree_oc_l2{z-index:10}.o_tree ul li div a.o_tree_oc_l3{position:absolute;top:10px;left:41px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l3,.o_tree ul .o_tree_level_close.b_tree_oc_l3{z-index:10}.o_tree ul li div a.o_tree_oc_l4{position:absolute;top:10px;left:56px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l4,.o_tree ul .o_tree_level_close.b_tree_oc_l4{z-index:10}.o_tree ul li div a.o_tree_oc_l5{position:absolute;top:10px;left:71px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l5,.o_tree ul .o_tree_level_close.b_tree_oc_l5{z-index:10}.o_tree ul li div a.o_tree_oc_l6{position:absolute;top:10px;left:86px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l6,.o_tree ul .o_tree_level_close.b_tree_oc_l6{z-index:10}.o_tree ul li div a.o_tree_oc_l7{position:absolute;top:10px;left:101px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l7,.o_tree ul .o_tree_level_close.b_tree_oc_l7{z-index:10}.o_tree ul li div a.o_tree_oc_l8{position:absolute;top:10px;left:116px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l8,.o_tree ul .o_tree_level_close.b_tree_oc_l8{z-index:10}.o_tree ul li div a.o_tree_oc_l9{position:absolute;top:10px;left:131px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l9,.o_tree ul .o_tree_level_close.b_tree_oc_l9{z-index:10}.o_tree ul li div a.o_tree_oc_l10{position:absolute;top:10px;left:146px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l10,.o_tree ul .o_tree_level_close.b_tree_oc_l10{z-index:10}.o_tree ul li div a.o_tree_oc_l11{position:absolute;top:10px;left:161px;z-index:9}.o_tree ul .o_tree_level_open.b_tree_oc_l11,.o_tree ul .o_tree_level_close.b_tree_oc_l11{z-index:10}.o_tree ul li div span.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_tree ul li div span.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_tree ul li div span.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_tree ul li div span.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_tree ul li div span.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_tree ul li div span.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_tree ul li div span.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_tree ul li div span.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_tree ul li div span.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_tree ul li div span.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_tree ul li div span.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_tree ul li div span.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_tree ul span.o_tree_leaf{display:none}.o_tree ul span.o_tree_link>input[type=checkbox]{margin-right:5px}.o_tree ul li .badge{position:absolute;font-size:70%}.o_tree ul li .badge:before{content:none}.o_tree ul li .badge.o_badge_1{top:3px;right:1px}.o_tree ul li .badge.o_badge_2{bottom:3px;right:1px}.o_tree ul li .badge.o_badge_3{top:3px;right:25px}.o_tree ul li .badge.o_badge_4{bottom:3px;right:25px}.o_tree ul li div.o_dnd_sibling{margin:0;padding:0;border-bottom:none}.o_tree ul li .active.o_tree_link{background-color:none;font-weight:bold}.o_tree ul li .active.o_tree_link a{color:#209d9e}.o_tree ul li .active.o_tree_link:hover,.o_tree ul li .active.o_tree_link:focus{background-color:#eee}.o_tree ul li .active.o_tree_link:hover a,.o_tree ul li .active.o_tree_link:focus a{color:#177374}.o_tree ul li .active_parent.o_tree_link{font-weight:bold}.o_tree ul li .active_parent.o_tree_link a{color:#777}.o_tree ul li .active_parent.o_tree_link a:hover,.o_tree ul li .active_parent.o_tree_link a:focus{color:#333}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l0{left:6px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l1{left:21px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l2{left:36px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l3{left:51px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l4{left:66px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l5{left:81px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l6{left:96px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l7{left:111px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l8{left:126px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l9{left:141px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l10{left:156px}.o_tree.o_tree_root_hidden ul li div .o_tree_oc_l11{left:171px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l0{padding:10px 2px 10px 20px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l1{padding:10px 2px 10px 35px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l2{padding:10px 2px 10px 50px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l3{padding:10px 2px 10px 65px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l4{padding:10px 2px 10px 80px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l5{padding:10px 2px 10px 95px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l6{padding:10px 2px 10px 110px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l7{padding:10px 2px 10px 125px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l8{padding:10px 2px 10px 140px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l9{padding:10px 2px 10px 155px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l10{padding:10px 2px 10px 170px}.o_tree.o_tree_root_hidden ul li div span.o_tree_l11{padding:10px 2px 10px 185px}.o_tree .o_dnd_item{cursor:move;z-index:100}.o_tree .o_dnd_proxy{opacity:.4;filter:alpha(opacity=40);background-color:#f2af40;padding:5px 10px 5px 10px;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.o_tree .o_dnd_item.o_dnd_over{background-color:#ffff60}.o_tree .o_dnd_sibling{height:7px;width:100%}.o_tree .o_dnd_sibling.o_dnd_over{background:transparent url(../light/images/arrow_dd.png) top left no-repeat}.o_tree .o_dnd_l1{margin-left:0 !important}.o_tree .o_dnd_l2{margin-left:1em !important}.o_tree .o_dnd_l3{margin-left:2em !important}.o_tree .o_dnd_l4{margin-left:3em !important}.o_tree .o_dnd_l5{margin-left:4em !important}.o_tree .o_dnd_l6{margin-left:5em !important}.o_tree .o_dnd_l7{margin-left:6em !important}.o_tree .o_dnd_l8{margin-left:7em !important}.o_tree .o_dnd_l9{margin-left:8em !important}.o_tree .o_dnd_l10{margin-left:9em !important}.o_tree .o_dnd_l11{margin-left:10em !important}.o_tree.o_tree_insert_tool span.o_tree_link a{display:block}.o_offcanvas .o_tree{border:0}.o_selection_tree{position:relative;display:block;background-color:none;border:1px solid #ddd;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;overflow:hidden;font-size:14px}.o_selection_tree ul{margin:0;padding:0;list-style-type:none}.o_selection_tree li{margin:0;padding:0;white-space:nowrap}.o_selection_tree li div{position:relative;margin-bottom:-1px;border-bottom:1px solid #ddd}.o_selection_tree li>div>span.o_tree_l0,.o_selection_tree li>div>div.checkbox.o_tree_l0,.o_selection_tree li>div>div.radio.o_tree_l0{display:block;padding:10px 2px 10px 10px;z-index:9}.o_selection_tree li>div>span.o_tree_l1,.o_selection_tree li>div>div.checkbox.o_tree_l1,.o_selection_tree li>div>div.radio.o_tree_l1{display:block;padding:10px 2px 10px 25px;z-index:9}.o_selection_tree li>div>span.o_tree_l2,.o_selection_tree li>div>div.checkbox.o_tree_l2,.o_selection_tree li>div>div.radio.o_tree_l2{display:block;padding:10px 2px 10px 40px;z-index:9}.o_selection_tree li>div>span.o_tree_l3,.o_selection_tree li>div>div.checkbox.o_tree_l3,.o_selection_tree li>div>div.radio.o_tree_l3{display:block;padding:10px 2px 10px 55px;z-index:9}.o_selection_tree li>div>span.o_tree_l4,.o_selection_tree li>div>div.checkbox.o_tree_l4,.o_selection_tree li>div>div.radio.o_tree_l4{display:block;padding:10px 2px 10px 70px;z-index:9}.o_selection_tree li>div>span.o_tree_l5,.o_selection_tree li>div>div.checkbox.o_tree_l5,.o_selection_tree li>div>div.radio.o_tree_l5{display:block;padding:10px 2px 10px 85px;z-index:9}.o_selection_tree li>div>span.o_tree_l6,.o_selection_tree li>div>div.checkbox.o_tree_l6,.o_selection_tree li>div>div.radio.o_tree_l6{display:block;padding:10px 2px 10px 100px;z-index:9}.o_selection_tree li>div>span.o_tree_l7,.o_selection_tree li>div>div.checkbox.o_tree_l7,.o_selection_tree li>div>div.radio.o_tree_l7{display:block;padding:10px 2px 10px 115px;z-index:9}.o_selection_tree li>div>span.o_tree_l8,.o_selection_tree li>div>div.checkbox.o_tree_l8,.o_selection_tree li>div>div.radio.o_tree_l8{display:block;padding:10px 2px 10px 130px;z-index:9}.o_selection_tree li>div>span.o_tree_l9,.o_selection_tree li>div>div.checkbox.o_tree_l9,.o_selection_tree li>div>div.radio.o_tree_l9{display:block;padding:10px 2px 10px 145px;z-index:9}.o_selection_tree li>div>span.o_tree_l10,.o_selection_tree li>div>div.checkbox.o_tree_l10,.o_selection_tree li>div>div.radio.o_tree_l10{display:block;padding:10px 2px 10px 160px;z-index:9}.o_selection_tree li>div>span.o_tree_l11,.o_selection_tree li>div>div.checkbox.o_tree_l11,.o_selection_tree li>div>div.radio.o_tree_l11{display:block;padding:10px 2px 10px 175px;z-index:9}.o_breadcrumb{position:relative}.o_breadcrumb .o_breadcrumb_close{float:right;position:relative;margin:0 0 0 15px;vertical-align:middle}.o_breadcrumb .o_breadcrumb_close a{line-height:15px;color:#d6001c}.o_breadcrumb .o_breadcrumb_close a:hover{color:#8a0012}.o_breadcrumb .o_breadcrumb_close a i{font-size:16px}.o_breadcrumb .o_breadcrumb_close a span{display:none}.o_breadcrumb .o_breadcrumb_close:before{content:none}.o_form .o_icon_mandatory{margin-right:0.25em}.o_form .o_form_chelp{padding-left:0.25em;margin-right:-1.25em}.o_form .o_form_example{font-size:90%}.o_form .o_error{margin-top:1px;margin-bottom:0;padding:10px}.o_form hr.o_spacer_noline{border-top:1px solid transparent}.o_form hr.o_spacer.form,.o_form hr.o_spacer_noline.form{margin-top:0px;margin-bottom:0px}.o_form .form-group.o_omit_margin{margin-bottom:0}.o_form .o_date{position:relative;padding-right:34px}.o_form .o_date.form-inline .form-group,.o_form .o_date.o_navbar-form .form-group{margin-left:0}.o_form .o_date.form-inline .form-group.o_second_date,.o_form .o_date.o_navbar-form .form-group.o_second_date,.o_form .o_date.form-inline .o_date_ms.form-group,.o_form .o_date.o_navbar-form .o_date_ms.form-group,.o_form .o_date.form-inline .form-group.o_date_separator,.o_form .o_date.o_navbar-form .form-group.o_date_separator{margin-left:25px}.o_form .btn-group .o_date{display:inline-block}.o_form input.o_date_ms{width:3em}.o_form .has-feedback .o_date.form-inline .form-control.o_date_ms,.o_form .has-feedback .o_date.o_navbar-form .form-control.o_date_ms{padding-right:0}.o_form .o_form_element.form-inline .o_form_element.form-group,.o_form .o_form_element.o_navbar-form .o_form_element.form-group{margin-left:25px}.o_form .input-group.o_date_picker{width:11em}.o_form .has-feedback .o_date_picker .form-control{padding-right:0}.o_form .o_filepreview{margin-bottom:10px}.o_form .o_fileinput{cursor:pointer;position:relative}.o_form .o_fileinput .o_fakechooser{position:relative;z-index:1}.o_form .o_fileinput .o_realchooser{position:absolute;top:0;right:0;z-index:2;opacity:0;filter:alpha(opacity=0)}.o_form .o_fileinput .o_realchooser.o_chooser_with_delete{right:38px}.o_form .o_fileElement.has-error .o_icon_error.form-control-feedback{display:none}.o_form .form-control.textarea.o_fixed_font_with{resize:vertical !important;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_form .form-control.textarea_disabled.o_fixed_font_with{white-space:pre-wrap;height:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#555 !important;background:#fafafa}.o_form .form-control.textarea_disabled{resize:both;overflow:auto;white-space:pre-wrap;background:#fafafa}.o_form_inline_mandatory_compact i{width:20px}.o_form_inline_mandatory_compact select.form-control{width:calc(100% - 25px)}.o_day_chooser .o_day_previous{display:inline-block}.o_day_chooser .o_day_previous a{border-bottom-right-radius:0;border-top-right-radius:0;border-right:0}.o_day_chooser .o_day_date{display:inline-block;border-radius:0}.o_day_chooser .o_day_date input,.o_day_chooser .o_day_date .input-group-addon{border-radius:0}.o_day_chooser .o_day_next{display:inline-block}.o_day_chooser .o_day_next a{border-bottom-left-radius:0;border-top-left-radius:0;border-left:0}.o_centered_form{text-align:center}.o_centered_form fieldset.o_form{display:inline-block;text-align:left}.o_choice_checkrow,.o_choice_textrow{vertical-align:text-top;padding-bottom:2px}.o_choice_textrow{padding-left:1em}.o_togglecheck a{white-space:nowrap}.o_catalog .o_catalog_delete_img{position:relative;top:-0.5em}.o_button_dirty{color:#fff;background-color:#f2af40;border-color:#f0a528}.o_button_dirty:hover,.o_button_dirty:focus,.o_button_dirty.focus,.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{color:#fff;background-color:#ef9b10;border-color:#cd850e}.o_button_dirty:active,.o_button_dirty.active,.open>.o_button_dirty.dropdown-toggle{background-image:none}.o_button_dirty.disabled,.o_button_dirty.disabled:hover,.o_button_dirty.disabled:focus,.o_button_dirty.disabled.focus,.o_button_dirty.disabled:active,.o_button_dirty.disabled.active,.o_button_dirty[disabled],.o_button_dirty[disabled]:hover,.o_button_dirty[disabled]:focus,.o_button_dirty[disabled].focus,.o_button_dirty[disabled]:active,.o_button_dirty[disabled].active,fieldset[disabled] .o_button_dirty,fieldset[disabled] .o_button_dirty:hover,fieldset[disabled] .o_button_dirty:focus,fieldset[disabled] .o_button_dirty.focus,fieldset[disabled] .o_button_dirty:active,fieldset[disabled] .o_button_dirty.active{background-color:#f2af40;border-color:#f0a528}.o_button_dirty .badge{color:#f2af40;background-color:#fff}.o_button_toggle{border:1px solid #777;border-top-right-radius:9px;border-top-left-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px;background:#eee;display:inline-block;height:18px;line-height:16px;font-size:16px;text-align:left;padding:0 0.5em 0 1px;margin:0}.o_button_toggle i{color:#777;text-shadow:1px 0 2px rgba(0,0,0,0.25)}.o_button_toggle span{line-height:16px;vertical-align:top;font-size:60%;color:#777;text-transform:uppercase}.o_button_toggle.o_on{text-align:right;padding:0 1px 0 0.5em}.o_button_toggle.o_on i{color:#209d9e;text-shadow:-1px 0 2px rgba(0,0,0,0.25)}.o_table_wrapper{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.o_table_wrapper.o_table_flexi .o_table_body{margin-top:20px}.o_table_wrapper.o_table_flexi .table{margin-top:20px}.o_table_wrapper.o_table_flexi .table td ul{margin:0}.o_table_wrapper.o_table_flexi.o_table_no_margin .table{margin:0}.o_table_wrapper.o_table_flexi tfoot{border-top:solid #ddd 2px}.o_table_wrapper.o_table_flexi .o_multiselect{width:20px}.o_table_wrapper.o_table_edit table tbody{border-top:solid #f90 4px;background-color:#fefbf6}.o_table_wrapper .o_table_search{max-width:50em}.o_table_wrapper .o_table_footer .o_table_checkall>a{font-weight:normal;margin-right:10px}.o_table_wrapper .o_table_footer .o_table_checkall.input-sm,.o_table_wrapper .o_table_footer .input-group-sm>.o_table_checkall.form-control,.o_table_wrapper .o_table_footer .input-group-sm>.o_table_checkall.input-group-addon,.o_table_wrapper .o_table_footer .input-group-sm>.input-group-btn>.o_table_checkall.btn{padding:5px 6px}.o_table_wrapper .o_table_footer .o_table_pagination{text-align:center}.o_table_wrapper .o_table_rows_infos{float:left;padding-left:0;padding-right:20px;margin:20px 0}.o_table_wrapper .o_row_selected td{background-color:#dff0d8 !important}.o_table_wrapper .o_table{margin-bottom:0}.o_table_wrapper .o_marked{font-weight:bold}.o_table_wrapper .table{margin-bottom:0}.o_table_wrapper th a,.o_table_wrapper th a:hover{color:#2d2926;text-decoration:none}.o_table_search a.btn.o_reset_quick_search{width:38px;margin-left:-38px;z-index:5;color:grey}.o_table_search>label{display:inline}.o_breadcrumb.o_table_flexi_breadcrumb ol.breadcrumb{margin:5px 0 0 0}div.o_table_flexi div.o_table_flexi_leaf{margin-left:1.55em}div.o_table_flexi div.o_table_flexi_l0{padding-left:0px}div.o_table_flexi div.o_table_flexi_l1{padding-left:15px}div.o_table_flexi div.o_table_flexi_l2{padding-left:30px}div.o_table_flexi div.o_table_flexi_l3{padding-left:45px}div.o_table_flexi div.o_table_flexi_l4{padding-left:60px}div.o_table_flexi div.o_table_flexi_l5{padding-left:75px}div.o_table_flexi div.o_table_flexi_l6{padding-left:90px}div.o_table_flexi div.o_table_flexi_l7{padding-left:105px}div.o_table_flexi div.o_table_flexi_l8{padding-left:120px}div.o_table_flexi div.o_table_flexi_l9{padding-left:135px}div.o_table_flexi div.o_table_flexi_l10{padding-left:150px}div.o_table_flexi div.o_table_flexi_l11{padding-left:165px}@media (max-width: 767px){.o_table_wrapper .o_table_rows_infos{clear:both}}a.o_orderby,a.o_orderby:hover{color:#2d2926;text-decoration:none}a.o_orderby.o_orderby_asc,a.o_orderby.o_orderby_desc,a.o_orderby:hover.o_orderby_asc,a.o_orderby:hover.o_orderby_desc{border-bottom:1px solid #ddd}.o_table_row_count{padding-top:6px;padding-bottom:6px;vertical-align:middle}.o_table_row_details td{background-color:white !important}.o_table_config{font-size:12px}.o_table_buttons{text-align:center}.o_table_buttons input{margin-right:1em}.o_table_buttons input:last-child{margin-right:0}.o_table_tools{margin-left:6px}.o_table_tools_indications,.o_table_tools_indications_filter_only{margin-left:10px;padding-top:3px;font-size:80%}.o_table_tools_indications a,.o_table_tools_indications_filter_only a{color:#d6001c}.o_table_toolbar_left .o_table_tools_indications{text-align:right}.o_table_count{max-width:20em;float:left;padding:0 15px}.o_table_filter .control-label{margin-right:0.5em}.o_table_filter .control-label:after{content:':'}.o_table_filter>div{display:inline-block}.o_table_filter>div label{font-weight:normal}table tr.o_no_border td,table tr.o_no_border th{border-top:0}.o_info .table-bordered td,o_note .table-bordered td,o_important .table-bordered td,o_warning .table-bordered td,o_error .table-bordered td{border-color:#333}.panel .o_table_layout{border-top:1px solid #ddd;padding-top:6px}.panel .o_table_count{padding:0 15px}.o_table_header_fw{width:40px}#o_navbar_imclient .o_im_messages{float:left}#o_navbar_imclient #o_im_message,#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_summary{float:left;position:relative;padding:15px 3px}#o_navbar_imclient #o_im_status,#o_navbar_imclient #o_im_message{padding-left:15px}#o_navbar_imclient #o_im_summary .badge{color:#fff;background-color:#777}#o_navbar_imclient #o_im_status li>a>span{display:inline}#o_navbar_imclient #o_im_status div.o_chelp_wrapper{right:0.5em}#o_navbar_imclient #o_im_message a:hover,#o_navbar_imclient #o_im_message a:focus{text-decoration:none}#o_navbar_imclient #o_im_message .o_icon_message{color:#d6001c}#o_navbar_imclient #o_im_message .o_icon_message:hover{color:#f5c370}.o_im_load_history{margin-bottom:6px}.o_im_load_history .o_label{font-size:12px;padding-right:0.5em;line-height:1.5em;color:#777}.o_im_chat_history{height:170px;font-size:90%;border:1px solid #eee;margin:0 0 1em 0;overflow:scroll;overflow-x:auto}.o_im_message_group{padding:3px 3px 3px 40px;min-height:40px;position:relative;border-top:1px solid #eee;background:#fff}.o_im_message_group.o_odd{background:#F4F4F4}.o_im_message_group .o_portrait{position:absolute;top:3px;left:3px}.o_im_message_group .o_im_from{color:#777;font-size:12px;font-weight:bold}.o_im_message_group .o_im_from:hover{color:#5e5e5e}.o_im_message_group div.o_im_body{padding:3px 0 3px 0;font-size:12px}.o_im_message_group div.o_im_body .o_date{float:right;color:#777;font-size:9px}.o_groupchat_roster{font-size:12px}.o_groupchat_roster li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2d2926}.o_groupchat_roster li.o_vip{color:#3c763d}.o_groupchat_roster li.o_anonymous{color:#31708f}.o_im_buddieslist .o_im_buddieslist_toggler .btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_im_buddieslist ul{font-size:12px}.o_im_buddieslist ul ul{padding-left:1em}.o_im_buddieslist ul a{color:#209d9e}.o_im_buddieslist ul a:hover{color:#177374}.o_flag{position:relative;top:1px;display:inline-block;line-height:1;width:16px;height:16px;background-repeat:no-repeat;background-position:0 100%}option.o_with_flag{padding-left:23px;min-height:16px;background-repeat:no-repeat;background-position:2px 50%}.o_flag_en{background-image:url("../light/images/flags/gb.png")}.o_flag_de{background-image:url("../light/images/flags/de.png")}.o_flag_fr{background-image:url("../light/images/flags/fr.png")}.o_flag_it{background-image:url("../light/images/flags/it.png")}.o_flag_es{background-image:url("../light/images/flags/es.png")}.o_flag_da{background-image:url("../light/images/flags/dk.png")}.o_flag_cs{background-image:url("../light/images/flags/cz.png")}.o_flag_el{background-image:url("../light/images/flags/gr.png")}.o_flag_ee{background-image:url("../light/images/flags/ee.png")}.o_flag_ru{background-image:url("../light/images/flags/ru.png")}.o_flag_pl{background-image:url("../light/images/flags/pl.png")}.o_flag_zh_CN{background-image:url("../light/images/flags/cn.png")}.o_flag_zh_TW{background-image:url("../light/images/flags/tw.png")}.o_flag_lt{background-image:url("../light/images/flags/lt.png")}.o_flag_fa{background-image:url("../light/images/flags/ir.png")}.o_flag_pt_PT{background-image:url("../light/images/flags/pt.png")}.o_flag_pt_BR{background-image:url("../light/images/flags/br.png")}.o_flag_tr{background-image:url("../light/images/flags/tr.png")}.o_flag_hu{background-image:url("../light/images/flags/hu.png")}.o_flag_sq{background-image:url("../light/images/flags/al.png")}.o_flag_in{background-image:url("../light/images/flags/id.png")}.o_flag_ar{background-image:url("../light/images/flags/eg.png")}.o_flag_rm{background-image:url("../light/images/flags/rm.png")}.o_flag_af{background-image:url("../light/images/flags/za.png")}.o_flag_vi{background-image:url("../light/images/flags/vn.png")}.o_flag_mn{background-image:url("../light/images/flags/mn.png")}.o_flag_iw{background-image:url("../light/images/flags/il.png")}.o_flag_ko{background-image:url("../light/images/flags/kr.png")}.o_flag_nl_NL{background-image:url("../light/images/flags/nl.png")}.o_flag_jp{background-image:url("../light/images/flags/jp.png")}.o_flag_nb_NO{background-image:url("../light/images/flags/no.png")}.o_flag_et_EE{background-image:url("../light/images/flags/ee.png")}.o_flag_bg{background-image:url("../light/images/flags/bg.png")}.o_flag_hi_IN_ASIA{background-image:url("../light/images/flags/in.png")}.o_flag_ar_LB{background-image:url("../light/images/flags/lb.png")}.o_flag_gl_ES{background-image:url("../light/images/flags/galicia.png")}.o_flag_sk{background-image:url("../light/images/flags/sk.png")}.o_rating .o_rating_title{font-size:12px}.o_rating .o_rating_items{white-space:nowrap}.o_rating .o_rating_items .o_icon,.o_rating .o_rating_items .o_progress_failed .inset:after,.o_progress_failed .o_rating .o_rating_items .inset:after,.o_rating .o_rating_items .o_progress_passed .inset:after,.o_progress_passed .o_rating .o_rating_items .inset:after{color:#f2af40}.o_rating .o_rating_items .o_legend{margin-left:1em;font-size:12px;line-height:normal}.o_rating.o_rating_personal .o_rating_items .o_icon,.o_rating.o_rating_personal .o_rating_items .o_progress_failed .inset:after,.o_progress_failed .o_rating.o_rating_personal .o_rating_items .inset:after,.o_rating.o_rating_personal .o_rating_items .o_progress_passed .inset:after,.o_progress_passed .o_rating.o_rating_personal .o_rating_items .inset:after{color:#209d9e}.o_rating .o_rating_explanation{font-size:12px;color:#777}@media (max-width: 991px){.o_rating .o_rating_title,.o_rating .o_rating_explanation{display:none}}.o_comments .o_comment_wrapper .o_avatar{float:left;margin:0 1em 0 0}.o_comments .o_comment_wrapper .o_reply,.o_comments .o_comment_wrapper .o_delete{float:right}.o_comments .o_comment_wrapper .o_comment_wrapper{margin-left:16px}.o_ratings_and_comments .o_rating_wrapper{vertical-align:middle;display:inline-block}.o_ratings_and_comments a.o_comments{margin-left:10px;position:relative;top:0.1em}.o_ratings_and_comments div.o_notifications{float:right}.d3chart .bar{shape-rendering:crispEdges}.d3chart .bar_default_light{fill:#35d5d6}.d3chart .bar_default,.d3chart .bubble_default{fill:#209d9e}.d3chart .bar_default_dark{fill:#135e5e}.d3chart .axis{font:12px sans-serif}.d3chart .axis path,.d3chart .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_forum_peekview .o_quote_wrapper,.o_forum_peekview .b_quote_wrapper{display:none}.o_forum_thread_sticky{font-weight:bold}.o_forum_switch{font-size:12px}.o_forum_toolbar{margin-bottom:6px;float:left}.o_forum_fulltextsearch{float:right}@media (max-width: 767px){.o_forum_fulltextsearch{float:left}.o_forum_toolbar .o_forum_tool span{display:none}}.o_forum{padding-bottom:50px}.o_forum .o_mark,.o_forum .o_ep_collect{float:right;position:relative;width:2em;margin-left:12px}.o_forum .o_portrait{float:left;margin-right:16px}.o_forum .o_portrait_avatar{width:70px;height:70px}.o_forum .o_newindicator{font-size:10px;color:#78be20;text-transform:uppercase;padding-left:1em;vertical-align:text-top;white-space:nowrap}.o_forum .o_author,.o_forum .o_date{display:inline-block;color:#777}.o_forum .o_date{font-size:12px}.o_forum .o_modified{color:#8a6d3b;font-size:12px;font-style:italic}.o_forum .o_forum_message{margin-bottom:20px;background-color:#fcfcfc;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_forum .o_forum_message_new{-webkit-box-shadow:0 1px 10px rgba(92,184,92,0.3);box-shadow:0 1px 10px rgba(92,184,92,0.3)}.o_forum .o_forum_message_highlight{-webkit-box-shadow:0 1px 10px rgba(240,173,78,0.5);box-shadow:0 1px 10px rgba(240,173,78,0.5)}.o_forum .o_forum_message_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:3px;border-top-left-radius:3px}.o_forum .o_forum_message_title{margin-top:0}.o_forum .o_forum_message_body{padding:10px 15px}.o_forum .o_forum_message_attachments{border-top:1px solid #ddd;padding:10px 15px;font-size:12px;background-color:#f7f7f9}.o_forum .o_attachment{position:relative;max-width:250px;vertical-align:top;margin:6px 12px 10px 0}.o_forum .o_attachment img{margin-top:6px}.o_forum .o_filename{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_forum .o_icon_enlarge{position:absolute;left:1em;bottom:1em;text-shadow:1px 1px 2px #fff, -1px 1px 2px #fff, 1px -1px 2px #fff, -1px -1px 2px #fff}@media (min-width: 768px) and (max-width: 991px){.o_forum .o_attachments{font-size:10px}.o_forum .o_attachment{max-width:200px}.o_forum .o_attachment img{max-width:150px}.o_forum .o_filename{max-width:200px}}@media (max-width: 767px){.o_forum .o_attachments{font-size:9px}.o_forum .o_attachment{max-width:150px}.o_forum .o_attachment img{max-width:100px}.o_forum .o_filename{max-width:150px}}.o_quote_wrapper,.b_quote_wrapper{position:relative;margin:10px 0}.o_quote_author,.b_quote_author{color:#777;font-size:12px}.o_quote_author:before,.b_quote_author:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„Ž";font-size:21px;padding-right:0.5em}blockquote.o_quote,blockquote.b_quote{color:#555;font-size:12px;margin-top:6px;padding:0 12px}a.o_chelp{display:inline-block;padding:1px 3px;text-align:center;vertical-align:middle;white-space:nowrap;font-size:10px;font-weight:normal;line-height:15px;color:#fff;background-color:#209d9e;border:1px solid #1c8889;border-radius:2px;cursor:help;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}a.o_chelp:active,a.o_chelp:hover,a.o_chelp:focus{text-decoration:none;color:#fff;background-color:#197b7c;border-color:#115556}a.o_chelp i{font-size:10px !important}.o_chelp_wrapper{position:relative;float:right;display:inline-block;line-height:normal;margin-bottom:10px;margin-left:10px}.o_form_chelp,.o_chelp_tooltip{color:#726860}.o_draw_circle{border:2px solid #209d9e;border-radius:50%;position:absolute !important;box-sizing:border-box}.o_draw_rectangle{border:2px solid #209d9e;position:absolute !important;box-sizing:border-box}.o_iframedisplay iframe{width:100%}.o_content_cloneable{position:relative}.o_singlepage .o_edit{position:absolute;top:0;right:25px}.o_content_popup{position:absolute;top:0;right:0}.o_module_cp_wrapper{position:relative}.o_module_cp_wrapper .o_tools{position:absolute;top:0;right:0;text-align:right;vertical-align:middle}.o_module_cp_wrapper .o_tools .o_search_wrapper{display:inline-block;position:relative;top:-2px}.o_module_cp_wrapper .o_tools .o_search_wrapper .form-group{margin-bottom:0}.o_module_cp_wrapper .o_tools .o_search_wrapper .form-control-static{padding-top:0;padding-bottom:0}ul.o_dropdown{margin:-5px -14px}ul.o_dropdown .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}ul.o_dropdown>li>a{display:block;padding:5px 14px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;background:#fcfcfc;white-space:nowrap}ul.o_dropdown>li>a:hover,ul.o_dropdown>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}ul.o_dropdown>li>i.o_icon_check{display:inline-block;padding-left:14px}ul.o_dropdown>li>i.o_icon_check+a{display:inline-block;padding-left:5px}.badge.o_scorm_completed{background-color:#3c763d}.badge.o_scorm_failed{background-color:#a94442}.badge.o_scorm_incomplete{background-color:#8a6d3b}.badge.o_scorm_not_attempted{background:none}.o_bc_meta h5,.o_bc_meta .o_author,.o_bc_meta .o_comment,.tooltip h5,.tooltip .o_author,.tooltip .o_comment{color:#fff;margin:5px 0}.o_bc_meta .o_thumbnail,.tooltip .o_thumbnail{width:200px;height:200px;display:inline-block;background-color:#fff;margin:0 -5px}.o_htmleditor .o_metadata{border:1px solid #999;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom:0;background:#eee;position:relative;top:1px;padding:5px}.o_htmleditor .o_metadata #o_filename{float:left}.o_htmleditor .o_metadata .o_lastmodified{float:right;color:#777;line-height:1.428571429}.o_htmleditor #o_save{margin-top:10px;text-align:center}.o_htmleditor #o_save input{margin-right:1em}.o_htmleditor #o_save input:last-child{margin-right:0}.o_notifications_news_wrapper .o_notifications_news_subscription{margin:10px 0}.o_notifications_news_wrapper .o_notifications_news_subscription h4 i,.o_notifications_news_wrapper .o_notifications_news_subscription .o_cal .fc-header-title h2 i,.o_cal .fc-header-title .o_notifications_news_wrapper .o_notifications_news_subscription h2 i{display:none}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_context{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content{margin-left:1.5em;position:relative}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_icon,.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_progress_failed .inset:after,.o_progress_failed .o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .inset:after,.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_progress_passed .inset:after,.o_progress_passed .o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .inset:after{position:absolute;left:-1.5em;line-height:1.5em;top:0}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_content .o_date{color:#777}.o_notifications_news_wrapper .o_notifications_news_subscription .o_notifications_news_url{margin-left:1.5em}.o_noti{margin:6px 0 6px 12px;float:right;color:#777}.o_noti .o_label{color:#777;cursor:help}@media (max-width: 767px){.o_noti .o_label span{display:none}}.panel-body .o_noti{margin:0}.o_portrait{display:inline-block}.o_portrait img{border-radius:50%;border:none;background-color:#eee;background-position:50% 50%;background-repeat:no-repeat;background-size:cover}.o_portrait_name{margin-top:6px}.o_block_inline .o_portait,.o_block_inline .o_portrait_name,.o_block_inline .o_portrait_image,.o_block_inline_right .o_portait,.o_block_inline_right .o_portrait_name,.o_block_inline_right .o_portrait_image,.o_block_inline_left .o_portait,.o_block_inline_left .o_portrait_name,.o_block_inline_left .o_portrait_image,.o_block_inline_both .o_portait,.o_block_inline_both .o_portrait_name,.o_block_inline_both .o_portrait_image{display:inline-block}.o_portrait_avatar,.o_portrait_dummy,.o_portrait_dummy_female_big,.o_portrait_dummy_male_big,.o_portrait_anonymous{width:100px;height:100px}.o_portrait_dummy{background-image:url("../light/images/portrait/dummy.png") !important}.o_portrait_dummy_female_big{background-image:url("../light/images/portrait/dummy_female_big.png") !important}.o_portrait_dummy_male_big{background-image:url("../light/images/portrait/dummy_male_big.png") !important}.o_portrait_anonymous{background-image:url("../light/images/portrait/anonymous.png") !important}.o_portrait_avatar_small,.o_portrait_dummy_small,.o_portrait_dummy_female_small,.o_portrait_dummy_male_small,.o_portrait_anonymous_small{width:30px;height:30px}.o_portrait_dummy_small{background-image:url("../light/images/portrait/dummy_small.png") !important}.o_portrait_dummy_female_small{background-image:url("../light/images/portrait/dummy_female_small.png") !important}.o_portrait_dummy_male_small{background-image:url("../light/images/portrait/dummy_male_small.png") !important}.o_portrait_anonymous_small{background-image:url("../light/images/portrait/anonymous_small.png") !important}.o_datecomp{position:relative;width:40px;height:52px;border:1px solid #555;margin-right:12px;text-align:center;vertical-align:middle}.o_datecomp div.o_year{position:absolute;left:0;width:100%;top:-20px;height:20px;line-height:20px;font-size:10px}.o_datecomp div.o_month{height:20px;line-height:20px;font-size:12px;background-color:#209d9e;color:#fff}.o_datecomp div.o_day{height:30px;line-height:30px;font-size:18px;border-top:1px solid #555;background-color:#fff;color:#2d2926}.o_block_with_datecomp .o_head{position:relative;padding-left:52px}.o_block_with_datecomp .o_datecomp{position:absolute;top:0.2em;left:0}.o_block_with_datecomp .o_title{margin-top:0}.o_block_with_datecomp .o_meta{color:#777}.o_block_with_datecomp .o_content{border-left:5px solid #eee;padding:0 20px}.o_block_with_datecomp .o_block_footer{padding-left:25px}ul.o_certificates li{padding:5px 0}ul.o_certificates li a.o_sel_certificate_delete{padding-left:2em}.o_cal_toptoolbar{margin-bottom:6px}.o_cal_toptoolbar .o_cal_toptoolbar_help{float:left;margin-right:12px}.o_cal_toptoolbar .o_noti{margin-top:0}.o_feed .o_date,.o_feed .o_author{color:#777}.o_feed .o_subscription a{margin-right:1.5em}.o_feed .o_subscription .form-group{margin-bottom:5px}.o_feed .o_subscription .form-control{border:0;background:none;padding:0;height:auto;-webkit-box-shadow:none;box-shadow:none}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper{float:left}.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_title,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_rating_explanation,.o_feed .o_blog_posts .o_ratings_and_comments .o_rating_wrapper .o_legend{display:none}.o_feed .o_blog_posts .o_ratings_and_comments a.o_comments span{display:none}.o_feed .o_content:before,.o_feed .o_content:after{content:" ";display:table}.o_feed .o_content:after{clear:both}.o_feed .o_enclosure{clear:both}.o_glossary .o_register{text-align:center}.o_glossary .o_meta{font-size:90%;color:#777;font-style:italic}.o_glossary dl dt:first-letter{font-size:21px}.o_glossary dl dt small{color:#777}.o_tm_glossary{border-bottom:1px dotted #666699 !important}.o_tm_yellow{background-color:#FFFF66}.o_tm_blue{background-color:#33FFFF}.o_tm_red{background-color:#FF3333}.o_tm_green{background-color:#99FF00}.o_coaching div#o_main_toolbar.o_toolbar{margin-top:0px}.o_eff_statement_details .o_user_infos{margin-top:20px}div.o_assessment_user_type_filter{display:inline-block;padding:0.5em;border:1px solid #eee;border-radius:4px}div.o_assessment_user_type_filter div.form-inline,div.o_assessment_user_type_filter div.o_navbar-form{margin-left:5px;display:inline-block}div.panel.o_assessment_modes .o_table_body{margin-top:0}div.panel.o_assessment_modes .o_table_wrapper{margin-bottom:5px}div.o_assessment_mode_row{padding:0 15px}div.o_assessment_mode_row.o_assessment_today{padding:0 20px 0 12px;border-left:3px solid #3c763d;background-color:#dff0d8}div.o_assessment_mode_row.o_assessment_end_soon.o_assessment_today{padding:0 20px 0 12px;border-left:3px solid #a94442;background-color:#f2dede}.vitero_iframe{width:100%;height:100%;border:none;min-height:60em}.o_reminder_rule{padding:5px 0}.o_segments.btn-group a span{overflow:hidden;display:block;text-overflow:ellipsis}.o_segments_content{margin-top:20px}.o_segments.o_segments_linked .btn,.o_segments.o_segments_linked .btn:hover,.o_segments.o_segments_linked .btn:active,.o_segments.o_segments_linked .btn:focus{border:none;border-radius:0;box-shadow:none;background:none}.o_segments.o_segments_linked .btn-primary{color:#000;font-size:24px;background:none}.o_segments.o_segments_linked .btn-default,.o_segments.o_segments_linked .btn-default:hover,.o_segments.o_segments_linked .btn-default:active,.o_segments.o_segments_linked .btn-default:focus{color:#209d9e;background:none}.o_segments.o_segments_linked .o_segment_separator{color:#000}.o_tabbed_pane .o_tabbed_pane_content{padding:20px 0 6px 0}.o_togglebox_wrapper .o_opener{position:relative;left:-0.5em}.o_togglebox_wrapper div.o_togglebox_content{position:relative;margin:0}.o_togglebox_wrapper div.o_togglebox_content .o_hide{position:absolute;bottom:0.5em;right:1em}.o_toolboxes ul{margin:0 0 1.5em 0;padding:0 0 0 1.5em}.o_qrcode{width:256px;height:256px}#o_ajax_busy{position:absolute;left:50%;top:20em;margin-left:-2.5em;height:5em;width:5em;color:#fff;z-index:1201;display:none}#o_body.o_ajax_busy{cursor:busy}.o_exception .o_visual{position:relative;background-image:url("../light/images/lion-500x333.jpg");filter:grayscale(50%);-webkit-filter:grayscale(50%);-moz-filter:grayscale(50%);-ms-filter:grayscale(50%);-o-filter:grayscale(50%);width:500px;height:333px;background-repeat:no-repeat;background-position:50% 50%;background-size:contain;margin:0 0 10px 16px}@media (min-width: 768px) and (max-width: 991px){.o_exception .o_visual{width:375px;height:249px}}@media (min-width: 500px) and (max-width: 767px){.o_exception .o_visual{width:250px;height:166px}}@media (max-width: 500px){.o_exception .o_visual{background-size:cover}}.o_exception .jumbotron h1,.o_exception .o_repo_details .o_lead h1,.o_repo_details .o_exception .o_lead h1{color:#d6001c}ul.o_assessment_docs{margin-bottom:0}ul.o_assessment_docs>li{margin-bottom:0.33em}ul.o_assessment_docs>li:last-child{margin-bottom:0em}.o_mail_message .o_mail_meta{background:#fafafa;border:1px solid #eee;padding:5px 10px}.o_mail_message .o_mail_meta h3{margin-top:0}.o_mail_message .o_mail_date,.o_mail_message .o_mail_from,.o_mail_message .o_mail_recipients{color:#777;font-size:90%}.o_mail_message .o_mail_date .o_label,.o_mail_message .o_mail_from .o_label,.o_mail_message .o_mail_recipients .o_label{font-weight:bold;margin-right:1em}.o_mail_message .o_mail_date .o_group span,.o_mail_message .o_mail_from .o_group span,.o_mail_message .o_mail_recipients .o_group span{font-weight:bold}.o_mail_message .o_mail_date .o_group span:after,.o_mail_message .o_mail_from .o_group span:after,.o_mail_message .o_mail_recipients .o_group span:after{content:':';margin-right:0.5em}.o_mail_message .o_mail_date i,.o_mail_message .o_mail_from i,.o_mail_message .o_mail_recipients i{margin-left:1em}.o_mail_message .o_mail_date ul.list-inline,.o_mail_message .o_mail_from ul.list-inline,.o_mail_message .o_mail_recipients ul.list-inline{display:inline}.o_mail_message .o_mail_date ul.list-inline li,.o_mail_message .o_mail_from ul.list-inline li,.o_mail_message .o_mail_recipients ul.list-inline li{padding-right:0;padding-left:0}.o_mail_message .o_more{margin-left:1em}.o_mail_message .o_showAllLink{float:right;font-size:80%}.progress .o_progress_marker{position:absolute;height:100%;top:0;width:3px;background:red}.o_progress.o_progress_inline{display:inline-block;white-space:nowrap}.o_progress.o_progress_inline .progress{vertical-align:bottom}.o_progress .o_progress_label,.o_progress .o_progress_info{display:inline-block;vertical-align:top}.o_progress .o_progress_info{margin-left:0.5em}.o_progress .progress{position:relative;display:inline-block;text-shadow:1px 1px 2px #000000;font-size:12px;line-height:20px;color:#fff}.o_progress .progress .o_progress_label_wrapper{position:absolute;top:0;left:0;padding-left:0.4em;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.o_progress .progress:not(.o_progress-sm)+.o_progress_label_wrapper{margin-left:0.5em}.o_progress .o_progress-lg{height:40px}.o_progress .o_progress-lg .o_progress_label_wrapper{padding-left:1em;line-height:40px}.o_progress .o_progress-sm{vertical-align:bottom;height:5px}.o_progress .o_progress-sm+span{position:absolute;top:0;left:15px;font-size:80%}.o_web_content{padding-bottom:15px}.o_labeled_light,a.o_labeled_light,.o_labeled,a.o_labeled{display:inline-block;text-transform:uppercase;text-align:center;text-decoration:none;vertical-align:middle;font-size:75%;line-height:1;white-space:nowrap;border:1px solid;border-radius:3px;padding:2px 5px;background-color:#777;color:#fff;position:relative}.o_labeled_light,a.o_labeled_light{font-weight:bold;background-color:#f8f8f8}.o_ms_button{max-width:100%;width:100%;display:flex}.o_ms_button span:not(.o_ms_carret){text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.o_ms_button .o_ms_carret{margin:auto 0 auto auto}.o_ms_list{width:100%;height:auto;max-height:300px;overflow-x:hidden;top:unset}.o_disclaimer .o_disclaimer_content{max-height:50vh;overflow:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;background:#fbfbfb;padding:10px;border:1px solid #c2c2c2}.o_files_size_okay{color:#61E868}.o_files_size_warning{color:#FFB100}.o_files_size_large{color:#E82A0C}.tt-input{width:400px}.tt-menu{width:400px;margin-top:6px;padding:0 0 0;color:#555;background-color:#fcfcfc;border:1px solid #66afe9;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;-webkit-box-shadow:0 0 8px rgba(102,175,233,0.6);box-shadow:0 0 8px rgba(102,175,233,0.6)}.tt-suggestion{padding:6px 12px;font-size:14px;line-height:1.428571429}.tt-suggestion.tt-cursor,.tt-suggestion:hover{color:#fff;background-color:#209d9e}.tt-suggestion p{margin:0}.tt-menu div.o_icon_error:before{content:''}.o_search_link_extended,.o_search_link_simple{margin-top:12px;display:inline-block}.o_search_results_stats{color:#777;padding-left:1.5em}.o_search_highlight{margin-left:12px;font-size:12px}.o_search_result_title h4,.o_search_result_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_search_result_title h2{display:inline-block;margin-right:12px;margin-bottom:6px}.o_search_result_title h4 .o_icon-fw,.o_search_result_title .o_cal .fc-header-title h2 .o_icon-fw,.o_cal .fc-header-title .o_search_result_title h2 .o_icon-fw{text-align:left}.o_search_result_highlight{font-weight:bold;background-color:transparent}.o_search_result_context{display:inline-block;color:#3c763d;margin-right:1em}.o_search_result_license{display:inline-block;color:#777}.o_search_result_excerpt{color:#555}.o_search_result .o_opener{font-size:12px}.o_search_result .o_opener i{width:1em}.o_search_result_details .o_togglebox_wrapper.o_block{margin-top:0;margin-bottom:0}.o_search_result_details .o_togglebox_wrapper .o_togglebox_content{color:#777;font-size:12px;background:#fff;padding:6px 12px}.o_search_result_details .o_togglebox_wrapper .o_search_result_license i{font-size:20px}@media (max-width: 767px){.o_search_result_details{display:none}}.wizard{border:1px solid #d4d4d4;border-radius:2px;background-color:#f9f9f9;position:relative;overflow:hidden;margin-bottom:15px}.wizard ul{list-style:none outside none;padding:0;margin:0;width:4000px}.wizard ul li{float:left;margin:0;padding:0 20px 0 30px;height:46px;line-height:46px;position:relative;background:#ededed;color:#2d2926;font-size:16px;cursor:default}.wizard ul li .chevron{border:24px solid transparent;border-left:14px solid #d4d4d4;border-right:0;display:block;position:absolute;right:-14px;top:0;z-index:1}.wizard ul li .chevron:before{border:24px solid transparent;border-left:14px solid #ededed;border-right:0;content:"";display:block;position:absolute;right:1px;top:-24px}.wizard ul li.active{background:#f1f6fc;color:#2d2926}.wizard ul li.active .chevron:before{border-left:14px solid #f1f6fc}.wizard ul li .badge{margin-right:8px}.wizard ul li:first-child{border-radius:4px 0 0 4px;padding-left:20px}.o_process{position:relative;padding-left:25px}.o_process .o_step{position:relative;height:auto;padding-top:10px;padding-left:30px;padding-bottom:10px}.o_process .o_bar{position:absolute;top:10px;left:8px;height:100%;border-left:4px solid #777}.o_process .o_bar:after{position:absolute;top:0;left:-10px;height:16px;width:16px;border:4px solid #777;border-radius:16px;background:#fff;content:" "}.o_process .o_title{margin-top:-1px;color:#777 !important}.o_process .o_title:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;left:-24px}.o_process .o_title a:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";width:1em}.o_process .o_title a.collapsed:before{content:""}.o_process .o_step.o_active .o_bar,.o_process .o_step.o_active .o_bar:after{border-color:#209d9e}.o_process .o_step.o_active .o_title{color:#209d9e !important}.o_process .o_step.o_active .o_title:before{content:"";color:#209d9e}.o_process .o_step.o_done .o_bar,.o_process .o_step.o_done .o_bar:after{border-color:#29c7c8}.o_process .o_step.o_done .o_title{color:#29c7c8 !important}.o_process .o_step.o_done .o_title:before{content:"";color:#78be20}.o_process .o_meta{color:#777;font-size:12px;margin-top:-0.5em}.o_cal_orange{background:#ffc266;border-color:#ff9900;color:#5D5D5D}.o_cal_orange .o_cal_wv_event_header{background:#ff9900}.o_cal_orange a{color:#5D5D5D !important}.o_cal_class.o_cal_orange{border-left:20px solid #ffc266}.o_cal_green{background:#66c266;border-color:#009900;color:#FFF}.o_cal_green .o_cal_wv_event_header{background:#009900}.o_cal_green a{color:#FFF !important}.o_cal_class.o_cal_green{border-left:20px solid #66c266}.o_cal_blue{background:#4d6e9f;border-color:#2e5894;color:#FFF}.o_cal_blue .o_cal_wv_event_header{background:#2e5894}.o_cal_blue a{color:#FFF !important}.o_cal_class.o_cal_blue{border-left:20px solid #4d6e9f}.o_cal_yellow{background:#ffe066;border-color:#ffcc00;color:#5D5D5D}.o_cal_yellow .o_cal_wv_event_header{background:#ffcc00}.o_cal_yellow a{color:#5D5D5D !important}.o_cal_class.o_cal_yellow{border-left:20px solid #ffe066}.o_cal_red{background:#c26666;border-color:#990000;color:#FFF}.o_cal_red .o_cal_wv_event_header{background:#990000}.o_cal_red a{color:#FFF !important}.o_cal_class.o_cal_red{border-left:20px solid #c26666}.o_cal_rebeccapurple{background:#663399;border-color:#663399;color:#FFF}.o_cal_rebeccapurple .o_cal_wv_event_header{background:#663399}.o_cal_rebeccapurple a{color:#FFF !important}.o_cal_class.o_cal_rebeccapurple{border-left:20px solid #639}.o_cal_fuchsia{background:#FF00FF;border-color:#dd00dd;color:#FFF}.o_cal_fuchsia .o_cal_wv_event_header{background:#FF00FF}.o_cal_fuchsia a{color:#FFF !important}.o_cal_class.o_cal_fuchsia{border-left:20px solid #f0f}.o_cal_olive{background:#808000;border-color:#636300;color:#FFF}.o_cal_olive .o_cal_wv_event_header{background:#808000}.o_cal_olive a{color:#FFF !important}.o_cal_class.o_cal_olive{border-left:20px solid olive}.o_cal_navy{background:#000080;border-color:#000057;color:#FFF}.o_cal_navy .o_cal_wv_event_header{background:#000080}.o_cal_navy a{color:#FFF !important}.o_cal_class.o_cal_navy{border-left:20px solid navy}.o_cal_maroon{background:#800000;border-color:#740000;color:#FFF}.o_cal_maroon .o_cal_wv_event_header{background:#800000}.o_cal_maroon a{color:#FFF !important}.o_cal_class.o_cal_maroon{border-left:20px solid maroon}.o_cal_lime{background:#00FF00;border-color:#00e200;color:#004d00}.o_cal_lime .o_cal_wv_event_header{background:#00FF00}.o_cal_lime a{color:#004d00 !important}.o_cal_class.o_cal_lime{border-left:20px solid lime}.o_cal_grey{background:#DDDAAA;border-color:#5D5D5D;color:#FFF}.o_cal_grey .o_cal_wv_event_header{background:#5D5D5D}.o_cal_grey a{color:#FFF !important}.o_cal_class.o_cal_grey{border-left:20px solid #DDDAAA}.o_sel_calendar_print_chooser{padding-right:4em}.o_cal_config_enabled,.o_cal_config_disabled{position:relative;float:left;display:inline}.o_cal_config_calendar{margin:0 5px;padding:1px 6px 1px 4px;position:relative;width:200px;overflow:hidden;float:left;display:inline}.o_cal_config_color{display:block;width:16px;height:16px;border-radius:8px}.o_cal_colorchooser_selected:before{content:""}#o_cal_colorchooser div{border:1px solid #209d9e;margin:5px;display:inline-block}#o_cal_colorchooser div:hover{border:1px solid #333}#o_cal_colorchooser a{width:20px;height:20px;display:inline-block}.o_cal_embedded_course_container .o_content_popup{top:0}.o_cal_wv_event_tooltip_content .o_cal_description{background-color:#f8f8f8;padding:10px 7px;margin:10px -7px}.o_cal_wv_event_tooltip_content .o_cal_tooltip_buttons{text-align:center;margin-top:20px}.o_cal_event_managed .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_not_managed .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:""}.o_cal_event_managed.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:" "}.o_cal_event_not_managed.o_cal_event_livestream .fc-content:after{margin-right:2px;float:right;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:" "}.fc-button{color:#333;background-color:#fcfcfc;border-color:#ccc}.fc-button:hover,.fc-button:focus,.fc-button.focus,.fc-button:active,.fc-button.active,.open>.fc-button.dropdown-toggle{color:#333;background-color:#e3e3e3;border-color:#adadad}.fc-button:active,.fc-button.active,.open>.fc-button.dropdown-toggle{background-image:none}.fc-button.disabled,.fc-button.disabled:hover,.fc-button.disabled:focus,.fc-button.disabled.focus,.fc-button.disabled:active,.fc-button.disabled.active,.fc-button[disabled],.fc-button[disabled]:hover,.fc-button[disabled]:focus,.fc-button[disabled].focus,.fc-button[disabled]:active,.fc-button[disabled].active,fieldset[disabled] .fc-button,fieldset[disabled] .fc-button:hover,fieldset[disabled] .fc-button:focus,fieldset[disabled] .fc-button.focus,fieldset[disabled] .fc-button:active,fieldset[disabled] .fc-button.active{background-color:#fcfcfc;border-color:#ccc}.fc-button .badge{color:#fcfcfc;background-color:#333}.fc-button.fc-state-default{text-shadow:none}.fc-button.fc-state-active{color:#fff;background-color:#209d9e;border-color:#1c8889}.fc-button.fc-state-active:hover,.fc-button.fc-state-active:focus,.fc-button.fc-state-active.focus,.fc-button.fc-state-active:active,.fc-button.fc-state-active.active,.open>.fc-button.fc-state-active.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.fc-button.fc-state-active:active,.fc-button.fc-state-active.active,.open>.fc-button.fc-state-active.dropdown-toggle{background-image:none}.fc-button.fc-state-active.disabled,.fc-button.fc-state-active.disabled:hover,.fc-button.fc-state-active.disabled:focus,.fc-button.fc-state-active.disabled.focus,.fc-button.fc-state-active.disabled:active,.fc-button.fc-state-active.disabled.active,.fc-button.fc-state-active[disabled],.fc-button.fc-state-active[disabled]:hover,.fc-button.fc-state-active[disabled]:focus,.fc-button.fc-state-active[disabled].focus,.fc-button.fc-state-active[disabled]:active,.fc-button.fc-state-active[disabled].active,fieldset[disabled] .fc-button.fc-state-active,fieldset[disabled] .fc-button.fc-state-active:hover,fieldset[disabled] .fc-button.fc-state-active:focus,fieldset[disabled] .fc-button.fc-state-active.focus,fieldset[disabled] .fc-button.fc-state-active:active,fieldset[disabled] .fc-button.fc-state-active.active{background-color:#209d9e;border-color:#1c8889}.fc-button.fc-state-active .badge{color:#209d9e;background-color:#fff}.fc-listYear-button:before,.fc-listMonth-button:before,.fc-listWeek-button:before,.fc-listDay-button:before{content:"";margin-right:5px;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:80%;webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}table.fc-list-table .fc-list-item{background-color:white;color:#5D5D5D !important}table.fc-list-table .fc-list-item a,table.fc-list-table .fc-list-item span{color:#5D5D5D !important}body.o_cal_print fieldset{border:none;margin-bottom:2em}body.o_cal_print legend{font-size:2em;font-weight:bold}body.o_cal_print legend span{display:block;font-size:14px;font-weight:normal}body.o_cal_print ul.o_cal_wv_list{list-style-type:none;padding:0}body.o_cal_print ul.o_cal_wv_list>li{page-break-inside:avoid;margin-bottom:2em}body.o_cal_print ul.o_cal_wv_list .o_cal_date{font-size:1.25em;font-weight:bold;padding:0.5em 0 0.5em 0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events{list-style-type:none;padding:0.5em 0 0 0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event{position:relative;left:30px;page-break-inside:avoid;clear:both;margin-bottom:1.5em;padding-right:30px}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_time{float:left;font-weight:bold;margin-right:1em}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_subject{font-weight:bold}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_subject p{margin:0}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_location,body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_description,body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_freebusy{clear:both}body.o_cal_print ul.o_cal_wv_list ul.o_cal_events li.o_cal_event .o_cal_freebusy{font-style:italic}body.o_cal_print .o_cal_class{position:absolute;left:-30px;width:20px}body.o_cal_print #o_cal_config legend{font-size:1.25em}body.o_cal_print #o_cal_config .o_cal_config_calendar{margin:0;padding:0}body.o_cal_print #o_cal_config .o_cal_config_calendar{position:relative;left:30px;float:none;padding-right:30px}.o_page_content_editor{padding-bottom:2em}.o_page_content_editor .o_toolbar{border:none}.o_page_content_editor .o_page_part,.gu-mirror{border:2px solid transparent}.o_page_content_editor .o_page_part:hover,.gu-mirror:hover{border:2px dotted #209d9e}.o_page_fragment_edit{position:relative;display:grid}.o_page_fragment_edit .o_page_tools_above{height:25px;width:100%;background:#209d9e;position:absolute;z-index:3;left:0;top:-25px;box-shadow:3px -8px 10px 0px rgba(0,0,0,0.2)}.o_page_fragment_edit .o_page_tools_above .o_page_add_above{position:absolute;left:0;right:0;margin-left:auto;margin-right:auto;width:26px;top:-19px;height:19px;background-color:#209d9e;border-radius:10px 10px 0 0}.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_icon,.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_progress_failed .inset:after,.o_progress_failed .o_page_fragment_edit .o_page_tools_above .o_page_add_above .inset:after,.o_page_fragment_edit .o_page_tools_above .o_page_add_above .o_progress_passed .inset:after,.o_progress_passed .o_page_fragment_edit .o_page_tools_above .o_page_add_above .inset:after{color:#fff;background-color:#209d9e}.o_page_fragment_edit .o_page_tools_above .o_sel_add_element_above{display:inline-block;padding:3px 5px 0 7px}.o_page_fragment_edit .o_page_tools_above .o_page_others_above{padding-right:25px;line-height:25px;vertical-align:middle}.o_page_fragment_edit .o_page_tools_above .o_page_others_above .o_page_type{display:none}.o_page_fragment_edit .o_page_tools_above .o_page_others_above a{float:right;color:#fff;padding-right:1em}.o_page_fragment_edit .o_page_tools_above .o_page_others_above a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_tools{position:absolute;z-index:4;top:0;right:0;width:25px;height:100%;background:#209d9e}.o_page_fragment_edit .o_page_tools_dd:before{content:' ';width:25px;height:100%;position:absolute;left:0;top:0;border:3px #209d9e solid;border-bottom:28px #209d9e solid;background-image:-webkit-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:-moz-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:-ms-repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);background-image:repeating-radial-gradient(center center, #fff, #fff 1px, transparent 1px, transparent 100%);-webkit-background-size:3px 3px;-moz-background-size:3px 3px;background-size:3px 3px}.o_page_fragment_edit .o_page_tools_dd a{position:absolute;display:inline-block;width:25px;height:25px;line-height:25px;text-align:center;vertical-align:middle;background:#209d9e;color:#fff}.o_page_fragment_edit .o_page_tools_dd a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_tools_dd a.o_disabled{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_tools_dd a.o_disabled:hover{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_tools_dd a.o_sel_move_up_element{z-index:4;top:-25px}.o_page_fragment_edit .o_page_tools_dd a.o_sel_move_down_element{bottom:0}.o_page_fragment_edit .o_page_part.o_page_edit{padding-right:23px;border:2px solid #209d9e;box-shadow:5px 5px 10px 0px rgba(0,0,0,0.2);background-color:white}.o_page_fragment_edit .o_page_part.o_page_edit:hover{border:2px solid #209d9e}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar{position:absolute;z-index:5;left:5px;top:-25px;display:inline-block;height:25px;line-height:25px;vertical-align:middle}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a{color:#fff}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a:hover{color:#e6e6e6}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a.o_disabled{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_toolbar a.o_disabled:hover{color:rgba(255,255,255,0.5) !important}.o_page_fragment_edit .o_page_part.o_page_edit .o_page_edit_title .o_page_edit_toolbar li{font-weight:bold}.o_page_fragment_edit .o_page_part.o_page_edit .o_richtext_mce textarea{border:0}.o_page_fragment_edit .o_page_add_below{position:absolute;z-index:3;position:absolute;z-index:3;left:0;right:0;margin-left:auto;margin-right:auto;width:26px;bottom:-20px;height:22px;background-color:#209d9e;border-radius:0 0 10px 10px}.o_page_fragment_edit .o_page_add_below .o_icon,.o_page_fragment_edit .o_page_add_below .o_progress_failed .inset:after,.o_progress_failed .o_page_fragment_edit .o_page_add_below .inset:after,.o_page_fragment_edit .o_page_add_below .o_progress_passed .inset:after,.o_progress_passed .o_page_fragment_edit .o_page_add_below .inset:after{color:#fff;background-color:#209d9e}.o_page_fragment_edit .o_page_add_below .o_sel_add_element_below{display:inline-block;padding:0 5px 5px 5px;margin:0px 0px 0px 2px}.o_page_fragment_edit.gu-mirror .o_page_add_below,.o_page_fragment_edit.gu-mirror .o_page_add_above,.o_page_fragment_edit.gu-transit .o_page_add_below,.o_page_fragment_edit.gu-transit .o_page_add_above{display:none}.o_page_container_slot.col-md-3 .o_page_others_above a span,.o_page_container_slot.col-md-4 .o_page_others_above a span{display:none}.o_page_container_slot.col-md-3 .o_page_edit_toolbar ul>li,.o_page_container_slot.col-md-4 .o_page_edit_toolbar ul>li{padding-right:0}div.o_page_content_editor .gu-mirror,.o_page_content_editor .gu-transit{box-shadow:none}.o_page_container{box-sizing:border-box;padding:10px}.o_page_container{background-color:transparent}.o_page_container .o_page_container{background-color:transparent}.o_page_container .o_page_container .o_page_container{background-color:transparent}.o_page_container_slot{box-sizing:border-box;margin:0 -1px -1px 0;padding:10px}.o_page_container .o_page_container_slot{border:2px dotted #eee}.o_page_container:hover .o_page_container_slot{border:2px dotted #ef00ef}.o_page_add_in_container_grp{margin-bottom:0}.o_page_part.o_page_part_view,.o_page_fragment_edit{touch-action:none;user-select:none;-webkit-touch-callout:none;-moz-user-select:none;-ms-user-select:none}.o_page_part.oo-accepted,.o_page_part.oo-accepted-top,.o_page_content_editor.o_page_drop.oo-accepted,.o_page_content_editor.o_page_drop.oo-accepted-top{border:2px dotted #e80c96}.o_page_part.o_page_drop.oo-accepted:after,.o_page_container_slot.o_page_drop.oo-accepted .o_page_container_slot-inner:after{display:block;height:25px;margin:10px;border:2px dotted #a0a0b0;border-radius:5px;content:''}.o_page_part.o_page_drop.oo-accepted-top:before,.o_page_container_slot.o_page_drop.oo-accepted-top .o_page_container_slot-inner:before{display:block;height:25px;margin:10px 10px 10px 10px;border:2px dotted #a0a0b0;border-radius:5px;content:''}.o_page_part.oo-dragging{opacity:0.4;background-color:white;border:2px dotted #e80c96;box-shadow:0px 0px 20px #aaa}.gu-transit{border:2px dotted #e80c96;opacity:0.4;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";filter:alpha(opacity=40)}.gu-mirror{border:2px dotted #209d9e;opacity:0.8;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";filter:alpha(opacity=80)}.o_page_add_callout a span{display:none}.o_page_add_callout ul.list-inline{margin-bottom:0}.o_page_table_edition .o_table_title,.o_page_table_edition .o_table_caption{padding:5px}.o_page_with_side_options_wrapper{display:flex;align-items:stretch;flex-direction:row}.o_page_side_options_target{background-color:#f9f9f9;flex-grow:4}.o_page_side_options{flex-grow:0;background-color:#209d9e;border-left:1px solid #b9b9b9;border-bottom:1px solid #b9b9b9;padding:5px;z-index:2}@media (max-width: 767px){.o_page_with_side_options_wrapper{flex-direction:column-reverse}}.o_page_content .o_image,.o_page_content .o_video,.o_page_content_editor .o_image,.o_page_content_editor .o_video{width:100%}.o_page_content .o_image img,.o_page_content .o_video img,.o_page_content_editor .o_image img,.o_page_content_editor .o_video img{border:1px #f8f8f8 solid;border-radius:10px}.o_page_content .o_image .o_artefact_metadata,.o_page_content .o_video .o_artefact_metadata,.o_page_content_editor .o_image .o_artefact_metadata,.o_page_content_editor .o_video .o_artefact_metadata{text-align:left}.o_page_content .o_image.o_image_align_left,.o_page_content .o_video.o_image_align_left,.o_page_content_editor .o_image.o_image_align_left,.o_page_content_editor .o_video.o_image_align_left{float:left}.o_page_content .o_image.o_image_align_left+.o_image_clear,.o_page_content .o_video.o_image_align_left+.o_image_clear,.o_page_content_editor .o_image.o_image_align_left+.o_image_clear,.o_page_content_editor .o_video.o_image_align_left+.o_image_clear{clear:both}.o_page_content .o_image.o_image_align_right,.o_page_content .o_video.o_image_align_right,.o_page_content_editor .o_image.o_image_align_right,.o_page_content_editor .o_video.o_image_align_right{float:right}.o_page_content .o_image.o_image_align_right+.o_image_clear,.o_page_content .o_video.o_image_align_right+.o_image_clear,.o_page_content_editor .o_image.o_image_align_right+.o_image_clear,.o_page_content_editor .o_video.o_image_align_right+.o_image_clear{clear:both}.o_page_content .o_image.o_image_align_middle,.o_page_content .o_video.o_image_align_middle,.o_page_content_editor .o_image.o_image_align_middle,.o_page_content_editor .o_video.o_image_align_middle{clear:both;margin-left:50%;text-align:center;transform:translate(-50%, 0%)}.o_page_content .o_image.o_image_align_leftfloat,.o_page_content .o_video.o_image_align_leftfloat,.o_page_content_editor .o_image.o_image_align_leftfloat,.o_page_content_editor .o_video.o_image_align_leftfloat{float:left;padding-right:10px;padding-bottom:10px}.o_page_content .o_image.o_image_align_rightfloat,.o_page_content .o_video.o_image_align_rightfloat,.o_page_content_editor .o_image.o_image_align_rightfloat,.o_page_content_editor .o_video.o_image_align_rightfloat{float:right;padding-left:10px;padding-bottom:10px}.o_page_content .o_image.o_image_size_style_small,.o_page_content .o_video.o_image_size_style_small,.o_page_content_editor .o_image.o_image_size_style_small,.o_page_content_editor .o_video.o_image_size_style_small{width:25%}.o_page_content .o_image.o_image_size_style_small img,.o_page_content .o_video.o_image_size_style_small img,.o_page_content_editor .o_image.o_image_size_style_small img,.o_page_content_editor .o_video.o_image_size_style_small img{width:100%}.o_page_content .o_image.o_image_size_style_medium,.o_page_content .o_video.o_image_size_style_medium,.o_page_content_editor .o_image.o_image_size_style_medium,.o_page_content_editor .o_video.o_image_size_style_medium{width:40%}.o_page_content .o_image.o_image_size_style_medium img,.o_page_content .o_video.o_image_size_style_medium img,.o_page_content_editor .o_image.o_image_size_style_medium img,.o_page_content_editor .o_video.o_image_size_style_medium img{width:100%}.o_page_content .o_image.o_image_size_style_large,.o_page_content .o_video.o_image_size_style_large,.o_page_content_editor .o_image.o_image_size_style_large,.o_page_content_editor .o_video.o_image_size_style_large{width:60%}.o_page_content .o_image.o_image_size_style_large img,.o_page_content .o_video.o_image_size_style_large img,.o_page_content_editor .o_image.o_image_size_style_large img,.o_page_content_editor .o_video.o_image_size_style_large img{width:100%}.o_page_content .o_image.o_image_size_style_fill,.o_page_content .o_video.o_image_size_style_fill,.o_page_content_editor .o_image.o_image_size_style_fill,.o_page_content_editor .o_video.o_image_size_style_fill{width:100%;float:none !important;display:block}.o_page_content .o_image.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content .o_video.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content_editor .o_image.o_image_size_style_fill .o_figure_caption_bottom,.o_page_content_editor .o_video.o_image_size_style_fill .o_figure_caption_bottom{display:block}.o_page_content .o_image.o_image_size_style_fill img,.o_page_content .o_video.o_image_size_style_fill img,.o_page_content_editor .o_image.o_image_size_style_fill img,.o_page_content_editor .o_video.o_image_size_style_fill img{width:100%;display:block}.o_page_content .o_image img.o_image_classic,.o_page_content .o_video img.o_image_classic,.o_page_content_editor .o_image img.o_image_classic,.o_page_content_editor .o_video img.o_image_classic{padding:0;border:0;border-radius:0}.o_page_content .o_image img.o_image_border,.o_page_content .o_video img.o_image_border,.o_page_content_editor .o_image img.o_image_border,.o_page_content_editor .o_video img.o_image_border{padding:3px;border:solid 1px #CCC}.o_page_content .o_image img.o_image_shadow,.o_page_content .o_video img.o_image_shadow,.o_page_content_editor .o_image img.o_image_shadow,.o_page_content_editor .o_video img.o_image_shadow{padding:0;border:0;-moz-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);-webkit-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19)}.o_page_content .o_image img.o_image_frame,.o_page_content .o_video img.o_image_frame,.o_page_content_editor .o_image img.o_image_frame,.o_page_content_editor .o_video img.o_image_frame{padding:0;border:0;border-radius:0;-moz-box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);-webkit-box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);box-shadow:0px 0px 0px 1px rgba(0,0,0,0.6),0px 0px 0px 10px #f6f3f8,0px 0px 0px 14px rgba(0,0,0,0.2);margin:15px}.o_page_content .o_image img.o_image_polaroid,.o_page_content .o_video img.o_image_polaroid,.o_page_content_editor .o_image img.o_image_polaroid,.o_page_content_editor .o_video img.o_image_polaroid{padding:0;border-radius:0;border:1px solid #dcdcdc;background:#fff;padding:10px 10px 45px 10px;-webkit-box-shadow:3px 3px 3px rgba(0,0,0,0.2);-moz-box-shadow:3px 3px 3px rgba(0,0,0,0.2);box-shadow:3px 3px 3px rgba(0,0,0,0.2)}.o_page_content .o_image img.o_image_round,.o_page_content .o_video img.o_image_round,.o_page_content_editor .o_image img.o_image_round,.o_page_content_editor .o_video img.o_image_round{padding:3px;border:solid 1px #CCC;border-radius:50%}.o_page_content .o_image .o_image_title_dark,.o_page_content .o_video .o_image_title_dark,.o_page_content_editor .o_image .o_image_title_dark,.o_page_content_editor .o_video .o_image_title_dark{color:#000}.o_page_content .o_image .o_image_title_bright,.o_page_content .o_video .o_image_title_bright,.o_page_content_editor .o_image .o_image_title_bright,.o_page_content_editor .o_video .o_image_title_bright{color:#f9f9f9}.o_page_content .o_image .o_image_title,.o_page_content .o_video .o_image_title,.o_page_content_editor .o_image .o_image_title,.o_page_content_editor .o_video .o_image_title{position:relative}.o_page_content .o_image .o_image_title .o_image_title_top,.o_page_content .o_image .o_image_title .o_image_title_centered,.o_page_content .o_image .o_image_title .o_image_title_bottom,.o_page_content .o_video .o_image_title .o_image_title_top,.o_page_content .o_video .o_image_title .o_image_title_centered,.o_page_content .o_video .o_image_title .o_image_title_bottom,.o_page_content_editor .o_image .o_image_title .o_image_title_top,.o_page_content_editor .o_image .o_image_title .o_image_title_centered,.o_page_content_editor .o_image .o_image_title .o_image_title_bottom,.o_page_content_editor .o_video .o_image_title .o_image_title_top,.o_page_content_editor .o_video .o_image_title .o_image_title_centered,.o_page_content_editor .o_video .o_image_title .o_image_title_bottom{position:absolute;left:50%;margin-right:-50%;transform:translate(-50%, -50%)}.o_page_content .o_image .o_image_title .o_image_title_top,.o_page_content .o_video .o_image_title .o_image_title_top,.o_page_content_editor .o_image .o_image_title .o_image_title_top,.o_page_content_editor .o_video .o_image_title .o_image_title_top{top:10%}.o_page_content .o_image .o_image_title .o_image_title_centered,.o_page_content .o_video .o_image_title .o_image_title_centered,.o_page_content_editor .o_image .o_image_title .o_image_title_centered,.o_page_content_editor .o_video .o_image_title .o_image_title_centered{top:50%}.o_page_content .o_image .o_image_title .o_image_title_bottom,.o_page_content .o_video .o_image_title .o_image_title_bottom,.o_page_content_editor .o_image .o_image_title .o_image_title_bottom,.o_page_content_editor .o_video .o_image_title .o_image_title_bottom{bottom:10%}.o_page_content .o_image.o_image_size_style_none .o_image_title_top,.o_page_content .o_image.o_image_size_style_none .o_image_title_centered,.o_page_content .o_image.o_image_size_style_none .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_none .o_image_title_top,.o_page_content .o_video.o_image_size_style_none .o_image_title_centered,.o_page_content .o_video.o_image_size_style_none .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_none .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_none .o_image_title_bottom{font-size:24px}.o_page_content .o_image.o_image_size_style_small .o_image_title_top,.o_page_content .o_image.o_image_size_style_small .o_image_title_centered,.o_page_content .o_image.o_image_size_style_small .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_small .o_image_title_top,.o_page_content .o_video.o_image_size_style_small .o_image_title_centered,.o_page_content .o_video.o_image_size_style_small .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_small .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_small .o_image_title_bottom{font-size:18px}.o_page_content .o_image.o_image_size_style_medium .o_image_title_top,.o_page_content .o_image.o_image_size_style_medium .o_image_title_centered,.o_page_content .o_image.o_image_size_style_medium .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_medium .o_image_title_top,.o_page_content .o_video.o_image_size_style_medium .o_image_title_centered,.o_page_content .o_video.o_image_size_style_medium .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_medium .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_medium .o_image_title_bottom{font-size:32px}.o_page_content .o_image.o_image_size_style_large .o_image_title_top,.o_page_content .o_image.o_image_size_style_large .o_image_title_centered,.o_page_content .o_image.o_image_size_style_large .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_large .o_image_title_top,.o_page_content .o_video.o_image_size_style_large .o_image_title_centered,.o_page_content .o_video.o_image_size_style_large .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_large .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_large .o_image_title_bottom{font-size:40px}.o_page_content .o_image.o_image_size_style_fill .o_image_title_top,.o_page_content .o_image.o_image_size_style_fill .o_image_title_centered,.o_page_content .o_image.o_image_size_style_fill .o_image_title_bottom,.o_page_content .o_video.o_image_size_style_fill .o_image_title_top,.o_page_content .o_video.o_image_size_style_fill .o_image_title_centered,.o_page_content .o_video.o_image_size_style_fill .o_image_title_bottom,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_top,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_centered,.o_page_content_editor .o_image.o_image_size_style_fill .o_image_title_bottom,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_top,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_centered,.o_page_content_editor .o_video.o_image_size_style_fill .o_image_title_bottom{font-size:56px}.o_page_add_contents{clear:both;margin-top:30px}.o_ce_html_raw.o_html_col2,.o_ce_html_paragraph.o_html_col2{column-count:2;column-gap:1em}.o_ce_html_raw.o_html_col3,.o_ce_html_paragraph.o_html_col3{column-count:3;column-gap:1em}.o_ce_html_raw.o_html_col4,.o_ce_html_paragraph.o_html_col4{column-count:4;column-gap:1em}table.o_ce_table caption{caption-side:bottom}.o_ce_add_main_btns{margin-top:0}.o_ce_add{border:none;margin-bottom:0px}.o_ce_add .o_ce_tools{display:flex;flex-direction:row;flex-wrap:wrap;width:100%}.o_ce_add .o_ce_tools .o_ce_tool{padding:0px;margin:0px;width:33%}.o_ce_add .o_ce_tools .o_ce_tool a{padding:6px 3px;margin:0px;display:block;width:100%;height:100%}.o_ce_add .o_ce_tools .o_ce_tool a:hover{padding:5px 2px;border:1px solid #e7e7e7;border-radius:4px}.o_ce_add_list .o_ce_add_list_item{border-style:none;padding:0px;margin:0px -15px}.o_ce_add_list .o_ce_add_list_item a{padding:5px 25px;margin:0px;display:block;width:100%;height:100%}.o_ce_add_list .o_ce_add_list_item a:hover{text-decoration:none;background-color:#f5f5f5}.o_visual{position:absolute;top:0;left:0;overflow:hidden;height:120px;width:180px;vertical-align:middle}@media (min-width: 768px) and (max-width: 991px){.o_visual{height:80px;width:120px}}@media (max-width: 767px){.o_visual{height:50px;width:75px}}.o_visual img{width:100%;height:auto}.o_visual .o_visual_not_available{width:100%;height:100%;background-image:url("../light/images/no_preview.png");background-repeat:no-repeat;background-position:50% 50%;background-size:contain}.o_coursetable.o_rendertype_custom .o_table_row{position:relative;border:1px solid #ccc;border-radius:4px;background:#fcfcfc;margin-bottom:10px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual{box-sizing:content-box;border-top-left-radius:4px;border-bottom-left-radius:4px}.o_coursetable.o_rendertype_custom .o_table_row .o_visual .o_visual_not_available{background-color:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_access{position:absolute;top:0;right:0;height:120px;width:180px;overflow:hidden;border-left:1px solid #ccc;padding-top:0.25em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_completion{text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_state,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{padding:0 1em;height:20px;line-height:20px;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score{position:relative;left:2px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score .o_label{color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social{position:absolute;width:100%;bottom:32px;height:20px;padding-left:1em}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_title,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating o_rating_legend,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_social .o_rating .o_rating_explanation{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings{padding:0 0 0 1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_bookings .o_label{margin-bottom:0.8em;font-weight:bold}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{right:0;border-bottom-right-radius:4px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start{color:#fff;background-color:#209d9e;border-color:#1c8889}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#209d9e;border-color:#1c8889}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#209d9e;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book{color:#fff;background-color:#209d9e;border-color:#1c8889}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book.active{background-color:#209d9e;border-color:#1c8889}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book .badge{color:#209d9e;background-color:#fff}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#a6a6a6;border-color:#999}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#8d8d8d;border-color:#7b7b7b}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].focus,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.focus,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#a6a6a6;border-color:#999}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#a6a6a6;background-color:#fff}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{height:80px;width:120px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_score,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_comments,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_label{display:none}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_start,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_book,.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{width:60px}.o_coursetable.o_rendertype_custom .o_table_row .o_access .o_details{right:60px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_access{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:120px;margin:0 180px 0 180px;position:relative;padding:1em 0.5em 0.25em 1em;background:#fcfcfc;border-left:1px solid #ccc;overflow:hidden}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{margin:0;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{display:block;color:#342c24}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a:hover{color:#16130f}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author{margin-top:0.5em;line-height:normal;font-size:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d;background:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle{position:absolute;top:5px;right:40px;z-index:2px;background:#fcfcfc;padding:0 3px 3px 3px;border-radius:0px 0px 3px 3px;font-size:90%;line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active{color:#3c763d}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle.o_active:hover{color:#2b542c}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{margin-top:0.5em;background:#fcfcfc}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark{position:absolute;top:-1px;right:15px}@media (min-width: 768px) and (max-width: 991px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:80px;margin:0 120px}}@media (max-width: 767px){.o_coursetable.o_rendertype_custom .o_table_row .o_meta{height:50px;margin:0 0 0 75px;padding:0 0 0 1em}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title{line-height:50px}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_title a{border-right:37px solid transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_author,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_bookmark,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_lifecycle,.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_desc{display:none}}.o_coursetable.o_rendertype_custom .o_table_row .o_meta .o_go_xs{position:absolute;top:0;right:0;padding:0 1em;height:50px;width:37px;line-height:50px;color:#fff;background-color:#209d9e;border-top-right-radius:4px;border-bottom-right-radius:4px}.o_coursetable.o_rendertype_classic .o_rating_explanation{display:none}.o_coursetable.o_rendertype_classic .o_start,.o_coursetable.o_rendertype_classic .o_book{white-space:nowrap}.o_coursetable.o_rendertype_classic .o_repoentry_type{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac{color:#555}.o_coursetable.o_rendertype_classic .o_repoentry_ac ul{display:inline-block}.o_catalog .o_level{position:relative;margin-bottom:10px;padding:0;border-top:1px solid #ccc;border-bottom:1px solid #ccc}.o_catalog .o_level .o_visual{height:180px}.o_catalog .o_level .o_meta{position:relative;min-height:180px;height:180px;overflow:hidden;margin:0 0 0 180px;padding:1em 0.5em 0.5em 2em}.o_catalog .o_level .o_meta .o_title{margin:0}.o_catalog .o_level .o_meta .o_title a{display:block;color:#342c24}.o_catalog .o_level .o_meta .o_title a:hover{color:#16130f}.o_catalog .o_level .o_meta .o_desc{padding:1em 0 0.5em 0}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_level .o_visual{height:120px}.o_catalog .o_level .o_meta{min-height:120px;height:120px;margin:0 0 0 120px}}@media (max-width: 767px){.o_catalog .o_level .o_visual{height:75px}.o_catalog .o_level .o_meta{min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em}.o_catalog .o_level .o_meta .o_title{line-height:75px}.o_catalog .o_level .o_meta .o_desc{display:none}}.o_catalog .o_sublevels_list .o_sublevel{position:relative;border:1px solid #ccc;margin-bottom:10px}.o_catalog .o_sublevels_list .o_sublevel .o_visual{height:75px;width:75px}.o_catalog .o_sublevels_list .o_sublevel .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_catalog .o_sublevels_list .o_sublevel .o_title{margin:0}.o_catalog .o_sublevels_list .o_sublevel .o_meta{border-left:1px solid #ccc;min-height:75px;height:75px;margin:0 0 0 75px;padding:0 0 0 1em;overflow:hidden}.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_title{line-height:75px}.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_desc{display:none}.o_catalog .o_sublevels_list .o_sublevel .o_meta h4.o_title>a,.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_cal .fc-header-title h2.o_title>a,.o_cal .fc-header-title .o_catalog .o_sublevels_list .o_sublevel .o_meta h2.o_title>a{font-family:inherit;font-weight:inherit}.o_catalog .o_sublevels_list .o_sublevel .o_meta h4.o_title>a>i,.o_catalog .o_sublevels_list .o_sublevel .o_meta .o_cal .fc-header-title h2.o_title>a>i,.o_cal .fc-header-title .o_catalog .o_sublevels_list .o_sublevel .o_meta h2.o_title>a>i{display:none}.o_catalog .o_sublevels_list .o_sublevel.o_fill_sublevels{border:1px solid transparent}.o_catalog .o_sublevels_list .o_sublevel.o_fill_sublevels .o_meta{border-left:1px solid transparent}.o_catalog .o_sublevels{position:relative;margin-bottom:20px}.o_catalog .o_sublevels:before,.o_catalog .o_sublevels:after{content:" ";display:table}.o_catalog .o_sublevels:after{clear:both}.o_catalog .o_sublevels .o_sublevel{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_catalog .o_sublevels .o_sublevel:last-child{margin-right:0}.o_catalog .o_sublevels .o_sublevel .o_visual{border:1px solid #ccc;position:relative;height:180px}.o_catalog .o_sublevels .o_sublevel .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_catalog .o_sublevels .o_sublevel .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #ccc;border-top:0;background-color:rgba(255,255,255,0.8)}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a{display:block;color:#342c24;font-family:inherit;font-weight:inherit}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a:hover{color:#16130f}.o_catalog .o_sublevels .o_sublevel .o_meta .o_title a>i{display:none}@media (min-width: 768px) and (max-width: 991px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 10px 10px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (max-width: 767px){.o_catalog .o_sublevels .o_sublevel{width:120px;margin:0 1px 1px 0}.o_catalog .o_sublevels .o_sublevel .o_visual{height:120px;width:120px}.o_catalog .o_sublevels .o_sublevel .o_title{font-size:90%}}@media (min-width: 768px){.o_catalog .o_sublevels_list,.o_catalog .o_sublevels_compact{-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2;columns:2}}.o_repo_details{position:relative}.o_repo_details .o_lead{margin-bottom:10px}.o_repo_details .o_lead .o_author{margin-top:0.5em;margin-bottom:1em;font-size:120%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c763d}.o_repo_details .o_lead .o_media{float:right;margin-left:2em;margin-bottom:2em}.o_repo_details .o_lead .o_media.o_desc_empty{float:none;margin-left:0;margin-bottom:0}.o_repo_details .o_lead h1{font-size:37px}.o_repo_details .o_lead h1 i{display:none}.o_repo_details .o_overview i{margin-right:0.5em}.o_repo_details .o_overview div{margin-bottom:0.25em}.o_repo_details .o_start_wrapper{clear:both;margin:2em 0 -10px 0;text-align:right}.o_repo_details .o_start_wrapper .o_start_inner{display:inline-block}.o_repo_details .o_start,.o_repo_details .o_book{max-width:400px;display:inline-block}.o_repo_details .o_social:before,.o_repo_details .o_social:after{content:" ";display:table}.o_repo_details .o_social:after{clear:both}.o_repo_details .o_social .o_rating_wrapper{float:left}.o_repo_details .o_social .o_comments{margin-left:1em}@media (max-width: 767px){.o_repo_details .o_lead p{font-size:16px}.o_repo_details .o_lead .o_media{margin-left:0;float:none;text-align:center}.o_repo_details .o_start_wrapper{text-align:center}.o_repo_details .o_start_wrapper .o_start_inner{display:block}.o_repo_details .o_start,.o_repo_details .o_book{max-width:100%;display:block}}@media (max-width: 613px){.o_repo_details .o_subcolumn{width:100%}}.o_meta .o_closed{padding:2px 5px;margin:5px 0}.o_overview .o_closed{padding:12px 15px;margin:15px 0}.o_ac_configuration span.o_ac_infos{font-weight:normal;color:grey}.o_ac_configuration div.o_ac_method{background-color:#efefef;padding:5px;border-radius:3px}.o_ac_configuration div.o_ac_methods.form-group{padding-bottom:0;margin-bottom:0}.o_repo_with_explanation{padding-bottom:0;margin-bottom:0}.o_repo_explanation{color:#f2af40}tr.o_entry_closed,tr.o_entry_closed td,tr.o_entry_closed td span,tr.o_entry_unpublished,tr.o_entry_unpublished td,tr.o_entry_unpublished td span{text-decoration:line-through}a.o_repo_tools_status{cursor:pointer;margin:0 2px 2px 2px;text-align:left}.o_labeled.o_repo_status_preparation,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_preparation{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_labeled.o_repo_status_review,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_review{background-color:#FCCA46;border-color:#FCCA46;color:#fff}.o_labeled.o_repo_status_coachpublished,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_coachpublished{background-color:#1DC63F;border-color:#1DC63F;color:#fff}.o_labeled.o_repo_status_published,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_published{background-color:#14892c;border-color:#14892c;color:#fff}.o_labeled.o_repo_status_closed,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_closed{background-color:#99583D;border-color:#99583D;color:#fff}.o_labeled.o_repo_status_trash,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_trash{background-color:#5A5958;border-color:#5A5958;color:#fff}.o_labeled.o_repo_status_deleted,.o_toolbar .o_tools_container a.o_labeled.o_repo_status_deleted{background-color:#888;border-color:#888;color:#fff}.o_labeled.o_repo_role,.o_toolbar .o_tools_container a.o_labeled.o_repo_role{background-color:#777;border-color:#777;color:#fff}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_preparation{background-color:#384e64}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_review{background-color:#fbbc14}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_coachpublished{background-color:#169a31}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_published{background-color:#0e5c1e}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_closed{background-color:#75432e}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_trash{background-color:#40403f}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_status_deleted{background-color:#6f6f6f}.o_toolbar .o_tools_container a.o_labeled:hover.o_repo_role{background-color:#919191;border-color:#919191}.o_labeled_light.o_repo_status_preparation,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_preparation{border-color:#4a6785;color:#4a6785}.o_labeled_light.o_repo_status_review,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_review{border-color:#FCCA46;color:#FCCA46}.o_labeled_light.o_repo_status_coachpublished,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_coachpublished{border-color:#1DC63F;color:#1DC63F}.o_labeled_light.o_repo_status_published,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_published{border-color:#14892c;color:#14892c}.o_labeled_light.o_repo_status_closed,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_closed{border-color:#99583D;color:#99583D}.o_labeled_light.o_repo_status_trash,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_trash{border-color:#5A5958;color:#5A5958}.o_labeled_light.o_repo_status_deleted,.o_toolbar .o_tools_container a.o_labeled_light.o_repo_status_deleted{border-color:#888;color:#888}.badge.o_midpub{background-color:#3c763d}.badge.o_midwarn{background-color:#8a6d3b}.badge.o_midlock{background-color:#31708f}.badge.o_miderr{background-color:#a94442}.badge.o_middel{background-color:#777}.o_course_editor_legend .badge{font-size:80%}.o_course_editor_legend .badge:before{content:none}.o_course_edit_overview_table tr.o_deleted,.o_course_edit_overview_table tr.o_deleted td,.o_course_edit_overview_table tr.o_deleted td span,.o_course_edit_overview_table tr.o_deleted td a{color:#aaa}.o_lp_tree.o_tree{border:1px solid #e7e7e7}.o_lp_tree.o_tree ul li div{border-bottom:none}.o_lp_tree.o_tree .o_tree_link:last-child:hover,.o_lp_tree.o_tree .o_tree_link:last-child:focus{background-color:transparent}.o_lp_tree.o_tree li div a.o_tree_oc_l0{left:8px}.o_lp_tree.o_tree li div span.o_tree_l0{padding:10px 2px 10px 2px;margin-left:22px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l1{left:23px}.o_lp_tree.o_tree li div span.o_tree_l1{padding:10px 2px 10px 2px;margin-left:37px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l2{left:38px}.o_lp_tree.o_tree li div span.o_tree_l2{padding:10px 2px 10px 2px;margin-left:52px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l3{left:53px}.o_lp_tree.o_tree li div span.o_tree_l3{padding:10px 2px 10px 2px;margin-left:67px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l4{left:68px}.o_lp_tree.o_tree li div span.o_tree_l4{padding:10px 2px 10px 2px;margin-left:82px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l5{left:83px}.o_lp_tree.o_tree li div span.o_tree_l5{padding:10px 2px 10px 2px;margin-left:97px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l6{left:98px}.o_lp_tree.o_tree li div span.o_tree_l6{padding:10px 2px 10px 2px;margin-left:112px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l7{left:113px}.o_lp_tree.o_tree li div span.o_tree_l7{padding:10px 2px 10px 2px;margin-left:127px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l8{left:128px}.o_lp_tree.o_tree li div span.o_tree_l8{padding:10px 2px 10px 2px;margin-left:142px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l9{left:143px}.o_lp_tree.o_tree li div span.o_tree_l9{padding:10px 2px 10px 2px;margin-left:157px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l10{left:158px}.o_lp_tree.o_tree li div span.o_tree_l10{padding:10px 2px 10px 2px;margin-left:172px;z-index:9}.o_lp_tree.o_tree li div a.o_tree_oc_l11{left:173px}.o_lp_tree.o_tree li div span.o_tree_l11{padding:10px 2px 10px 2px;margin-left:187px;z-index:9}.o_lp_tree.o_tree .o_tree_link>a>i.o_icon,.o_lp_tree.o_tree .o_progress_failed .o_tree_link>a>i.inset:after,.o_progress_failed .o_lp_tree.o_tree .o_tree_link>a>i.inset:after,.o_lp_tree.o_tree .o_progress_passed .o_tree_link>a>i.inset:after,.o_progress_passed .o_lp_tree.o_tree .o_tree_link>a>i.inset:after{display:none}.o_lp_tree.o_tree li.children_visible{background:rgba(0,0,0,0.025)}.o_lp_tree.o_tree li{position:relative}.o_lp_tree.o_tree li:before{content:' ';position:absolute;top:25px;left:8px;height:29px;width:2px}.o_lp_tree.o_tree li:after{position:absolute;top:13px;left:3px;height:12px;width:12px;display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_lp_tree.o_tree li:before{border-left:2px solid #888}.o_lp_tree.o_tree li:after{content:"ï„Œ";color:#888}.o_lp_tree.o_tree li.o_lp_not_accessible:before{border-left:2px dotted #919191}.o_lp_tree.o_tree li.o_lp_not_accessible:after{content:"ïž";color:#919191}.o_lp_tree.o_tree li.o_lp_ready:before{border-left:2px dotted #919191}.o_lp_tree.o_tree li.o_lp_ready:after{content:"ï„Œ";color:#FCCA46}.o_lp_tree.o_tree li.o_lp_in_progress:before{border-left:2px solid #FCCA46}.o_lp_tree.o_tree li.o_lp_in_progress:after{content:"ï€";color:#FCCA46}.o_lp_tree.o_tree li.o_lp_done:before{border-left:2px solid #3c763d}.o_lp_tree.o_tree li.o_lp_done:after{content:"ï˜";color:#3c763d}.o_lp_tree.o_tree li.o_last_node:before{border:none}.o_lp_tree.o_tree li.o_lp_not_in_sequence:not(:last-child):not(.o_last_node):before,.o_lp_tree.o_tree li.o_lp_contains_no_sequence.children_visible:not(.o_last_node):before,.o_lp_tree.o_tree li.o_lp_contains_no_sequence.children_visible:not(.o_last_node) li.o_lp_not_in_sequence:not(.o_last_node):before{border-left:2px solid #888}.o_lp_list i.o_status.o_lp_not_accessible::before{color:#919191;content:"ïž"}.o_lp_list i.o_status.o_lp_ready::before{color:#919191;content:"ï„Œ"}.o_lp_list i.o_status.o_lp_in_progress::before{color:#FCCA46;content:"ï€"}.o_lp_list i.o_status.o_lp_done::before{color:#3c763d;content:"ï˜"}.o_lp_identity .o_user_infos{margin-top:20px}.o_course_progress{position:absolute;left:0;width:100%}.o_course_progress .progress{height:3px;line-height:3px;-webkit-box-shadow:none;box-shadow:none;border-top-left-radius:0;border-top-right-radius:0}.o_course_progress{top:-37px}@media (max-width: 991px){.o_course_progress{top:-37px}}@media (max-width: 767px){.o_course_progress{top:-37px}}.o_with_toolbar .o_course_progress{top:23px}@media (max-width: 991px){.o_with_toolbar .o_course_progress{top:17px}}@media (max-width: 767px){.o_with_toolbar .o_course_progress{top:5px}}.o_with_breadcrumb .o_course_progress{top:-2px}@media (max-width: 991px){.o_with_breadcrumb .o_course_progress{top:-2px}}@media (max-width: 767px){.o_with_breadcrumb .o_course_progress{top:-2px}}.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:49px}@media (max-width: 991px){.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:44px}}@media (max-width: 767px){.o_with_breadcrumb.o_with_toolbar .o_course_progress{top:32px}}.gugs>.o_course_progress{top:10px}.o_passed{color:#3c763d;font-weight:bold}.o_passed a:hover{color:#2b542c}.o_passed th{color:#2d2926}.o_failed{color:#a94442;font-weight:bold}.o_failed a:hover{color:#66512c}.o_failed th{color:#2d2926}.o_unknown{color:#8a6d3b;font-weight:bold}.o_unknown a:hover{color:#66512c}.o_unknown th{color:#2d2926}.o_noinfo{color:#777}.o_course_run .o_toc .o_entry .o_shorttitle{border-bottom:1px solid #777}.o_course_run .o_toc .o_entry .o_displaytitle{margin-top:5px;color:#777}.o_course_run .o_toc .o_entry .o_objectives{margin-top:10px;font-style:italic}.o_course_run .o_in_review{font-style:italic;position:relative}.o_course_run.o_titled_wrapper>h2 i{display:none}.o_course_run .o_cal_toptoolbar{margin-right:26px}.o_course_run .o_titled_wrapper .o_cal_toptoolbar{margin-right:0px}.o_tree.o_course_menu div.o_tree_l0>a:first-child{background-color:none}.o_st_peekview ul li{margin-bottom:0.5em}.o_cl_line{margin-bottom:10px;padding-bottom:5px}.o_cl_line.o_even{background-color:#f9f9f9}.o_ll_container h5{margin-bottom:5px}.o_ll_container h5 a.o_desc{color:#342c24}.o_ll_container h5 a.o_desc small{display:none}.o_ll_container h5 a.o_desc:hover{color:#16130f;text-decoration:none}.o_ll_container h5 a.o_desc:hover small{color:#5e5e5e;display:inline}.o_ll_container div.o_comment{color:#777}.o_course_pagination{position:absolute;top:-26px;right:15px;background-color:#f8f8f8;border:1px solid #e7e7e7;border-top:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px;padding:2px;display:flex;justify-content:flex-end}.o_course_pagination :not(:first-child){margin-left:5px}.o_course_pagination .o_previous a,.o_course_pagination .o_next a{width:50px}.o_course_pagination .o_confirm a.o_course_pagination_status_done{color:#3c763d}.o_course_pagination .btn-xs,.o_course_pagination .btn-group-xs>.btn{padding:0px 4px}.o_cmembers .o_cmember{margin:12px 0;display:table}.o_cmembers .o_cmember .o_portrait{padding-right:10px;display:table-cell;vertical-align:top;min-width:60px}.o_cmembers .o_cmember .o_portrait img{width:50px;height:50px}.o_cmembers .o_cmember .o_cmember_info_wrapper{display:table-cell;vertical-align:middle;color:#777}.o_cmembers .o_cmember .o_cmember_info_wrapper .o_mail{margin-left:6px}.o_cmembers .o_cmember .o_curriculum_displayname,.o_cmembers .o_cmember .o_curriculum_root_el_identifier,.o_cmembers .o_cmember .o_curriculum_root_el_displayname{font-size:12px}.o_cmembers .o_cmember a.o_mail{display:none}.o_cmembers .o_cmember:hover a.o_mail{display:inline}.o_cmembers_print{color:#000}.o_cmembers_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_cmembers_print #o_print_brand img{width:100%}.o_cmembers_print .o_portrait{width:100px;height:100px;position:relative}.o_cmembers_print .o_portrait img{border-radius:0px;max-width:100%;max-height:100%;width:auto;height:auto;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto}.o_cmembers_print .o_cmember{padding-left:0px;padding-right:15px;margin-bottom:20px}.o_cmembers_print .o_cmember .o_cmember_info_wrapper{word-wrap:break-word}.o_cmembers_print .o_cmember .o_prop.o_zipCode{float:left;padding-right:0.5em}.o_cmembers_print h1{font-size:18pt;color:#000}.o_cmembers_print h3{font-size:14pt;margin-top:5px;font-weight:normal;color:#000}.o_cmembers_print h4,.o_cmembers_print .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_cmembers_print h2{font-size:11pt;font-weight:strong;color:#000;padding-bottom:10px;border-bottom:1px solid #eee}.o_cmembers_print .o_cmember_info_wrapper{font-size:7pt;color:#000}.o_cmembers_print .o_cmember_info_wrapper strong{font-size:8pt}.tag.label.label-info{margin-right:3px}.input-group.o_tag_inputgroup .form-control{height:auto}div.o_correction_navigation .o_correction_navigation_back{float:left;line-height:32px}div.o_correction_navigation .o_correction_navigation_previous{position:absolute;right:50%;margin-right:102px}div.o_correction_navigation #o_cocurrent_item_SELBOX{width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:absolute;left:50%;margin-left:-100px}div.o_correction_navigation .o_correction_navigation_next{position:absolute;left:50%;margin-left:102px}@media (max-width: 767px){div.o_correction_navigation .o_correction_navigation_previous span,div.o_correction_navigation .o_correction_navigation_next span{display:none}}.o_ms_stack_panel .o_toolbar{margin-top:0px}.o_ms_bold{font-weight:bold}.o_ms_legend{padding:5px}.o_ms_legend li{display:block;font-size:90%}.o_ms_legend .ident{font-weight:bold}.o_browser_ie10 .o_paella_wrapper iframe,.o_browser_ie11 .o_paella_wrapper iframe{display:none}.o_browser_ie10 .o_paella_wrapper .o_paella_error,.o_browser_ie11 .o_paella_wrapper .o_paella_error{display:block}.o_paella_wrapper iframe{width:100%;height:400px}@media (max-width: 768px){.o_paella_wrapper iframe{height:300px}}.o_paella_wrapper .o_paella_error{display:none}.o_curriculum_el_listing tr.o_curriculum_element_inactive,.o_curriculum_el_listing tr.o_curriculum_element_inactive td,.o_curriculum_el_listing tr.o_curriculum_element_inactive td span,.o_curriculum_el_listing tr.o_curriculum_element_inactive td a{color:#777}.o_curriculum_el_listing tr.o_curriculum_element_unfiltered,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td span,.o_curriculum_el_listing tr.o_curriculum_element_unfiltered td a{color:#aaa}.o_curriculum_el_listing tr.o_curriculum_element_deleted,.o_curriculum_el_listing tr.o_curriculum_element_deleted td,.o_curriculum_el_listing tr.o_curriculum_element_deleted td span,.o_curriculum_el_listing tr.o_curriculum_element_deleted td a{color:#777;text-decoration:line-through}.o_curriculumtable tr.o_curriculum_element_l0 td:nth-thild(first){padding-left:0px}.o_curriculumtable tr.o_curriculum_element_l1 td:nth-thild(first){padding-left:15px}.o_curriculumtable tr.o_curriculum_element_l2 td:nth-thild(first){padding-left:30px}.o_curriculumtable tr.o_curriculum_element_l3 td:nth-thild(first){padding-left:45px}.o_curriculumtable tr.o_curriculum_element_l4 td:nth-thild(first){padding-left:60px}.o_curriculumtable tr.o_curriculum_element_l5 td:nth-thild(first){padding-left:75px}.o_curriculumtable tr.o_curriculum_element_l6 td:nth-thild(first){padding-left:90px}.o_curriculumtable tr.o_curriculum_element_l7 td:nth-thild(first){padding-left:105px}.o_curriculumtable tr.o_curriculum_element_l8 td:nth-thild(first){padding-left:120px}.o_curriculumtable tr.o_curriculum_element_l9 td:nth-thild(first){padding-left:135px}.o_curriculumtable tr.o_curriculum_element_l10 td:nth-thild(first){padding-left:150px}.o_curriculumtable tr.o_curriculum_element_l11 td:nth-thild(first){padding-left:165px}.o_curriculumtable tr.o_curriculum_element_inactive,.o_curriculumtable tr.o_curriculum_element_inactive td,.o_curriculumtable tr.o_curriculum_element_inactive td span{color:#777}.o_curriculumtable tr.o_curriculum_element_deleted,.o_curriculumtable tr.o_curriculum_element_deleted td,.o_curriculumtable tr.o_curriculum_element_deleted td span{color:#777;text-decoration:line-through}.o_curriculumtable.o_rendertype_custom .container-fluid{padding-left:0;padding-right:0}.o_curriculumtable.o_rendertype_custom .o_table_row{position:relative;vertical-align:top;margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row:before,.o_curriculumtable.o_rendertype_custom .o_table_row:after{content:" ";display:table}.o_curriculumtable.o_rendertype_custom .o_table_row:after{clear:both}.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{background:none;border:none;position:relative}.o_curriculumtable.o_rendertype_custom .o_table_row .o_ext_id{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_hierarchy_info{display:none;position:absolute;top:0;right:30px;font-size:70%;z-index:5;background:gold}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_title{margin-top:0;margin-bottom:0;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_title small{white-space:nowrap}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars{padding-left:6px;color:#777}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle.o_active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars.o_active{color:#3c763d}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_lifecycle.o_active:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_calendars.o_active:hover{color:#2b542c}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_desc{padding:6px 6px 16px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_empty{font-style:italic;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{position:relative;padding-left:132px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:50px;padding-left:87px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_visual{left:0;border:none;background-color:#fff;max-height:80px;max-width:120px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_author,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_location,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_meta .o_lifecycle{color:#3c763d}.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state{position:absolute;right:0;bottom:30px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_failed{font-weight:normal}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_state,.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_score{display:inline-block}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_state+.o_score:before{content:', '}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion{display:inline-block;min-width:89px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion .progress{height:14px;margin-bottom:-2px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state .o_completion .progress-bar{font-size:10px;line-height:unset}.o_curriculumtable.o_rendertype_custom .o_table_row .o_bookmark{position:absolute;top:-1px;right:2px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access{position:absolute;bottom:0;right:0;overflow:hidden;width:180px;height:30px}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details{position:absolute;display:block;bottom:0;width:90px;height:30px;line-height:30px;text-align:center}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start{right:0;color:#fff;background-color:#209d9e;border-color:#1c8889}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.dropdown-toggle{background-image:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.disabled.active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled],.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled]:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start[disabled].active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:hover,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start:active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start.active{background-color:#209d9e;border-color:#1c8889}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_start .badge{color:#209d9e;background-color:#fff}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details{right:90px;color:#fff;background-color:#a6a6a6;border-color:#999}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{color:#fff;background-color:#8d8d8d;border-color:#7b7b7b}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active,.open>.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.dropdown-toggle{background-image:none}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.disabled.active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled],.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:hover,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].focus,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled]:active,.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details[disabled].active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:hover,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.focus,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details:active,fieldset[disabled] .o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details.active{background-color:#a6a6a6;border-color:#999}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access .o_details .badge{color:#a6a6a6;background-color:#fff}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row .o_author,.o_curriculumtable.o_rendertype_custom .o_table_row .o_bookmark,.o_curriculumtable.o_rendertype_custom .o_table_row .o_lifecycle,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_entry_desc,.o_curriculumtable.o_rendertype_custom .o_table_row .o_curriculum_element_desc,.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state,.o_curriculumtable.o_rendertype_custom .o_table_row .o_details{display:none}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_row_inner_wrapper{background:#f6f6f6;border:1px solid #eee}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_element_title{background:transparent;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l0 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_element_title{background:#ebebeb;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l1 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l2 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_element_l3 .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry{display:inline-block;width:50%;border-right:12px solid transparent;margin-top:0 !important}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_repository_entry .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_mixed_element .o_curriculum_entry_title{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_row_inner_wrapper{background:#f6f6f6;border:1px solid #eee}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_element_title{background:transparent;padding:12px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_program .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_element_title{background:#ebebeb;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_calendars{padding:6px 6px 12px 6px;background:#ebebeb}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_semester .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{background:#f6f6f6;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{background:#f6f6f6;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_module .o_curriculum_entry{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{margin:10px 0 5px 0}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{background:none;border:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_element_title{background:transparent;padding:12px 6px 6px 6px}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_lifecycle{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_calendars{padding:6px 6px 12px 6px;background:transparent}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_element_desc{display:none}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{display:inline-block;width:50%;border-right:12px solid transparent}@media (max-width: 991px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course{display:block;width:100%;border-right:0 !important}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course.o_with_multi_repository_entries{display:block;width:100%;border-right:0 !important}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{background:none;min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_row_inner_wrapper{min-height:50px}}.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_entry{min-height:80px}@media (max-width: 767px){.o_curriculumtable.o_rendertype_custom .o_table_row.o_curriculum_course .o_curriculum_entry{min-height:50px}}@media print{.o_curriculumtable.o_rendertype_custom .o_table_row .o_user_state{position:relative;bottom:0}.o_curriculumtable.o_rendertype_custom .o_table_row .o_access{display:none}}table.table.o_qti_item_kprim>thead>tr>th,table.table.o_qti_item_kprim>tbody>tr>td{border:none}td.o_qti_item_kprim_input,th.o_qti_item_kprim_input{text-align:center}td.o_qti_item_kprim_input .radio,th.o_qti_item_kprim_input .radio{display:inline}td.o_qti_item_kprim_text{width:80%}div.o_qti_menu_section,div.o_qti_menu_section_clickable,div.o_qti_menu_section_active{margin-top:10px}div.o_qti_menu_item a,div.o_qti_menu_section a{text-decoration:none}div.o_qti_menu_item{padding:.1em}div.o_qti_menu_item_active{padding:.1em;font-weight:bold}div.o_qti_item_itemfeedback{background-color:#ffffff;border-color:#000000}div.o_qti_item_choice_option_flow{display:inline-block;padding:.5em;border:1px solid transparent}.d3chart .bar_green{fill:#78be20}.d3chart .bar_red{fill:#d6001c}.d3chart .bar_grey{fill:lightgrey}.d3chart circle.bubble_green{fill:#78be20}div.o_qti_statistics ul{list-style-type:none;padding:0;margin:0;font-size:90%}div.o_qti_statistics ul strong{font-weight:normal}div.o_qti_statistics ul li{padding-left:48px;margin-left:0;margin-bottom:10px}div.o_qti_statistics ul li.o_qti_statistics-ncorrect:before{font-size:125%;content:'\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-correct:before{font-size:125%;content:'\2713\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kplus:before{font-size:125%;content:'\2713\00A0\2A2F\00A0\00A0'}div.o_qti_statistics ul li.o_qti_statistics-kminus:before{font-size:125%;content:'\2A2F\00A0\2713\00A0\00A0'}div.o_qti_statistics ul li img{vertical-align:top}div.o_qti_statistics table.o_qti_statistics_figures tr{float:left}div.o_qti_statistics table.o_qti_statistics_figures tr:nth-child(2n+1){clear:left;padding-right:20px}div.o_qti_statistics table.o_qti_statistics_figures td{width:200px;padding-left:0;vertical-align:bottom}div.o_qti_statistics table.o_qti_statistics_figures td+td{width:100px}div.o_qti_statistics .o_qti_statistics_answer{background:#F5F5F5;padding:1px 2px;width:90%}div.o_qti_statistics div.o_qti_statistics_legend{padding-top:10px;width:470px;border:1px solid #ddd;border-radius:4px}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_green{background-color:#9dd53a}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_red{background-color:#f85032}div.o_qti_statistics div.o_qti_statistics_legend ul li .bar_grey{background-color:lightgrey}div.o_qti_metadatas .panel-body{border-top:none}.o_qti_menu_item_attempts:after,.o_qti_menu_item_attempts_marked:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.o_qti_menu_item_attempts:after{content:"ï„"}.o_qti_menu_item_attempts_marked:after{content:"";color:#209d9e}.o_qti_print div.o_qti_statistics{width:680px}@media print{div.o_qti_statistics{width:680px}}ul.sessionControl{list-style:none;margin:1em;text-align:center}ul.sessionControl li{display:inline;padding:0.2em}.association{margin:20px 20px 20px 40px;background:transparent url("../light/images/association_bg.png") repeat-x center center}.o_associate_item{padding:5px;margin:0 15px 10px 0;border:2px solid #999}.o_associate_item.oo-selected{border:2px solid #209d9e}.o_associate_item.oo-choosed{border:none !important}.o_associate_item.oo-drag{border:2px solid #209d9e !important}.association_box{border:3px dotted #999}.association_box.oo-filled{border:3px solid #999}.association_box{background-color:white}.prompt{font-weight:bold}.sketch{position:relative}#tmp_canvas{position:absolute;left:0px;right:0;bottom:0;top:0;cursor:crosshair}.sketch,.sketch>canvas{touch-action:none;user-drag:none;-webkit-user-drag:none;user-select:none;-moz-user-select:none;-webkit-user-drag:none;-webkit-user-select:none;-ms-user-select:none}#colors .black .o_icon:before{color:#000000}#colors .blue .o_icon:before{color:#0000FF}#colors .green .o_icon:before{color:#008000}#colors .yellow .o_icon:before{color:#FFFF00}#colors .red .o_icon:before{color:#FF0000}#colors .purple .o_icon:before{color:#800080}.o_gap_item{padding:5px;margin:5px;background-repeat:no-repeat;background-position:center center}.o_gap_item.oo-choosed{position:relative;left:auto;top:auto;padding:3px;margin:0}.o_gap_item.oo-selected{border:3px solid #209d9e}.o_item_container_help,.o_items_container_help{font-size:90%;font-style:italic;color:#777;padding:5px}.items_container{padding:15px}.items_container .o_item{float:left}#o_qti_hotspots_edit{min-height:100px;min-width:400px;background-repeat:no-repeat}#o_qti_hotspots_edit.o_qti_hotspot-standard .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-standard .o_draw_rectangle{background-color:rgba(255,255,255,0.5);border-color:#6E6E6E}#o_qti_hotspots_edit.o_qti_hotspot-standard .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-standard .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(45,0,255,0.5);border-color:#0000ff}#o_qti_hotspots_edit.o_qti_hotspot-light .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-light .o_draw_rectangle{background-color:rgba(221,221,221,0);border-color:#7E7E7E}#o_qti_hotspots_edit.o_qti_hotspot-light .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-light .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(51,122,183,0.05);border-color:#337ab7}#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_draw_rectangle{background-color:rgba(110,110,110,0.5);border-color:#3E3E3E}#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-inverted .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(222,222,222,0.2);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-green .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-green .o_draw_rectangle{background-color:rgba(142,142,142,0.25);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-green .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-green .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(134,195,81,0.5);border-color:#518b33}#o_qti_hotspots_edit.o_qti_hotspot-purple .o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-purple .o_draw_rectangle{background-color:rgba(142,142,142,0.33);border-color:#CECECE}#o_qti_hotspots_edit.o_qti_hotspot-purple .o_qti_hotspot_correct.o_draw_circle,#o_qti_hotspots_edit.o_qti_hotspot-purple .o_qti_hotspot_correct.o_draw_rectangle{background-color:rgba(234,168,255,0.5);border-color:#ab47cb}div.hotspotInteraction{overflow-x:auto}img.o_hotspot_responsive[usemap]{max-width:100%;width:auto;height:auto}.form-inline.o_qti_gaptext_add_first_alternative,.o_qti_gaptext_add_first_alternative.o_navbar-form{padding:9px 0 3px 0}.form-inline.o_qti_gaptext_add_alternative,.o_qti_gaptext_add_alternative.o_navbar-form{margin-bottom:3px}.o_qti_gaptext_alternatives{background-color:#eee;color:#555;border:1px solid #eee;border-radius:4px;padding:2px 5px}span.o_qti_gaptext_score_alternative{padding-left:2em;color:#555}.o_qti_item_body .extendedTextInteraction{margin:15px 0}.o_qti_item_body .extendedTextInteraction textarea{resize:vertical !important;font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_qti_item_body .extendedTextInteraction pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.o_qti_item_body .extendedTextInteraction .o_qti_essay_last_save{padding:2px 2px;font-style:italic;font-size:90%;text-align:right}.extendedTextInteraction div.form-control.textarea_disabled{white-space:pre-wrap;height:auto;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#555 !important}#o_qti_run_title{margin:0 15px 0.5em 15px}#o_qti_run_title h3{margin:15px 0 0 0}#o_qti_run_infos{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:10px 0;margin:0 15px 1em 15px}#o_qti_run_infos .progress{background-color:#eee}#o_qti_run_infos #o_qti_scoreinfo .progress-bar{background-color:#209d9e}.progress-striped #o_qti_run_infos #o_qti_scoreinfo .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}#o_qti_run_infos #o_qti_questioninfo .progress-bar{background-color:#209d9e}.progress-striped #o_qti_run_infos #o_qti_questioninfo .progress-bar{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}#o_qti_run_infos #o_qti_run_scoreinfo,#o_qti_run_infos #o_qti_run_scoreprogress{white-space:nowrap}#o_main_wrapper #o_main_container #o_qti_run #o_main_left #o_main_left_toggle{top:50px}#o_qti_results_infos{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:10px 0;margin:0 0 1em 0}#o_qti_results_infos .progress{background-color:#eee}#o_qti_results_infos #o_qti_run_scoreinfo,#o_qti_results_infos #o_qti_run_scoreprogress{white-space:nowrap}#o_qti_assessment_test_timer{border:1px solid #e7e7e7;border-radius:4px;padding:10px;margin:0 15px 1em 15px}#o_qti_assessment_test_timer.o_10_minutes{background-color:#fcf8e3}#o_qti_assessment_test_timer.o_5_minutes{background-color:#f2dede}#o_qti_assessment_test_timer.o_panic{background-color:#ce8383}#o_qti_assessment_test_timer.o_15_seconds{background-color:#fcf8e3}#o_qti_assessment_test_timer.o_panic{background-color:#f2dede}#o_qti_assessment_test_timer .o_qti_times_up{padding-left:2em;font-weight:bold}#o_qti_assessment_test_timer .o_qti_times_message{padding-left:2em;font-weight:bold}.o_draw_circle.o_qti_hotspot_correct,.o_draw_rectangle.o_qti_hotspot_correct{background-color:rgba(229,255,204,0.6)}#width_range_ui,#opacity_range_ui{width:120px}.o_slider_width_range,.o_slider_opacity_range{margin:3px 10px 0 0}.o_qti_hotspot_label{padding-left:48%}.o_assessmentsection_rubrics_wrapper{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:4px;padding:5px 10px;margin:0 0 0.5em 0}.o_assessmentsection_rubrics_correction_wrapper{background:#f8f8f8;border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;padding:5px 10px}.o_info.o_assessmentsection_rubrics{margin:5px -10px;position:relative;display:block}.o_info.o_assessmentsection_rubrics.o_hide{display:none}.o_info.o_assessmentsection_rubrics a.o_hide{position:absolute;bottom:0.5em;right:1em}.o_assessmentitem h1{margin-bottom:0}.o_assessmentitem div.badResponse,.o_assessmentitem span.badResponse{color:#d6001c;font-weight:bold}.o_assessmentitem input.badResponse{border:1px solid #d6001c}.o_assessmentitem .infoControl input{margin-right:0.5em}.o_assessmentitem .infoControl .infoControlContent{display:none}.o_assessmentitem .sliderInteraction{margin:1em}.o_assessmentitem .sliderInteraction .sliderVertical .sliderValue{margin:1em 0}.o_assessmentitem .sliderInteraction .sliderVertical .sliderWidget{height:200px}.o_assessmentitem .sliderInteraction .sliderHorizontal .sliderValue{text-align:center}.o_assessmentitem div.orderInteraction div.highlight{border:1px solid #d6001c}.o_assessmentitem div.orderInteraction div.box.vertical{width:50%;float:left;position:relative;padding:0;margin-top:5px}.o_assessmentitem div.orderInteraction div.box.vertical ul{min-height:200px}.o_assessmentitem div.orderInteraction div.box.horizontal ul{min-height:50px;width:100%}.o_assessmentitem div.orderInteraction div.box.source{padding:5px 10px;border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8}.o_assessmentitem div.orderInteraction div.box.source.horizontal{padding:5px 10px 15px 10px}.o_assessmentitem div.orderInteraction div.box.target ul{border:2px solid #a6a6a6;border-radius:4px;background:#d9edf7}.o_assessmentitem div.orderInteraction div.box.target ul.oo-accepted{border-color:#666}.o_assessmentitem div.orderInteraction div.box.target.vertical{padding:6px 0 0 10px}.o_assessmentitem div.orderInteraction div.box.target.vertical ul{padding:10px}.o_assessmentitem div.orderInteraction div.box.target.horizontal{padding-top:10px}.o_assessmentitem div.orderInteraction div.box.target.horizontal ul{padding:10px 10px 0 10px}.o_assessmentitem div.orderInteraction div.box.horizontal ul li{float:left;width:auto;margin-right:10px;min-width:50px}.o_assessmentitem div.orderInteraction div.box span.info{color:#666;font-style:italic;font-size:smaller}.o_assessmentitem div.orderInteraction ul{list-style-type:none;margin:0;padding:0}.o_assessmentitem .hottext{position:relative;margin:-2px 0.15em -2px 0.15em;white-space:nowrap}.o_assessmentitem .hottext input{margin:0 3px 0 2px;position:absolute;top:0.1em;left:0.05em}.o_assessmentitem .hottext input+label{display:inline;padding:0 0.1em 0 1.2em;background:#f8f8f8;border:1px solid #e7e7e7;border-radius:2px;color:#2d2926;font-weight:normal;white-space:normal}.o_assessmentitem .hottext input:checked+label{color:#2d2926;background:#d9edf7;border:1px solid #bce8f1}.o_assessmentitem .gap{font-weight:bold;border:1px dashed #000}.o_assessmentitem .textEntryInteraction input,.o_assessmentitem .textEntryInteraction span.o_input_value{margin:-1px 2px;line-height:90%;vertical-align:middle;font-size:13.72px;line-height:1.5;border:1px solid #999;background:#fff;padding:1px 1px;color:#2d2926;max-width:100%}.o_assessmentitem .textEntryInteraction input:valid,.o_assessmentitem .textEntryInteraction input:disabled,.o_assessmentitem .textEntryInteraction input.o_input_value_wrapper,.o_assessmentitem .textEntryInteraction span.o_input_value:valid,.o_assessmentitem .textEntryInteraction span.o_input_value:disabled,.o_assessmentitem .textEntryInteraction span.o_input_value.o_input_value_wrapper{color:#2d2926;-webkit-text-fill-color:#2d2926;background:#d9edf7;border:1px solid #bce8f1}li.o_assessmentitem_order_item{padding:10px;margin-bottom:10px;border:2px dashed #999;border-radius:4px;background-color:#ffffff;background:#fcf8e3;list-style-type:none}li.o_assessmentitem_order_item:before,li.o_assessmentitem_order_item:after{content:" ";display:table}li.o_assessmentitem_order_item:after{clear:both}body>li.o_assessmentitem_order_item{display:block}.o_assessmentitem_wrapper .itemTitle{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:4px 4px 0 0;margin-top:0;margin-bottom:0;padding:5px 10px;line-height:1.5em;position:relative}.o_assessmentitem_wrapper .itemTitle .o_qti_item_max_score{position:absolute;left:49%}.o_assessmentitem_wrapper .o_qti_item_body{min-height:200px;margin:0;padding:5px 10px;border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;font-size:14px;line-height:1.8}.o_assessmentitem_wrapper .o_assessment_item_not_final.o_warning{margin:0}.o_assessmentitem_wrapper .modalFeedback h4:first-of-type,.o_assessmentitem_wrapper .modalFeedback .o_cal .fc-header-title h2:first-of-type,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback h2:first-of-type{padding-left:10px;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_correct_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_incorrect_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_info.o_empty_modal_feedback{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper{margin-bottom:0;margin-top:0}.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper h4,.o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessmentitem_wrapper .modalFeedback .o_togglebox_wrapper h2{border-left:1px solid #e7e7e7;border-right:1px solid #e7e7e7;padding-bottom:5px;margin-bottom:0}.o_assessmentitem_wrapper ul.o_testpartnavigation,.o_qti_menu_buttonstyle ul.o_testpartnavigation{list-style:none;padding:0;margin:0}.o_assessmentitem_wrapper li.o_assessmentitem,.o_qti_menu_buttonstyle li.o_assessmentitem{margin-bottom:2px}.o_assessmentitem_wrapper .o_assessmentitem_status,.o_qti_menu_buttonstyle .o_assessmentitem_status{float:right;display:block;padding:0.3em;margin-left:1em;border-radius:0.3em;border-width:1px;font-size:0.8em;line-height:1.2em;color:#fff}.o_assessmentitem_wrapper .o_assessmentitem_status.ended,.o_qti_menu_buttonstyle .o_assessmentitem_status.ended{background-color:#a6a6a6}.o_assessmentitem_wrapper .o_assessmentitem_status.invalid,.o_qti_menu_buttonstyle .o_assessmentitem_status.invalid{background-color:#d6001c}.o_assessmentitem_wrapper .o_assessmentitem_status.answered,.o_qti_menu_buttonstyle .o_assessmentitem_status.answered{background-color:#78be20}.o_assessmentitem_wrapper .o_assessmentitem_status.notAnswered,.o_qti_menu_buttonstyle .o_assessmentitem_status.notAnswered{background-color:#f2af40}.o_assessmentitem_wrapper .o_assessmentitem_status.notPresented,.o_qti_menu_buttonstyle .o_assessmentitem_status.notPresented{background-color:#ddd}.o_assessmentitem_wrapper .o_assessmentitem_status.review,.o_qti_menu_buttonstyle .o_assessmentitem_status.review{background-color:#a6a6a6}.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotAllowed,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewInvalid,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotAnswered,.o_assessmentitem_wrapper .o_assessmentitem_status.reviewNotSeen,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotAllowed,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewInvalid,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotAnswered,.o_qti_menu_buttonstyle .o_assessmentitem_status.reviewNotSeen{background-color:#a6a6a6;opacity:0.7}.o_assessmentitem_wrapper .o_assessmentitem_status i:before,.o_qti_menu_buttonstyle .o_assessmentitem_status i:before{color:#fff}.o_assessmentitem_controls{background:#f8f8f8;border:1px solid #e7e7e7;border-radius:0 0 4px 4px;margin-top:0;margin-bottom:16px;padding:5px 10px}.o_assessmentitem_controls button,.o_assessmentitem_controls a{margin-bottom:0}.o_assessmentitem_controls .o_sel_assessment_item_submit span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_next_question span:after{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï”";padding-left:0.5em}.o_assessmentitem_controls .o_sel_question_menu span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_end_testpart span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";padding-right:0.5em}.o_assessmentitem_controls .o_sel_back_test_feedback span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï“";padding-right:0.5em}.o_assessmentitem_controls .o_sel_show_solution span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„©";padding-right:0.5em}.o_assessmentitem_controls .o_sel_solution_hide span:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"ï„©";padding-right:0.5em}.o_assessmentitem_controls .o_sel_skip_question span:before,.o_assessmentitem_controls .o_sel_back_question span:before,.o_assessmentitem_controls .o_sel_retry_question span:before{padding-right:0.5em;margin-bottom:0}.o_assessmentitem_control_view_solution{background:#f8f8f8;border:1px solid #e7e7e7;margin:0;padding:5px 10px}.o_assessmentitem_scoring{background:#f8f8f8;border:1px solid #e7e7e7;border-bottom:0;border-radius:4px 4px 0 0;margin-top:0;margin-bottom:0;padding:5px 10px}.o_assessmentitem_scoring_buttons{background:#f8f8f8;border:1px solid #e7e7e7;border-top:0;border-radius:0 0 4px 4px;margin-top:0;margin-bottom:16px;padding:5px 10px}.o_assessmentitem_scoring_override_window{width:300px}.itemPrompt{margin:1.5em 0;font-style:italic;color:#666666}.o_qti_item_body{margin:1em 0}.o_sel_assessment_item_hint{margin-top:1em}.o_assessment_test_results .o_sel_assessment_item_hint{display:none}tr.choiceinteraction td.control{padding:0.5em}tr.choiceinteraction td.choiceInteraction{padding:0.5em}.choiceInteraction label{font-weight:normal}.choiceInteraction input+i{background-color:red}.choiceInteraction div.o_qti_item_choice_option_flow{display:inline-block;padding:.5em;border:1px solid transparent}.choiceInteraction div.o_qti_item_choice_option_flow label span{font-weight:normal}.choiceInteraction div.o_qti_item_choice_option_flow label span>p{display:inline-block}.choiceInteraction.choiceright table tr td.choiceInteraction{background-color:#e7e7e7;border-bottom:3px solid white}.matchInteraction.choiceright table tr td.o_qti_item_kprim_text{background-color:#e7e7e7;border-bottom:3px solid white}table.o_qti_item_kprim td.o_qti_item_kprim_input_correct{background-color:#d8f3b7}table.o_qti_item_kprim td.o_qti_item_kprim_input_wrong{background-color:#ffa3af}table.o_qti_item_kprim td.o_qti_item_kprim_input_correct,table.o_qti_item_kprim td.o_qti_item_kprim_input_wrong,table.o_qti_item_kprim th.o_qti_item_kprim_input_correct,table.o_qti_item_kprim th.o_qti_item_kprim_input_wrong{width:11%}table.o_qti_item_kprim td.o_qti_item_kprim_text,table.o_qti_item_kprim th.o_qti_item_kprim_text{width:88%}.matchInteraction input[type='text']{display:inline;width:auto}.matchInteraction div.bar_green{background-color:#78be20}.matchInteraction div.bar_red{background-color:#d6001c}.source-left,.target-left,.source-right,.target-right{width:50%;float:left;position:relative;padding:0;margin-top:5px}.o_match_dnd_sources{padding:10px 10px 0 10px;min-height:60px;border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8}.o_match_dnd_sources.oo-accepted{border-color:#666}.o_match_dnd_source{padding:10px;margin-bottom:10px;border:2px dashed #999;border-radius:4px;background-color:#ffffff;background:#fcf8e3;cursor:move;cursor:grab;cursor:-moz-grab;cursor:-webkit-grab}.o_match_dnd_source:before,.o_match_dnd_source:after{content:" ";display:table}.o_match_dnd_source:after{clear:both}.o_match_dnd_source.oo-selected{border:2px dashed #f2af40;background:#fae1b7}.o_match_dnd_source.oo-drag{border:2px dashed #f2af40 !important}.source-bottom .o_match_dnd_source,.source-top .o_match_dnd_source{margin:0 0 10px 0}.o_match_dnd_targets .oo-accepted{border:2px solid #666;border-radius:4px}.o_match_dnd_target{padding:10px 10px 0 10px;margin:0 0 10px 10px;border:2px solid #a6a6a6;border-radius:4px;background:#d9edf7}.o_match_dnd_target:before,.o_match_dnd_target:after{content:" ";display:table}.o_match_dnd_target:after{clear:both}.o_match_dnd_target .o_match_dnd_target_drop_zone{margin:0;padding:5px 0 0 15px;min-height:30px}.o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source{border:2px dashed #777}.target-bottom .o_match_dnd_target,.target-top .o_match_dnd_target{margin:0 0 10px 0}.target-bottom .o_match_dnd_target .o_match_dnd_target_drop_zone,.target-top .o_match_dnd_target .o_match_dnd_target_drop_zone{padding-left:0px}.target-bottom .o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source,.target-top .o_match_dnd_target .o_match_dnd_target_drop_zone .o_match_dnd_source{padding-left:15px}.table.o_match_true_false_edit th.o_sel_match_target_0,.table.o_match_true_false_edit th.o_sel_match_target_1,.table.o_match_true_false_edit th.o_sel_match_target_2{width:12%}.match_true_false input[type="checkbox"]{-webkit-appearance:radio;-moz-appearance:radio;-ms-appearance:radio;appearance:radio}.match_true_false .table>tbody>tr>td.o_match_true_false_unanswered,.match_true_false .table>tbody>tr>td.o_match_true_false_right,.match_true_false .table>tbody>tr>td.o_match_true_false_wrong{vertical-align:middle;width:11%}.match_true_false th.o_match_true_false_unanswered,.match_true_false th.o_match_true_false_right,.match_true_false th.o_match_true_false_wrong{width:11%}.match_true_false td.o_match_true_false_answer,.match_true_false th.o_match_true_false_answer{width:67%}.match_true_false td.o_match_true_false_unanswered{background-color:#fbfbfb}.match_true_false td.o_match_true_false_right{background-color:#d8f3b7}.match_true_false td.o_match_true_false_wrong{background-color:#ffa3af}.o_assessmentitem .mathEntryInteraction{border:1px solid #ddedfc;background-color:#edf1f6;background:linear-gradient(to top, #edf1f6 0%, #f6f9fb 100%);border-radius:0.4em;padding:1em;margin:0.5em 0}.o_assessmentitem .mathEntryInteraction .inputPanel{line-height:1em;text-align:left}.o_assessmentitem .mathEntryInteraction .inputPanel input{margin:0;padding:0}.o_assessmentitem .mathEntryInteraction .previewPanel{text-align:center}.o_assessmentitem .mathEntryInteraction.horizontal{min-height:5em;width:40em}.o_assessmentitem .mathEntryInteraction.horizontal .inputPanel{width:45%;float:left;margin:2em 0}.o_assessmentitem .mathEntryInteraction.horizontal .previewPanel{width:50%;margin-left:40%}.o_assessmentitem .mathEntryInteraction.vertical{min-height:6em}.o_assessmentitem .mathEntryInteraction.vertical .inputPanel{padding:0 5em}.o_assessmentitem .mathEntryInteraction.vertical .inputPanel:before{content:'Input Maths: '}.o_assessmentitem .mathEntryInteraction.vertical .previewPanel{margin-top:2em;min-height:4em}.o_assessmentitem div.upConversionAjaxControlMessage{width:auto;text-align:center;display:inline;padding:0.5em 0 0.5em 20px}.o_assessmentitem div.success{background:#78be20}.o_assessmentitem div.failure{background-color:#f2af40}.o_assessmentitem div.error{background-color:#d6001c}.o_assessmentitem div.upConversionAjaxControlPreview{margin:0.5em 0;font-size:110%}.o_assessmentitem table.inputHelp{border-collapse:collapse;width:100%;font-size:90%}.o_assessmentitem table.inputHelp th{border:1px solid #999999;padding:0.2em 0.5em;background-color:#cad8e5}.o_assessmentitem table.inputHelp td{color:#999999;border:1px solid #999999;padding:0.2em 0.5em}.o_assessmentitem table.inputHelp kbd{color:black;font-size:100%;line-height:100%}.o_assessmentitem table.inputHelp .longComma{margin-right:0.5em}.o_togglebox_wrapper #modal-correct-solution div.o_togglebox_content{background-color:#fcf8e3;border-color:#8a6d3b}.o_candidatecomment{padding:0;margin:2em 0 1em 0;border:none}.o_candidatecomment legend{font-size:110%;font-weight:bold;color:#777;margin-bottom:0;border-bottom:0}.o_candidatecomment div.o_item_container_help{margin:0;padding:0}.o_candidatecomment textarea{display:block;color:#777}.o_qti_menu_menustyle ul.o_testpartnavigation{list-style:none;padding:0;margin:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:0 1em 0.5em 1em;margin:0 0 0.5em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection header{margin:0 0 1em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection header div.rubric{font-style:italic}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentsection ul.o_testpartnavigation_inner{list-style:none;padding:0;margin:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem{padding:0.1em 0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a{color:#777;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a:hover,.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem a:focus{color:#333;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a{color:#209d9e;font-weight:bold;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a:hover,.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem.active a:focus{color:#177374;background-color:#eee;overflow-wrap:break-word}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem span{vertical-align:middle}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_status{display:inline;position:relative;left:-0.3em;background:transparent;border:0}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_status span{display:none}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts{float:right;display:block;padding:0.3em;border-radius:2px;background-color:#fafafa;color:#777;font-size:0.7em}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts.o_assessmentitem_attempts_limited{color:#f2af40}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_attempts.o_assessmentitem_attempts_nomore{color:#a6a6a6}.o_qti_menu_menustyle ul.o_testpartnavigation li.o_assessmentitem .o_assessmentitem_marks{float:right;display:inline-block;font-size:0.8em;position:relative;top:0.3em;right:-0.5em}.o_qti_menu_menustyle ul.o_testpartnavigation .o_assessmentitem .questionTitle{margin-right:1em;overflow-wrap:break-word}.testFeedback h1:first-of-type{margin-top:0}ul.testPartDrilldown{list-style:none;padding:0;margin:0}ul.testPartDrilldown li.o_assessmentsection{border:1px solid #e7e7e7;border-radius:4px;background:#f8f8f8;padding:0 1em 0.5em 1em}ul.testPartDrilldown li.o_assessmentsection header{margin:0 0 1em 0}ul.testPartDrilldown li.o_assessmentsection header div.rubric{font-style:italic}ul.testPartDrilldown li.o_assessmentsection ul.testPartDrilldownInner{list-style:none;padding:0;margin:0}ul.testPartDrilldown li.currentItem{border:1px solid #e7e7e7;border-radius:0.5em;padding:0 1em;margin-top:1em}.testItemControl{margin-top:0.5em}ul.o_qti_statistics_answers li span.o_qti_statistics_answer{background:#F5F5F5;padding:1px 3px;width:90%;display:inline-block}.o_assessment_test_results .o_qti_assessment_title{border-bottom:1px solid #ddd}.o_assessment_test_results table th{width:40%}.o_assessment_test_results .o_qti_sectionsummary .o_qti_section{text-align:center}.o_assessment_test_results .o_qti_sectionsummary .o_qti_section .o_qti_section_sublisting{padding:0 10%;min-height:3em}.o_assessment_test_results .o_qti_sections .o_qti_section{margin-top:40px}.o_assessment_test_results .o_qti_sections .o_qti_section h3{margin-bottom:20px}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_id{display:none}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment{margin:0;padding:5px 10px 10px 5px;border-top:1px solid #ddd;broder-bottom:1px solid #ddd}.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h4,.o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_assessment_test_results .o_qti_sections .o_qti_section .o_qti_items .o_qti_item .o_qti_item_comment h2{font-size:100%;font-weight:bold;color:inherit}.o_assessment_test_results .o_qti_to_overview{text-align:right}.o_sel_assessment_item_feedbacks{min-height:250px}.o_alternative_question_types h4 select,.o_alternative_question_types .o_cal .fc-header-title h2 select,.o_cal .fc-header-title .o_alternative_question_types h2 select{display:inline-block;width:auto}@media print{canvas,div.hotspotInteraction>div>div{-webkit-print-color-adjust:exact;color-adjust:exact}.choiceInteraction label{font-weight:normal}.choiceinteraction input[type="radio"][disabled],.choiceinteraction input[type="checkbox"][disabled],.matchInteraction input[type="radio"][disabled],.matchInteraction input[type="checkbox"][disabled]{display:none}.choiceinteraction input+i,.matchInteraction input+i{font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.choiceInteraction input[type="radio"][disabled]+i:before,.matchInteraction input[type="radio"][disabled]+i:before,.matchInteraction.match_true_false input[type="checkbox"][disabled]+i:before{content:"ï„Œ"}.choiceInteraction input[type="radio"][disabled]:checked+i:before,.matchInteraction input[type="radio"][disabled]:checked+i:before,.matchInteraction.match_true_false input[type="checkbox"][disabled]:checked+i:before{content:""}.choiceInteraction input[type="checkbox"][disabled]+i:before,.matchInteraction input[type="checkbox"][disabled]+i:before{content:"ï‚–"}.choiceInteraction input[type="checkbox"][disabled]:checked+i:before,.matchInteraction input[type="checkbox"][disabled]:checked+i:before{content:"ï†"}}#o_dev_tool #o_dev_tool_mode{width:1em;height:1em;float:left;border:1px solid #000;margin-right:5px}a.o_dev{position:absolute;left:0;top:0;z-index:4000;background:#f0ad4e;border:1px solid #d59645;border-top:none;border-left:none;border-radius:0 0 4px 0;color:#fff}a.o_dev:hover{color:#d9534f}.o_dev_w{margin:1px}.o_dev_w .o_dev_h{color:#000;font-size:8px;line-height:10px;margin:0}.o_dev_w .o_dev_h span{background:#f4c37d;border:1px solid #f0ad4e;border-bottom:0}.o_dev_w .o_dev_c{position:relative;border:1px dotted #eee}.o_dev_w .o_dev_c .o_dev_i{position:absolute;top:0px;left:24px;height:auto;width:auto;padding:5px;border:1px solid black;display:none;margin:0px;z-index:999;font-size:11px;background-color:#BBF}.o_dev_w.o_dev_m>.o_dev_c{border:1px solid #f0ad4e;margin:0px;background-color:#f8e9d4}.o_wikimod_nav{margin-right:20px}.o_wikimod_nav .o_noti{margin:0}.o_wikimod_nav .o_portfolio_collector{position:relative;top:-5px}.o_wikimod_editform_wrapper{margin-top:30px}.o_wiki-file-deleted{text-decoration:line-through}div.o_wiki_wrapper a.wikiimg{text-decoration:none;color:inherit;font-weight:inherit}div.o_wiki_wrapper div.imgcaption{padding:0.3em 0em 0.2em 0.3em}div.o_wiki_wrapper div.imgleft{clear:left;float:left;margin:0.3em 0.3em 0.3em 0em}div.o_wiki_wrapper div.imgright{clear:right;float:right;margin:0.3em 0em 0.3em 0.3em}div.o_wiki_wrapper div.imgcenter{clear:both;overflow:hidden;text-align:center;margin:0.3em 0em 0.3em 0em}div.o_wiki_wrapper div.imgthumb{border:1px solid #bbbbbb;padding:0.3em}div.o_wiki_wrapper table.gallery{border:1px solid #ccc;margin:2px;padding:2px;background-color:white}div.o_wiki_wrapper table.gallery tr{vertical-align:middle}div.o_wiki_wrapper table.gallery td{background-color:#f9f9f9;border:solid 2px white;text-align:center;vertical-align:middle;width:150px}div.o_wiki_wrapper img.gallery{border:1px solid #bbbbbb;padding:0.3em}div.o_wiki_wrapper a.edit{font-style:italic;color:red}div.o_wiki_wrapper a.externallink:before{padding-right:2px}div.o_wiki_wrapper a.externallink:before:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-right:0.5em;content:"ï‚Ž"}.o_ep_icon_map:before{content:""}.o_ep_icon_collection:before{content:""}.o_ep_icon_page:before{content:""}.o_ep_icon_struct:before{content:""}.o_ep_icon_liveblog:before{content:"ï‚¡"}.o_artefact_closed:before{content:""}.o_portfolio_toc .o_ep_link{float:right;margin-right:0px}.o_portfolio_toc .o_ep_commentlink{float:right;margin-right:10%}.o_portfolio_toc li.level1{font-size:1.2em;margin:1.2em 0 0.2em 0;border-bottom:1px solid #ddd}.o_portfolio_toc li.level2{padding-left:20px;font-size:1.1em;border-bottom:1px dotted #ddd}.o_portfolio_toc li.level3{padding-left:40px}.o_eportfolio_page .o_eportfolio_structure>h5{border-bottom:1px solid #ddd;margin-top:1.2em}.o_eportfolio_maps .panel{font-family:'Century Gothic', 'Apple Gothic', sans-serif;box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .panel-heading{padding:5px 10px}.o_eportfolio_maps h4,.o_eportfolio_maps .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps h2{padding:11px 15px;background:rgba(255,255,230,0.7) none;border-radius:6px}.o_eportfolio_maps .table>tbody>tr>td{border-top:none}.o_eportfolio_maps .panel-body{border-top:none}.o_eportfolio_maps .panel>.panel-body+.table{border-top:none}.panel-footer .o_ep_options{display:inline-block}.o_eportfolio_map{padding:0 20px 2px 3px;border-radius:6px 10px 6px 0;font-family:'Century Gothic', 'Apple Gothic', sans-serif}.o_map_header{padding-left:5px}.o_eportfolio_map ul.nav-tabs li:not(.active) a{background-color:rgba(240,240,240,0.7);border-radius:4px 4px 0 0}.o_eportfolio_edit{border-radius:4px 4px 0 0}.o_ep_actualpage,.o_eportfolio_edit{padding:15px;background-color:#fff}.o_ep_content{margin-top:15px}.o_ep_filter .o_date.form-inline .form-group,.o_ep_filter .o_date.o_navbar-form .form-group{margin-left:8px}.o_eportfolio_share_policy_wrapper{border:1px solid #ddd;border-radius:4px}.o_eportfolio_share_header{padding:10px 15px;border-bottom:1px solid #ddd;background-color:#f5f5f5}.o_eportfolio_share_policy{padding:10px 15px}.o_map-default{background:#fafafa;background:#fafafa -webkit-gradient(linear, 37% 20%, 53% 100%, from(#fafafa), to(#efefef));background:#fafafa -moz-linear-gradient(43% 71% 101deg, #efefef, #fafafa);background:#fafafa -o-linear-gradient(#fafafa, #efefef);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#fafafa', EndColorStr='#efefef');border:1px solid #efefef;border-left:3px solid rgba(188,188,188,0.8)}.o_eportfolio_maps .o_map-default h4,.o_eportfolio_maps .o_map-default .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-default h2{color:#444;background:none}.o_eportfolio_maps .o_map-default .panel-body,.o_eportfolio_maps .o_map-default td,.o_eportfolio_maps .o_map-default a{color:#000}.o_map-comic{background:#a2c3e8 none;font-family:'Comic Sans MS', 'Comic Sans', fantasy;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_map-leather{background-color:#957352;background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(248,248,248,0.7)), color-stop(100%, rgba(193,193,193,0.5))),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-webkit-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-moz-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-ms-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:-o-linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");background-image:linear-gradient(top, rgba(248,248,248,0.7), rgba(193,193,193,0.5)),url("../light/images/portfolio/white-leather-tile.jpg");font-family:Palatino, Georgia, serif;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-leather h4,.o_eportfolio_maps .o_map-leather .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-leather h2{background:rgba(243,230,225,0.3) none}.o_eportfolio_maps .o_map-leather .panel-body,.o_eportfolio_maps .o_map-leather td{color:#333}.o_eportfolio_maps .o_map-leather a{color:#fad9a4}.o_eportfolio_map.o_map-leather .o_map_header h4,.o_eportfolio_map.o_map-leather .o_map_header .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_map.o_map-leather .o_map_header h2,.o_eportfolio_map.o_map-leather .o_map_header p,.o_eportfolio_map.o_map-leather .o_map_header a,.o_eportfolio_map.o_map-leather .o_map_header span,.o_eportfolio_map.o_map-leather .o_map_header label{color:#333}.o_map-epmst-green{background-color:#ECF69A;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-green h4,.o_eportfolio_maps .o_map-epmst-green .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green h2{color:#444}.o_eportfolio_maps .o_map-epmst-green .panel-body,.o_eportfolio_maps .o_map-epmst-green td,.o_eportfolio_maps .o_map-epmst-green a{color:#000}.o_map-epmst-green2{background:#99E44D;background:#99E44D -webkit-gradient(linear, 37% 20%, 53% 100%, from(#99E44D), to(#CBF1A5));background:#99E44D -moz-linear-gradient(43% 71% 101deg, #CBF1A5, #99E44D);background:#99E44D -o-linear-gradient(#99E44D, #CBF1A5);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#99E44D', EndColorStr='#CBF1A5');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green2 h4,.o_eportfolio_maps .o_map-epmst-green2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green2 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green2 .panel-body,.o_eportfolio_maps .o_map-epmst-green2 td,.o_eportfolio_maps .o_map-epmst-green2 a{color:#000}.o_map-epmst-green3{background:#DFF0C1;background:#DFF0C1 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#DFF0C1), to(#A0D346));background:#DFF0C1 -moz-linear-gradient(43% 71% 101deg, #A0D346, #DFF0C1);background:#DFF0C1 -o-linear-gradient(#DFF0C1, #A0D346);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#DFF0C1', EndColorStr='#A0D346');border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green3 h4,.o_eportfolio_maps .o_map-epmst-green3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green3 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green3 .panel-body,.o_eportfolio_maps .o_map-epmst-green3 td,.o_eportfolio_maps .o_map-epmst-green3 a{color:#000}.o_map-epmst-green4{background-color:#D7DBB5;border:1px solid #bbb;border-left:3px solid rgba(136,136,136,0.8)}.o_eportfolio_maps .o_map-epmst-green4 h4,.o_eportfolio_maps .o_map-epmst-green4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-green4 h2{color:#555}.o_eportfolio_maps .o_map-epmst-green4 .panel-body,.o_eportfolio_maps .o_map-epmst-green4 td,.o_eportfolio_maps .o_map-epmst-green4 a{color:#000}.o_map-epmst-red{background:#FFBA71;background:#FFBA71 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FFBA71), to(#FFBA99));background:#FFBA71 -moz-linear-gradient(43% 71% 101deg, #FFBA99, #FFBA71);background:#FFBA71 -o-linear-gradient(#FFBA71, #FFBA99);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFBA71', EndColorStr='#FFBA99');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red h4,.o_eportfolio_maps .o_map-epmst-red .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red h2{color:#444}.o_eportfolio_maps .o_map-epmst-red .panel-body,.o_eportfolio_maps .o_map-epmst-red td,.o_eportfolio_maps .o_map-epmst-red a{color:#000}.o_map-epmst-red2{background:#FF9772;background:#FF9772 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FF9772), to(#FF9780));background:#FF9772 -moz-linear-gradient(43% 71% 101deg, #FF9780, #FF9772);background:#FF9772 -o-linear-gradient(#FF9772, #FF9780);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FF9772', EndColorStr='#FF9780');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red2 h4,.o_eportfolio_maps .o_map-epmst-red2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red2 .panel-body,.o_eportfolio_maps .o_map-epmst-red2 td,.o_eportfolio_maps .o_map-epmst-red2 a{color:#000}.o_map-epmst-red3{background:#E8AFBB;background:#E8AFBB -webkit-gradient(linear, 37% 20%, 53% 100%, from(#E8AFBB), to(#E8AFA0));background:#E8AFBB -moz-linear-gradient(43% 71% 101deg, #E8AFA0, #E8AFBB);background:#E8AFBB -o-linear-gradient(#E8AFBB, #E8AFA0);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#E8AFBB', EndColorStr='#E8AFA0');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red3 h4,.o_eportfolio_maps .o_map-epmst-red3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red3 .panel-body,.o_eportfolio_maps .o_map-epmst-red3 td,.o_eportfolio_maps .o_map-epmst-red3 a{color:#000}.o_map-epmst-red4{background:#FFA800;background:#FFA800 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#FFA800), to(#FFAF00));background:#FFA800 -moz-linear-gradient(43% 71% 101deg, #FFAF00, #FFA800);background:#FFA800 -o-linear-gradient(#FFA800, #FFAF00);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFA800', EndColorStr='#FFAF00');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-red4 h4,.o_eportfolio_maps .o_map-epmst-red4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-red4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-red4 .panel-body,.o_eportfolio_maps .o_map-epmst-red4 td,.o_eportfolio_maps .o_map-epmst-red4 a{color:#000}.o_map-epmst-blue{background:#00D2F8;background:#00D2F8 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#00D2F8), to(#4A9EAD));background:#00D2F8 -moz-linear-gradient(43% 71% 101deg, #4A9EAD, #00D2F8);background:#00D2F8 -o-linear-gradient(#00D2F8, #4A9EAD);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#00D2F8', EndColorStr='#4A9EAD');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue h4,.o_eportfolio_maps .o_map-epmst-blue .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue .panel-body,.o_eportfolio_maps .o_map-epmst-blue td,.o_eportfolio_maps .o_map-epmst-blue a{color:#000}.o_map-epmst-blue2{background-color:#C4F6FF;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue2 h4,.o_eportfolio_maps .o_map-epmst-blue2 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue2 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue2 .panel-body,.o_eportfolio_maps .o_map-epmst-blue2 td,.o_eportfolio_maps .o_map-epmst-blue2 a{color:#000}.o_map-epmst-blue3{background-color:#B3E2F7;border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue3{box-shadow:3px 3px 4px rgba(20,20,20,0.4)}.o_eportfolio_maps .o_map-epmst-blue3 h4,.o_eportfolio_maps .o_map-epmst-blue3 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue3 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue3 .panel-body,.o_eportfolio_maps .o_map-epmst-blue3 td,.o_eportfolio_maps .o_map-epmst-blue3 a{color:#000}.o_map-epmst-blue4{background:#DEE7F7;background:#DEE7F7 -webkit-gradient(linear, 37% 20%, 53% 100%, from(#DEE7F7), to(#C1E9FD));background:#DEE7F7 -moz-linear-gradient(43% 71% 101deg, #C1E9FD, #DEE7F7);background:#DEE7F7 -o-linear-gradient(#DEE7F7, #C1E9FD);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#DEE7F7', EndColorStr='#C1E9FD');border:1px solid #888;border-left:3px solid rgba(85,85,85,0.8)}.o_eportfolio_maps .o_map-epmst-blue4 h4,.o_eportfolio_maps .o_map-epmst-blue4 .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_eportfolio_maps .o_map-epmst-blue4 h2{color:#444}.o_eportfolio_maps .o_map-epmst-blue4 .panel-body,.o_eportfolio_maps .o_map-epmst-blue4 td,.o_eportfolio_maps .o_map-epmst-blue4 a{color:#000}.o_portfolio div#o_main_toolbar.o_toolbar{margin-top:0px}.o_portfolio_home .o_portfolio_my li,.o_portfolio_home .o_portfolio_shared li{margin:2em 1em 2em 0;text-align:center;vertical-align:top}.o_portfolio_home .o_portfolio_my li.o_pf_trash_entry,.o_portfolio_home .o_portfolio_shared li.o_pf_trash_entry{border-right:5px dashed #eee;padding-right:2em}.o_portfolio_home .o_portfolio_my li a,.o_portfolio_home .o_portfolio_shared li a{display:block;width:9em}.o_portfolio_home .o_portfolio_my li a i,.o_portfolio_home .o_portfolio_shared li a i{display:inline-block;font-size:4em}.o_portfolio_home .o_portfolio_my li a span,.o_portfolio_home .o_portfolio_shared li a span{display:block;margin-top:0.8em}@media (max-width: 1199px){.o_portfolio_home .o_portfolio_my,.o_portfolio_home .o_portfolio_shared{font-size:90%}}@media (max-width: 767px){.o_portfolio_home .o_portfolio_my,.o_portfolio_home .o_portfolio_shared{font-size:80%}.o_portfolio_home .o_portfolio_my li.o_pf_trash_entry,.o_portfolio_home .o_portfolio_shared li.o_pf_trash_entry{border-right:none;padding-right:0}}.o_portfolio_home #o_my_last_binders .o_table_body{margin-top:0;padding-left:0}.o_portfolio_home #o_my_last_pages .o_table_body{margin-top:0}.o_portfolio_home #o_my_last_pages .o_table_toolbar{display:none}.o_portfolio_home #o_my_last_pages .o_portfolio_page{margin-top:0;margin-bottom:1em}.o_section_lead,.o_page_lead,.o_assignment_lead{padding:10px 10px;margin-bottom:10px;background-color:#f2f2f2;border-radius:3px;border:1px #d9d9d9 solid}.o_section_ended .o_section_lead{border-color:#ff3d56;background-color:#ff7083}.o_media.o_media_right,.o_media.o_media_right_large{float:right;margin-left:2em;margin-bottom:2em}.o_media.o_media_left,.o_media.o_media_left_large{float:left;margin-right:2em;margin-bottom:2em}.o_media.o_media_left,.o_media.o_media_right{max-height:200px;max-width:50%}.o_media.o_media_left img,.o_media.o_media_right img{max-height:200px}.o_media.o_media_right_large,.o_media.o_media_left_large{max-height:300px;max-width:75%}.o_media.o_media_right_large img,.o_media.o_media_left_large img{max-height:300px}.o_media img{border-radius:3px;border:1px #d9d9d9 solid;background:#fff;height:auto;width:auto}@media (max-width: 767px){.o_page_lead .o_media.o_media_right,.o_page_lead .o_media.o_media_right_large{margin-left:1em;margin-bottom:1em}.o_page_lead .o_media.o_media_left,.o_page_lead .o_media.o_media_left_large{margin-right:1em;margin-bottom:1em}.o_page_lead .o_media.o_media_left,.o_page_lead .o_media.o_media_right{max-height:120px;max-width:30%}.o_page_lead .o_media.o_media_left img,.o_page_lead .o_media.o_media_right img{max-height:120px}.o_page_lead .o_media.o_media_right_large,.o_page_lead .o_media.o_media_left_large{max-height:180px;max-width:50%}.o_page_lead .o_media.o_media_right_large img,.o_page_lead .o_media.o_media_left_large img{max-height:180px}}.o_page_lead{padding:20px}.o_page_lead h2{margin-bottom:5px}.o_page_lead .o_portfolio_page_meta{margin-bottom:5px}.o_page_lead .o_page_summary{font-size:18px}.o_page_lead .o_media.o_desc_empty{max-height:300px;text-align:center}.o_page_lead .o_media.o_desc_empty img{max-height:300px}.o_page_lead .o_portfolio_status_block{border-top:1px solid #d9d9d9;padding-top:1em;margin-bottom:-1em}.o_page_lead .o_edit_page_meta{padding-right:2em}.o_page_lead .o_portfolio_status{display:inline-block;padding-right:2em}.o_page_lead.o_block_imagebg .o_portfolio_status{padding:2px;background-color:rgba(255,255,255,0.8)}.o_portfolio_status_block p.o_section_ended{font-size:120%}.o_page_assignment{font-size:12px}.o_page_assignment.o_togglebox_wrapper div.o_togglebox_content{margin:10px 0 20px 0;padding:20px;border-left:3px solid #d6001c;background-color:#f2dede}.o_page_assignment .o_page_assignement_info{position:relative;left:-1em}.o_page_export .o_page_assignment .o_opener,.o_binder_export .o_page_assignment .o_opener{visibility:hidden}.o_page_export .o_page_assignment .o_closer,.o_binder_export .o_page_assignment .o_closer{display:none}.o_portfolio_listing.o_rendertype_custom .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry{position:relative;display:inline-block;height:230px;width:400px;vertical-align:top;margin-right:10px}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry ul{padding-left:2em}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry .oo-accepted{box-shadow:10px 10px 10px pink}.o_portfolio_listing.o_rendertype_custom .o_portfolio_entry .o_binder_tools a{color:#2d2926}.o_portfolio_listing.o_rendertype_custom .panel-imagebg .panel-body ul{margin:0;padding:0;list-style-type:none}.o_portfolio_listing.o_rendertype_custom .panel-imagebg .panel-body ul li{padding:2px}.o_binder.o_portfolio_assignments .panel-heading,.o_binder.o_portfolio_assignments .panel-body{border-left:3px solid #d6001c}.panel-default.o_portfolio_assignments .panel-heading,.panel-default.o_portfolio_assignments .panel-body{border-left:3px solid #d6001c}.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body{border-left:3px solid #d6001c}.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body .o_portfolio_page_meta_wrapper,.o_portfolio_page .o_portfolio_assignments .o_portfolio_page_body .o_portfolio_page_summary{padding-left:10px}.o_portfolio_page_summary .o_media.o_media_right,.o_portfolio_page_summary .o_media.o_media_right_large{margin-left:1em;margin-bottom:1em}.o_portfolio_page_summary .o_media.o_media_left,.o_portfolio_page_summary .o_media.o_media_left_large{margin-right:1em;margin-bottom:1em}.o_portfolio_page_summary .o_media.o_media_left,.o_portfolio_page_summary .o_media.o_media_right{max-height:150px}.o_portfolio_page_summary .o_media.o_media_left img,.o_portfolio_page_summary .o_media.o_media_right img{max-height:150px}.o_portfolio_page_summary .o_media.o_media_right_large,.o_portfolio_page_summary .o_media.o_media_left_large{max-height:230px}.o_portfolio_page_summary .o_media.o_media_right_large img,.o_portfolio_page_summary .o_media.o_media_left_large img{max-height:230px}.o_portfolio_categories .tag{font-size:80%;font-weight:normal}.o_portfolio_categories div,.o_portfolio_categories form{display:inline-block}.o_portfolio_categories_edit .bootstrap-tagsinput{margin-bottom:0;padding:0px 4px}.o_portfolio_last_modified+.o_portfolio_categories,.o_portfolio_page_meta+.o_portfolio_categories{margin-left:1em}.o_rendertype_classic .o_pf_page,.o_rendertype_classic .o_pf_assignment{padding-left:1em}.o_portfolio_timeline .o_timeline_up{text-align:center}.o_portfolio_timeline .o_timeline_down{text-align:center}.o_portfolio_timeline .axis path,.o_portfolio_timeline .axis line{fill:none;stroke:#000;shape-rendering:crispEdges}.o_portfolio_timeline .x.axis line,.o_portfolio_timeline .x.axis path{display:none}.o_portfolio_timeline path.o_timeline_curve{fill:none;stroke:#ccc;shape-rendering:crispEdges}.o_portfolio_timeline .y.axis .tick line,.o_portfolio_timeline .y.axis path.domain{stroke:#ddd}.o_portfolio_timeline text{fill:#888;stroke:none;font-size:10px}.o_portfolio_timeline .dot.o_pf_status_draft{fill:#f2af40}.o_portfolio_timeline .dot.o_pf_status_published{fill:#209d9e}.o_portfolio_timeline .dot.o_pf_status_inrevision{fill:#d6001c}.o_portfolio_timeline .dot.o_pf_status_closed{fill:#78be20}.o_portfolio_timeline .dot.o_pf_status_deleted{fill:#000}.o_pf_comments{margin-top:3em}.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.gu-mirror .o_cit,.gu-mirror .o_text,.gu-mirror .o_file{background-color:#f8f8f8;padding:10px;border-radius:10px}.o_pf_content .o_forum,.gu-mirror .o_forum{border:1px #f8f8f8 solid;padding:10px;border-radius:10px}.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_forum,.o_pf_content .o_wiki,.gu-mirror .o_efficiencystatement,.gu-mirror .o_feed,.gu-mirror .o_forum,.gu-mirror .o_wiki{background-color:#f8f8f8;padding:10px;border-radius:10px}.o_pf_content .o_efficiencystatement h3,.o_pf_content .o_efficiencystatement .h3,.o_pf_content .o_feed h3,.o_pf_content .o_feed .h3,.o_pf_content .o_forum h3,.o_pf_content .o_forum .h3,.o_pf_content .o_wiki h3,.o_pf_content .o_wiki .h3,.gu-mirror .o_efficiencystatement h3,.gu-mirror .o_efficiencystatement .h3,.gu-mirror .o_feed h3,.gu-mirror .o_feed .h3,.gu-mirror .o_forum h3,.gu-mirror .o_forum .h3,.gu-mirror .o_wiki h3,.gu-mirror .o_wiki .h3{font-size:14px}.o_pf_content .o_efficiencystatement .row,.o_pf_content .o_feed .row,.o_pf_content .o_forum .row,.o_pf_content .o_wiki .row,.gu-mirror .o_efficiencystatement .row,.gu-mirror .o_feed .row,.gu-mirror .o_forum .row,.gu-mirror .o_wiki .row{margin:0}.o_pf_content .o_efficiencystatement .o_block_with_datecomp,.o_pf_content .o_feed .o_block_with_datecomp,.o_pf_content .o_forum .o_block_with_datecomp,.o_pf_content .o_wiki .o_block_with_datecomp,.gu-mirror .o_efficiencystatement .o_block_with_datecomp,.gu-mirror .o_feed .o_block_with_datecomp,.gu-mirror .o_forum .o_block_with_datecomp,.gu-mirror .o_wiki .o_block_with_datecomp{margin-top:0.5em;margin-bottom:0}.o_pf_video_placeholder{background-color:#f8f8f8;border:1px solid #f8f8f8;border-radius:10px;display:table;min-width:400px;text-align:center;padding:40px 10px}.o_pf_video_placeholder i{display:table-cell;vertical-align:middle}.o_binder_page_listing .o_portfolio_page_links{background-color:#f8f8f8;border-radius:4px}.o_binder_page_listing .o_portfolio_page_links .o_portfolio_comment{float:right}.o_portfolio_toc .o_portfolio_toc_section{position:relative;padding-right:80px}.o_portfolio_toc .o_portfolio_section_meta{margin-top:-0.5em}.o_portfolio_toc .o_section_actions{position:absolute;top:-10px;right:0}.o_portfolio_toc .o_section_actions .o_section_move_up_and_down,.o_portfolio_toc .o_section_actions .o_section_dropdown{vertical-align:middle;display:inline-block}.o_portfolio_toc a.o_comment{color:#777;margin-left:1em}.o_portfolio_toc .o_section ul{padding-left:1em;line-height:24px}.o_portfolio div span.badge{padding:3px 7px}.o_portfolio div .o_portfolio_entry_draft{background-color:#f2af40}.o_portfolio div .o_portfolio_published{background-color:#209d9e}.o_portfolio div .o_portfolio_entry_revision{background-color:#d6001c}.o_portfolio div .o_portfolio_entry_closed{background-color:#78be20}.o_portfolio div .o_portfolio_entry_deleted{background-color:#000}.o_portfolio div .o_portfolio_entry_incoming{background-color:#78be20}.o_portfolio div .o_portfolio_entry_inprocess{background-color:#c8c8c8}.o_portfolio div .o_portfolio_entry_done{background-color:#78be20}.o_portfolio div .o_popover,.o_portfolio div .popover:hover{color:#2d2926;text-decoration:none}.o_portfolio_content .o_portfolio_toc.o_portfolio_toc_withtimeline{width:70%;float:left}.o_portfolio_content .o_portfolio_timeline{width:29%;float:right}.o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline,.o_portfolio_content .o_portfolio_entries.o_portfolio_withtimeline{width:70%;float:left}.o_portfolio_content .o_portfolio_timeline{width:29%;float:right}.o_portfolio_page{background:#fcfcfc;border:1px solid #eee;border-radius:4px}.o_portfolio_page_meta_wrapper{background-position:left top;background-repeat:no-repeat}.o_portfolio_rights table .o_portfolio_section td:first-child{padding-left:1.5em}.o_portfolio_rights table .o_portfolio_page td:first-child{padding-left:2.5em}.o_portfolio_publication table{padding-bottom:10px}.o_portfolio_publication table td{padding:5px 5px 5px 0}.o_portfolio_publication .o_portfolio_ac{font-size:90%}.o_portfolio_publication .o_portfolio_ac table td:nth-of-type(2){width:200px;white-space:nowrap}.o_portfolio_publication .o_portfolio_ac table td:nth-of-type(3){width:40px;white-space:nowrap}.o_portfolio_publication ul ul{margin-left:2em;margin-bottom:5px}.o_portfolio_publication ul li{background:#fbfbfb;padding:3px;margin-bottom:2px}.o_portfolio_publication ul li li{background:#f2f2f2}.o_portfolio_publication ul li li li{background:#eee}.o_portfolio_publication ul li li .table{margin-bottom:0px}@media (max-width: 767px){.o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline,.o_portfolio_content .o_portfolio_entries.o_portfolio_withtimeline{width:100%;float:none}.o_portfolio_content .o_sel_timeline_off,.o_portfolio_content .o_sel_timeline_on,.o_portfolio_content .o_portfolio_timeline{display:none}.o_portfolio_content .o_portfolio_content .o_portfolio_toc.o_portfolio_withtimeline{width:100%;float:none}}.o_portfolio_media_browser .o_portfolio_medias{position:relative;margin-bottom:20px;margin-top:20px}.o_portfolio_media_browser .o_portfolio_medias:before,.o_portfolio_media_browser .o_portfolio_medias:after{content:" ";display:table}.o_portfolio_media_browser .o_portfolio_medias:after{clear:both}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{position:relative;float:left;margin:0 20px 20px 0;width:180px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media:last-child{margin-right:0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{border:1px solid #209d9e;position:relative;height:180px;width:180px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual span.o_visual_not_available{width:100%;height:100%;display:block}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon span.o_visual_not_available,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after span.o_visual_not_available,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after span.o_visual_not_available,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after span.o_visual_not_available,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after span.o_visual_not_available{background-image:none}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:6em;text-align:center;color:#eee;line-height:140px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta{position:absolute;left:0;bottom:0;width:100%;border:1px solid #209d9e;border-top:0;background-color:rgba(255,255,255,0.8)}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title{margin:0;text-align:center;line-height:2em;height:2em;width:100%;overflow:hidden}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a{display:block;color:#209d9e;font-family:inherit;font-weight:inherit}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a:hover{color:#177374}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_meta .o_title a>i{display:none}@media (min-width: 768px) and (max-width: 991px){.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{width:80px;margin:0 10px 10px 0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{height:80px;width:80px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:2.5em;line-height:55px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_title{font-size:90%}}@media (max-width: 767px){.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media{width:80px;margin:0 1px 1px 0}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual{height:80px;width:80px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.o_icon,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_failed .o_visual.inset:after,.o_progress_failed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after,.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_progress_passed .o_visual.inset:after,.o_progress_passed .o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_visual.inset:after{font-size:2.5em;line-height:55px}.o_portfolio_media_browser .o_portfolio_medias .o_portfolio_media .o_title{font-size:90%}}.o_portfolio_status_legend{margin-top:3em}.o_portfolio_status_legend h6{margin-bottom:5px}.o_ed_htitle h1,.o_ed_htitle .h1{font-size:30px}.o_ed_htitle h2,.o_ed_htitle .h2{font-size:24px}.o_ed_htitle h3,.o_ed_htitle .h3{font-size:18px}.o_ed_htitle h4,.o_ed_htitle .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_ed_htitle h2,.o_ed_htitle .h4{font-size:14px}.o_ed_htitle h5,.o_ed_htitle .h5{font-size:12px}.o_ed_htitle h6,.o_ed_htitle .h6{font-size:12px}@media print{.o_binder h1{font-size:43.2px;margin-top:10cm}.o_portfolio_section{margin-bottom:1cm}.o_portfolio_section h3:first-of-type{font-size:36px}.o_page_lead{border:0;border-bottom:1px solid #d9d9d9;border-radius:0;background-color:none;padding:0;margin-bottom:10px}.o_page_lead .o_portfolio_status_block{border-top:0;margin-bottom:0}.o_page_lead .o_media img{border:0}.o_page_lead .o_portfolio_categories{display:block;margin-left:0}.o_page_lead .o_portfolio_status_block{padding-top:0}.o_page_lead .o_page_summary{margin-top:1em;font-style:italic}.o_pf_content .o_cit,.o_pf_content .o_text,.o_pf_content .o_file,.o_pf_content .o_forum,.o_pf_content .o_image,.o_pf_content .o_video,.o_pf_content .o_efficiencystatement,.o_pf_content .o_feed,.o_pf_content .o_forum,.o_pf_content .o_wiki{padding:0;border-radius:0;border:0}.o_pf_content .o_cit .o_desc p,.o_pf_content .o_text .o_desc p,.o_pf_content .o_file .o_desc p,.o_pf_content .o_forum .o_desc p,.o_pf_content .o_image .o_desc p,.o_pf_content .o_video .o_desc p,.o_pf_content .o_efficiencystatement .o_desc p,.o_pf_content .o_feed .o_desc p,.o_pf_content .o_forum .o_desc p,.o_pf_content .o_wiki .o_desc p{margin:0}.o_efficiencystatement table{font-size:90%}.o_artefact_metadata{page-break-inside:avoid;border:0;border-left:5px solid #eee;padding-left:10px;font-size:80%}.o_artefact_metadata table td,.o_artefact_metadata table th{border:0 !important;padding:2px !important}.o_artefact_metadata table th:first-of-type{width:20%}.o_pf_video_placeholder{background-color:#f8f8f8 !important;-webkit-print-color-adjust:exact;color-adjust:exact}.o_pf_video_placeholder.visible-print-block{display:table !important}}.o_evaluation_form .o_evaluation_block{margin-top:2em;margin-bottom:2em}.o_evaluation_form .o_rubric_name{font-weight:bold;margin-bottom:1em}.o_evaluation_form .o_evaluation_step_labels{margin-bottom:1em;font-weight:bold}.o_evaluation_form .o_evaluation_step_labels div,.o_evaluation_form .o_evaluation_step_labels span{display:inline-block;text-align:center;align-self:flex-end;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.o_evaluation_form .o_slider_wrapper{height:33px;overflow:hidden}.o_evaluation_form .o_slider{margin-bottom:1em}.o_evaluation_form .o_slider label{padding:0}.o_evaluation_form .o_slider input{padding:0;margin:0;position:relative}.o_evaluation_form .o_slider.hover{background-color:#f5f5f5}.o_evaluation_form .o_evaluation_continous .o_evaluation_no_response div.radio{padding:0;margin:0}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps{display:flex;justify-content:space-between}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps label{padding:0;margin:0;text-align:center}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps .radio{background-color:#f9f9f9;padding:0px;margin-top:0px;text-align:center}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_steps .radio:hover{background-color:#f5f5f5}.o_evaluation_form .o_evaluation_discrete_radio .o_slider .o_evaluation_no_response div.radio{margin-top:2px}.o_evaluation_form .o_evaluation_discrete_radio .o_evaluation_step_labels{display:flex;justify-content:space-between}.o_evaluation_form .o_slider .ui-slider.ui-slider-horizontal.ui-widget-content{margin-top:0.3em;margin-bottom:10px}.o_evaluation_form .o_evaluation_left_label{text-align:right;font-weight:normal}.o_evaluation_form .o_evaluation_left_label.o_evaluation_left_label_la{text-align:left;padding-left:0px;font-weight:normal}.o_evaluation_form .o_evaluation_right_label{text-align:left;font-weight:normal}.o_evaluation_form .o_evaluation_text_legend{margin-bottom:1em}.o_evaluation_form .o_evaluation_legend{padding-left:0.5em;margin-bottom:0.5em}.o_evaluation_form .o_evaluation_fileupload{margin-bottom:2em}.o_evaluation_form .o_evaluation_mc_other{margin-top:-10px;margin-left:10px;margin-right:10px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_slider{margin-left:15px;margin-right:15px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_end_label{text-align:right;padding-right:20px}.o_evaluation_form .o_evaluation_rubric_diagrams .o_continous .x .tick{visibility:hidden}.o_evaluation_form .o_ed_rubrictablehandler .table{margin-top:5px}.o_evaluation_form .svg-container{display:inline-block;position:relative;width:100%;padding-bottom:50%;vertical-align:top;overflow:hidden}.o_evaluation_form .svg-content-responsive{display:inline-block;position:absolute;top:10px;left:0}.d3chart .o_eva_bar{fill:#209d9e}.d3chart .o_rubric_sufficient{fill:#78be20}.d3chart .o_rubric_neutral{fill:#f2af40}.d3chart .o_rubric_insufficient{fill:#d6001c}.d3chart .o_rubric_unrated{fill:#209d9e}.o_qual_hm_legend{padding:5px}.o_qual_hm_legend li{font-size:90%}.o_qual_hm_legend .ident{font-weight:bold}.o_evaluation_discrete_slider .o_evaluation_step_labels{position:relative}.o_evaluation_discrete_slider .o_evaluation_step_labels div:first-child{position:absolute;left:0px;text-align:left}.o_evaluation_discrete_slider .o_evaluation_step_labels div{display:inline-block;text-align:center}.o_evaluation_discrete_slider .o_evaluation_step_labels div:last-child{position:absolute;right:0px;text-align:right}.o_slider_overview{width:100%;height:20px;position:relative}.o_slider_overview .o_slider_overview_line{top:5px;left:0px;position:absolute;width:100%;height:11px;border:1px solid #999;border-radius:4px}.o_slider_overview .o_slider_overview_point{position:absolute;width:10px;height:10px;background-color:#209d9e}.o_evaluation_editor_form{margin:10px 10px 0 10px}.o_evaluation_editor_form .o_slider_editor{margin-top:10px}@media (max-width: 992px){.o_evaluation_editor_form .o_slider_editor{margin-bottom:20px}}@media (max-width: 992px){.o_evaluation_editor_form .o_evaluation_step_label{text-align:unset;margin-bottom:5px;padding-top:unset}}.o_evaluation_editor_form .o_evaluation_step_labels{display:inline-block}.o_evaluation_editor_form .o_evaluation_step_labels input{width:100%}.o_evaluation_editor_form .o_slider_descrete_radio{display:flex;justify-content:space-between}.o_evaluation_editor_form .o_slider_descrete_radio .radio{background-color:#f9f9f9;padding:0px;margin-top:0px;text-align:center}.o_evaluation_editor_form .o_slider_descrete_radio .radio:hover{background-color:#f5f5f5}@media (max-width: 992px){.o_evaluation_editor_form input[type="text"]{margin-bottom:5px}}.o_evaluation_editor_form .o_slider_continous{padding-top:10px;padding-bottom:-10px}.o_evaluation_editor_form .o_slider_descrete{padding-top:5px;padding-bottom:-5px}.o_evaluation_editor_form .o_evaluation_example{font-size:90%}.o_evaluation_editor_form .o_slider_top{margin-top:23px}.o_evaluation_editor_form .o_slider_buttons .pull-right div:not(:first-child){display:inline-block}.o_evaluation_editor_form .o_slider_buttons .pull-right .btn{margin-top:-3px}.o_evaluation_editor_form .o_slider_weight{max-width:40px}@media (max-width: 768px){.o_evaluation_form .o_evaluation_left_label{text-align:left;margin-bottom:0.5em}.o_evaluation_form .o_evaluation_right_label{text-align:right}.o_evaluation_form .o_evaluation_no_response{text-align:left}.o_evaluation_form .o_evaluation_no_response .o_evaluation_no_resp_value{font-weight:bold}.o_evaluation_form .o_slider{margin-bottom:2em}.o_evaluation_form .o_slider div{padding-left:0}.o_evaluation_form .o_slider .o_evaluation_no_response{margin-top:0.7em}}@media (min-width: 768px){.o_evaluation_form .o_evaluation_no_resp_value{display:none}}@media print{.o_evaluation_discrete_radio .o_slider .o_evaluation_steps div.radio{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#f9f9f9 !important}.o_icon_rubric_insufficient::before{color:#d6001c !important}.o_icon_rubric_neutral::before{color:#f2af40 !important}.o_icon_rubric_sufficient::before{color:#78be20 !important}}.o_eva_report_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_eva_report_print #o_print_brand img{width:100%}.o_eva_report_print .o_eva_content{margin-top:4em}.o_eva_report_print .o_eva_overview .panel table{margin:0px 0px 1px 0px}.o_eva_report_print .o_evaluation_duration,.o_eva_report_print .o_participated_users{display:none}.o_surv_run.withCmds .o_eva_report{margin-top:-44px}.o_eva_report .o_eva_overview .o_eva_rubric .table{margin-top:5px}.o_eva_report .o_ed_rubrictablehandler .o_table_footer{font-weight:bold}.o_eva_report .o_rubric_avg{font-weight:bold;white-sprace:nowrap}.o_eva_report .o_rubric_table .o_table_wrapper{margin-bottom:10px}.o_eva_report .o_rubric_table_legend{display:block}.o_eva_report .o_rubric_table_legend .ident{font-weight:bold}.o_eva_report .o_rubric_table_legend .list-inline{margin-bottom:0px}.o_eva_report .o_rubric_table_legend.o_last{margin-bottom:15px}.o_evaluation_execution .o_evaluation_anonymous_info{display:inherit}.o_qual_main .o_labeled.o_qual_dc_status_preparation,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_preparation{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_ready,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_ready{background-color:#ffd351;border-color:#ffd351;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_running,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_running{background-color:#933;border-color:#933;color:#fff}.o_qual_main .o_labeled.o_qual_dc_status_finished,.o_qual_main .o_toolbar .o_tools_container a.o_labeled.o_qual_dc_status_finished{background-color:#14892c;border-color:#14892c;color:#fff}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_preparation{background-color:#384e64}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_ready{background-color:#ffc61e}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_running{background-color:#732626}.o_qual_main .o_toolbar .o_tools_container a.o_labeled:hover.o_qual_dc_status_finished{background-color:#0e5c1e}.o_qual_main .o_qual_dc_list tbody tr td:nth-child(1){padding-top:3px}.o_qual_main .o_labeled_light.o_qual_dc_status_preparation_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_preparation_light{border-color:#4a6785;color:#4a6785}.o_qual_main .o_labeled_light.o_qual_dc_status_ready_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_ready_light{border-color:#ffd351;color:#333}.o_qual_main .o_labeled_light.o_qual_dc_status_running_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_running_light{border-color:#933;color:#933}.o_qual_main .o_labeled_light.o_qual_dc_status_finished_light,.o_qual_main .o_toolbar .o_tools_container a.o_labeled_light.o_qual_dc_status_finished_light{border-color:#14892c;color:#14892c}.o_qual_main .o_qual_exec_list tbody tr td:nth-child(1){padding-top:3px}.o_qual_main .o_qual_exec_status_future_light{border-color:#4a6785;color:#4a6785}.o_qual_main .o_qual_exec_status_ready_light{border-color:#ffd351;color:#333}.o_qual_main .o_qual_exec_status_participating_light{border-color:#933;color:#933}.o_qual_main .o_qual_exec_status_participated_light{border-color:#14892c;color:#14892c}.o_qual_main .o_qual_exec_status_over_light{border-color:#aaa;color:#aaa}.o_qual_execute_header .o_qual_context_table,.o_qual_report_header .o_qual_context_table{margin-bottom:0}.o_qual_execute_header .o_qual_context_table th,.o_qual_report_header .o_qual_context_table th{width:40%;border-top:none;padding:4px 8px}.o_qual_execute_header .o_qual_context_table td,.o_qual_report_header .o_qual_context_table td{width:60%;border-top:none;padding:4px 8px}.o_qual_ana_table .o_table_body{padding:0}.o_qual_ana_filter .o_date_range{margin-bottom:0px}.o_qual_ana_filter .o_date_range .control-label{margin-bottom:5px}.o_qual_ana_filter .o_date_range .o_date{margin-bottom:15px;padding-right:12px}.o_qual_ana_filter .o_date_range .o_date_range_from{padding-right:12px}.o_qual_ana_filter .o_date_range .o_date_range_to{padding-right:0px}.o_qual_hm_basecolor{background-color:#337ab7}.o_qual_hm .o_circle_container{display:flex}.o_qual_hm .o_circle_box{display:flex;align-items:center;justify-content:center}.o_qual_hm .o_circle{border-radius:50%}.o_qual_hm .o_circle.o_rubric_insufficient{background-color:#d6001c !important}.o_qual_hm .o_circle.o_rubric_neutral{background-color:#f2af40 !important}.o_qual_hm .o_circle.o_rubric_sufficient{background-color:#78be20 !important}.o_qual_hm .o_avg{display:flex;align-items:center;margin-left:5px}.o_qual_trend_invisible{visibility:hidden}.o_qual_trend .o_qual_ana_trend_up{transform:rotate(315deg);-webkit-transform:rotate(315deg);-moz-transform:rotate(315deg);-ms-transform:rotate(315deg);-o-transform:rotate(315deg)}.o_qual_trend .o_qual_ana_trend_down{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg)}.o_qual_trend .o_rubric_insufficient{color:#d6001c}.o_qual_trend .o_rubric_neutral{color:#f2af40}.o_qual_trend .o_rubric_sufficient{color:#78be20}.o_qual_trend .o_qual_ana_unrated{color:#337ab7}.o_qual_filtered_print #o_print_brand{position:absolute;top:1cm;right:1cm;width:5cm;height:4cm}.o_qual_filtered_print #o_print_brand img{width:100%}.o_qual_filtered_print .o_qual_content{margin-top:4em}.o_qual_filtered_print .o_groupby_config,.o_qual_filtered_print .o_slider_trend_config,.o_qual_filtered_print .o_qual_hm tr td:last-child,.o_qual_filtered_print .o_qual_hm tr th:last-child{display:none}.o_evaluation_bar_chart_legend{padding:5px}.o_evaluation_bar_chart_legend li{font-size:90%}.o_evaluation_bar_chart_legend .ident{font-weight:bold}@media (max-width: 768px){.o_hm_group_select{padding-bottom:12px}.o_hm_panel_body{margin-bottom:-12px}}@media (min-width: 768px){.o_hm_trend_row{padding-top:12px}}@media print{.o_qual_hm .o_circle{-webkit-print-color-adjust:exact;color-adjust:exact}.o_qual_hm .o_circle.o_rubric_insufficient{background-color:#d6001c !important}.o_qual_hm .o_circle.o_rubric_neutral{background-color:#f2af40 !important}.o_qual_hm .o_circle.o_rubric_sufficient{background-color:#78be20 !important}.o_qual_hm .o_circle.o_qual_hm_basecolor{background-color:#337ab7 !important}.o_qual_trend{-webkit-print-color-adjust:exact;color-adjust:exact}.o_qual_trend .o_rubric_insufficient::before{color:#d6001c !important}.o_qual_trend .o_rubric_neutral::before{color:#f2af40 !important}.o_qual_trend .o_rubric_sufficient::before{color:#78be20 !important}.o_qual_trend .o_qual_ana_unrated::before{color:#337ab7 !important}}.o_cit{position:relative;margin:10px 0}.o_cit blockquote.o_quote{color:#555;font-size:18px;margin-top:6px;margin-bottom:0;padding:0 12px;font-style:italic;padding:5px 5px 0;border:0}.o_cit blockquote.o_quote p:last-child:after{content:'1)';top:-0.5em;font-size:75%;line-height:0;position:relative;vertical-align:baseline}.o_cit .o_cit_bibinfo{font-size:90%;margin-left:1em;position:relative}.o_cit .o_cit_bibinfo>div:first-child:before{content:'1)';position:absolute;top:0.5em;left:-1em;font-size:75%;line-height:0;vertical-align:baseline}.o_cit .title,.o_cit .url,.o_cit .authors,.o_cit .pages,.o_cit .date,.o_cit .dateAdded,.o_cit .place,.o_cit .institution,.o_cit .issue,.o_cit .publisher,.o_cit .publicationTitle,.o_cit .edition,.o_cit .series,.o_cit .volume{margin-right:0.5em}.o_cit .title{font-style:italic}.o_cit .publicationTitle{color:black}.o_cit .links{padding-left:2em}.o_cit .notes{padding-left:2em;color:grey}.o_cit .note{font-style:italic}.o_cit .note p:first-child{margin-top:0}.o_cit .note p:first-child{margin-bottom:0}.o_cit .listing.web .item{padding-left:0;text-indent:0}.o_cit .listing.web .title{display:block;font-weight:bold;font-style:normal}.o_cit .listing.web .publicationTitle{display:block;font-style:italic}.o_cit .listing.web .url{display:block}.o_cit .listing.web .links{padding-left:0}.o_cit .listing.web .notes{padding-left:0}.o_cit .general-info{border-top:1px solid #eee;padding-top:30px;margin-top:30px}.o_cit .copyright{display:none}@media print{.o_cit blockquote.o_quote{page-break-inside:avoid}}.o_video_poster{position:relative;display:inline-block;width:400px;max-width:100%;height:225px;background-size:cover;background-repeat:no-repeat;border:1px solid #eee}.o_video_poster_select{text-align:center}.o_video_poster_select .o_video_poster{margin:5px}.o_video_poster_select .o_video_poster a{position:absolute;left:0;top:0;width:100%;height:100%}.o_video_poster_select .o_video_poster a span{position:absolute;bottom:0;width:100%;display:block;line-height:3em;background:#f8f8f8;opacity:0.8}.o_video_poster_select .o_video_poster a:hover{border:1px solid #bbb}.o_video_poster_select .o_video_poster a:hover span{opacity:0.9}.o_video_peekview{text-align:center}.o_video_listing .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_video_listing .o_video_entry{position:relative;display:inline-block;height:230px;width:250px;vertical-align:top;margin-right:10px}.o_video_listing .o_video_poster{width:250px;max-width:100%;height:140px;border:1px solid #eee}.o_video_listing .o_timecode{position:absolute;bottom:2px;right:3px;padding:3px 4px;background:#333;color:#fff;font-size:12px;line-height:12px}.o_video_listing .o_meta{padding:2px;font-size:11px}.o_video_listing .o_meta h5{font-size:14px;margin-top:0;margin-bottom:5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o_video_listing .o_date{margin-left:10px;display:inline-block}.o_video_listing .o_date:before{content:'\002022';margin-right:10px;display:inline-block}.o_video_run h1{font-size:1.8rem;font-weight:normal}.o_video_run .o_author{margin-top:0.5em;margin-bottom:1em;line-height:normal;font-size:90%;color:#3c763d}.o_video_run .o_ratings_and_comments{margin-top:2em;border-top:1px solid #eee;padding-top:1em}.o_video_chapter_editor .o_table_wrapper.o_table_flexi .table,.o_video_marker_editor .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_video_marker_editor .o_video_question.mejs__overlay{overflow:scroll}.o_video_question.mejs__overlay.o_video_large_question{align-items:flex-start;padding:1em 1em 0 1em;z-index:5}.o_video_question.mejs__overlay.o_video_large_question #o_qti_container{border:1px solid #eee}.o_video_marker{position:absolute;background-color:#efefef;opacity:0.85;border-left:3px solid #a6a6a6;padding:5px}.o_video_marker.o_video_marker_gray{border-left-color:#333}.o_video_marker.o_video_marker_blue{border-left-color:#bce8f1}.o_video_marker.o_video_marker_green{border-left-color:#78be20}.o_video_marker.o_video_marker_yellow{border-left-color:#f2af40}.o_video_marker.o_video_marker_red{border-left-color:#d6001c}.o_video_question.mejs__overlay{width:100%;height:100%;background-color:rgba(255,255,255,0.5)}.o_video_question #itemBody,.o_video_question .modalFeedback{background-color:white;opacity:1.0}.o_video_question .o_assessmentitem_wrapper .o_qti_item_body{min-height:50px}.o_video_question #o_qti_assessment_test_timer{border:none;padding:5px;margin:0}.o_video_question #o_qti_progress .progress{height:10px}.o_video_question #o_qti_container{background-color:white;padding:5px;border-radius:3px}.o_video_question .o_sel_additional_feedback{float:left;font-size:26px}.o_video_question .o_sel_additional_feedback .o_icon_passed{color:#78be20}.o_video_question .o_sel_additional_feedback .o_icon_failed{color:#d6001c}.mejs__time-rail .o_video_marker_gray{background:#333}.mejs__time-rail .o_video_marker_blue{background:#bce8f1}.mejs__time-rail .o_video_marker_green{background:#78be20}.mejs__time-rail .o_video_marker_yellow{background:#f2af40}.mejs__time-rail .o_video_marker_red{background:#d6001c}.mejs__controls .mejs__sourcechooser-button>button{background:transparent;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}.mejs__controls .mejs__sourcechooser-button>button:before{content:"";color:white;font-size:18px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector{visibility:visible !important;width:170px;padding-left:10px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label{font-weight:normal;font-size:10px;width:140px}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label:hover{color:#eee}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li label .type{display:none}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li input{visibility:hidden;margin:0;width:0}.mejs__controls .mejs__sourcechooser-button .mejs__sourcechooser-selector ul li input:checked+label{color:#d6001c}.mejs__controls .mejs__captions-button .mejs__captions-selector{right:-26px}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label{font-weight:normal;font-size:10px}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label:hover{color:#eee}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li label .type{display:none}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li input{visibility:hidden;margin:0;width:0}.mejs__controls .mejs__captions-button .mejs__captions-selector ul li input:checked+label{color:#d6001c}.mejs__button.mejs__speed-button{width:36px}.mejs__controls .mejs__speed-button>button{background:transparent;width:36px;margin:11px 0 0 0;font-size:11px;line-height:normal;color:#ffffff}.mejs__controls .mejs__speed-button .mejs__speed-selector{height:150px;top:auto;bottom:40px}.mejs__controls .mejs__speed-button .mejs__speed-selector ul li label{font-weight:normal;font-size:10px}.mejs__chapters .mejs__chapter .mejs__chapter-block .ch-title,.mejs__chapters .mejs__chapter .mejs__chapter-block .ch-time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.mejs__time-marker{background-color:#a6a6a6}.o_userbulk_changedcell{font-style:italic;font-weight:bold}.o_qpool_source_status{text-align:center}.o_qitem_author{white-space:nowrap}a.o_qpool_status{margin:0 2px 2px 2px;text-align:left}.o_labeled.o_qpool_status_draft,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_draft{background-color:#4a6785;border-color:#4a6785;color:#fff}.o_labeled.o_qpool_status_review,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_review{background-color:#ffd351;border-color:#ffd351;color:#fff}.o_labeled.o_qpool_status_revised,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_revised{background-color:#933;border-color:#933;color:#fff}.o_labeled.o_qpool_status_finalVersion,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_finalVersion{background-color:#14892c;border-color:#14892c;color:#fff}.o_labeled.o_qpool_status_endOfLife,.o_toolbar .o_tools_container a.o_labeled.o_qpool_status_endOfLife{background-color:#aaa;border-color:#aaa;color:#fff}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_draft{background-color:#384e64}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_review{background-color:#ffc61e}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_revised{background-color:#732626}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_finalVersion{background-color:#0e5c1e}.o_toolbar .o_tools_container a.o_labeled:hover.o_qpool_status_endOfLife{background-color:#919191}.o_labeled_light.o_qpool_status_draft_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_draft_light{border-color:#4a6785;color:#4a6785}.o_labeled_light.o_qpool_status_review_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_review_light{border-color:#ffd351;color:#333}.o_labeled_light.o_qpool_status_revised_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_revised_light{border-color:#933;color:#933}.o_labeled_light.o_qpool_status_finalVersion_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_finalVersion_light{border-color:#14892c;color:#14892c}.o_labeled_light.o_qpool_status_endOfLife_light,.o_toolbar .o_tools_container a.o_labeled_light.o_qpool_status_endOfLife_light{border-color:#aaa;color:#aaa}.btn-arrow-right.o_qpool_qitem_draft{background:#f8f8f8;border-bottom-color:#4a6785;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_review{background:#f8f8f8;border-bottom-color:#ffd351;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_revised{background:#f8f8f8;border-bottom-color:#933;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_final{background:#f8f8f8;border-bottom-color:#14892c;border-bottom-width:3px}.btn-arrow-right.o_qpool_qitem_end_of_life{background:#f8f8f8;border-bottom-color:#aaa;border-bottom-width:3px}.btn-arrow-right.o_qpool_status_slected{background-color:#e7e7e7;color:#555}.btn-arrow-right,.btn-arrow-left{position:relative;padding-left:18px;padding-right:18px;margin-bottom:5px}.btn-arrow-right{padding-left:36px}.btn-arrow-left{padding-right:36px}.btn-arrow-right:before,.btn-arrow-right:after,.btn-arrow-left:before,.btn-arrow-left:after{content:"";position:absolute;top:5px;width:22.627417px;height:22.627417px;background:inherit;border:inherit;border-left-color:transparent;border-bottom-color:transparent;border-radius:0px 4px 0px 0px;-webkit-border-radius:0px 4px 0px 0px;-moz-border-radius:0px 4px 0px 0px}.btn-arrow-right:before,.btn-arrow-right:after{transform:rotate(45deg);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-o-transform:rotate(45deg);-ms-transform:rotate(45deg)}.btn-arrow-left:before,.btn-arrow-left:after{transform:rotate(225deg);-webkit-transform:rotate(225deg);-moz-transform:rotate(225deg);-o-transform:rotate(225deg);-ms-transform:rotate(225deg)}.btn-arrow-right:before,.btn-arrow-left:before{left:-11px}.btn-arrow-right:after,.btn-arrow-left:after{right:-11px}.btn-arrow-right:after,.btn-arrow-left:before{z-index:1}.btn-arrow-right:before,.btn-arrow-left:after{background-color:white}body.o_dmz{background:transparent}body.o_dmz #o_bg{position:absolute;top:0;left:0;width:100%;height:100%;border-top:50px solid transparent;border-bottom:70px solid transparent;background:url("images/infinite.jpg");background-size:cover;background-position:center center;background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 )}body.o_dmz #o_bg:after{content:" ";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to left, rgba(255,255,255,0) 0.2%,rgba(255,255,255,0.3) 60%,rgba(255,255,255,0.5) 100%);background-size:cover;background-position:center center;background-repeat:no-repeat}body.o_dmz #o_toplink{display:none}body.o_dmz #o_main_wrapper,body.o_dmz #o_main_wrapper #o_main_container{background:transparent}body.o_dmz label>select{font-weight:normal}.o_login{padding-bottom:20px;padding-left:10%;padding-right:10%;padding-right:10%}.o_login .o_login_intro h1{margin-bottom:40px;color:#342c24}.o_login .o_login_intro .lead{color:#2d2926}.o_login .o_login_intro .lead h1,.o_login .o_login_intro .lead h2,.o_login .o_login_intro .lead h3,.o_login .o_login_intro .lead h4,.o_login .o_login_intro .lead .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_login .o_login_intro .lead h2,.o_login .o_login_intro .lead h5{margin-bottom:20px;color:#342c24}.o_login .o_login_messages,.o_login .o_login_box{display:inline-block;width:400px;text-align:left}.o_login .o_login_messages .o_infomessage_wrapper{background:rgba(255,255,255,0.5);border:1px solid transparent;border-radius:4px;padding:6px 12px}.o_login .o_login_messages .o_infomessage_wrapper .o_info,.o_login .o_login_messages .o_infomessage_wrapper .o_warning,.o_login .o_login_messages .o_infomessage_wrapper .o_note{margin:0}.o_login .o_login_box{padding-top:10px}.o_login .o_login_providers{margin-bottom:6px;border-radius:4px;-webkit-box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3);box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3)}.o_login .o_login_providers a span{display:block;font-size:9px;padding-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o_login .o_login_providers .o_icon_provider_olat{font-size:1em}.o_login .o_login_provider{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3);box-shadow:0px 1px 10px -1px rgba(0,0,0,0.3)}.o_login .o_login_form{position:relative;padding:10px 12px}.o_login .o_login_form .o_login_pwd{position:absolute;bottom:2em;right:12px}.o_login .o_login_form .o_form .o_desc{margin:0 0 30px 0;padding:0;border-left:0;background-color:transparent}.o_login .o_login_register{display:block;line-height:2em;font-size:18px;text-align:center;color:#fff;background-color:#f2af40;border-color:#f2af40;border-radius:4px;margin-top:16px;padding:10px 12px}.o_login .o_login_register:hover,.o_login .o_login_register:focus,.o_login .o_login_register.focus,.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{color:#fff;background-color:#ef9b10;border-color:#e59510}.o_login .o_login_register:active,.o_login .o_login_register.active,.open>.o_login .o_login_register.dropdown-toggle{background-image:none}.o_login .o_login_register.disabled,.o_login .o_login_register.disabled:hover,.o_login .o_login_register.disabled:focus,.o_login .o_login_register.disabled.focus,.o_login .o_login_register.disabled:active,.o_login .o_login_register.disabled.active,.o_login .o_login_register[disabled],.o_login .o_login_register[disabled]:hover,.o_login .o_login_register[disabled]:focus,.o_login .o_login_register[disabled].focus,.o_login .o_login_register[disabled]:active,.o_login .o_login_register[disabled].active,fieldset[disabled] .o_login .o_login_register,fieldset[disabled] .o_login .o_login_register:hover,fieldset[disabled] .o_login .o_login_register:focus,fieldset[disabled] .o_login .o_login_register.focus,fieldset[disabled] .o_login .o_login_register:active,fieldset[disabled] .o_login .o_login_register.active{background-color:#f2af40;border-color:#f2af40}.o_login .o_login_register .badge{color:#f2af40;background-color:#fff}.o_login .o_login_register small{font-size:14px}.o_login .o_login_social{position:relative;padding:10px 12px}.o_login .o_login_social li{padding:10px 12px}.o_login .o_login_social li>a{display:block;line-height:2em;text-align:center;font-size:18px;border-radius:4px;padding:10px 12px}.o_login .o_login_social .btn-default.o_sel_auth_facebook{color:#fff;background-color:#4568b2;border-color:#3e5da0}.o_login .o_login_social .btn-default.o_sel_auth_facebook:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_facebook.dropdown-toggle{color:#fff;background-color:#37538d;border-color:#2d4374}.o_login .o_login_social .btn-default.o_sel_auth_facebook:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_facebook.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled],.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_facebook[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_facebook.active{background-color:#4568b2;border-color:#3e5da0}.o_login .o_login_social .btn-default.o_sel_auth_facebook .badge{color:#4568b2;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_twitter{color:#fff;background-color:#2cc5ff;border-color:#13beff}.o_login .o_login_social .btn-default.o_sel_auth_twitter:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_twitter.dropdown-toggle{color:#fff;background-color:#00b4f8;border-color:#009ad4}.o_login .o_login_social .btn-default.o_sel_auth_twitter:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_twitter.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled],.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_twitter[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_twitter.active{background-color:#2cc5ff;border-color:#13beff}.o_login .o_login_social .btn-default.o_sel_auth_twitter .badge{color:#2cc5ff;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_google{color:#fff;background-color:#e15f4f;border-color:#dd4b39}.o_login .o_login_social .btn-default.o_sel_auth_google:hover,.o_login .o_login_social .btn-default.o_sel_auth_google:focus,.o_login .o_login_social .btn-default.o_sel_auth_google.focus,.o_login .o_login_social .btn-default.o_sel_auth_google:active,.o_login .o_login_social .btn-default.o_sel_auth_google.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_google.dropdown-toggle{color:#fff;background-color:#d83825;border-color:#ba3120}.o_login .o_login_social .btn-default.o_sel_auth_google:active,.o_login .o_login_social .btn-default.o_sel_auth_google.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_google.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_google.disabled,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_google.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled],.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_google[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_google.active{background-color:#e15f4f;border-color:#dd4b39}.o_login .o_login_social .btn-default.o_sel_auth_google .badge{color:#e15f4f;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_linkedin{color:#fff;background-color:#0181bd;border-color:#0170a4}.o_login .o_login_social .btn-default.o_sel_auth_linkedin:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_linkedin.dropdown-toggle{color:#fff;background-color:#015e8a;border-color:#014667}.o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_linkedin.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled],.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_linkedin[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_linkedin.active{background-color:#0181bd;border-color:#0170a4}.o_login .o_login_social .btn-default.o_sel_auth_linkedin .badge{color:#0181bd;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_adfs{color:#fff;background-color:#209d9e;border-color:#1c8889}.o_login .o_login_social .btn-default.o_sel_auth_adfs:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_adfs.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_login .o_login_social .btn-default.o_sel_auth_adfs:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_adfs.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled],.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_adfs[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_adfs.active{background-color:#209d9e;border-color:#1c8889}.o_login .o_login_social .btn-default.o_sel_auth_adfs .badge{color:#209d9e;background-color:#fff}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect{color:#fff;background-color:#209d9e;border-color:#1c8889}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.dropdown-toggle{color:#fff;background-color:#177374;border-color:#115556}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active,.open>.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.dropdown-toggle{background-image:none}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled.focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.disabled.active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled],.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:hover,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled].focus,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled]:active,.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect[disabled].active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:hover,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.focus,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect:active,fieldset[disabled] .o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect.active{background-color:#209d9e;border-color:#1c8889}.o_login .o_login_social .btn-default.o_sel_auth_OpenIDConnect .badge{color:#209d9e;background-color:#fff}.o_old_browser{display:none}.o_browser_ie10 .o_old_browser{display:block}@media (max-width: 767px){body.o_dmz #o_bg{background:none;display:none}.o_login{padding:0}.o_login .o_login_intro{padding:0;text-align:left}.o_login .o_login_box_wrapper{text-align:center;padding:0}.o_login .o_login_box{padding-left:0;padding-right:0}.o_login .o_login_box .o_login_providers,.o_login .o_login_box .o_login_provider{-webkit-box-shadow:none;box-shadow:none}.o_login .o_login_messages,.o_login .o_login_box{width:100%;display:block}}.o_home_main h1{text-align:center}.o_home_main .o_icon_rss{line-height:20px;vertical-align:middle}.o_showall{font-size:12px;text-align:right;margin-bottom:5px;margin-top:10px}.o_portlet{position:relative;background-color:#fcfcfc;border:1px solid #ddd;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.o_portlet .o_header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;border-bottom:1px solid #ddd;background-color:#f5f5f5;border-top-right-radius:4px;border-top-left-radius:4px}.o_portlet .o_content{padding:6px 12px}.o_portlet .o_portlet_table{margin:-12px;margin-bottom:-6px;margin-top:0}.o_portlet .o_table_empty.o_info{padding:6px}.o_portlet .o_toolbox{position:absolute;top:-1px;right:-1px;z-index:2;background-color:#fff;border:1px solid #faebcc;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;padding:6px 12px}.o_portlet .o_toolbox div{display:inline}.o_portlet .o_edit_shim{position:absolute;height:100%;width:100%;z-index:1;background:#fcf8e3;opacity:0.8}.o_inactive .o_header a{float:right;margin-left:12px;margin-top:10px}.o_portlet_dyk_q{margin-top:5px;font-style:italic}.o_portlet_dyk_a{margin:5px 0}.o_portlet_dyk_next{margin:5px 0;text-align:right}.o_library_icon:before{content:""}.o_library ul{list-style:none;margin:0 0 15px 0;padding:0}.o_library ul ul{margin:0}.o_library_overview .o_library_newest_files ul li{float:left;margin-right:15px}.o_library_catalog_title h2,.o_library_catalog_title h3,.o_library_catalog_title h4,.o_library_catalog_title .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_catalog_title h2{margin-top:0}.o_library_item{margin-bottom:10px;position:relative}.o_library_item .o_library_visual,.o_library_item .o_library_extra,.o_library_item .o_library_meta{margin-top:15px}.o_library_item .o_library_visual{float:left;background-color:#fff;border-radius:4px;border:1px solid #ddd}.o_library_item .o_library_visual .o_thumbnail_available,.o_library_item .o_library_visual .o_thumbnail_unavailable{background-size:146px auto;width:150px !important;height:150px !important;background-repeat:no-repeat;background-position:50% 50%}.o_library_item .o_library_visual .o_thumbnail_available:before,.o_library_item .o_library_visual .o_thumbnail_unavailable:before{content:none}.o_library_item .o_library_visual .o_thumbnail_available{background-size:146px auto}.o_library_item .o_library_visual .o_thumbnail_unavailable{display:none}.o_library_item .o_library_extra{float:right;width:200px}.o_library_item .o_library_meta{clear:both}.o_library_item .o_library_meta .o_library_desc{padding-bottom:10px}.o_library_item .o_library_meta small{display:block;word-wrap:break-word}.o_library_item h4,.o_library_item .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_item h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:normal}.o_library_item .btn{display:block;margin-bottom:0.5em}.o_library_item .o_comments{display:inline-block}.o_library_item .table{table-layout:fixed;word-wrap:break-word;margin-bottom:0}.o_library_item p.o_library_show_more{text-align:right;margin:0;padding-top:20px}.o_library_item .o_library_more{padding-top:20px;display:none}.o_library_folder{margin-top:-20px}.o_library .o_ratings_and_comments .o_rating_title,.o_library .o_ratings_and_comments .o_rating_explanation{display:none}@media (min-width: 768px){.o_library_item .o_library_meta{clear:none;margin-left:150px;margin-right:200px;padding:0 10px}.o_library_item .o_library_more{display:none}.o_library_item .o_library_more table tbody{vertical-align:top}.o_library_item .o_library_more table tr,.o_library_item .o_library_more table th,.o_library_item .o_library_more table td{display:inline-block}.o_library_item .o_library_more table tr{width:49%}.o_library_item .o_library_more table th{width:30%}.o_library_item .o_library_more table td{width:70%}}.o_library_item_compact .o_library_extra{width:auto}.o_library_item_compact .o_library_meta{padding:0 10px 0 0;margin:0;overflow:hidden}.o_library_item_compact .btn{display:inline-block}.o_library_item_compact h4,.o_library_item_compact .o_cal .fc-header-title h2,.o_cal .fc-header-title .o_library_item_compact h2{overflow:hidden;margin-right:70px}.o_library_item_compact h4 a,.o_library_item_compact .o_cal .fc-header-title h2 a,.o_cal .fc-header-title .o_library_item_compact h2 a{text-overflow:ellipsis;white-space:nowrap}.o_library_item_compact p.o_library_show_more{padding:20px;position:absolute;top:0;right:0}span.o_translation_i18nitem{position:relative !important}span.o_translation_i18nitem a.o_translation_i18nitem_launcher{position:absolute !important;z-index:100 !important;width:18px !important;height:20px !important;top:0 !important;left:5px !important;background:#fff;border:1px solid #209d9e !important;border-radius:3px;text-align:center;padding:0 !important}.o_user_infos{position:relative}.o_user_infos .o_user_portrait{position:absolute;top:0;left:15px;width:100px;height:100px}.o_user_infos .o_user_infos_inner{margin:0 30px 0 100px}.o_user_infos .o_user_infos_inner table{margin:0 30px 15px 30px}.o_useradmin .o_user_infos .o_user_infos_inner{margin-right:45px}div.o_skype_button{display:inline-block}div.o_skype_button p{margin:0 0 0 0}div.o_skype_button p a img{margin:0 !important;vertical-align:middle !important}.o_useradmin div#o_main_toolbar.o_toolbar{margin-top:0px}.o_members_pagination{text-align:center}.o_bcard_logo{margin-left:10px;height:66px}.o_bcard_title_with_logo{clear:both;padding:20px 0 0 0}.o_visitingcard_image,.o_visitingcard_logo{height:66px}.o_visitingcard .o_icon_visitingcard{display:none}.o_visitingcard .o_portrait_avatar,.o_visitingcard .o_portrait_dummy,.o_visitingcard .o_portrait_dummy_female_big,.o_visitingcard .o_portrait_dummy_male_big,.o_visitingcard .o_portrait_anonymous{width:66px;height:66px;margin-right:10px}@media (max-width: 767px){.o_visitingcard .o_portrait_avatar,.o_visitingcard .o_portrait_dummy,.o_visitingcard .o_portrait_dummy_female_big,.o_visitingcard .o_portrait_dummy_male_big,.o_visitingcard .o_portrait_anonymous{width:50px;height:50px;margin:5px 5px 0 0}.o_visitingcard_image,.o_visitingcard_logo{height:50px}.o_visitingcard_logo,.o_bcard_logo{height:50px;margin:5px 0 0 5px}.o_visitingcard_logo img,.o_bcard_logo img{position:relative;transform:scale(.7575757576);top:-8px}}@media (max-width: 414px){.o_visitingcard_logo img{max-width:260px}}@media (max-width: 375px){.o_visitingcard_logo img{max-width:220px}}@media (max-width: 320px){.o_visitingcard_logo img{max-width:180px}.o_bcard_logo img{max-width:150px}}.o_gta_coach_selection .o_noti{display:inline-block;float:none;margin:0}.o_gta_coach_selection .o_gta_coach_selection_bar{position:relative}.o_gta_coach_selection .o_gta_coach_selection_bar .o_noti{position:absolute;top:3px;right:0}p.o_gta_reopen_warning{margin-top:-20px}.o_lecture_authorized_absence div.form-inline,.o_lecture_authorized_absence div.o_navbar-form{display:inline}.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_date,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_startTime,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_endTime,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_details,.o_lectures_teacher_overview .o_table_wrapper.o_table_flexi .table thead th.o_col_tools{width:1%}.o_lectures_teacher_overview .o_lectures_current_wrapper{border:1px solid transparent;background:#f8f8f8;border-radius:4px;margin:10px -10px 20px -10px;padding:10px}.o_lectures_teacher_overview .o_lectures_current_wrapper .o_button_group{margin-bottom:0}.o_lectures_teacher_overview .o_lectures_teacher_search .o_form .o_date{padding-right:10px;position:relative}.o_lectures_teacher_overview .o_lectures_teacher_search div.o_chelp_wrapper_and_buttons{position:absolute;top:0;right:0}.o_header_with_buttons .o_day_chooser{position:relative;float:right}.o_lectures_rollcall legend{margin-bottom:10px}.o_lectures_rollcall .o_desc,.o_lectures_rollcall .o_preparation{margin:0}.o_rollcall_next_previous_group{text-align:center}.o_rollcall_next_previous_group a.o_sel_close{float:left}.o_rollcall_next_previous_group a.o_sel_close span{display:none}.o_rollcall_next_previous_group .form-control{display:inline;width:auto}@media (max-width: 767px){.o_rollcall_next_previous_group a span{display:none}}.o_lecture_free{color:#777}.o_rollcall_portrait>div{margin:0 auto 10px auto;width:100px}.o_edubase_pv{overflow:hidden;padding-top:10px}.o_edubase_pv_fig{display:inline-block;vertical-align:top;width:110px;margin-right:3%}.o_edubase_run_enabled .o_edubase_page{font-size:12px;color:#777}.o_edubase_run_disabled .o_edubase_booksection{margin-right:3%;margin-bottom:3%;width:177px;display:inline-table}.o_edubase_run_disabled .o_edubase_page{font-size:12px;color:#777}.o_edubase_bs_buttons{padding-top:10px}.o_edubase_bs_book_id{margin-top:-2px}.o_edubase_bs_details{margin-left:-20px}.o_edubase_bs_details_label{visibility:hidden}.o_edubase_bs_cover object{margin-left:10px;margin-top:10px;height:120px}.o_edubase_bs_cover img{margin-left:10px;margin-top:10px;height:120px}.o_edubase_edit_books .o_icon_error{visibility:hidden}.o_edubase_edit_books .o_icon_help{margin-bottom:0px}.o_edubase_edit_books .row{margin-bottom:5px}.o_edusharing_container.o_in_iframe .edusharing_metadata_wrapper{margin-top:5px}.o_edusharing_container.o_in_iframe .edusharing_metadata.open{position:unset;margin:0;padding:0}.o_edusharing_container.o_in_iframe .edusharing_metadata.open:before{content:unset;border:unset;top:unset;position:unset;left:unset;width:unset;height:unset}.o_edusharing_container.o_hide_license .license{display:none}.o_edusharing_container.o_hide_infos .edusharing_metadata_wrapper{display:none}.o_edusharing_left{display:block;float:left;margin:5px 5px 5px 0}.o_edusharing_right{display:block;float:right;margin:5px 0 5px 5px}.o_edusharing_inline{display:inline-block;margin:0 5px}.o_edusharing_none{display:block;float:none;margin:5px 0}.eduContainer{width:180px;color:transparent}.edusharing_spinner_inner{width:30px;height:50px;display:inline-block}.edusharing_spinner1{background:url("../light/images/edusharing/hex1.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.1s;-moz-animation-delay:0.1s;animation-delay:0.1s}.edusharing_spinner2{background:url("../light/images/edusharing/hex2.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.25s;-moz-animation-delay:0.25s;animation-delay:0.25s}.edusharing_spinner3{background:url("../light/images/edusharing/hex3.svg");background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;-webkit-animation:spin 2s infinite ease-in;-moz-animation:spin 2s infinite ease-in;-ms-animation:spin 2s infinite ease-in;-o-animation:spin 2s infinite ease-in;animation:spin 2s infinite ease-in;-webkit-animation-delay:0.5s;-moz-animation-delay:0.5s;animation-delay:0.5s}@-webkit-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-moz-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-ms-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@-o-keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5)}100%{transform:scale(1)}}@keyframes spin{0%{transform:scale(1)}50%{transform:scale(0.5) rotate(90deg)}100%{transform:scale(1)}}body.o_doceditor_body{margin-bottom:0px}body.o_doceditor_body .o_container_offcanvas{max-width:100%}body.o_doceditor_body .container-fluid{padding-left:0px;padding-right:0px;margin-left:0px;margin-right:0px}body.o_doceditor_body #o_toplink{display:none}.o_doceditor{margin-top:10px}.o_doceditor .o_doceditor_config .nav button{margin-top:3px}.o_doceditor .navbar-collapse{border-top:0 !important}.o_doceditor .navbar-collapse.collapse{display:block !important}.o_doceditor .navbar-nav{margin:0}.o_doceditor .navbar-nav>li,.o_doceditor .navbar-nav{float:left !important}.o_doceditor .navbar-right{float:right !important}.o_doceditor .navbar-nav>li>.dropdown-menu{background-color:#f8f8f8;border-color:#e7e7e7;position:absolute;right:0;left:auto}.o_doceditor .navbar-nav>li>a{padding-top:10px !important;padding-bottom:10px !important;line-height:20px !important}.o_doceditor .o_collabora iframe,.o_doceditor .o_onlyoffice iframe,.o_doceditor .o_office365 iframe{width:100%;height:calc(100vh - 61px);height:calc(var(--doceditorvh, 1vh) * 100 - 61px);margin-top:10px;border-width:0px}.o_doceditor.o_web_document .o_collabora iframe,.o_doceditor.o_web_document .o_onlyoffice iframe,.o_doceditor.o_web_document .o_office365 iframe{width:100%;height:calc(100vh - 321px);height:calc(var(--doceditorvh, 1vh) * 100 - 321px);margin-top:10px;margin-bottom:10px;border-width:1px}.o_doceditor.o_web_document_edit .o_collabora iframe,.o_doceditor.o_web_document_edit .o_onlyoffice iframe,.o_doceditor.o_web_document_edit .o_office365 iframe{width:100%;height:calc(100vh - 276px);height:calc(var(--doceditorvh, 1vh) * 100 - 276px);margin-top:10px;margin-bottom:25px;border-width:1px}.o_doceditor .o_file_editor,.o_doceditor .o_doceditor_data_transfer{margin-right:15px;margin-left:15px}.o_web_content .o_doceditor{margin-top:0px}.o_taxonomy div#o_main_toolbar.o_toolbar{margin-top:0px}.o_taxonomy_listing.o_rendertype_custom .o_table_body.container-fluid{padding-right:0px;padding-left:0px}.o_taxonomy_listing.o_rendertype_custom .o_taxonomy_row{position:relative;display:inline-block;height:225px;width:450px;vertical-align:top;margin-right:10px}.o_taxonomy_listing.o_rendertype_custom .o_taxonomy_row ul{padding-left:2em}.ui-widget{font-family:Roboto,"Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;font-size:100%}.ui-widget-header{border-top:none;border-left:none;border-right:none;border-bottom:1px solid #eee;background:#fff;font-weight:bold}.ui-icon,.ui-widget-content .ui-icon,.ui-widget-header .ui-icon,.ui-state-default .ui-icon,.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-active .ui-icon,.ui-state-highlight .ui-icon,.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background:none;background-image:none}.ui-dialog{-webkit-box-shadow:0px 1px 8px -1px rgba(0,0,0,0.35);box-shadow:0px 1px 8px -1px rgba(0,0,0,0.35);background-color:#fefefe}.ui-dialog .ui-widget-header .ui-dialog-title{color:#342c24;font-weight:500;font-family:inherit;line-height:1.1}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close:before{content:"ï€" !important}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ui-dialog .ui-widget-header .ui-dialog-titlebar-close span{display:none}.ui-dialog .ui-widget-header .ui-button.ui-corner-all{border:none !important;background:#fff !important;float:right}.ui-dialog .ui-widget-content{border-color:#fff;padding:5px;overflow:auto;background:white !important}.ui-dialog .ui-dialog-titlebar{padding:4px 7px 4px 7px;background-color:#eee !important}.ui-dialog.ui-corner-all{border-radius:4px}.ui-dialog.ui-widget-content{border:1px solid transparent}.ui-dialog.o_modal-ui{max-width:100vw;max-height:100vh}.ui-dialog.o_modal-ui div.ui-dialog-buttonpane{display:none}@media (max-width: 767px){.ui-dialog.o_modal-ui{height:100vh !important;width:100vw !important}.ui-dialog.o_modal-ui div.ui-dialog-content{height:90vh !important}}.ui-slider.ui-slider-horizontal.ui-widget-content{border-color:#aaa;background:#f9f9f9}.ui-slider.ui-slider-horizontal.ui-widget-content.ui-state-disabled{opacity:0.65}.o_has_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:1px solid #209d9e;background-image:none;background-color:#209d9e}.o_no_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:3px solid #209d9e;background-image:none}.ui-datepicker{z-index:2000 !important;-webkit-box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15);box-shadow:0px 1px 5px -1px rgba(0,0,0,0.15)}.ui-datepicker .ui-widget-header .ui-corner-all,.ui-datepicker .ui-widget-header .ui-datepicker-next.ui-corner-all{border:none !important;background:#fff !important}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e:before{content:"ï¡";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w:before{content:"ï ";font-weight:normal;color:black}.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-e,.ui-datepicker .ui-widget-header .ui-icon.ui-icon-circle-triangle-w{font-family:'FontAwesome';display:inline-block;background-image:none;background-position:0 0;font-weight:normal;text-indent:0;color:white}.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-widget-header .ui-datepicker .ui-datepicker-next-hover{top:2px}.ui-datepicker .ui-state-default{background:#eee}.ui-datepicker .ui-state-highlight,.ui-datepicker .ui-widget-content .ui-state-highlight{border:1px solid #1c8889;background:#209d9e;color:#fff}.ui-datepicker.ui-corner-all{border-radius:4px}.ui-datepicker.ui-widget-content{border:1px solid transparent}label.mce-label{display:inline;max-width:150px;margin-bottom:0;font-weight:normal}.o_richtext_mce_without_path .mce-statusbar{border:none}.o_richtext_mce_without_path .mce-path{display:none !important}.o_richtext_mce_without_path .mce-menubtn.mce-fixed-width span{width:auto}.o_richtext_mce>.o_richtext_mce_modes{text-align:right;padding-right:4px}.o_richtext_mce>.o_richtext_mce_modes a{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}i.mce-ico.mce-i-media,i.mce-ico.mce-i-movie,i.mce-ico.mce-i-help,i.mce-ico.mce-i-gaptext,i.mce-ico.mce-i-gapnumerical,i.mce-ico.mce-i-hottext,i.mce-ico.mce-i-edit{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}i.mce-ico.mce-i-media:before{content:""}i.mce-ico.mce-i-movie:before{content:""}i.mce-ico.mce-i-gaptext:before{content:"ï…"}i.mce-ico.mce-i-gapnumerical:before{content:""}i.mce-ico.mce-i-hottext:before{content:"ï"}i.mce-ico.mce-i-math:before{content:'\03A3'}i.mce-ico.mce-i-edit:before{content:"ï„"}i.mce-ico.mce-i-help{width:9px;height:9px;padding-top:1px}i.mce-ico.mce-i-help:before{content:"ï™";color:white}.mce-tabs span.o_chelp_wrapper{float:right;margin:5px}.mce-wordcount:after{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0);content:"ï™"}.mce-danger .mce-wordcount:after{color:#d6001c;content:"ïª"}.mce-statusbar.mce-danger{background-color:#f2dede}.mce-textbox.mce-danger{border-color:#ce8383;background-color:#f2dede}@media (max-width: 470px){.mce-foot .mce-container-body.mce-abs-layout{left:-337px}}div.o_table_search>span.twitter-typeahead{padding-top:5px}.tag.label.label-info{margin-right:3px}@media print{a[href]:after{content:""}#o_header_wrapper,#o_offcanvas_right,#o_navbar_wrapper,#o_footer_wrapper,#o_toplink,#o_main_left,#o_main_right,#o_main_toolbar,#jsMath_PrintWarning,.o_segments,.o_table_toolbar,.o_breadcrumb,.o_bookmark,.o_noti,.o_opener,.o_hide,.o_noprint{display:none !important}.o_container_offcanvas{max-width:100%;margin-left:5px;margin-right:5px}.o_print_break_avoid{page-break-inside:avoid}.o_print_break_before{page-break-before:always}.o_print_break_after{clear:both;page-break-after:always}.btn{display:none}.o_form textarea,.o_form .form-control.textarea_disabled{-webkit-print-color-adjust:exact;color-adjust:exact;background:#fff !important;height:auto !important;color:#000 !important;resize:none}#o_comment_form_link,.o_comments form{display:none !important}.o_avatar{display:none}body.o_dmz{background:white !important;-webkit-print-color-adjust:exact;color-adjust:exact}.modal-content{border:0}.modal-header{display:none}.modal-body{padding:0}.modal-dialog{margin:0 !important;width:100% !important;height:100% !important;background:#fff !important;-webkit-print-color-adjust:exact;color-adjust:exact}.progress{page-break-inside:avoid;-webkit-print-color-adjust:exact;color-adjust:exact;background-color:rgba(0,0,0,0.1) !important;border:1px solid rgba(0,0,0,0.5)}.progress-bar{-webkit-print-color-adjust:exact;background-color:#000 !important;border:10px solid #000}.ui-slider.ui-slider-horizontal.ui-widget-content{-webkit-print-color-adjust:exact;color-adjust:exact;background:#f9f9f9 !important}.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{-webkit-print-color-adjust:exact;color-adjust:exact}.o_has_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{background-color:#209d9e !important}.o_no_value.ui-slider.ui-slider-horizontal.ui-widget-content .ui-slider-handle{border:none !important}.radial-progress,.o_coursetable.o_rendertype_classic .o_progress .radial-progress{page-break-inside:avoid;-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#eee !important}.radial-progress .circle .mask .fill{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#000 !important}.radial-progress .inset,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset{-webkit-print-color-adjust:exact;color-adjust:exact;background-color:#fff !important}.radial-progress .inset .bgIcon,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon{opacity:0.3;transition:opacity 0.3}.radial-progress .inset .bgIcon:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .bgIcon:before,.radial-progress .inset .o_icon_progress_danger:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .o_icon_progress_danger:before,.radial-progress .inset .o_icon_progress_success:before,.o_coursetable.o_rendertype_classic .o_progress .radial-progress .inset .o_icon_progress_success:before{opacity:0.3;transition:opacity 0.3;color:#777 !important}.radial-progress:not([data-progress="0"]) .inset .bgIcon{opacity:0.3;transition:opacity 0.3;color:#777 !important}body{margin:0;zoom:0.6}table,figure,figure{page-break-inside:avoid}h1,h2,h3,h4,.o_cal .fc-header-title h2,h5,h6{page-break-after:avoid}.o_disclaimer .o_disclaimer_content{max-height:none}}.o_highscore .o_position{text-align:center;font-size:1.2em;font-weight:bold}.o_highscore .o_position h2{font-size:3em;font-weight:700;line-height:1.2em}@media screen and (-webkit-min-device-pixel-ratio: 0){.o_highscore .o_position h2{background:linear-gradient(330deg, #e05252 0%, #99e052 25%, #52e0e0 50%, #9952e0 75%, #e05252 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline}.o_highscore .o_position h2:after{content:"\A";white-space:pre}}.o_highscore .o_position_relative{font-size:1em;font-weight:normal}.o_highscore .o_podium{position:relative;vertical-align:bottom;height:300px;margin-bottom:50px}.o_highscore .o_rank{width:30%;position:absolute;bottom:0;text-shadow:rgba(102,102,102,0.5) 0 -1px 0,rgba(255,255,255,0.6) 0 2px 1px}.o_highscore .o_rank:before{position:absolute;bottom:0;left:0;width:100%;text-align:center}.o_highscore .o_rank .o_name{position:absolute;top:100%;width:100%;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:1em;text-shadow:none}.o_highscore .o_rank .o_score{color:#777;font-size:90%;width:100%;text-align:center;position:absolute;top:-20px;text-shadow:none}.o_highscore .o_rank .o_singleportrait{position:absolute;width:100%;text-align:center;top:-125px}.o_highscore .o_rank .o_rank_portraits{position:relative;left:0;top:-210px;height:180px;width:200px;text-align:center;vertical-align:bottom;display:table-cell}.o_highscore .o_rank .o_rank_portraits ul{display:inline-block}.o_highscore .o_rank .o_rank_portraits .o_portrait{margin:5px}.o_highscore .o_first{height:150px;left:30%;border:1px solid #d9d9d9;border-top-left-radius:4px;border-top-right-radius:4px;background:gold;background:-moz-linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);background:-webkit-linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);background:linear-gradient(top, #fff7cc 0%, #ffdf33 50%, gold 51%, #ffe766 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 )}.o_highscore .o_first:before{content:"1";font-size:700%;line-height:150px;color:#666}.o_highscore .o_second{height:100px;left:0;background:silver;background:-moz-linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);background:-webkit-linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);background:linear-gradient(top, #fff 0%, #dadada 50%, silver 51%, #f3f3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 );border-left:1px solid #d9d9d9;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-top-left-radius:4px}.o_highscore .o_second:before{content:"2";font-size:500%;line-height:100px;color:#666}.o_highscore .o_third{height:80px;left:60%;background:#cd7f32;background:-moz-linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);background:-webkit-linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);background:linear-gradient(top, #f5e5d6 0%, #d7995b 50%, #cd7f32 51%, #e1b284 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='$basecolor', endColorstr='lighten($basecolor,20%)',GradientType=0 );border-right:1px solid #d9d9d9;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;border-top-right-radius:4px}.o_highscore .o_third:before{content:"3";font-size:300%;line-height:80px;color:#666}.o_highscore .o_histogram{position:relative;bottom:-40px;margin-bottom:40px}.o_highscore .o_histogram .d3chart{width:100%;padding-top:50px;height:300px}.o_highscore .o_histogram .d3chart text{fill:#888}.o_highscore .o_histogram .d3chart .axis path,.o_highscore .o_histogram .d3chart .axis line{stroke:#888}.o_highscore .o_histogram .d3chart .o_myself{fill:#209d9e}.o_highscore .o_histogram .d3chart .o_myself:hover{fill:#29c7c8}.o_highscore .o_histogram .d3chart .o_other{fill:#777}.o_highscore .o_histogram .d3chart .o_other:hover{fill:#919191}.o_highscore .o_histogram .d3chart .o_empty{fill:#000}.o_listing .o_table_wrapper.o_table_flexi .table{margin-top:0}.o_listing table th:nth-of-type(1),.o_listing table th :nth-of-type(2){width:5em}.o_navbar-brand{background-image:url("images/OpenOlat_Logo_RGB.svg");background-position:-35px -62px;background-size:250px;background-repeat:no-repeat;height:50px;width:60px}#o_print_brand .o_navbar-brand{background-image:url("images/OpenOlat_Logo_RGB.svg")}.o_cmembers_print #o_print_brand{width:5cm}#o_body.o_dmz .o_navbar-brand{display:none}#o_body.o_dmz .o_login .o_login_intro{position:relative;text-align:center}#o_body.o_dmz .o_login .o_login_intro:before{content:' ';display:inline-block;background-image:url("images/OpenOlat_Logo_claim_RGB.svg");background-repeat:no-repeat;background-position:0px -110px;background-size:100%;width:400px;max-width:100%;height:90px}#o_body.o_dmz .o_login .o_login_intro h1{display:none}@media (min-width: 767px){#o_body.o_dmz #o_bg{background-position:top left;border-top:0;border-bottom:0}#o_body.o_dmz #o_navbar_wrapper{border:0}#o_body.o_dmz .o_login{background:rgba(255,255,255,0.8);width:480px;left:10%;padding:40px;border-radius:20px;position:relative}#o_body.o_dmz .o_login .o_login_intro{padding-top:120px}#o_body.o_dmz .o_login .o_login_intro:before{position:absolute;top:0;left:-25px;background-position:-40px -150px;background-size:510px;width:460px;height:110px}#o_body.o_dmz .o_infomessage_wrapper{background:rgba(255,255,255,0.8);left:500px;width:400px;top:-30px;width:400xp;position:absolute;border-radius:20px}#o_body.o_dmz #o_navbar_wrapper{background:transparent}#o_body.o_dmz .o_navbar-nav>li>a,#o_body.o_dmz #o_footer_wrapper a{color:#FFF}#o_body.o_dmz .o_navbar-nav>li>a:hover,#o_body.o_dmz #o_footer_wrapper a:hover{background-color:transparent}#o_body.o_dmz #o_footer_wrapper{background:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.2) 40%, rgba(0,0,0,0.5) 100%);border:0;height:100px;padding-top:30px}#o_body.o_dmz #o_footer_container{background:transparent;color:#FFF}#o_body.o_dmz #o_share_social_container a{color:#209d9e}#o_body.o_dmz #o_share_social_container a:hover{color:#177374}}#o_footer_wrapper{border-top:1px solid #e6e6e6} /*# sourceMappingURL=theme.css.map */ diff --git a/src/main/webapp/static/themes/openolat/theme.css.map b/src/main/webapp/static/themes/openolat/theme.css.map index b72b3c4132c750ff9d941d8efba289d75667e20f..353df0abf7fb023a9bbec9812d8d6c3a9570c352 100644 --- a/src/main/webapp/static/themes/openolat/theme.css.map +++ b/src/main/webapp/static/themes/openolat/theme.css.map @@ -1,6 +1,6 @@ { "version": 3, -"mappings": "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", +"mappings": "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", "sources": ["fonts/_fonts.scss","../light/_license.scss","../../bootstrap/stylesheets/bootstrap/_normalize.scss","../../bootstrap/stylesheets/bootstrap/_print.scss","../../bootstrap/stylesheets/bootstrap/_scaffolding.scss","../../bootstrap/stylesheets/bootstrap/mixins/_vendor-prefixes.scss","../light/_config.scss","../../bootstrap/stylesheets/bootstrap/_variables.scss","../../bootstrap/stylesheets/bootstrap/mixins/_tab-focus.scss","../../bootstrap/stylesheets/bootstrap/mixins/_image.scss","../../bootstrap/stylesheets/bootstrap/_type.scss","../../bootstrap/stylesheets/bootstrap/mixins/_text-emphasis.scss","../../bootstrap/stylesheets/bootstrap/mixins/_background-variant.scss","../../bootstrap/stylesheets/bootstrap/mixins/_clearfix.scss","../../bootstrap/stylesheets/bootstrap/mixins/_text-overflow.scss","../../bootstrap/stylesheets/bootstrap/_code.scss","../../bootstrap/stylesheets/bootstrap/_grid.scss","../../bootstrap/stylesheets/bootstrap/mixins/_grid.scss","../../bootstrap/stylesheets/bootstrap/mixins/_grid-framework.scss","../../bootstrap/stylesheets/bootstrap/_tables.scss","../../bootstrap/stylesheets/bootstrap/mixins/_table-row.scss","../../bootstrap/stylesheets/bootstrap/_forms.scss","../../bootstrap/stylesheets/bootstrap/mixins/_forms.scss","../../bootstrap/stylesheets/bootstrap/_buttons.scss","../../bootstrap/stylesheets/bootstrap/mixins/_buttons.scss","../../bootstrap/stylesheets/bootstrap/mixins/_opacity.scss","../../bootstrap/stylesheets/bootstrap/_component-animations.scss","../../bootstrap/stylesheets/bootstrap/_dropdowns.scss","../../bootstrap/stylesheets/bootstrap/mixins/_nav-divider.scss","../../bootstrap/stylesheets/bootstrap/mixins/_reset-filter.scss","../../bootstrap/stylesheets/bootstrap/_button-groups.scss","../../bootstrap/stylesheets/bootstrap/mixins/_border-radius.scss","../../bootstrap/stylesheets/bootstrap/_input-groups.scss","../../bootstrap/stylesheets/bootstrap/_navs.scss","../../bootstrap/stylesheets/bootstrap/_navbar.scss","../../bootstrap/stylesheets/bootstrap/mixins/_nav-vertical-align.scss","../../bootstrap/stylesheets/bootstrap/_breadcrumbs.scss","../../bootstrap/stylesheets/bootstrap/_pagination.scss","../../bootstrap/stylesheets/bootstrap/mixins/_pagination.scss","../../bootstrap/stylesheets/bootstrap/_pager.scss","../../bootstrap/stylesheets/bootstrap/_labels.scss","../../bootstrap/stylesheets/bootstrap/mixins/_labels.scss","../../bootstrap/stylesheets/bootstrap/_badges.scss","../../bootstrap/stylesheets/bootstrap/_jumbotron.scss","../../bootstrap/stylesheets/bootstrap/_thumbnails.scss","../../bootstrap/stylesheets/bootstrap/_alerts.scss","../../bootstrap/stylesheets/bootstrap/mixins/_alerts.scss","../../bootstrap/stylesheets/bootstrap/_progress-bars.scss","../../bootstrap/stylesheets/bootstrap/mixins/_gradients.scss","../../bootstrap/stylesheets/bootstrap/mixins/_progress-bar.scss","../../bootstrap/stylesheets/bootstrap/_media.scss","../../bootstrap/stylesheets/bootstrap/_list-group.scss","../../bootstrap/stylesheets/bootstrap/mixins/_list-group.scss","../../bootstrap/stylesheets/bootstrap/_panels.scss","../../bootstrap/stylesheets/bootstrap/mixins/_panels.scss","../../bootstrap/stylesheets/bootstrap/_responsive-embed.scss","../../bootstrap/stylesheets/bootstrap/_wells.scss","../../bootstrap/stylesheets/bootstrap/_close.scss","../../bootstrap/stylesheets/bootstrap/_modals.scss","../../bootstrap/stylesheets/bootstrap/_tooltip.scss","../../bootstrap/stylesheets/bootstrap/_popovers.scss","../../bootstrap/stylesheets/bootstrap/_utilities.scss","../../bootstrap/stylesheets/bootstrap/mixins/_center-block.scss","../../bootstrap/stylesheets/bootstrap/mixins/_hide-text.scss","../../bootstrap/stylesheets/bootstrap/_responsive-utilities.scss","../../bootstrap/stylesheets/bootstrap/mixins/_responsive-visibility.scss","../light/modules/_bootstrap.scss","../light/modules/_fonts.scss","../../font-awesome/scss/_path.scss","../../font-awesome/scss/_core.scss","../../font-awesome/scss/_larger.scss","../../font-awesome/scss/_fixed-width.scss","../../font-awesome/scss/_list.scss","../../font-awesome/scss/_variables.scss","../../font-awesome/scss/_bordered-pulled.scss","../../font-awesome/scss/_animated.scss","../../font-awesome/scss/_rotated-flipped.scss","../../font-awesome/scss/_mixins.scss","../../font-awesome/scss/_stacked.scss","../light/modules/_icons.scss","_openolat_config.scss","../light/modules/_emoticons.scss","../light/modules/_helpers.scss","../light/modules/_type.scss","../light/modules/_content_embedded.scss","../light/modules/_mixins.scss","../light/modules/_tinymce.scss","../light/modules/_radial-progress.scss","../light/modules/_layout.scss","../light/modules/_main.scss","../light/modules/_footer.scss","../light/modules/_navbar.scss","../light/modules/_toolbar.scss","../light/modules/_offcanvas.scss","../light/modules/_dialog.scss","../light/modules/_tree.scss","../light/modules/_breadcrumb.scss","../light/modules/_form.scss","../light/modules/_table.scss","../light/modules/_im.scss","../light/modules/_flags.scss","../light/modules/_rating_and_comments.scss","../light/modules/_chart.scss","../light/modules/_forum.scss","../light/modules/_various_modules.scss","../light/modules/_autocomplete.scss","../light/modules/_search.scss","../light/modules/_wizard.scss","../light/modules/_process.scss","../light/modules/_cal.scss","../light/modules/_pagecontenteditor.scss","../light/modules/_coursesite.scss","../light/modules/_repository.scss","../light/modules/_course.scss","../light/modules/_curriculum.scss","../light/modules/_qti.scss","../light/modules/_qti21.scss","../light/modules/_devel.scss","../light/modules/_wiki.scss","../light/modules/_portfolio.scss","../light/modules/_portfoliomaps/_epmst_default.scss","../light/modules/_portfoliomaps/_mixins.scss","../light/modules/_portfoliomaps/_epmst_comic.scss","../light/modules/_portfoliomaps/_epmst_leather.scss","../light/modules/_portfoliomaps/_epmst_green.scss","../light/modules/_portfoliomaps/_epmst_green2.scss","../light/modules/_portfoliomaps/_epmst_green3.scss","../light/modules/_portfoliomaps/_epmst_green4.scss","../light/modules/_portfoliomaps/_epmst_red.scss","../light/modules/_portfoliomaps/_epmst_red2.scss","../light/modules/_portfoliomaps/_epmst_red3.scss","../light/modules/_portfoliomaps/_epmst_red4.scss","../light/modules/_portfoliomaps/_epmst_blue.scss","../light/modules/_portfoliomaps/_epmst_blue2.scss","../light/modules/_portfoliomaps/_epmst_blue3.scss","../light/modules/_portfoliomaps/_epmst_blue4.scss","../light/modules/_portfolio_v2.scss","../light/modules/_evaluation_form.scss","../light/modules/_quality.scss","../light/modules/_citation.scss","../light/modules/_video.scss","../light/modules/_admin.scss","../light/modules/_qpool.scss","../light/modules/_dmz.scss","../light/modules/_portal.scss","../light/modules/_library.scss","../light/modules/_translationtool.scss","../light/modules/_user.scss","../light/modules/_members.scss","../light/modules/_grouptask.scss","../light/modules/_lecture.scss","../light/modules/_edubase.scss","../light/modules/_edusharing.scss","../light/modules/_doceditor.scss","../light/modules/_taxonomy.scss","../light/modules/_thirdparty.scss","../light/modules/_print.scss","../light/modules/_highscore.scss","_openolat_theme.scss"], "names": [], "file": "theme.css" diff --git a/src/test/java/org/olat/course/run/scoring/AverageCompletionEvaluatorTest.java b/src/test/java/org/olat/course/run/scoring/AverageCompletionEvaluatorTest.java index 47b6c0d0971afe8cd65e46f48eef02b06f18b40f..ca4405a5a0e7f21211395b3df1f01578b179a01b 100644 --- a/src/test/java/org/olat/course/run/scoring/AverageCompletionEvaluatorTest.java +++ b/src/test/java/org/olat/course/run/scoring/AverageCompletionEvaluatorTest.java @@ -92,10 +92,16 @@ public class AverageCompletionEvaluatorTest { AssessmentEvaluation childCalculatedEvaluation = createAssessmentEvaluation(mandatory, null, Double.valueOf(0.1), null, null); scoreAccounting.put(childCalculated, childCalculatedEvaluation); when(courseAssessmentService.getAssessmentConfig(childCalculated)).thenReturn(configEvaluated); + // Child: Calculated, fully assessed + CourseNode childCalculated2 = new STCourseNode(); + parent.addChild(childCalculated2); + AssessmentEvaluation childCalculatedEvaluation2 = createAssessmentEvaluation(mandatory, null, Double.valueOf(0.1), null, Boolean.TRUE); + scoreAccounting.put(childCalculated2, childCalculatedEvaluation2); + when(courseAssessmentService.getAssessmentConfig(childCalculated2)).thenReturn(configEvaluated); // Child level 2: calculated CourseNode child2Uncalculated = new SPCourseNode(); - childCalculated.addChild(child2Uncalculated); + childCalculated2.addChild(child2Uncalculated); AssessmentEvaluation child2UncalculatedEvaluation = createAssessmentEvaluation(mandatory, null, Double.valueOf(1.0), null, null); scoreAccounting.put(child2Uncalculated, child2UncalculatedEvaluation); when(courseAssessmentService.getAssessmentConfig(child2Uncalculated)).thenReturn(configSetByNode); diff --git a/src/test/java/org/olat/modules/forms/manager/EvaluationFormReportDAOTest.java b/src/test/java/org/olat/modules/forms/manager/EvaluationFormReportDAOTest.java index eef54f22cc10773783604a9c9c5f7d7dbc6054b4..8d6e440b2afec464b691bed36f967e73184bbe60 100644 --- a/src/test/java/org/olat/modules/forms/manager/EvaluationFormReportDAOTest.java +++ b/src/test/java/org/olat/modules/forms/manager/EvaluationFormReportDAOTest.java @@ -203,9 +203,11 @@ public class EvaluationFormReportDAOTest extends OlatTestCase { EvaluationFormSession session1 = evaTestHelper.createSession(); EvaluationFormSession session2 = evaTestHelper.createSession(); EvaluationFormSession session3 = evaTestHelper.createSession(); + EvaluationFormSession session4 = evaTestHelper.createSession(); EvaluationFormSession otherSession = evaTestHelper.createSession(); BigDecimal numberThreeTimes = BigDecimal.valueOf(1); BigDecimal numberOnce = BigDecimal.valueOf(2); + BigDecimal ten = BigDecimal.valueOf(10); evaluationFormManager.createNumericalResponse(responseIdentifier1, otherSession, numberThreeTimes); evaluationFormManager.createNoResponse(responseIdentifier1, session1); @@ -216,18 +218,21 @@ public class EvaluationFormReportDAOTest extends OlatTestCase { evaluationFormManager.finishSession(session1); evaluationFormManager.createNumericalResponse(responseIdentifier1, session2, numberThreeTimes); evaluationFormManager.finishSession(session2); - // unfinished session counts as well + evaluationFormManager.createNumericalResponse(responseIdentifier1, session4, ten); + evaluationFormManager.finishSession(session4); + // unfinished session counts as well (use filter if not wanted) evaluationFormManager.createNumericalResponse(responseIdentifier1, session3, numberThreeTimes); dbInstance.commit(); List<String> responseIdentifiers = Arrays.asList(responseIdentifier1, responseIdentifier2); - List<EvaluationFormSession> sessions = Arrays.asList(session1, session2, session3); + List<EvaluationFormSession> sessions = Arrays.asList(session1, session2, session3, session4); SessionFilter filter = SessionFilterFactory.create(sessions); List<CalculatedLong> counts = sut.getCountByIdentifiersAndNumerical(responseIdentifiers, filter); - assertThat(counts).hasSize(3); + assertThat(counts).hasSize(4); assertThat(getValue(counts, responseIdentifier1, numberThreeTimes.toPlainString())).isEqualTo(3); assertThat(getValue(counts, responseIdentifier1, numberOnce.toPlainString())).isEqualTo(1); + assertThat(getValue(counts, responseIdentifier1, ten.toPlainString())).isEqualTo(1); assertThat(getValue(counts, responseIdentifier2, numberOnce.toPlainString())).isEqualTo(1); } diff --git a/src/test/java/org/olat/modules/grading/manager/GraderToIdentityDAOTest.java b/src/test/java/org/olat/modules/grading/manager/GraderToIdentityDAOTest.java index 8a749c23d489147148687742a51f9c45b00b2669..60115b3ce8c8789621220326b995bb1fa5d8c828 100644 --- a/src/test/java/org/olat/modules/grading/manager/GraderToIdentityDAOTest.java +++ b/src/test/java/org/olat/modules/grading/manager/GraderToIdentityDAOTest.java @@ -19,6 +19,7 @@ */ package org.olat.modules.grading.manager; +import java.util.Arrays; import java.util.Calendar; import java.util.Date; import java.util.List; @@ -50,8 +51,6 @@ import org.olat.user.AbsenceLeave; import org.olat.user.manager.AbsenceLeaveDAO; import org.springframework.beans.factory.annotation.Autowired; -import edu.emory.mathcs.backport.java.util.Arrays; - /** * * Initial date: 21 janv. 2020<br> @@ -212,6 +211,53 @@ public class GraderToIdentityDAOTest extends OlatTestCase { Assert.assertFalse(graderAbsenceLeaves.contains(absenceLeave4)); } + @Test + public void findGradersWithAssignmentInAbsenceLeave() { + Identity grader1 = JunitTestHelper.createAndPersistIdentityAsRndUser("grader-50"); + Identity grader2 = JunitTestHelper.createAndPersistIdentityAsRndUser("grader-51"); + Identity grader3 = JunitTestHelper.createAndPersistIdentityAsRndUser("grader-52"); + Identity student1 = JunitTestHelper.createAndPersistIdentityAsRndUser("student-53"); + Identity student2 = JunitTestHelper.createAndPersistIdentityAsRndUser("student-54"); + Identity student3 = JunitTestHelper.createAndPersistIdentityAsRndUser("student-55"); + RepositoryEntry entry = JunitTestHelper.createRandomRepositoryEntry(grader1); + dbInstance.commitAndCloseSession(); + + GraderToIdentity relation1 = gradedToIdentityDao.createRelation(entry, grader1); + GraderToIdentity relation2 = gradedToIdentityDao.createRelation(entry, grader2); + GraderToIdentity relation3 = gradedToIdentityDao.createRelation(entry, grader3); + dbInstance.commit(); + + AssessmentEntry assessment1 = assessmentEntryDao + .createAssessmentEntry(student1, null, entry, null, Boolean.TRUE, entry); + AssessmentEntry assessment2 = assessmentEntryDao + .createAssessmentEntry(student2, null, entry, null, Boolean.TRUE, entry); + AssessmentEntry assessment3 = assessmentEntryDao + .createAssessmentEntry(student3, null, entry, null, Boolean.TRUE, entry); + + gradingAssignmentDao.createGradingAssignment(relation1, entry, assessment1, null, null); + gradingAssignmentDao.createGradingAssignment(relation2, entry, assessment2, null, null); + gradingAssignmentDao.createGradingAssignment(relation3, entry, assessment3, null, null); + dbInstance.commit(); + + absenceLeaveDao.createAbsenceLeave(grader1, addDaysToNow(-25), addDaysToNow(-10), null, null); + absenceLeaveDao.createAbsenceLeave(grader1, addDaysToNow(23), addDaysToNow(35), entry.getOlatResource(), "76325457"); + absenceLeaveDao.createAbsenceLeave(grader2, null, null, null, null); + dbInstance.commit(); + + List<GraderToIdentity> onLeavesNow = gradedToIdentityDao.findGradersWithAssignmentInAbsenceLeave(new Date()); + Assert.assertFalse(onLeavesNow.isEmpty()); + Assert.assertFalse(onLeavesNow.contains(relation1)); + Assert.assertTrue(onLeavesNow.contains(relation2)); + Assert.assertFalse(onLeavesNow.contains(relation3)); + + // + List<GraderToIdentity> onLeavesInThePast = gradedToIdentityDao.findGradersWithAssignmentInAbsenceLeave(addDaysToNow(-15)); + Assert.assertFalse(onLeavesInThePast.isEmpty()); + Assert.assertTrue(onLeavesInThePast.contains(relation1)); + Assert.assertTrue(onLeavesInThePast.contains(relation2)); + Assert.assertFalse(onLeavesInThePast.contains(relation3)); + } + @Test public void getGrader() { Identity grader = JunitTestHelper.createAndPersistIdentityAsRndUser("grader-5"); diff --git a/src/test/java/org/olat/modules/grading/manager/GradingAssignmentDAOTest.java b/src/test/java/org/olat/modules/grading/manager/GradingAssignmentDAOTest.java index 6c0d8dd81679a46f832765308266606df0310b9e..0f2aa7fa5eae5ca07877aa755702a39a1f800932 100644 --- a/src/test/java/org/olat/modules/grading/manager/GradingAssignmentDAOTest.java +++ b/src/test/java/org/olat/modules/grading/manager/GradingAssignmentDAOTest.java @@ -33,6 +33,7 @@ import org.olat.modules.assessment.AssessmentEntry; import org.olat.modules.assessment.manager.AssessmentEntryDAO; import org.olat.modules.grading.GraderToIdentity; import org.olat.modules.grading.GradingAssignment; +import org.olat.modules.grading.GradingAssignmentStatus; import org.olat.modules.grading.RepositoryEntryGradingConfiguration; import org.olat.modules.grading.model.GradingAssignmentSearchParameters; import org.olat.modules.grading.model.GradingAssignmentWithInfos; @@ -257,6 +258,52 @@ public class GradingAssignmentDAOTest extends OlatTestCase { Assert.assertTrue(assignments.contains(assignment)); } + @Test + public void getGradingAssignments_graderToIdentity() { + Identity author = JunitTestHelper.createAndPersistIdentityAsRndUser("assignment-author-60"); + Identity grader = JunitTestHelper.createAndPersistIdentityAsRndUser("assignment-grader-61"); + Identity student = JunitTestHelper.createAndPersistIdentityAsRndUser("assignment-student-62"); + RepositoryEntry entry = JunitTestHelper.createRandomRepositoryEntry(author); + AssessmentEntry assessment = assessmentEntryDao + .createAssessmentEntry(student, null, entry, null, false, entry); + + GraderToIdentity relation = gradedToIdentityDao.createRelation(entry, grader); + GradingAssignment assignment = gradingAssignmentDao.createGradingAssignment(relation, entry, assessment, null, new Date()); + dbInstance.commitAndCloseSession(); + + List<GradingAssignment> assignments = gradingAssignmentDao.getGradingAssignments(relation); + Assert.assertNotNull(assignments); + Assert.assertEquals(1, assignments.size()); + Assert.assertTrue(assignments.contains(assignment)); + } + + @Test + public void getGradingAssignments_graderToIdentityAndStatus() { + Identity author = JunitTestHelper.createAndPersistIdentityAsRndUser("assignment-author-60"); + Identity grader = JunitTestHelper.createAndPersistIdentityAsRndUser("assignment-grader-61"); + Identity student = JunitTestHelper.createAndPersistIdentityAsRndUser("assignment-student-62"); + RepositoryEntry entry = JunitTestHelper.createRandomRepositoryEntry(author); + AssessmentEntry assessment = assessmentEntryDao + .createAssessmentEntry(student, null, entry, null, false, entry); + + GraderToIdentity relation = gradedToIdentityDao.createRelation(entry, grader); + GradingAssignment assignment = gradingAssignmentDao.createGradingAssignment(relation, entry, assessment, null, new Date()); + dbInstance.commitAndCloseSession(); + + // assigned and in progress + List<GradingAssignment> assignments = gradingAssignmentDao.getGradingAssignments(relation, + GradingAssignmentStatus.assigned, GradingAssignmentStatus.inProcess); + Assert.assertNotNull(assignments); + Assert.assertEquals(1, assignments.size()); + Assert.assertTrue(assignments.contains(assignment)); + + // unassigned -> empty + List<GradingAssignment> unAssignments = gradingAssignmentDao.getGradingAssignments(relation, + GradingAssignmentStatus.unassigned); + Assert.assertNotNull(unAssignments); + Assert.assertTrue(unAssignments.isEmpty()); + } + @Test public void findGradingAssignments_all() { Identity author = JunitTestHelper.createAndPersistIdentityAsRndUser("assignment-author-10"); @@ -375,11 +422,11 @@ public class GradingAssignmentDAOTest extends OlatTestCase { config.setSecondReminderBody("Content"); gradingConfigurationDao.updateConfiguration(config); - assignment.setAssignmentDate(removeDays(4)); + assignment.setAssignmentDate(removeDays(5)); assignment = gradingAssignmentDao.updateAssignment(assignment); dbInstance.commitAndCloseSession(); - List<GradingAssignment> assignmentsToRemind = gradingAssignmentDao.getGradingAssignmentsToRemind(); + List<GradingAssignment> assignmentsToRemind = gradingAssignmentDao.getGradingAssignmentsOpenWithPotentialToRemind(); Assert.assertNotNull(assignmentsToRemind); Assert.assertTrue(assignmentsToRemind.contains(assignment)); } diff --git a/src/test/java/org/olat/modules/grading/manager/GradingServiceTest.java b/src/test/java/org/olat/modules/grading/manager/GradingServiceTest.java index fb4cc7ebc9ba2d81999069208c5ef670c21f3aa4..902da445aa5c73de4cc747309ae4343997c7aadf 100644 --- a/src/test/java/org/olat/modules/grading/manager/GradingServiceTest.java +++ b/src/test/java/org/olat/modules/grading/manager/GradingServiceTest.java @@ -30,6 +30,7 @@ import org.junit.Assert; import org.junit.Test; import org.olat.core.commons.persistence.DB; import org.olat.core.id.Identity; +import org.olat.core.util.mail.MailerResult; import org.olat.core.util.resource.OresHelper; import org.olat.modules.assessment.AssessmentEntry; import org.olat.modules.assessment.manager.AssessmentEntryDAO; @@ -87,6 +88,33 @@ public class GradingServiceTest extends OlatTestCase { dbInstance.commit(); } + @Test + public void isGradingEnable() { + Identity author = JunitTestHelper.createAndPersistIdentityAsRndUser("grading-config-1"); + RepositoryEntry entry = JunitTestHelper.createRandomRepositoryEntry(author); + dbInstance.commitAndCloseSession(); + + // no configuration -> not enabled + boolean noGradingConfiguration = gradingService.isGradingEnabled(entry, null); + Assert.assertFalse(noGradingConfiguration); + + // configuration not enabled + RepositoryEntryGradingConfiguration config = gradingService.getOrCreateConfiguration(entry); + config.setGradingEnabled(false); + gradingService.updateConfiguration(config); + dbInstance.commit(); + boolean notEnabled = gradingService.isGradingEnabled(entry, null); + Assert.assertFalse(notEnabled); + + // configuration is enabled + RepositoryEntryGradingConfiguration enableConfig = gradingService.getOrCreateConfiguration(entry); + enableConfig.setGradingEnabled(true); + gradingService.updateConfiguration(enableConfig); + dbInstance.commit(); + boolean enabled = gradingService.isGradingEnabled(entry, null); + Assert.assertTrue(enabled); + } + @Test public void deleteIdentity_like() { Identity id = JunitTestHelper.createAndPersistIdentityAsRndUser("time-1"); @@ -693,6 +721,110 @@ public class GradingServiceTest extends OlatTestCase { Assert.assertEquals(16060l, stats.getRecordedTimeInSeconds()); } + @Test + public void graderAbsencesLeavesReassignment() { + Identity author = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-40"); + RepositoryEntry entry = JunitTestHelper.createRandomRepositoryEntry(author); + + int numOfAssessmentEntries = 6; + List<AssessmentEntry> assessmentEntries = new ArrayList<>(); + for(int i=0; i<numOfAssessmentEntries; i++) { + Identity student = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-3-" + i); + AssessmentEntry assessment = assessmentEntryDao.createAssessmentEntry(student, null, entry, null, false, entry); + assessmentEntries.add(assessment); + } + + Identity grader1 = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-41"); + Identity grader2 = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-42"); + GraderToIdentity graderRelation1 = gradedToIdentityDao.createRelation(entry, grader1); + GraderToIdentity graderRelation2 = gradedToIdentityDao.createRelation(entry, grader2); + dbInstance.commit(); + Assert.assertNotNull(graderRelation1); + Assert.assertNotNull(graderRelation2); + + for(AssessmentEntry assessmentEntry:assessmentEntries) { + gradingService.assignGrader(entry, assessmentEntry, true); + } + dbInstance.commit(); + + absenceLeaveDao.createAbsenceLeave(grader1, addDaysToNow(-5), addDaysToNow(5), null, null); + dbInstance.commitAndCloseSession(); + + ((GradingServiceImpl)gradingService).graderAbsenceLeavesCheck(); + dbInstance.commitAndCloseSession(); + + List<GradingAssignment> assignments1 = gradingAssignmentDao.getGradingAssignments(grader1); + Assert.assertTrue(assignments1.isEmpty()); + + List<GradingAssignment> assignments2 = gradingAssignmentDao.getGradingAssignments(grader2); + Assert.assertEquals(6, assignments2.size()); + } + + @Test + public void deactivateGrader() { + Identity author = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-40"); + RepositoryEntry entry = JunitTestHelper.createRandomRepositoryEntry(author); + + int numOfAssessmentEntries = 4; + List<AssessmentEntry> assessmentEntries = new ArrayList<>(); + for(int i=0; i<numOfAssessmentEntries; i++) { + Identity student = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-3-" + i); + AssessmentEntry assessment = assessmentEntryDao.createAssessmentEntry(student, null, entry, null, false, entry); + assessmentEntries.add(assessment); + } + + Identity grader1 = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-41"); + Identity grader2 = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-42"); + GraderToIdentity graderRelation1 = gradedToIdentityDao.createRelation(entry, grader1); + dbInstance.commit(); + Assert.assertNotNull(graderRelation1); + + for(AssessmentEntry assessmentEntry:assessmentEntries) { + gradingService.assignGrader(entry, assessmentEntry, true); + } + dbInstance.commit(); + + // deactivate the first grader + MailerResult result = new MailerResult(); + gradingService.deactivateGrader(grader1, grader2, null, result); + dbInstance.commitAndCloseSession(); + + // checked that the assignments was transfered + List<GradingAssignment> assignments1 = gradingAssignmentDao.getGradingAssignments(grader1); + Assert.assertTrue(assignments1.isEmpty()); + List<GradingAssignment> assignments2 = gradingAssignmentDao.getGradingAssignments(grader2); + Assert.assertEquals(4, assignments2.size()); + } + + @Test + public void unassignGrader() { + Identity author = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-50"); + RepositoryEntry entry = JunitTestHelper.createRandomRepositoryEntry(author); + + Identity student = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-51"); + AssessmentEntry assessment = assessmentEntryDao.createAssessmentEntry(student, null, entry, null, false, entry); + Identity grader = JunitTestHelper.createAndPersistIdentityAsRndUser("assign-41"); + GraderToIdentity graderRelation = gradedToIdentityDao.createRelation(entry, grader); + dbInstance.commit(); + + gradingService.assignGrader(entry, assessment, true); + dbInstance.commit(); + + // check assignments + List<GradingAssignment> assignments = gradingAssignmentDao.getGradingAssignments(graderRelation); + Assert.assertEquals(1, assignments.size()); + GradingAssignment assignment = assignments.get(0); + Assert.assertEquals(assessment, assignment.getAssessmentEntry()); + + // unassign + gradingService.unassignGrader(assignment); + dbInstance.commitAndCloseSession(); + + // check + List<GradingAssignment> unassignments = gradingAssignmentDao.getGradingAssignments(graderRelation); + Assert.assertTrue(unassignments.isEmpty()); + } + private Date addDaysToNow(int days) { Calendar cal = Calendar.getInstance(); cal.add(Calendar.DATE, days);