From ff15fc0bf9914493a6bc42edaffce5158d41ebd6 Mon Sep 17 00:00:00 2001 From: Mark Friedrich Date: Mon, 4 Dec 2017 15:12:52 +0100 Subject: [PATCH 01/20] - added new "Jump log" for selected wormhole connections, closed #313 closed #449 closed #382 - added new "select connection" feature to map - ctrl + click for multiselect, closed #174 - added new "wormhole type" table to "Jump info" dialog, closed #174 - added new re-order drag&drop feature for pannels, #470 closed #234 - fixed PHP-Doc comments - added @throw statements - fixed some Javascript memory leaks with infinite counters - updated "Peity jQuery plugin" `3.2.0` -> `3.2.1` --- app/main/controller/accesscontroller.php | 11 + app/main/controller/admin.php | 8 + app/main/controller/api/access.php | 1 + app/main/controller/api/connection.php | 1 + app/main/controller/api/github.php | 2 + app/main/controller/api/map.php | 89 +- app/main/controller/api/route.php | 2 + app/main/controller/api/signature.php | 3 + app/main/controller/api/statistic.php | 2 + app/main/controller/api/system.php | 8 + app/main/controller/api/user.php | 10 + app/main/controller/ccp/sso.php | 16 + app/main/controller/ccp/universe.php | 3 + app/main/controller/controller.php | 15 + app/main/controller/logcontroller.php | 3 + app/main/controller/mapcontroller.php | 2 + app/main/controller/setup.php | 8 + app/main/cron/characterupdate.php | 3 + app/main/cron/mapupdate.php | 4 + app/main/db/database.php | 2 + app/main/lib/Monolog.php | 1 + app/main/lib/ccpclient.php | 3 + app/main/lib/config.php | 3 + app/main/lib/logging/AbstractCharacterLog.php | 1 + app/main/lib/logging/AbstractLog.php | 1 + app/main/lib/logging/LogCollection.php | 6 + app/main/lib/logging/RallyLog.php | 1 + .../handler/AbstractSlackWebhookHandler.php | 1 + .../handler/SlackMapWebhookHandler.php | 1 + .../handler/SlackRallyWebhookHandler.php | 1 + app/main/lib/socket.php | 3 +- app/main/lib/web.php | 1 + app/main/model/abstractmaptrackingmodel.php | 3 +- app/main/model/alliancemodel.php | 1 + app/main/model/basicmodel.php | 1 + app/main/model/characterlogmodel.php | 40 +- app/main/model/charactermodel.php | 8 + app/main/model/characterstatusmodel.php | 1 + app/main/model/connectionlogmodel.php | 84 + app/main/model/connectionmodel.php | 83 +- app/main/model/connectionscopemodel.php | 1 + app/main/model/corporationmodel.php | 1 + app/main/model/mapmodel.php | 23 +- app/main/model/mapscopemodel.php | 1 + app/main/model/maptypemodel.php | 1 + app/main/model/systemmodel.php | 2 + app/main/model/systemsignaturemodel.php | 2 + app/main/model/systemstatusmodel.php | 1 + app/main/model/systemtypemodel.php | 1 + .../model/universe/constellationmodel.php | 9 + app/main/model/universe/regionmodel.php | 9 + app/main/model/usermodel.php | 8 + app/main/model/wormholemodel.php | 28 +- app/pathfinder.ini | 2 +- js/app.js | 10 +- js/app/counter.js | 84 +- js/app/init.js | 3 + js/app/logging.js | 1 - js/app/map/map.js | 153 +- js/app/map/overlay.js | 86 +- js/app/map/system.js | 2 +- js/app/map/util.js | 420 +- js/app/mappage.js | 1 + js/app/module_map.js | 416 +- js/app/page.js | 123 +- js/app/render.js | 7 +- js/app/ui/connection_info.js | 966 ++ js/app/ui/demo_map.js | 28 +- js/app/ui/dialog/account_settings.js | 28 +- js/app/ui/dialog/credit.js | 8 +- js/app/ui/dialog/delete_account.js | 20 +- js/app/ui/dialog/jump_info.js | 72 +- js/app/ui/dialog/map_info.js | 26 +- js/app/ui/dialog/releases.js | 20 +- js/app/ui/system_graph.js | 91 +- js/app/ui/system_info.js | 82 +- js/app/ui/system_killboard.js | 134 +- js/app/ui/system_route.js | 149 +- js/app/ui/system_signature.js | 140 +- js/app/util.js | 69 +- js/lib/dom.jsPlumb-1.7.6.js | 3 +- js/lib/jquery.peity.min.js | 14 +- js/lib/morris.min.js | 2 +- js/lib/raphael-min.js | 14 +- js/lib/sortable.min.js | 2 + public/css/pathfinder.css | 7 +- public/css/pathfinder.css.br | Bin 54745 -> 0 bytes public/css/pathfinder.css.map | 7 - public/js/v1.3.0/app.js | 2 - public/js/v1.3.0/app.js.br | Bin 966 -> 0 bytes public/js/v1.3.0/app.js.map | 1 - public/js/v1.3.0/app/admin.js | 2 - public/js/v1.3.0/app/admin.js.br | Bin 122623 -> 0 bytes public/js/v1.3.0/app/admin.js.map | 1 - public/js/v1.3.0/app/datatables.loader.js | 2 - public/js/v1.3.0/app/datatables.loader.js.br | Bin 66135 -> 0 bytes public/js/v1.3.0/app/datatables.loader.js.map | 1 - public/js/v1.3.0/app/login.js | 2 - public/js/v1.3.0/app/login.js.br | Bin 109239 -> 0 bytes public/js/v1.3.0/app/login.js.map | 1 - public/js/v1.3.0/app/mappage.js | 2 - public/js/v1.3.0/app/mappage.js.br | Bin 247413 -> 0 bytes public/js/v1.3.0/app/mappage.js.map | 1 - public/js/v1.3.0/app/notification.js | 2 - public/js/v1.3.0/app/notification.js.br | Bin 35126 -> 0 bytes public/js/v1.3.0/app/notification.js.map | 1 - public/js/v1.3.0/app/setup.js | 2 - public/js/v1.3.0/app/setup.js.br | Bin 86666 -> 0 bytes public/js/v1.3.0/app/setup.js.map | 1 - public/js/v1.3.0/app/worker/map.js | 2 - public/js/v1.3.0/app/worker/map.js.br | Bin 648 -> 0 bytes public/js/v1.3.0/app/worker/map.js.map | 1 - public/js/v1.3.0/app/worker/message.js | 2 - public/js/v1.3.0/app/worker/message.js.br | Bin 148 -> 0 bytes public/js/v1.3.0/app/worker/message.js.map | 1 - .../js/v1.3.0/lib/bootstrap-image-gallery.js | 2 - .../v1.3.0/lib/bootstrap-image-gallery.js.br | Bin 464 -> 0 bytes .../v1.3.0/lib/bootstrap-image-gallery.js.map | 1 - public/js/v1.3.0/lib/jquery.fullscreen.min.js | 2 - .../js/v1.3.0/lib/jquery.fullscreen.min.js.br | Bin 1533 -> 0 bytes .../v1.3.0/lib/jquery.fullscreen.min.js.map | 1 - public/js/v1.3.0/lib/jsPlumb-2.0.5.js | 2 - public/js/v1.3.0/lib/jsPlumb-2.0.5.js.br | Bin 44063 -> 0 bytes public/js/v1.3.0/lib/jsPlumb-2.0.5.js.map | 1 - .../js/v1.3.0/lib/pnotify/pnotify.buttons.js | 2 - .../v1.3.0/lib/pnotify/pnotify.buttons.js.br | Bin 984 -> 0 bytes .../v1.3.0/lib/pnotify/pnotify.buttons.js.map | 1 - public/js/v1.3.0/lib/require.js | 2 - public/js/v1.3.0/lib/require.js.br | Bin 5628 -> 0 bytes public/js/v1.3.0/lib/require.js.map | 1 - public/js/v1.3.1/app.js | 188 + public/js/v1.3.1/app/admin.js | 45 + public/js/v1.3.1/app/conf/signature_type.js | 420 + public/js/v1.3.1/app/conf/system_effect.js | 733 + public/js/v1.3.1/app/counter.js | 118 + public/js/v1.3.1/app/datatables.loader.js | 11 + public/js/v1.3.1/app/init.js | 453 + public/js/v1.3.1/app/key.js | 451 + public/js/v1.3.1/app/logging.js | 530 + public/js/v1.3.1/app/login.js | 862 ++ public/js/v1.3.1/app/map/contextmenu.js | 132 + public/js/v1.3.1/app/map/local.js | 595 + public/js/v1.3.1/app/map/magnetizing.js | 180 + public/js/v1.3.1/app/map/map.js | 3356 ++++ public/js/v1.3.1/app/map/overlay.js | 716 + public/js/v1.3.1/app/map/scrollbar.js | 75 + public/js/v1.3.1/app/map/system.js | 321 + public/js/v1.3.1/app/map/util.js | 1023 ++ public/js/v1.3.1/app/map/worker.js | 127 + public/js/v1.3.1/app/mappage.js | 395 + public/js/v1.3.1/app/module_map.js | 1014 ++ public/js/v1.3.1/app/notification.js | 190 + public/js/v1.3.1/app/page.js | 1227 ++ public/js/v1.3.1/app/render.js | 186 + public/js/v1.3.1/app/setup.js | 178 + public/js/v1.3.1/app/ui/connection_info.js | 966 ++ public/js/v1.3.1/app/ui/demo_map.js | 314 + .../v1.3.1/app/ui/dialog/account_settings.js | 211 + public/js/v1.3.1/app/ui/dialog/credit.js | 51 + .../js/v1.3.1/app/ui/dialog/delete_account.js | 116 + public/js/v1.3.1/app/ui/dialog/jump_info.js | 92 + public/js/v1.3.1/app/ui/dialog/manual.js | 172 + public/js/v1.3.1/app/ui/dialog/map_info.js | 1284 ++ .../js/v1.3.1/app/ui/dialog/map_settings.js | 733 + .../js/v1.3.1/app/ui/dialog/notification.js | 88 + public/js/v1.3.1/app/ui/dialog/releases.js | 84 + public/js/v1.3.1/app/ui/dialog/shortcuts.js | 50 + public/js/v1.3.1/app/ui/dialog/stats.js | 834 + .../js/v1.3.1/app/ui/dialog/system_effects.js | 107 + public/js/v1.3.1/app/ui/form_element.js | 291 + public/js/v1.3.1/app/ui/header.js | 239 + public/js/v1.3.1/app/ui/logo.js | 150 + public/js/v1.3.1/app/ui/system_graph.js | 226 + public/js/v1.3.1/app/ui/system_info.js | 498 + public/js/v1.3.1/app/ui/system_killboard.js | 463 + public/js/v1.3.1/app/ui/system_route.js | 1066 ++ public/js/v1.3.1/app/ui/system_signature.js | 2437 +++ public/js/v1.3.1/app/util.js | 2251 +++ public/js/v1.3.1/app/worker/map.js | 162 + public/js/v1.3.1/app/worker/message.js | 55 + public/js/v1.3.1/lib/EasePack.min.js | 12 + public/js/v1.3.1/lib/Sortable.min.js | 2 + public/js/v1.3.1/lib/TweenLite.min.js | 12 + public/js/v1.3.1/lib/blueimp-gallery.js | 1377 ++ public/js/v1.3.1/lib/blueimp-helper.js | 190 + public/js/v1.3.1/lib/bootbox.min.js | 6 + .../js/v1.3.1/lib/bootstrap-confirmation.js | 263 + .../js/v1.3.1/lib/bootstrap-editable.min.js | 7 + .../js/v1.3.1/lib/bootstrap-image-gallery.js | 87 + public/js/v1.3.1/lib/bootstrap.min.js | 7 + public/js/v1.3.1/lib/bootstrap2-toggle.min.js | 8 + .../Buttons-1.2.1/js/buttons.html5.min.js | 26 + .../js/dataTables.buttons.min.js | 35 + .../js/jquery.dataTables.min.js | 166 + .../js/dataTables.responsive.min.js | 26 + .../Select-1.2.0/js/dataTables.select.min.js | 26 + public/js/v1.3.1/lib/dom.jsPlumb-1.7.6.js | 12730 +++++++++++++++ public/js/v1.3.1/lib/farahey-0.5.js | 350 + public/js/v1.3.1/lib/jquery-3.1.1.min.js | 4 + public/js/v1.3.1/lib/jquery.dragToSelect.js | 391 + .../js/v1.3.1/lib/jquery.easypiechart.min.js | 9 + public/js/v1.3.1/lib/jquery.fullscreen.min.js | 28 + .../v1.3.1/lib/jquery.hoverIntent.minified.js | 9 + .../lib/jquery.lazylinepainter-1.5.1.min.js | 17 + public/js/v1.3.1/lib/jquery.lazyload.min.js | 2 + .../v1.3.1/lib/jquery.mCustomScrollbar.min.js | 3 + public/js/v1.3.1/lib/jquery.mousewheel.min.js | 8 + public/js/v1.3.1/lib/jquery.peity.min.js | 13 + public/js/v1.3.1/lib/jsPlumb-2.0.5.js | 12733 ++++++++++++++++ public/js/v1.3.1/lib/localforage.min.js | 7 + public/js/v1.3.1/lib/morris.min.js | 7 + public/js/v1.3.1/lib/mustache.min.js | 1 + .../js/v1.3.1/lib/pnotify/pnotify.buttons.js | 176 + .../v1.3.1/lib/pnotify/pnotify.callbacks.js | 50 + .../js/v1.3.1/lib/pnotify/pnotify.desktop.js | 154 + public/js/v1.3.1/lib/pnotify/pnotify.js | 873 ++ .../js/v1.3.1/lib/pnotify/pnotify.nonblock.js | 156 + public/js/v1.3.1/lib/raphael-min.js | 3 + public/js/v1.3.1/lib/require.js | 36 + public/js/v1.3.1/lib/requirejs/text.js | 390 + public/js/v1.3.1/lib/select2.min.js | 3 + public/js/v1.3.1/lib/slidebars.js | 349 + public/js/v1.3.1/lib/validator.min.js | 9 + public/js/v1.3.1/lib/velocity.min.js | 4 + public/js/v1.3.1/lib/velocity.ui.min.js | 1 + public/templates/dialog/jump_info.html | 161 +- public/templates/dialog/map_manual.html | 2 +- public/templates/modules/system_info.html | 49 +- public/templates/tooltip/wormhole_info.html | 8 +- sass/_colors.scss | 1 + sass/_main-colorpallet.scss | 1 + sass/layout/_animation.scss | 16 +- sass/layout/_dialogs.scss | 12 +- sass/layout/_main.scss | 95 +- sass/layout/_map.scss | 10 +- sass/layout/_system-info.scss | 33 +- sass/library/data-tables/_dataTables.scss | 2 + .../library/easy-pie-chart/_easyPieChart.scss | 4 +- 238 files changed, 60227 insertions(+), 1155 deletions(-) create mode 100644 app/main/model/connectionlogmodel.php create mode 100644 js/app/ui/connection_info.js create mode 100644 js/lib/sortable.min.js delete mode 100644 public/css/pathfinder.css.br delete mode 100644 public/css/pathfinder.css.map delete mode 100644 public/js/v1.3.0/app.js delete mode 100644 public/js/v1.3.0/app.js.br delete mode 100644 public/js/v1.3.0/app.js.map delete mode 100644 public/js/v1.3.0/app/admin.js delete mode 100644 public/js/v1.3.0/app/admin.js.br delete mode 100644 public/js/v1.3.0/app/admin.js.map delete mode 100644 public/js/v1.3.0/app/datatables.loader.js delete mode 100644 public/js/v1.3.0/app/datatables.loader.js.br delete mode 100644 public/js/v1.3.0/app/datatables.loader.js.map delete mode 100644 public/js/v1.3.0/app/login.js delete mode 100644 public/js/v1.3.0/app/login.js.br delete mode 100644 public/js/v1.3.0/app/login.js.map delete mode 100644 public/js/v1.3.0/app/mappage.js delete mode 100644 public/js/v1.3.0/app/mappage.js.br delete mode 100644 public/js/v1.3.0/app/mappage.js.map delete mode 100644 public/js/v1.3.0/app/notification.js delete mode 100644 public/js/v1.3.0/app/notification.js.br delete mode 100644 public/js/v1.3.0/app/notification.js.map delete mode 100644 public/js/v1.3.0/app/setup.js delete mode 100644 public/js/v1.3.0/app/setup.js.br delete mode 100644 public/js/v1.3.0/app/setup.js.map delete mode 100644 public/js/v1.3.0/app/worker/map.js delete mode 100644 public/js/v1.3.0/app/worker/map.js.br delete mode 100644 public/js/v1.3.0/app/worker/map.js.map delete mode 100644 public/js/v1.3.0/app/worker/message.js delete mode 100644 public/js/v1.3.0/app/worker/message.js.br delete mode 100644 public/js/v1.3.0/app/worker/message.js.map delete mode 100644 public/js/v1.3.0/lib/bootstrap-image-gallery.js delete mode 100644 public/js/v1.3.0/lib/bootstrap-image-gallery.js.br delete mode 100644 public/js/v1.3.0/lib/bootstrap-image-gallery.js.map delete mode 100644 public/js/v1.3.0/lib/jquery.fullscreen.min.js delete mode 100644 public/js/v1.3.0/lib/jquery.fullscreen.min.js.br delete mode 100644 public/js/v1.3.0/lib/jquery.fullscreen.min.js.map delete mode 100644 public/js/v1.3.0/lib/jsPlumb-2.0.5.js delete mode 100644 public/js/v1.3.0/lib/jsPlumb-2.0.5.js.br delete mode 100644 public/js/v1.3.0/lib/jsPlumb-2.0.5.js.map delete mode 100644 public/js/v1.3.0/lib/pnotify/pnotify.buttons.js delete mode 100644 public/js/v1.3.0/lib/pnotify/pnotify.buttons.js.br delete mode 100644 public/js/v1.3.0/lib/pnotify/pnotify.buttons.js.map delete mode 100644 public/js/v1.3.0/lib/require.js delete mode 100644 public/js/v1.3.0/lib/require.js.br delete mode 100644 public/js/v1.3.0/lib/require.js.map create mode 100644 public/js/v1.3.1/app.js create mode 100644 public/js/v1.3.1/app/admin.js create mode 100644 public/js/v1.3.1/app/conf/signature_type.js create mode 100644 public/js/v1.3.1/app/conf/system_effect.js create mode 100644 public/js/v1.3.1/app/counter.js create mode 100644 public/js/v1.3.1/app/datatables.loader.js create mode 100644 public/js/v1.3.1/app/init.js create mode 100644 public/js/v1.3.1/app/key.js create mode 100644 public/js/v1.3.1/app/logging.js create mode 100644 public/js/v1.3.1/app/login.js create mode 100644 public/js/v1.3.1/app/map/contextmenu.js create mode 100644 public/js/v1.3.1/app/map/local.js create mode 100644 public/js/v1.3.1/app/map/magnetizing.js create mode 100644 public/js/v1.3.1/app/map/map.js create mode 100644 public/js/v1.3.1/app/map/overlay.js create mode 100644 public/js/v1.3.1/app/map/scrollbar.js create mode 100644 public/js/v1.3.1/app/map/system.js create mode 100644 public/js/v1.3.1/app/map/util.js create mode 100644 public/js/v1.3.1/app/map/worker.js create mode 100644 public/js/v1.3.1/app/mappage.js create mode 100644 public/js/v1.3.1/app/module_map.js create mode 100644 public/js/v1.3.1/app/notification.js create mode 100644 public/js/v1.3.1/app/page.js create mode 100644 public/js/v1.3.1/app/render.js create mode 100644 public/js/v1.3.1/app/setup.js create mode 100644 public/js/v1.3.1/app/ui/connection_info.js create mode 100644 public/js/v1.3.1/app/ui/demo_map.js create mode 100644 public/js/v1.3.1/app/ui/dialog/account_settings.js create mode 100644 public/js/v1.3.1/app/ui/dialog/credit.js create mode 100644 public/js/v1.3.1/app/ui/dialog/delete_account.js create mode 100644 public/js/v1.3.1/app/ui/dialog/jump_info.js create mode 100644 public/js/v1.3.1/app/ui/dialog/manual.js create mode 100644 public/js/v1.3.1/app/ui/dialog/map_info.js create mode 100644 public/js/v1.3.1/app/ui/dialog/map_settings.js create mode 100644 public/js/v1.3.1/app/ui/dialog/notification.js create mode 100644 public/js/v1.3.1/app/ui/dialog/releases.js create mode 100644 public/js/v1.3.1/app/ui/dialog/shortcuts.js create mode 100644 public/js/v1.3.1/app/ui/dialog/stats.js create mode 100644 public/js/v1.3.1/app/ui/dialog/system_effects.js create mode 100644 public/js/v1.3.1/app/ui/form_element.js create mode 100644 public/js/v1.3.1/app/ui/header.js create mode 100644 public/js/v1.3.1/app/ui/logo.js create mode 100644 public/js/v1.3.1/app/ui/system_graph.js create mode 100644 public/js/v1.3.1/app/ui/system_info.js create mode 100644 public/js/v1.3.1/app/ui/system_killboard.js create mode 100644 public/js/v1.3.1/app/ui/system_route.js create mode 100644 public/js/v1.3.1/app/ui/system_signature.js create mode 100644 public/js/v1.3.1/app/util.js create mode 100644 public/js/v1.3.1/app/worker/map.js create mode 100644 public/js/v1.3.1/app/worker/message.js create mode 100644 public/js/v1.3.1/lib/EasePack.min.js create mode 100644 public/js/v1.3.1/lib/Sortable.min.js create mode 100644 public/js/v1.3.1/lib/TweenLite.min.js create mode 100644 public/js/v1.3.1/lib/blueimp-gallery.js create mode 100644 public/js/v1.3.1/lib/blueimp-helper.js create mode 100644 public/js/v1.3.1/lib/bootbox.min.js create mode 100644 public/js/v1.3.1/lib/bootstrap-confirmation.js create mode 100644 public/js/v1.3.1/lib/bootstrap-editable.min.js create mode 100644 public/js/v1.3.1/lib/bootstrap-image-gallery.js create mode 100644 public/js/v1.3.1/lib/bootstrap.min.js create mode 100644 public/js/v1.3.1/lib/bootstrap2-toggle.min.js create mode 100644 public/js/v1.3.1/lib/datatables/Buttons-1.2.1/js/buttons.html5.min.js create mode 100644 public/js/v1.3.1/lib/datatables/Buttons-1.2.1/js/dataTables.buttons.min.js create mode 100644 public/js/v1.3.1/lib/datatables/DataTables-1.10.12/js/jquery.dataTables.min.js create mode 100644 public/js/v1.3.1/lib/datatables/Responsive-2.1.0/js/dataTables.responsive.min.js create mode 100644 public/js/v1.3.1/lib/datatables/Select-1.2.0/js/dataTables.select.min.js create mode 100644 public/js/v1.3.1/lib/dom.jsPlumb-1.7.6.js create mode 100644 public/js/v1.3.1/lib/farahey-0.5.js create mode 100644 public/js/v1.3.1/lib/jquery-3.1.1.min.js create mode 100644 public/js/v1.3.1/lib/jquery.dragToSelect.js create mode 100644 public/js/v1.3.1/lib/jquery.easypiechart.min.js create mode 100644 public/js/v1.3.1/lib/jquery.fullscreen.min.js create mode 100644 public/js/v1.3.1/lib/jquery.hoverIntent.minified.js create mode 100644 public/js/v1.3.1/lib/jquery.lazylinepainter-1.5.1.min.js create mode 100644 public/js/v1.3.1/lib/jquery.lazyload.min.js create mode 100644 public/js/v1.3.1/lib/jquery.mCustomScrollbar.min.js create mode 100644 public/js/v1.3.1/lib/jquery.mousewheel.min.js create mode 100644 public/js/v1.3.1/lib/jquery.peity.min.js create mode 100644 public/js/v1.3.1/lib/jsPlumb-2.0.5.js create mode 100644 public/js/v1.3.1/lib/localforage.min.js create mode 100644 public/js/v1.3.1/lib/morris.min.js create mode 100644 public/js/v1.3.1/lib/mustache.min.js create mode 100644 public/js/v1.3.1/lib/pnotify/pnotify.buttons.js create mode 100644 public/js/v1.3.1/lib/pnotify/pnotify.callbacks.js create mode 100644 public/js/v1.3.1/lib/pnotify/pnotify.desktop.js create mode 100644 public/js/v1.3.1/lib/pnotify/pnotify.js create mode 100644 public/js/v1.3.1/lib/pnotify/pnotify.nonblock.js create mode 100644 public/js/v1.3.1/lib/raphael-min.js create mode 100644 public/js/v1.3.1/lib/require.js create mode 100644 public/js/v1.3.1/lib/requirejs/text.js create mode 100644 public/js/v1.3.1/lib/select2.min.js create mode 100644 public/js/v1.3.1/lib/slidebars.js create mode 100644 public/js/v1.3.1/lib/validator.min.js create mode 100644 public/js/v1.3.1/lib/velocity.min.js create mode 100644 public/js/v1.3.1/lib/velocity.ui.min.js diff --git a/app/main/controller/accesscontroller.php b/app/main/controller/accesscontroller.php index 1c095b5b0..19c1348b5 100644 --- a/app/main/controller/accesscontroller.php +++ b/app/main/controller/accesscontroller.php @@ -19,6 +19,9 @@ class AccessController extends Controller { * @param \Base $f3 * @param $params * @return bool + * @throws \Exception + * @throws \Exception\PathfinderException + * @throws \ZMQSocketException */ function beforeroute(\Base $f3, $params): bool { if($return = parent::beforeroute($f3, $params)){ @@ -47,6 +50,8 @@ function beforeroute(\Base $f3, $params): bool { * get current character and check if it is a valid character * @param \Base $f3 * @return bool + * @throws \Exception + * @throws \Exception\PathfinderException */ protected function isLoggedIn(\Base $f3): bool { $loginCheck = false; @@ -66,6 +71,7 @@ protected function isLoggedIn(\Base $f3): bool { * @param \Base $f3 * @param Model\CharacterModel $character * @return bool + * @throws \Exception\PathfinderException */ private function checkLogTimer(\Base $f3, Model\CharacterModel $character){ $loginCheck = false; @@ -97,6 +103,9 @@ private function checkLogTimer(\Base $f3, Model\CharacterModel $character){ * -> send over TCP Socket * @param Model\MapModel $map * @return int (number of active connections for this map) + * @throws \Exception + * @throws \Exception\PathfinderException + * @throws \ZMQSocketException */ protected function broadcastMapData(Model\MapModel $map){ $mapData = $this->getFormattedMapData($map); @@ -107,6 +116,8 @@ protected function broadcastMapData(Model\MapModel $map){ * get formatted Map Data * @param Model\MapModel $map * @return array + * @throws \Exception + * @throws \Exception\PathfinderException */ protected function getFormattedMapData(Model\MapModel $map){ $mapData = $map->getData(); diff --git a/app/main/controller/admin.php b/app/main/controller/admin.php index 20a514b9e..fbfb6677f 100644 --- a/app/main/controller/admin.php +++ b/app/main/controller/admin.php @@ -34,6 +34,8 @@ class Admin extends Controller{ * @param \Base $f3 * @param $params * @return bool + * @throws \Exception + * @throws \Exception\PathfinderException */ function beforeroute(\Base $f3, $params): bool { $return = parent::beforeroute($f3, $params); @@ -63,6 +65,7 @@ function beforeroute(\Base $f3, $params): bool { /** * event handler after routing * @param \Base $f3 + * @throws \Exception\PathfinderException */ public function afterroute(\Base $f3) { // js view (file) @@ -81,6 +84,7 @@ public function afterroute(\Base $f3) { * returns valid admin $characterModel for current user * @param \Base $f3 * @return CharacterModel|null + * @throws \Exception */ protected function getAdminCharacter(\Base $f3){ $adminCharacter = null; @@ -148,6 +152,7 @@ protected function setCharacterRole(CharacterModel $character){ * @param \Base $f3 * @param array $params * @param null $character + * @throws \Exception\PathfinderException */ public function dispatch(\Base $f3, $params, $character = null){ if($character instanceof CharacterModel){ @@ -191,6 +196,7 @@ public function dispatch(\Base $f3, $params, $character = null){ * @param CharacterModel $character * @param int $kickCharacterId * @param int $minutes + * @throws \Exception\PathfinderException */ protected function kickCharacter(CharacterModel $character, $kickCharacterId, $minutes){ $kickOptions = self::KICK_OPTIONS; @@ -220,6 +226,7 @@ protected function kickCharacter(CharacterModel $character, $kickCharacterId, $m * @param CharacterModel $character * @param int $banCharacterId * @param int $value + * @throws \Exception\PathfinderException */ protected function banCharacter(CharacterModel $character, $banCharacterId, $value){ $banCharacters = $this->filterValidCharacters($character, $banCharacterId); @@ -267,6 +274,7 @@ protected function filterValidCharacters(CharacterModel $character, $characterId * get log file for "admin" logs * @param string $type * @return \Log + * @throws \Exception\PathfinderException */ static function getLogger($type = 'ADMIN'){ return parent::getLogger('ADMIN'); diff --git a/app/main/controller/api/access.php b/app/main/controller/api/access.php index 94898f544..0096db859 100644 --- a/app/main/controller/api/access.php +++ b/app/main/controller/api/access.php @@ -17,6 +17,7 @@ class Access extends Controller\AccessController { * search character/corporation or alliance by name * @param \Base $f3 * @param $params + * @throws \Exception */ public function search($f3, $params){ diff --git a/app/main/controller/api/connection.php b/app/main/controller/api/connection.php index 85a490c67..24fe6579e 100644 --- a/app/main/controller/api/connection.php +++ b/app/main/controller/api/connection.php @@ -17,6 +17,7 @@ class Connection extends Controller\AccessController { * save a new connection or updates an existing (drag/drop) between two systems * if a connection is changed (drag&drop) to another system. -> this function is called for update * @param \Base $f3 + * @throws \Exception */ public function save(\Base $f3){ $postData = (array)$f3->get('POST'); diff --git a/app/main/controller/api/github.php b/app/main/controller/api/github.php index 18ccc0930..974ed3da7 100644 --- a/app/main/controller/api/github.php +++ b/app/main/controller/api/github.php @@ -21,6 +21,7 @@ class GitHub extends Controller\Controller { /** * get HTTP request options for API (curl) request * @return array + * @throws \Exception\PathfinderException */ protected function getRequestOptions(){ $requestOptions = [ @@ -36,6 +37,7 @@ protected function getRequestOptions(){ /** * get release information from GitHub * @param $f3 + * @throws \Exception\PathfinderException */ public function releases($f3){ $cacheKey = 'CACHE_GITHUB_RELEASES'; diff --git a/app/main/controller/api/map.php b/app/main/controller/api/map.php index 2719ff45e..fcd3b528f 100644 --- a/app/main/controller/api/map.php +++ b/app/main/controller/api/map.php @@ -71,6 +71,8 @@ protected function getHistoryDataCacheKey(int $mapId): string { /** * Get all required static config data for program initialization * @param \Base $f3 + * @throws Exception + * @throws Exception\PathfinderException */ public function init(\Base $f3){ // expire time in seconds @@ -159,6 +161,15 @@ public function init(\Base $f3){ } $return->connectionScopes = $connectionScopeData; + // get available wormhole types --------------------------------------------------------------------------- + $wormholes = Model\BasicModel::getNew('WormholeModel'); + $rows = $wormholes->find('id > 0', null, $expireTimeSQL); + $wormholesData = []; + foreach((array)$rows as $rowData){ + $wormholesData[$rowData->name] = $rowData->getData(); + } + $return->wormholes = $wormholesData; + // get available character status ------------------------------------------------------------------------- $characterStatus = Model\BasicModel::getNew('CharacterStatusModel'); $rows = $characterStatus->find('active = 1', null, $expireTimeSQL); @@ -223,6 +234,7 @@ public function init(\Base $f3){ /** * import new map data * @param \Base $f3 + * @throws Exception */ public function import(\Base $f3){ $importData = (array)$f3->get('POST'); @@ -367,6 +379,7 @@ public function import(\Base $f3){ /** * save a new map or update an existing map * @param \Base $f3 + * @throws Exception */ public function save(\Base $f3){ $formData = (array)$f3->get('POST.formData'); @@ -563,6 +576,7 @@ public function save(\Base $f3){ /** * delete a map and all dependencies * @param \Base $f3 + * @throws Exception */ public function delete(\Base $f3){ $mapData = (array)$f3->get('POST.mapData'); @@ -597,6 +611,9 @@ public function delete(\Base $f3){ * -> if characters with map access found -> broadcast mapData to them * @param Model\MapModel $map * @param array $characterIds + * @throws Exception + * @throws Exception\PathfinderException + * @throws \ZMQSocketException */ protected function broadcastMapAccess($map, $characterIds){ $mapAccess = [ @@ -614,6 +631,7 @@ protected function broadcastMapAccess($map, $characterIds){ * broadcast map delete information to clients * @param int $mapId * @return bool|string + * @throws \ZMQSocketException */ protected function broadcastMapDeleted($mapId){ return (new Socket( Config::getSocketUri() ))->sendData('mapDeleted', $mapId); @@ -623,6 +641,7 @@ protected function broadcastMapDeleted($mapId){ * get map access tokens for current character * -> send access tokens via TCP Socket for WebSocket auth * @param \Base $f3 + * @throws Exception */ public function getAccessData(\Base $f3){ $return = (object) []; @@ -656,6 +675,8 @@ public function getAccessData(\Base $f3){ * update map data * -> function is called continuously (trigger) by any active client * @param \Base $f3 + * @throws Exception + * @throws Exception\PathfinderException */ public function updateData(\Base $f3){ $mapData = (array)$f3->get('POST.mapData'); @@ -805,6 +826,8 @@ public function updateData(\Base $f3){ * get formatted map data * @param Model\MapModel[] $mapModels * @return array + * @throws Exception + * @throws Exception\PathfinderException */ protected function getFormattedMapsData($mapModels){ $mapData = []; @@ -819,6 +842,8 @@ protected function getFormattedMapsData($mapModels){ * update map data api * -> function is called continuously by any active client * @param \Base $f3 + * @throws Exception + * @throws Exception\PathfinderException */ public function updateUserData(\Base $f3){ $return = (object) []; @@ -896,6 +921,7 @@ public function updateUserData(\Base $f3){ * @param Model\CharacterModel $character * @param Model\MapModel $map * @return Model\MapModel + * @throws Exception */ protected function updateMapData(Model\CharacterModel $character, Model\MapModel $map){ @@ -1056,21 +1082,34 @@ protected function updateMapData(Model\CharacterModel $character, Model\MapModel } } - // save connection ------------------------------------------------------------------------------------ if( - $addConnection && $sourceExists && $targetExists && $sourceSystem && - $targetSystem && - !$map->searchConnection( $sourceSystem, $targetSystem ) + $targetSystem ){ - $connection = $map->getNewConnection($sourceSystem, $targetSystem); - $connection = $map->saveConnection($connection, $character); - // get updated maps object - if($connection){ - $map = $connection->mapId; - $mapDataChanged = true; + $connection = $map->searchConnection( $sourceSystem, $targetSystem); + + // save connection -------------------------------------------------------------------------------- + if( + $addConnection && + !$connection + ){ + $connection = $map->getNewConnection($sourceSystem, $targetSystem); + $connection = $map->saveConnection($connection, $character); + // get updated maps object + if($connection){ + $map = $connection->mapId; + $mapDataChanged = true; + } + } + + // log jump mass ---------------------------------------------------------------------------------- + if( + $connection && + $connection->isWormhole() + ){ + $connection->logMass($log); } } } @@ -1087,9 +1126,13 @@ protected function updateMapData(Model\CharacterModel $character, Model\MapModel /** * get connectionData * @param \Base $f3 + * @throws Exception */ public function getConnectionData (\Base $f3){ $postData = (array)$f3->get('POST'); + + $addData = (array)$postData['addData']; + $filterData = (array)$postData['filterData']; $connectionData = []; if($mapId = (int)$postData['mapId']){ @@ -1102,13 +1145,27 @@ public function getConnectionData (\Base $f3){ $map->getById($mapId); if($map->hasAccess($activeCharacter)){ - $connections = $map->getConnections('wh'); + // get specific connections by id + $connectionIds = null; + if(is_array($postData['connectionIds'])){ + $connectionIds = $postData['connectionIds']; + } + + $connections = $map->getConnections($connectionIds, 'wh'); foreach($connections as $connection){ - $data = $connection->getData(true); - // skip connections whiteout signature data - if($data->signatures){ - $connectionData[] = $data; + $check = true; + $data = $connection->getData(in_array('signatures', $addData), in_array('logs', $addData)); + // filter result + if(in_array('signatures', $filterData) && !$data->signatures){ + $check = false; + } + if(in_array('logs', $filterData) && !$data->logs){ + $check = false; + } + + if($check){ + $connectionData[] = $data; } } } @@ -1120,6 +1177,8 @@ public function getConnectionData (\Base $f3){ /** * get map log data * @param \Base $f3 + * @throws Exception + * @throws Exception\PathfinderException */ public function getLogData(\Base $f3){ $postData = (array)$f3->get('POST'); diff --git a/app/main/controller/api/route.php b/app/main/controller/api/route.php index 807b0233e..522a7ec7d 100644 --- a/app/main/controller/api/route.php +++ b/app/main/controller/api/route.php @@ -509,6 +509,8 @@ private function getRouteCacheKey($mapIds, $systemFrom, $systemTo, $filterData = /** * search multiple route between two systems * @param \Base $f3 + * @throws \Exception + * @throws \Exception\PathfinderException */ public function search($f3){ $requestData = (array)$f3->get('POST'); diff --git a/app/main/controller/api/signature.php b/app/main/controller/api/signature.php index 39b8250df..427fbcfbb 100644 --- a/app/main/controller/api/signature.php +++ b/app/main/controller/api/signature.php @@ -18,6 +18,7 @@ class Signature extends Controller\AccessController { * get signature data for systems * -> return value of this is limited to a "SINGLE" system * @param \Base $f3 + * @throws \Exception */ public function getAll(\Base $f3){ $signatureData = []; @@ -50,6 +51,7 @@ public function getAll(\Base $f3){ * save or update a full signature data set * or save/update just single or multiple signature data * @param \Base $f3 + * @throws \Exception */ public function save(\Base $f3){ $requestData = $f3->get('POST'); @@ -221,6 +223,7 @@ public function save(\Base $f3){ /** * delete signatures * @param \Base $f3 + * @throws \Exception */ public function delete(\Base $f3){ $signatureIds = $f3->get('POST.signatureIds'); diff --git a/app/main/controller/api/statistic.php b/app/main/controller/api/statistic.php index e42dc68c9..a2eb9d66b 100644 --- a/app/main/controller/api/statistic.php +++ b/app/main/controller/api/statistic.php @@ -123,6 +123,7 @@ protected function calculateYearWeekOffset($year, $week, $weekCount, $backwards * @param int $yearEnd * @param int $weekEnd * @return array + * @throws \Exception\PathfinderException */ protected function queryStatistic( CharacterModel $character, $typeId, $yearStart, $weekStart, $yearEnd, $weekEnd){ $data = []; @@ -231,6 +232,7 @@ protected function queryStatistic( CharacterModel $character, $typeId, $yearStar /** * get statistics data * @param \Base $f3 + * @throws \Exception */ public function getData(\Base $f3){ $postData = (array)$f3->get('POST'); diff --git a/app/main/controller/api/system.php b/app/main/controller/api/system.php index be00945bc..113380d1f 100644 --- a/app/main/controller/api/system.php +++ b/app/main/controller/api/system.php @@ -175,6 +175,7 @@ public function search(\Base $f3, $params){ /** * save a new system to a a map * @param \Base $f3 + * @throws \Exception */ public function save(\Base $f3){ $postData = (array)$f3->get('POST'); @@ -278,6 +279,7 @@ public function save(\Base $f3){ * get system log data from CCP API import * system Kills, Jumps,.... * @param \Base $f3 + * @throws \Exception */ public function graphData(\Base $f3){ $graphData = []; @@ -329,6 +331,8 @@ public function graphData(\Base $f3){ * get system data for all systems within a constellation * @param \Base $f3 * @param array $params + * @throws \Exception + * @throws \Exception\PathfinderException */ public function constellationData(\Base $f3, $params){ $return = (object) []; @@ -363,6 +367,7 @@ public function constellationData(\Base $f3, $params){ /** * set destination for specific systemIds * @param \Base $f3 + * @throws \Exception */ public function setDestination(\Base $f3){ $postData = (array)$f3->get('POST'); @@ -405,6 +410,8 @@ public function setDestination(\Base $f3){ /** * send Rally Point poke * @param \Base $f3 + * @throws \Exception + * @throws \Exception\PathfinderException */ public function pokeRally(\Base $f3){ $rallyData = (array)$f3->get('POST'); @@ -437,6 +444,7 @@ public function pokeRally(\Base $f3){ * delete systems and all its connections from map * -> set "active" flag * @param \Base $f3 + * @throws \Exception */ public function delete(\Base $f3){ $mapId = (int)$f3->get('POST.mapId'); diff --git a/app/main/controller/api/user.php b/app/main/controller/api/user.php index 7b33b808e..9b9b78e50 100644 --- a/app/main/controller/api/user.php +++ b/app/main/controller/api/user.php @@ -44,6 +44,7 @@ class User extends Controller\Controller{ * @param Model\CharacterModel $characterModel * @param string $browserTabId * @return bool + * @throws Exception */ protected function loginByCharacter(Model\CharacterModel &$characterModel, string $browserTabId){ $login = false; @@ -108,6 +109,8 @@ protected function loginByCharacter(Model\CharacterModel &$characterModel, strin * validate cookie character information * -> return character data (if valid) * @param \Base $f3 + * @throws Exception + * @throws Exception\PathfinderException */ public function getCookieCharacter(\Base $f3){ $data = $f3->get('POST'); @@ -188,6 +191,7 @@ public function getCaptcha(\Base $f3){ /** * delete the character log entry for the current active (main) character * @param \Base $f3 + * @throws Exception */ public function deleteLog(\Base $f3){ if($activeCharacter = $this->getCharacter()){ @@ -198,6 +202,8 @@ public function deleteLog(\Base $f3){ /** * log the current user out + clear character system log data * @param \Base $f3 + * @throws Exception + * @throws \ZMQSocketException */ public function logout(\Base $f3){ $this->logoutCharacter(false, true, true, true); @@ -211,6 +217,7 @@ public function logout(\Base $f3){ * remote open ingame information window (character, corporation or alliance) Id * -> the type is auto-recognized by CCP * @param \Base $f3 + * @throws Exception */ public function openIngameWindow(\Base $f3){ $data = $f3->get('POST'); @@ -241,6 +248,7 @@ public function openIngameWindow(\Base $f3){ * -> a fresh user automatically generated on first login with a new character * -> see SSO login * @param \Base $f3 + * @throws Exception */ public function saveAccount(\Base $f3){ $data = $f3->get('POST'); @@ -361,6 +369,8 @@ public function saveAccount(\Base $f3){ /** * delete current user account from DB * @param \Base $f3 + * @throws Exception + * @throws \ZMQSocketException */ public function deleteAccount(\Base $f3){ $data = $f3->get('POST.formData'); diff --git a/app/main/controller/ccp/sso.php b/app/main/controller/ccp/sso.php index 5e509e6c5..5d4fb74d6 100644 --- a/app/main/controller/ccp/sso.php +++ b/app/main/controller/ccp/sso.php @@ -52,6 +52,7 @@ class Sso extends Api\User{ * redirect user to CCP SSO page and request authorization * -> cf. Controller->getCookieCharacters() ( equivalent cookie based login) * @param \Base $f3 + * @throws \Exception\PathfinderException */ public function requestAdminAuthorization($f3){ // store browser tabId to be "targeted" after login @@ -66,6 +67,8 @@ public function requestAdminAuthorization($f3){ * redirect user to CCP SSO page and request authorization * -> cf. Controller->getCookieCharacters() ( equivalent cookie based login) * @param \Base $f3 + * @throws \Exception + * @throws \Exception\PathfinderException */ public function requestAuthorization($f3){ $params = $f3->get('GET'); @@ -135,6 +138,7 @@ public function requestAuthorization($f3){ * @param \Base $f3 * @param array $scopes * @param string $rootAlias + * @throws \Exception\PathfinderException */ private function rerouteAuthorization(\Base $f3, $scopes = [], $rootAlias = 'login'){ if( !empty( Controller\Controller::getEnvironmentData('CCP_SSO_CLIENT_ID') ) ){ @@ -166,6 +170,8 @@ private function rerouteAuthorization(\Base $f3, $scopes = [], $rootAlias = 'log * callback handler for CCP SSO user Auth * -> see requestAuthorization() * @param \Base $f3 + * @throws \Exception + * @throws \Exception\PathfinderException */ public function callbackAuthorization($f3){ $getParams = (array)$f3->get('GET'); @@ -305,6 +311,8 @@ public function callbackAuthorization($f3){ /** * login by cookie name * @param \Base $f3 + * @throws \Exception + * @throws \Exception\PathfinderException */ public function login(\Base $f3){ $data = (array)$f3->get('GET'); @@ -343,6 +351,7 @@ public function login(\Base $f3){ * -> else try to refresh auth and get fresh "access_token" * @param bool $authCode * @return null|\stdClass + * @throws \Exception\PathfinderException */ public function getSsoAccessData($authCode){ $accessData = null; @@ -362,6 +371,7 @@ public function getSsoAccessData($authCode){ * verify authorization code, and get an "access_token" data * @param $authCode * @return \stdClass + * @throws \Exception\PathfinderException */ protected function verifyAuthorizationCode($authCode){ $requestParams = [ @@ -377,6 +387,7 @@ protected function verifyAuthorizationCode($authCode){ * -> if "access_token" is expired, this function gets a fresh one * @param $refreshToken * @return \stdClass + * @throws \Exception\PathfinderException */ public function refreshAccessToken($refreshToken){ $requestParams = [ @@ -393,6 +404,7 @@ public function refreshAccessToken($refreshToken){ * OR by providing a valid "refresh_token" * @param $requestParams * @return \stdClass + * @throws \Exception\PathfinderException */ protected function requestAccessData($requestParams){ $verifyAuthCodeUrl = self::getVerifyAuthorizationCodeEndpoint(); @@ -457,6 +469,7 @@ protected function requestAccessData($requestParams){ * -> if more character information is required, use ESI "characters" endpoints request instead * @param $accessToken * @return mixed|null + * @throws \Exception\PathfinderException */ public function verifyCharacterData($accessToken){ $verifyUserUrl = self::getVerifyUserEndpoint(); @@ -492,6 +505,7 @@ public function verifyCharacterData($accessToken){ * get character data * @param int $characterId * @return object + * @throws \Exception */ public function getCharacterData($characterId){ $characterData = (object) []; @@ -601,6 +615,7 @@ protected function getAuthorizationHeader(){ * get CCP SSO url from configuration file * -> throw error if url is broken/missing * @return string + * @throws \Exception\PathfinderException */ static function getSsoUrlRoot(){ $url = ''; @@ -630,6 +645,7 @@ static function getVerifyUserEndpoint(){ /** * get logger for SSO logging * @return \Log + * @throws \Exception\PathfinderException */ static function getSSOLogger(){ return parent::getLogger('SSO'); diff --git a/app/main/controller/ccp/universe.php b/app/main/controller/ccp/universe.php index e199eec23..f30fb0a79 100644 --- a/app/main/controller/ccp/universe.php +++ b/app/main/controller/ccp/universe.php @@ -17,6 +17,7 @@ class Universe extends Controller { /** * Set up "Universe" Database * @param \Base $f3 + * @throws \Exception */ public function setupDB(\Base $f3){ $this->setupRegions($f3); @@ -26,6 +27,7 @@ public function setupDB(\Base $f3){ /** * get all regions from CCP and store region data * @param \Base $f3 + * @throws \Exception */ private function setupRegions(\Base $f3){ $this->getDB('UNIVERSE'); @@ -50,6 +52,7 @@ private function setupRegions(\Base $f3){ /** * get all constellations from CCP and store constellation data * @param \Base $f3 + * @throws \Exception */ private function setupConstellations(\Base $f3){ $this->getDB('UNIVERSE'); diff --git a/app/main/controller/controller.php b/app/main/controller/controller.php index 7bf52a876..d0f0894d5 100644 --- a/app/main/controller/controller.php +++ b/app/main/controller/controller.php @@ -63,6 +63,7 @@ protected function getF3(){ * @param \Base $f3 * @param $params * @return bool + * @throws \Exception\PathfinderException */ function beforeroute(\Base $f3, $params): bool { // initiate DB connection @@ -107,6 +108,7 @@ protected function getDB($database = 'PF'){ /** * init new Session handler + * @param \Base $f3 */ protected function initSession(\Base $f3){ $sessionCacheKey = $f3->get('SESSION_CACHE'); @@ -117,6 +119,7 @@ protected function initSession(\Base $f3){ * @param $session * @param $sid * @return bool + * @throws \Exception\PathfinderException */ $onSuspect = function($session, $sid){ self::getLogger('SESSION_SUSPECT')->write( sprintf( @@ -181,6 +184,7 @@ protected function getCookieByName($cookieName, $prefix = false){ * set/update logged in cookie by character model * -> store validation data in DB * @param Model\CharacterModel $character + * @throws \Exception\PathfinderException */ protected function setLoginCookie(Model\CharacterModel $character){ if( $this->getCookieState() ){ @@ -237,6 +241,8 @@ protected function setLoginCookie(Model\CharacterModel $character){ * @param array $cookieData * @param bool $checkAuthorization * @return Model\CharacterModel[] + * @throws \Exception + * @throws \Exception\PathfinderException */ protected function getCookieCharacters($cookieData = [], $checkAuthorization = true){ $characters = []; @@ -341,6 +347,7 @@ protected function getCookieCharacters($cookieData = [], $checkAuthorization = t * get current character data from session * -> * @return array + * @throws \Exception */ public function getSessionCharacterData(){ $data = []; @@ -417,6 +424,7 @@ public function getCharacter($ttl = 0){ * get current user * @param int $ttl * @return Model\UserModel|null + * @throws \Exception */ public function getUser($ttl = 0){ $user = null; @@ -463,6 +471,8 @@ protected function setTempCharacterData(int $characterId, string $browserTabId){ * @param bool $deleteSession * @param bool $deleteLog * @param bool $deleteCookie + * @throws \Exception + * @throws \ZMQSocketException */ protected function logoutCharacter(bool $all = false, bool $deleteSession = true, bool $deleteLog = true, bool $deleteCookie = false){ $sessionCharacterData = (array)$this->getF3()->get(Api\User::SESSION_KEY_CHARACTERS); @@ -581,6 +591,7 @@ protected function getRouteUrl($alias = null){ /** * get a custom userAgent string for API calls * @return string + * @throws \Exception\PathfinderException */ protected function getUserAgent(){ $userAgent = ''; @@ -598,6 +609,7 @@ protected function getUserAgent(){ * -> on HTTP request -> render error page * @param \Base $f3 * @return bool + * @throws \Exception\PathfinderException */ public function showError(\Base $f3){ @@ -817,6 +829,7 @@ static function getServerData($ttl = 3600){ * get the current registration status * 0=registration stop |1=new registration allowed * @return int + * @throws \Exception\PathfinderException */ static function getRegistrationStatus(){ return (int)Config::getPathfinderData('registration.status'); @@ -827,6 +840,7 @@ static function getRegistrationStatus(){ * -> set in pathfinder.ini * @param string $type * @return \Log|null + * @throws \Exception\PathfinderException */ static function getLogger($type){ return LogController::getLogger($type); @@ -856,6 +870,7 @@ static function getEnvironmentData($key){ * health check for ICP socket -> ping request * @param $ttl * @param $load + * @throws \ZMQSocketException */ static function checkTcpSocket($ttl, $load){ (new Socket( Config::getSocketUri(), $ttl ))->sendData('healthCheck', $load); diff --git a/app/main/controller/logcontroller.php b/app/main/controller/logcontroller.php index 3c9ee6ac1..891916b97 100644 --- a/app/main/controller/logcontroller.php +++ b/app/main/controller/logcontroller.php @@ -34,6 +34,7 @@ class LogController extends \Prefab { /** * get columns from ActivityLogModel that can be uses as counter * @return array + * @throws \Exception */ protected function getActivityLogColumns(): array{ if(empty($this->activityLogColumns)){ @@ -56,6 +57,7 @@ protected function getActivityLogColumns(): array{ * -> this buffered data can be stored somewhere (e.g. DB) before HTTP response * -> should be cleared afterwards! * @param MapLog $log + * @throws \Exception */ public function push(MapLog $log){ $action = $log->getAction(); @@ -161,6 +163,7 @@ private function getBufferedActivityIndex(int $characterId, int $mapId): int { * get Logger instance * @param string $type * @return \Log|null + * @throws \Exception\PathfinderException */ public static function getLogger($type){ $logFiles = Config::getPathfinderData('logfiles'); diff --git a/app/main/controller/mapcontroller.php b/app/main/controller/mapcontroller.php index 300c7bccc..49a3541a4 100644 --- a/app/main/controller/mapcontroller.php +++ b/app/main/controller/mapcontroller.php @@ -15,6 +15,8 @@ class MapController extends AccessController { /** * @param \Base $f3 + * @throws \Exception + * @throws \Exception\PathfinderException */ public function init(\Base $f3) { $character = $this->getCharacter(); diff --git a/app/main/controller/setup.php b/app/main/controller/setup.php index c673bc0f8..7bb83f73d 100644 --- a/app/main/controller/setup.php +++ b/app/main/controller/setup.php @@ -85,6 +85,7 @@ class Setup extends Controller { 'Model\ConstellationWormholeModel', 'Model\ConnectionModel', + 'Model\ConnectionLogModel', 'Model\SystemSignatureModel', 'Model\ActivityLogModel', @@ -139,6 +140,7 @@ class Setup extends Controller { * @param \Base $f3 * @param array $params * @return bool + * @throws \Exception\PathfinderException */ function beforeroute(\Base $f3, $params): bool { // init dbLib class. Manages all DB connections @@ -161,6 +163,7 @@ function beforeroute(\Base $f3, $params): bool { /** * @param \Base $f3 + * @throws \Exception\PathfinderException */ public function afterroute(\Base $f3) { // js view (file) @@ -194,6 +197,7 @@ public function afterroute(\Base $f3) { * works as dispatcher for setup functions * -> for security reasons all /setup "routes" are dispatched by GET params * @param \Base $f3 + * @throws \Exception */ public function init(\Base $f3){ $params = $f3->get('GET'); @@ -760,6 +764,7 @@ protected function checkSystemConfig(\Base $f3): array { * get default map config * @param \Base $f3 * @return array + * @throws \Exception\PathfinderException */ protected function getMapsDefaultConfig(\Base $f3): array { $matrix = \Matrix::instance(); @@ -1245,6 +1250,7 @@ protected function bootstrapDB(string $dbKey){ /** * get Socket information (TCP (internal)), (WebSocket (clients)) * @return array + * @throws \ZMQSocketException */ protected function getSocketInformation(){ // $ttl for health check @@ -1298,6 +1304,7 @@ protected function getSocketInformation(){ /** get indexed (cache) data information * @return array + * @throws \Exception */ protected function getIndexData(){ // active DB and tables are required for obtain index data @@ -1509,6 +1516,7 @@ protected function clearCache(\Base $f3){ /** * clear all character authentication (Cookie) data * @param \Base $f3 + * @throws \Exception */ protected function invalidateCookies(\Base $f3){ $this->getDB('PF'); diff --git a/app/main/cron/characterupdate.php b/app/main/cron/characterupdate.php index 800bbc56d..b259f2286 100644 --- a/app/main/cron/characterupdate.php +++ b/app/main/cron/characterupdate.php @@ -38,6 +38,7 @@ protected function getCharacterLogInactiveTime(\Base $f3){ * -> see deactivateLogData() * >> php index.php "/cron/deleteLogData" * @param \Base $f3 + * @throws \Exception */ function deleteLogData(\Base $f3){ DB\Database::instance()->getDB('PF'); @@ -80,6 +81,7 @@ function deleteLogData(\Base $f3){ * clean up outdated character data e.g. kicked until status * >> php index.php "/cron/cleanUpCharacterData" * @param \Base $f3 + * @throws \Exception */ function cleanUpCharacterData(\Base $f3){ DB\Database::instance()->getDB('PF'); @@ -111,6 +113,7 @@ function cleanUpCharacterData(\Base $f3){ * authentication data is used for cookie based login * >> php index.php "/cron/deleteAuthenticationData" * @param \Base $f3 + * @throws \Exception */ function deleteAuthenticationData($f3){ DB\Database::instance()->getDB('PF'); diff --git a/app/main/cron/mapupdate.php b/app/main/cron/mapupdate.php index 74d53f1c7..99a61314d 100644 --- a/app/main/cron/mapupdate.php +++ b/app/main/cron/mapupdate.php @@ -22,6 +22,7 @@ class MapUpdate { * deactivate all "private" maps whose lifetime is over * >> php index.php "/cron/deactivateMapData" * @param \Base $f3 + * @throws \Exception\PathfinderException */ function deactivateMapData(\Base $f3){ $privateMapLifetime = (int)Config::getMapsDefaultConfig('private.lifetime'); @@ -45,6 +46,7 @@ function deactivateMapData(\Base $f3){ * delete all deactivated maps * >> php index.php "/cron/deleteMapData" * @param \Base $f3 + * @throws \Exception */ function deleteMapData(\Base $f3){ $pfDB = DB\Database::instance()->getDB('PF'); @@ -82,6 +84,7 @@ function deleteMapData(\Base $f3){ * delete expired EOL connections * >> php index.php "/cron/deleteEolConnections" * @param \Base $f3 + * @throws \Exception */ function deleteEolConnections(\Base $f3){ $eolExpire = (int)$f3->get('PATHFINDER.CACHE.EXPIRE_CONNECTIONS_EOL'); @@ -125,6 +128,7 @@ function deleteEolConnections(\Base $f3){ * delete expired WH connections after max lifetime for wormholes is reached * >> php index.php "/cron/deleteExpiredConnections" * @param \Base $f3 + * @throws \Exception */ function deleteExpiredConnections(\Base $f3){ $whExpire = (int)$f3->get('PATHFINDER.CACHE.EXPIRE_CONNECTIONS_WH'); diff --git a/app/main/db/database.php b/app/main/db/database.php index f5f09bcb6..c947b6fdc 100644 --- a/app/main/db/database.php +++ b/app/main/db/database.php @@ -116,6 +116,7 @@ protected function getDbHiveKey($dbKey){ * @param string $password * @param string $alias * @return SQL|null + * @throws \Exception\PathfinderException */ protected function connect($dns, $name, $user, $password, $alias){ $db = null; @@ -285,6 +286,7 @@ public static function getRequiredMySqlVariables(string $key){ /** * get logger for DB logging * @return \Log + * @throws \Exception\PathfinderException */ static function getLogger(){ return LogController::getLogger('ERROR'); diff --git a/app/main/lib/Monolog.php b/app/main/lib/Monolog.php index d83c01be1..667c465ec 100644 --- a/app/main/lib/Monolog.php +++ b/app/main/lib/Monolog.php @@ -67,6 +67,7 @@ public function __construct(){ * -> this buffered data can be stored/logged somewhere (e.g. DB/file) at any time * -> should be cleared afterwards! * @param Logging\AbstractLog $log + * @throws \Exception */ public function push(Logging\AbstractLog $log){ // check whether $log should be "grouped" by common handlers diff --git a/app/main/lib/ccpclient.php b/app/main/lib/ccpclient.php index 250801e63..84e5fd45a 100644 --- a/app/main/lib/ccpclient.php +++ b/app/main/lib/ccpclient.php @@ -24,6 +24,7 @@ public function __construct(\Base $f3){ * get ApiClient instance * @param \Base $f3 * @return ApiClient|null + * @throws \Exception\PathfinderException */ protected function getClient(\Base $f3){ $client = null; @@ -43,6 +44,7 @@ protected function getClient(\Base $f3){ /** * @return string + * @throws \Exception\PathfinderException */ protected function getUserAgent(){ $userAgent = ''; @@ -68,6 +70,7 @@ protected function getMissingMethodError($method){ * @param $name * @param $arguments * @return array|mixed + * @throws \Exception\PathfinderException */ public function __call($name, $arguments){ $return = []; diff --git a/app/main/lib/config.php b/app/main/lib/config.php index a663fd875..e38507b56 100644 --- a/app/main/lib/config.php +++ b/app/main/lib/config.php @@ -208,6 +208,7 @@ static function getDatabaseDNSValue(string $dns, string $key = 'dbname'){ /** * get SMTP config values * @return \stdClass + * @throws Exception\PathfinderException */ static function getSMTPConfig(): \stdClass{ $config = new \stdClass(); @@ -252,6 +253,7 @@ static function isValidSMTPConfig(\stdClass $config): bool { * get email for notifications by hive key * @param $key * @return mixed + * @throws Exception\PathfinderException */ static function getNotificationMail($key){ return self::getPathfinderData('notification' . ($key ? '.' . $key : '')); @@ -262,6 +264,7 @@ static function getNotificationMail($key){ * -> read from pathfinder.ini * @param string $mapType * @return mixed + * @throws Exception\PathfinderException */ static function getMapsDefaultConfig($mapType = ''){ if( $mapConfig = self::getPathfinderData('map' . ($mapType ? '.' . $mapType : '')) ){ diff --git a/app/main/lib/logging/AbstractCharacterLog.php b/app/main/lib/logging/AbstractCharacterLog.php index a40830700..1580b017c 100644 --- a/app/main/lib/logging/AbstractCharacterLog.php +++ b/app/main/lib/logging/AbstractCharacterLog.php @@ -68,6 +68,7 @@ public function getData() : array{ /** * get character thumbnailUrl * @return string + * @throws \Exception\PathfinderException */ protected function getThumbUrl(): string { $url = ''; diff --git a/app/main/lib/logging/AbstractLog.php b/app/main/lib/logging/AbstractLog.php index 7a87ae965..670daa014 100644 --- a/app/main/lib/logging/AbstractLog.php +++ b/app/main/lib/logging/AbstractLog.php @@ -426,6 +426,7 @@ protected function getHandlerParamsStream(): array{ /** * get __construct() parameters for ZMQHandler() call * @return array + * @throws \ZMQSocketException */ protected function getHandlerParamsZMQ(): array { $params = []; diff --git a/app/main/lib/logging/LogCollection.php b/app/main/lib/logging/LogCollection.php index 60e188261..afb3e8da7 100644 --- a/app/main/lib/logging/LogCollection.php +++ b/app/main/lib/logging/LogCollection.php @@ -60,6 +60,7 @@ protected function getPrimaryLog(): AbstractLog{ /** * add a new log object to this collection * @param AbstractLog $log + * @throws \Exception */ public function addLog(AbstractLog $log){ if(!$this->collection->contains($log)){ @@ -113,6 +114,7 @@ public function setMessage(string $message){ /** * @param string $tag + * @throws \Exception */ public function setTag(string $tag){ $currentTag = parent::getTag(); @@ -147,6 +149,7 @@ public function getData() : array{ /** * @return string + * @throws \Exception */ public function getChannelName() : string{ return $this->getPrimaryLog()->getChannelName(); @@ -154,6 +157,7 @@ public function getChannelName() : string{ /** * @return string + * @throws \Exception */ public function getLevel() : string{ return $this->getPrimaryLog()->getLevel(); @@ -161,6 +165,7 @@ public function getLevel() : string{ /** * @return bool + * @throws \Exception */ public function hasBuffer() : bool{ return $this->getPrimaryLog()->hasBuffer(); @@ -168,6 +173,7 @@ public function hasBuffer() : bool{ /** * @return array + * @throws \Exception */ public function getTempData() : array{ return $this->getPrimaryLog()->getTempData(); diff --git a/app/main/lib/logging/RallyLog.php b/app/main/lib/logging/RallyLog.php index b6171c3c5..7fa1b5778 100644 --- a/app/main/lib/logging/RallyLog.php +++ b/app/main/lib/logging/RallyLog.php @@ -37,6 +37,7 @@ public function __construct(string $action, array $objectData){ /** * @return string + * @throws \Exception\PathfinderException */ protected function getThumbUrl() : string{ $url = ''; diff --git a/app/main/lib/logging/handler/AbstractSlackWebhookHandler.php b/app/main/lib/logging/handler/AbstractSlackWebhookHandler.php index e045fe68b..0a2fbab36 100644 --- a/app/main/lib/logging/handler/AbstractSlackWebhookHandler.php +++ b/app/main/lib/logging/handler/AbstractSlackWebhookHandler.php @@ -179,6 +179,7 @@ protected function cleanAttachments(array $postData): array{ * @param array $attachment * @param array $characterData * @return array + * @throws \Exception\PathfinderException */ protected function setAuthor(array $attachment, array $characterData): array { if( !empty($characterData['id']) && !empty($characterData['name'])){ diff --git a/app/main/lib/logging/handler/SlackMapWebhookHandler.php b/app/main/lib/logging/handler/SlackMapWebhookHandler.php index 3d49aad61..53bb5733d 100644 --- a/app/main/lib/logging/handler/SlackMapWebhookHandler.php +++ b/app/main/lib/logging/handler/SlackMapWebhookHandler.php @@ -15,6 +15,7 @@ class SlackMapWebhookHandler extends AbstractSlackWebhookHandler { /** * @param array $record * @return array + * @throws \Exception\PathfinderException */ protected function getSlackData(array $record) : array{ $postData = parent::getSlackData($record); diff --git a/app/main/lib/logging/handler/SlackRallyWebhookHandler.php b/app/main/lib/logging/handler/SlackRallyWebhookHandler.php index be61478fa..1a53f29fc 100644 --- a/app/main/lib/logging/handler/SlackRallyWebhookHandler.php +++ b/app/main/lib/logging/handler/SlackRallyWebhookHandler.php @@ -15,6 +15,7 @@ class SlackRallyWebhookHandler extends AbstractSlackWebhookHandler { /** * @param array $record * @return array + * @throws \Exception\PathfinderException */ protected function getSlackData(array $record) : array{ $postData = parent::getSlackData($record); diff --git a/app/main/lib/socket.php b/app/main/lib/socket.php index 98cc7e8e3..0c8e1c345 100644 --- a/app/main/lib/socket.php +++ b/app/main/lib/socket.php @@ -87,9 +87,10 @@ public function initSocket(){ } /** - * @param $task + * @param string $task * @param string $load * @return bool|string + * @throws \ZMQSocketException */ public function sendData(string $task, $load = ''){ $response = false; diff --git a/app/main/lib/web.php b/app/main/lib/web.php index bf1ff510f..6b0eb91d6 100644 --- a/app/main/lib/web.php +++ b/app/main/lib/web.php @@ -100,6 +100,7 @@ protected function getCacheKey($url, $options = null){ * @param array $additionalOptions * @param int $retryCount request counter for failed call * @return array|FALSE|mixed + * @throws \Exception\PathfinderException */ public function request($url,array $options = null, $additionalOptions = [], $retryCount = 0 ) { $f3 = \Base::instance(); diff --git a/app/main/model/abstractmaptrackingmodel.php b/app/main/model/abstractmaptrackingmodel.php index 5098eef40..fc8dea6dc 100644 --- a/app/main/model/abstractmaptrackingmodel.php +++ b/app/main/model/abstractmaptrackingmodel.php @@ -52,6 +52,7 @@ protected function getStaticFieldConf(): array{ * @param $key * @param $val * @return bool + * @throws \Exception\ValidationException */ protected function validate_notDry($key, $val): bool { $valid = true; @@ -92,7 +93,7 @@ protected function logActivity($action){ /** * validates all required columns of this class * @return bool - * @throws \Exception\ValidationException + * @throws \Exception\DatabaseException */ public function isValid(): bool { if($valid = parent::isValid()){ diff --git a/app/main/model/alliancemodel.php b/app/main/model/alliancemodel.php index 23bcb7035..69720f3ff 100644 --- a/app/main/model/alliancemodel.php +++ b/app/main/model/alliancemodel.php @@ -57,6 +57,7 @@ public function getData(){ /** * get all maps for this alliance * @return array|mixed + * @throws \Exception\PathfinderException */ public function getMaps(){ $maps = []; diff --git a/app/main/model/basicmodel.php b/app/main/model/basicmodel.php index ba946bfa0..c3aa9a58a 100644 --- a/app/main/model/basicmodel.php +++ b/app/main/model/basicmodel.php @@ -822,6 +822,7 @@ public static function getF3(){ * debug log function * @param string $text * @param string $type + * @throws \Exception\PathfinderException */ public static function log($text, $type = 'DEBUG'){ Controller\LogController::getLogger($type)->write($text); diff --git a/app/main/model/characterlogmodel.php b/app/main/model/characterlogmodel.php index a7c4b3bf4..ae8c32715 100644 --- a/app/main/model/characterlogmodel.php +++ b/app/main/model/characterlogmodel.php @@ -139,25 +139,25 @@ public function setData($logData){ */ public function getData(){ - $logData = (object) []; - $logData->system = (object) []; - $logData->system->id = (int)$this->systemId; - $logData->system->name = $this->systemName; - - $logData->ship = (object) []; - $logData->ship->typeId = (int)$this->shipTypeId; - $logData->ship->typeName = $this->shipTypeName; - $logData->ship->id = $this->shipId; - $logData->ship->name = $this->shipName; - $logData->ship->mass = $this->shipMass; - - $logData->station = (object) []; - $logData->station->id = (int)$this->stationId; - $logData->station->name = $this->stationName; - - $logData->structure = (object) []; - $logData->structure->id = (int)$this->structureId; - $logData->structure->name = $this->structureName; + $logData = (object) []; + $logData->system = (object) []; + $logData->system->id = (int)$this->systemId; + $logData->system->name = $this->systemName; + + $logData->ship = (object) []; + $logData->ship->typeId = (int)$this->shipTypeId; + $logData->ship->typeName = $this->shipTypeName; + $logData->ship->id = $this->shipId; + $logData->ship->name = $this->shipName; + $logData->ship->mass = $this->shipMass; + + $logData->station = (object) []; + $logData->station->id = (int)$this->stationId; + $logData->station->name = $this->stationName; + + $logData->structure = (object) []; + $logData->structure->id = (int)$this->structureId; + $logData->structure->name = $this->structureName; return $logData; } @@ -166,6 +166,7 @@ public function getData(){ * setter for systemId * @param int $systemId * @return int + * @throws \Exception */ public function set_systemId($systemId){ if($systemId > 0){ @@ -219,6 +220,7 @@ public function clearCacheData(){ /** * update session data for active character * @param int $systemId + * @throws \Exception */ protected function updateCharacterSessionLocation(int $systemId){ $controller = new Controller(); diff --git a/app/main/model/charactermodel.php b/app/main/model/charactermodel.php index 890479be6..dadbe64d1 100644 --- a/app/main/model/charactermodel.php +++ b/app/main/model/charactermodel.php @@ -471,6 +471,7 @@ public function getAlliance(){ /** * get ESI API "access_token" from OAuth * @return bool|string + * @throws \Exception\PathfinderException */ public function getAccessToken(){ $accessToken = false; @@ -541,6 +542,7 @@ public function isKicked(){ * checks whether this character is authorized to log in * -> check corp/ally whitelist config (pathfinder.ini) * @return bool + * @throws \Exception\PathfinderException */ public function isAuthorized(){ $authStatus = 'UNKNOWN'; @@ -596,6 +598,7 @@ public function isAuthorized(){ /** * get pathfinder roleId * @return int + * @throws \Exception\PathfinderException */ public function requestRoleId(){ $roleId = self::ROLES['MEMBER']; @@ -614,6 +617,7 @@ public function requestRoleId(){ /** * request all corporation roles granted to this character * @return array + * @throws \Exception\PathfinderException */ protected function requestRoles(){ $rolesData = []; @@ -655,6 +659,7 @@ public function hasAdminScopes(){ * -> API request for character log data * @param array $additionalOptions (optional) request options for cURL request * @return CharacterModel + * @throws \Exception */ public function updateLog($additionalOptions = []){ $deleteLog = false; @@ -874,6 +879,7 @@ public function updateLog($additionalOptions = []){ /** * update character data from CCPs ESI API * @return array (some status messages) + * @throws \Exception */ public function updateFromESI(){ $status = []; @@ -938,6 +944,7 @@ public function getLog(){ * get mapModel by id and check if user has access * @param $mapId * @return MapModel|null + * @throws \Exception */ public function getMap($mapId){ /** @@ -957,6 +964,7 @@ public function getMap($mapId){ /** * get all accessible map models for this character * @return MapModel[] + * @throws \Exception\PathfinderException */ public function getMaps(){ $this->filter( diff --git a/app/main/model/characterstatusmodel.php b/app/main/model/characterstatusmodel.php index fe4764bc7..51895fde1 100644 --- a/app/main/model/characterstatusmodel.php +++ b/app/main/model/characterstatusmodel.php @@ -57,6 +57,7 @@ class CharacterStatusModel extends BasicModel { * @param null $table * @param null $fields * @return bool + * @throws \Exception */ public static function setup($db=null, $table=null, $fields=null){ $status = parent::setup($db,$table,$fields); diff --git a/app/main/model/connectionlogmodel.php b/app/main/model/connectionlogmodel.php new file mode 100644 index 000000000..d4cc21fea --- /dev/null +++ b/app/main/model/connectionlogmodel.php @@ -0,0 +1,84 @@ + [ + 'type' => Schema::DT_BOOL, + 'nullable' => false, + 'default' => 1, + 'index' => true + ], + 'connectionId' => [ + 'type' => Schema::DT_INT, + 'index' => true, + 'belongs-to-one' => 'Model\ConnectionModel', + 'constraint' => [ + [ + 'table' => 'connection', + 'on-delete' => 'CASCADE' + ] + ] + ], + 'shipTypeId' => [ + 'type' => Schema::DT_INT, + 'index' => true + ], + 'shipTypeName' => [ + 'type' => Schema::DT_VARCHAR128, + 'nullable' => false, + 'default' => '' + ], + 'shipMass' => [ + 'type' => Schema::DT_FLOAT, + 'nullable' => false, + 'default' => 0 + ], + 'characterId' => [ + 'type' => Schema::DT_INT, + 'index' => true + ], + 'characterName' => [ + 'type' => Schema::DT_VARCHAR128, + 'nullable' => false, + 'default' => '' + ] + ]; + + /** + * get connection log data + * @return \stdClass + */ + public function getData() : \stdClass { + $logData = (object) []; + $logData->id = $this->id; + + $logData->connection = (object) []; + $logData->connection->id = $this->get('connectionId', true); + + $logData->ship = (object) []; + $logData->ship->typeId = (int)$this->shipTypeId; + $logData->ship->typeName = $this->shipTypeName; + $logData->ship->mass = $this->shipMass; + + $logData->created = (object) []; + $logData->created->created = strtotime($this->created); + $logData->created->character = (object) []; + $logData->created->character->id = $this->characterId; + $logData->created->character->name = $this->characterName; + + return $logData; + } +} \ No newline at end of file diff --git a/app/main/model/connectionmodel.php b/app/main/model/connectionmodel.php index ec7cf2a1d..68829c392 100644 --- a/app/main/model/connectionmodel.php +++ b/app/main/model/connectionmodel.php @@ -74,6 +74,9 @@ class ConnectionModel extends AbstractMapTrackingModel { ], 'signatures' => [ 'has-many' => ['Model\SystemSignatureModel', 'connectionId'] + ], + 'connectionLog' => [ + 'has-many' => ['Model\ConnectionLogModel', 'connectionId'] ] ]; @@ -101,20 +104,21 @@ public function setData($data){ } /** - * get connection data as array + * get connection data * @param bool $addSignatureData + * @param bool $addLogData * @return \stdClass */ - public function getData($addSignatureData = false){ + public function getData($addSignatureData = false, $addLogData = false){ $connectionData = (object) []; - $connectionData->id = $this->id; - $connectionData->source = $this->source->id; - $connectionData->target = $this->target->id; - $connectionData->scope = $this->scope; - $connectionData->type = $this->type; - $connectionData->updated = strtotime($this->updated); - $connectionData->created = strtotime($this->created); - $connectionData->eolUpdated = strtotime($this->eolUpdated); + $connectionData->id = $this->id; + $connectionData->source = $this->source->id; + $connectionData->target = $this->target->id; + $connectionData->scope = $this->scope; + $connectionData->type = $this->type; + $connectionData->updated = strtotime($this->updated); + $connectionData->created = strtotime($this->created); + $connectionData->eolUpdated = strtotime($this->eolUpdated); if($addSignatureData){ if( !empty($signaturesData = $this->getSignaturesData()) ){ @@ -122,6 +126,12 @@ public function getData($addSignatureData = false){ } } + if($addLogData){ + if( !empty($logsData = $this->getLogsData()) ){ + $connectionData->logs = $logsData; + } + } + return $connectionData; } @@ -193,6 +203,7 @@ public function isWormhole(){ /** * check whether this model is valid or not * @return bool + * @throws \Exception\DatabaseException */ public function isValid(): bool { if($valid = parent::isValid()){ @@ -218,6 +229,7 @@ public function isValid(): bool { * @param ConnectionModel $self * @param $pkeys * @return bool + * @throws \Exception\DatabaseException */ public function beforeInsertEvent($self, $pkeys){ // check for "default" connection type and add them if missing @@ -269,6 +281,7 @@ public function afterEraseEvent($self, $pkeys){ /** * @param string $action * @return Logging\LogInterface + * @throws \Exception\PathfinderException */ public function newLog($action = ''): Logging\LogInterface{ return $this->getMap()->newLog($action)->setTempData($this->getLogObjectData()); @@ -330,11 +343,29 @@ public function getSignatures(){ return $signatures; } + /** + * get all jump logs that are connected with this connection + * @return array|mixed + */ + public function getLogs(){ + $logs = []; + $this->filter('connectionLog', [ + 'active = :active', + ':active' => 1 + ]); + + if($this->connectionLog){ + $logs = $this->connectionLog; + } + + return $logs; + } + /** * get all signature data linked to this connection * @return array */ - public function getSignaturesData(){ + public function getSignaturesData() : array { $signaturesData = []; $signatures = $this->getSignatures(); @@ -345,6 +376,36 @@ public function getSignaturesData(){ return $signaturesData; } + /** + * get all connection log data linked to this connection + * @return array + */ + public function getLogsData() : array{ + $logsData = []; + $logs = $this->getLogs(); + + foreach($logs as $log){ + $logsData[] = $log->getData(); + } + + return $logsData; + } + + public function logMass(CharacterLogModel $characterLog){ + if( !$characterLog->dry() ){ + $log = $this->rel('connectionLog'); + $log->shipTypeId = $characterLog->shipTypeId; + $log->shipTypeName = $characterLog->shipTypeName; + $log->shipMass = $characterLog->shipMass; + $log->characterId = $characterLog->characterId->_id; + $log->characterName = $characterLog->characterId->name; + $log->connectionId = $this; + $log->save(); + } + + return $this; + } + /** * overwrites parent * @param null $db diff --git a/app/main/model/connectionscopemodel.php b/app/main/model/connectionscopemodel.php index e72f8438e..bec69ffa4 100644 --- a/app/main/model/connectionscopemodel.php +++ b/app/main/model/connectionscopemodel.php @@ -66,6 +66,7 @@ class ConnectionScopeModel extends BasicModel{ * @param null $table * @param null $fields * @return bool + * @throws \Exception */ public static function setup($db=null, $table=null, $fields=null){ $status = parent::setup($db,$table,$fields); diff --git a/app/main/model/corporationmodel.php b/app/main/model/corporationmodel.php index a503d7df1..5e982f46a 100644 --- a/app/main/model/corporationmodel.php +++ b/app/main/model/corporationmodel.php @@ -128,6 +128,7 @@ public function getData(){ /** * get all maps for this corporation * @return MapModel[] + * @throws \Exception\PathfinderException */ public function getMaps(){ $maps = []; diff --git a/app/main/model/mapmodel.php b/app/main/model/mapmodel.php index 951bf6308..390d2815c 100644 --- a/app/main/model/mapmodel.php +++ b/app/main/model/mapmodel.php @@ -181,6 +181,8 @@ public function setData($data){ * get map data * -> this includes system and connection data as well! * @return \stdClass + * @throws PathfinderException + * @throws \Exception */ public function getData(){ // check if there is cached data @@ -294,6 +296,7 @@ public function getData(){ * @param string $key * @param string $val * @return bool + * @throws \Exception\ValidationException */ protected function validate_name(string $key, string $val): bool { $valid = true; @@ -309,6 +312,7 @@ protected function validate_name(string $key, string $val): bool { * @param string $key * @param string $val * @return bool + * @throws \Exception\ValidationException */ protected function validate_slackWebHookURL(string $key, string $val): bool { $valid = true; @@ -401,6 +405,7 @@ public function clearCacheData(){ * -> check for "inactive" systems on this map first! * @param int $systemId * @return SystemModel + * @throws \Exception */ public function getNewSystem($systemId){ // check for "inactive" system @@ -510,6 +515,7 @@ public function getSystems(){ /** * get all system data for all systems in this map * @return \stdClass[] + * @throws \Exception */ public function getSystemData(){ $systemData = []; @@ -545,10 +551,11 @@ public function getConnectionById($id){ /** * get all connections in this map + * @param null $connectionIds * @param string $scope * @return ConnectionModel[] */ - public function getConnections($scope = ''){ + public function getConnections($connectionIds = null, $scope = ''){ $connections = []; $query = [ @@ -561,6 +568,11 @@ public function getConnections($scope = ''){ $query[':scope'] = $scope; } + if(!empty($connectionIds)){ + $query[0] .= ' AND id IN (?)'; + $query[] = $connectionIds; + } + $this->filter('connections', $query); if($this->connections){ @@ -591,6 +603,7 @@ public function getConnectionData(){ /** * set map access for an object (character, corporation or alliance) * @param $obj + * @throws \Exception */ public function setAccess($obj){ @@ -689,6 +702,7 @@ public function clearAccess($clearKeys = ['character', 'corporation', 'alliance' * checks whether a character has access to this map or not * @param CharacterModel $characterModel * @return bool + * @throws PathfinderException */ public function hasAccess(CharacterModel $characterModel){ $hasAccess = false; @@ -834,6 +848,7 @@ public function getAlliances(){ /** * @param string $action * @return Logging\LogInterface + * @throws PathfinderException */ public function newLog($action = ''): Logging\LogInterface{ $logChannelData = $this->getLogChannelData(); @@ -901,6 +916,7 @@ protected function getLogFormatter(){ /** * check if "activity logging" is enabled for this map type * @return bool + * @throws PathfinderException */ public function isActivityLogEnabled(): bool { return $this->logActivity && (bool) Config::getMapsDefaultConfig($this->typeId->name)['log_activity_enabled']; @@ -909,6 +925,7 @@ public function isActivityLogEnabled(): bool { /** * check if "history logging" is enabled for this map type * @return bool + * @throws PathfinderException */ public function isHistoryLogEnabled(): bool { return $this->logHistory && (bool) Config::getMapsDefaultConfig($this->typeId->name)['log_history_enabled']; @@ -946,6 +963,7 @@ public function isSlackChannelEnabled(string $channel): bool { * check if "E-Mail" Log is enabled for this map * @param string $type * @return bool + * @throws PathfinderException */ public function isMailSendEnabled(string $type): bool{ $enabled = false; @@ -1005,6 +1023,7 @@ public function getSlackWebHookConfig(string $channel = ''): \stdClass{ * @param string $type * @param bool $addJson * @return \stdClass + * @throws PathfinderException */ public function getSMTPConfig(string $type, bool $addJson = true): \stdClass{ $config = Config::getSMTPConfig(); @@ -1141,6 +1160,8 @@ protected function deleteLogFile(){ * get all active characters (with active log) * grouped by systems * @return \stdClass + * @throws PathfinderException + * @throws \Exception */ public function getUserData(){ diff --git a/app/main/model/mapscopemodel.php b/app/main/model/mapscopemodel.php index c0d789738..5928339fa 100644 --- a/app/main/model/mapscopemodel.php +++ b/app/main/model/mapscopemodel.php @@ -59,6 +59,7 @@ class MapScopeModel extends BasicModel{ * @param null $table * @param null $fields * @return bool + * @throws \Exception */ public static function setup($db=null, $table=null, $fields=null){ $status = parent::setup($db,$table,$fields); diff --git a/app/main/model/maptypemodel.php b/app/main/model/maptypemodel.php index 3dc465fb9..6cacf3406 100644 --- a/app/main/model/maptypemodel.php +++ b/app/main/model/maptypemodel.php @@ -87,6 +87,7 @@ class MapTypeModel extends BasicModel{ * @param null $table * @param null $fields * @return bool + * @throws \Exception */ public static function setup($db=null, $table=null, $fields=null){ $status = parent::setup($db,$table,$fields); diff --git a/app/main/model/systemmodel.php b/app/main/model/systemmodel.php index b749671b8..884b4b953 100644 --- a/app/main/model/systemmodel.php +++ b/app/main/model/systemmodel.php @@ -410,6 +410,7 @@ public function afterEraseEvent($self, $pkeys){ /** * @param string $action * @return Logging\LogInterface + * @throws \Exception\PathfinderException */ public function newLog($action = ''): Logging\LogInterface{ return $this->getMap()->newLog($action)->setTempData($this->getLogObjectData()); @@ -567,6 +568,7 @@ public function isShatteredWormhole(){ * -> send to an Email * @param array $rallyData * @param CharacterModel $characterModel + * @throws \Exception\PathfinderException */ public function sendRallyPoke(array $rallyData, CharacterModel $characterModel){ // rally log needs at least one handler to be valid diff --git a/app/main/model/systemsignaturemodel.php b/app/main/model/systemsignaturemodel.php index bd457c465..dab0d37b7 100644 --- a/app/main/model/systemsignaturemodel.php +++ b/app/main/model/systemsignaturemodel.php @@ -169,6 +169,7 @@ public function set_connectionId($connectionId){ * @param string $key * @param string $val * @return bool + * @throws \Exception\ValidationException */ protected function validate_name(string $key, string $val): bool { $valid = true; @@ -182,6 +183,7 @@ protected function validate_name(string $key, string $val): bool { /** * @param string $action * @return Logging\LogInterface + * @throws \Exception\PathfinderException */ public function newLog($action = ''): Logging\LogInterface{ return $this->getMap()->newLog($action)->setTempData($this->getLogObjectData()); diff --git a/app/main/model/systemstatusmodel.php b/app/main/model/systemstatusmodel.php index 39eac5017..01c62aede 100644 --- a/app/main/model/systemstatusmodel.php +++ b/app/main/model/systemstatusmodel.php @@ -83,6 +83,7 @@ class SystemStatusModel extends BasicModel { * @param null $table * @param null $fields * @return bool + * @throws \Exception */ public static function setup($db=null, $table=null, $fields=null){ $status = parent::setup($db,$table,$fields); diff --git a/app/main/model/systemtypemodel.php b/app/main/model/systemtypemodel.php index 1b0717163..e2c15439a 100644 --- a/app/main/model/systemtypemodel.php +++ b/app/main/model/systemtypemodel.php @@ -45,6 +45,7 @@ class SystemTypeModel extends BasicModel { * @param null $table * @param null $fields * @return bool + * @throws \Exception */ public static function setup($db=null, $table=null, $fields=null){ $status = parent::setup($db,$table,$fields); diff --git a/app/main/model/universe/constellationmodel.php b/app/main/model/universe/constellationmodel.php index 29c33516f..4d8cb1b40 100644 --- a/app/main/model/universe/constellationmodel.php +++ b/app/main/model/universe/constellationmodel.php @@ -54,4 +54,13 @@ class ConstellationModel extends BasicUniverseModel { ] ]; + /** + * @param int $id + * @param string $accessToken + * @param array $additionalOptions + */ + protected function loadData(int $id, string $accessToken = '', array $additionalOptions = []){ + + } + } \ No newline at end of file diff --git a/app/main/model/universe/regionmodel.php b/app/main/model/universe/regionmodel.php index 44db09bd5..6f373bd19 100644 --- a/app/main/model/universe/regionmodel.php +++ b/app/main/model/universe/regionmodel.php @@ -33,4 +33,13 @@ class RegionModel extends BasicUniverseModel { 'has-many' => ['Model\Universe\ConstellationModel', 'regionId'] ], ]; + + /** + * @param int $id + * @param string $accessToken + * @param array $additionalOptions + */ + protected function loadData(int $id, string $accessToken = '', array $additionalOptions = []){ + + } } \ No newline at end of file diff --git a/app/main/model/usermodel.php b/app/main/model/usermodel.php index f6a8de3cd..27f4a3f5e 100644 --- a/app/main/model/usermodel.php +++ b/app/main/model/usermodel.php @@ -49,6 +49,7 @@ class UserModel extends BasicModel { * -> ! caution ! this function returns sensitive data! (e.g. email,..) * -> user getSimpleData() for faster performance and public user data * @return \stdClass + * @throws Exception */ public function getData(){ @@ -93,6 +94,7 @@ public function getSimpleData(){ * @param UserModel $self * @param $pkeys * @return bool + * @throws Exception\PathfinderException * @throws Exception\RegistrationException */ public function beforeInsertEvent($self, $pkeys){ @@ -135,6 +137,7 @@ protected function sendDeleteMail(){ /** * checks whether user has a valid email address and pathfinder has a valid SMTP config * @return bool + * @throws Exception\PathfinderException */ protected function isMailSendEnabled() : bool{ return Config::isValidSMTPConfig($this->getSMTPConfig()); @@ -143,6 +146,7 @@ protected function isMailSendEnabled() : bool{ /** * get SMTP config for this user * @return \stdClass + * @throws Exception\PathfinderException */ protected function getSMTPConfig() : \stdClass{ $config = Config::getSMTPConfig(); @@ -155,6 +159,7 @@ protected function getSMTPConfig() : \stdClass{ * @param string $key * @param string $val * @return bool + * @throws Exception\ValidationException */ protected function validate_name(string $key, string $val): bool { $valid = true; @@ -173,6 +178,7 @@ protected function validate_name(string $key, string $val): bool { * @param string $key * @param string $val * @return bool + * @throws Exception\ValidationException */ protected function validate_email(string $key, string $val): bool { $valid = true; @@ -207,6 +213,7 @@ public function getByName($name){ * @param int $characterId * @param bool $objectCheck * @return array + * @throws Exception */ public function getSessionCharacterData($characterId = 0, $objectCheck = true){ $data = []; @@ -289,6 +296,7 @@ public function getUserCharacters(){ * -> EITHER - the current active one for the current user * -> OR - get the first active one * @return null|CharacterModel + * @throws Exception */ public function getActiveCharacter(){ $activeCharacter = null; diff --git a/app/main/model/wormholemodel.php b/app/main/model/wormholemodel.php index 3ddd18b8b..022f3c8b5 100644 --- a/app/main/model/wormholemodel.php +++ b/app/main/model/wormholemodel.php @@ -59,47 +59,27 @@ class WormholeModel extends BasicModel { */ protected $addStaticFields = false; - /** - * format mass values - * - no decimal separator - * - char '.' for thousands separator - * @param $value - * @return string - */ - static function formatMassValue($value){ - return number_format( $value, 0, '', '.' ); - } - /** * get wormhole data as object * @return object */ public function getData(){ - $systemStaticData = (object) []; $systemStaticData->name = $this->name; $systemStaticData->security = $this->security; // total (max) available wormhole mass - $systemStaticData->massTotal = (object) []; - $systemStaticData->massTotal->value = $this->massTotal; - $systemStaticData->massTotal->format = self::formatMassValue($this->massTotal) . ' Kg'; + $systemStaticData->massTotal = $this->massTotal; // individual jump mass (max) per jump - $systemStaticData->massIndividual = (object) []; - $systemStaticData->massIndividual->value = $this->massIndividual; - $systemStaticData->massIndividual->format = self::formatMassValue($this->massIndividual) . ' Kg'; + $systemStaticData->massIndividual = $this->massIndividual; // lifetime (max) for this wormhole - $systemStaticData->maxStableTime = (object) []; - $systemStaticData->maxStableTime->value = $this->maxStableTime; - $systemStaticData->maxStableTime->format = $this->maxStableTime . ' h'; + $systemStaticData->maxStableTime = $this->maxStableTime; // mass regeneration value per day if($this->massRegeneration > 0){ - $systemStaticData->massRegeneration = (object) []; - $systemStaticData->massRegeneration->value = $this->massRegeneration; - $systemStaticData->massRegeneration->format = self::formatMassValue($this->massRegeneration) . ' Kg/day'; + $systemStaticData->massRegeneration = $this->massRegeneration; } return $systemStaticData; diff --git a/app/pathfinder.ini b/app/pathfinder.ini index 54063594a..4d1f156a7 100644 --- a/app/pathfinder.ini +++ b/app/pathfinder.ini @@ -3,7 +3,7 @@ [PATHFINDER] NAME = Pathfinder ; installed version (used for CSS/JS cache busting) -VERSION = v1.3.0 +VERSION = v1.3.1 ; contact information [optional] CONTACT = https://github.com/exodus4d ; public contact email [optional] diff --git a/js/app.js b/js/app.js index 6683161c5..3c93bfed0 100644 --- a/js/app.js +++ b/js/app.js @@ -1,3 +1,5 @@ +'use strict'; + // main script path var mainScriptPath = document.body.getAttribute('data-script'); @@ -40,7 +42,7 @@ requirejs.config({ raphael: 'lib/raphael-min', // v2.1.2 Raphaël - required for morris (dependency) bootbox: 'lib/bootbox.min', // v4.4.0 Bootbox.js - custom dialogs - http://bootboxjs.com easyPieChart: 'lib/jquery.easypiechart.min', // v2.1.6 Easy Pie Chart - HTML 5 pie charts - http://rendro.github.io/easy-pie-chart - peityInlineChart: 'lib/jquery.peity.min', // v3.2.0 Inline Chart - http://benpickles.github.io/peity/ + peityInlineChart: 'lib/jquery.peity.min', // v3.2.1 Inline Chart - http://benpickles.github.io/peity/ dragToSelect: 'lib/jquery.dragToSelect', // v1.1 Drag to Select - http://andreaslagerkvist.com/jquery/drag-to-select hoverIntent: 'lib/jquery.hoverIntent.minified', // v1.8.0 Hover intention - http://cherne.net/brian/resources/jquery.hoverIntent.html fullScreen: 'lib/jquery.fullscreen.min', // v0.6.0 Full screen mode - https://github.com/private-face/jquery.fullscreen @@ -53,6 +55,7 @@ requirejs.config({ bootstrapConfirmation: 'lib/bootstrap-confirmation', // v1.0.5 Bootstrap extension for inline confirm dialog - https://github.com/tavicu/bs-confirmation bootstrapToggle: 'lib/bootstrap2-toggle.min', // v2.2.0 Bootstrap Toggle (Checkbox) - http://www.bootstraptoggle.com lazyload: 'lib/jquery.lazyload.min', // v1.9.5 LazyLoader images - http://www.appelsiini.net/projects/lazyload + sortable: 'lib/sortable.min', // v1.3.0 Sortable - drag&drop reorder // header animation easePack: 'lib/EasePack.min', @@ -126,7 +129,10 @@ requirejs.config({ }, morris: { deps: ['jquery', 'raphael'], - exports: 'Morris' + exports: 'Morris', + init: function ($, Raphael) { + window.Raphael = Raphael; + } }, pnotify: { deps : ['jquery'] diff --git a/js/app/counter.js b/js/app/counter.js index 040a0e028..7562c1305 100644 --- a/js/app/counter.js +++ b/js/app/counter.js @@ -14,49 +14,77 @@ define([ * update element with time information * @param element * @param tempDate + * @param round */ - let updateDateDiff = function(element, tempDate){ + let updateDateDiff = function(element, tempDate, round){ let diff = Util.getTimeDiffParts(tempDate, new Date()); let days = diff.days; let hrs = diff.hours; let min = diff.min; let leftSec = diff.sec; - let value = []; + let parts = []; if( - days > 0 || - value.length > 0 + round === 'd' && + days >= 1 ){ - value.push('' + days + 'd' + ''); - } - if( - hrs > 0 || - value.length > 0 - ){ - value.push('' + hrs + 'h' + ''); - } - if( - min > 0 || - value.length > 0 - ){ - value.push('' + min + 'm' + ''); - } + parts.push('' + '> 1d' + ''); + }else{ + if( + days > 0 || + parts.length > 0 + ){ + parts.push('' + days + 'd' + ''); + } + if( + hrs > 0 || + parts.length > 0 + ){ + parts.push('' + hrs + 'h' + ''); + } + if( + min > 0 || + parts.length > 0 + ){ + parts.push('' + min + 'm' + ''); + } - if( - leftSec >= 0 || - value.length > 0 - ){ - value.push('' + leftSec + 's' + ''); + if( + leftSec >= 0 || + parts.length > 0 + ){ + parts.push('' + leftSec + 's' + ''); + } } - element.html(value.join(' ')); + + + element.html(parts.join(' ')); + }; + + /** + * destroy all active counter recursive + */ + $.fn.destroyTimestampCounter = function(){ + return this.each(function(){ + let element = $(this); + element.find('[data-counter="init"]').each(function(){ + let interval = $(this).data('interval'); + if(interval){ + clearInterval(interval); + element.removeAttr('data-counter') + .removeData('interval') + .removeClass('stopCounter'); + } + }); + }); }; /** * init a live counter based on a unix timestamp - * @returns {*} + * @param round string e.g. 'd' => round days */ - $.fn.initTimestampCounter = function(){ + $.fn.initTimestampCounter = function(round){ return this.each(function(){ let element = $(this); let timestamp = parseInt( element.text() ); @@ -68,7 +96,7 @@ define([ let date = new Date( timestamp * 1000); - updateDateDiff(element, date); + updateDateDiff(element, date, round); // show element (if invisible) after first update element.css({'visibility': 'initial'}); @@ -77,7 +105,7 @@ define([ // update element with current time if( !element.hasClass('stopCounter')){ - updateDateDiff(element, date); + updateDateDiff(element, date, round); }else{ clearInterval( element.data('interval') ); } diff --git a/js/app/init.js b/js/app/init.js index 79360978f..bbaab565c 100644 --- a/js/app/init.js +++ b/js/app/init.js @@ -327,6 +327,9 @@ define(['jquery'], function($) { location: 0.6 }] ] + }, + active: { + cssClass: 'pf-map-connection-active' } }, // signature groups diff --git a/js/app/logging.js b/js/app/logging.js index 0cfc5cf6d..70cad80f0 100644 --- a/js/app/logging.js +++ b/js/app/logging.js @@ -205,7 +205,6 @@ define([ class: config.dialogDynamicAreaClass }).append( graphElement ); - // headline let headline = $('

', { text: key }).prepend( diff --git a/js/app/map/map.js b/js/app/map/map.js index 8cd97831b..75a181aa4 100644 --- a/js/app/map/map.js +++ b/js/app/map/map.js @@ -23,6 +23,7 @@ define([ let config = { zIndexCounter: 110, + maxActiveConnections: 8, mapSnapToGrid: false, // "Snap to Grid" feature for drag&drop systems on map (optional) mapWrapperClass: 'pf-map-wrapper', // wrapper div (scrollable) @@ -30,9 +31,9 @@ define([ mapClass: 'pf-map', // class for all maps mapIdPrefix: 'pf-map-', // id prefix for all maps systemClass: 'pf-system', // class for all systems - systemActiveClass: 'pf-system-active', // class for an active system in a map - systemSelectedClass: 'pf-system-selected', // class for selected systems in a map - systemLockedClass: 'pf-system-locked', // class for locked systems in a map + systemActiveClass: 'pf-system-active', // class for an active system on a map + systemSelectedClass: 'pf-system-selected', // class for selected systems on a map + systemLockedClass: 'pf-system-locked', // class for locked systems on a map systemHeadClass: 'pf-system-head', // class for system head systemHeadNameClass: 'pf-system-head-name', // class for system name systemHeadExpandClass: 'pf-system-head-expand', // class for system head expand arrow @@ -85,7 +86,7 @@ define([ dragOptions:{ }, connectionsDetachable: true, // dragOptions are set -> allow detaching them - maxConnections: 10, // due to isTarget is true, this is the max count of !out!-going connections + maxConnections: 10, // due to isTarget is true, this is the max count of !out!-going connections // isSource:true, anchor: 'Continuous' }, @@ -93,7 +94,7 @@ define([ filter: '.' + config.systemHeadNameClass, isSource:true, //isTarget:true, - //allowLoopback: false, // loopback connections are not allowed + //allowLoopBack: false, // loopBack connections are not allowed cssClass: config.endpointTargetClass, dropOptions: { hoverClass: config.systemActiveClass, @@ -626,6 +627,7 @@ define([ // get map container let mapElement = $( map.getContainer() ); + let connectionCanvas = $(connection.canvas); // if the connection already exists -> do not set it twice connection.unbind('contextmenu').bind('contextmenu', function(component, e) { @@ -646,7 +648,7 @@ define([ * init context menu for all connections * must be triggered manually on demand */ - $(connection.canvas).contextMenu({ + connectionCanvas.contextMenu({ menuSelector: '#' + config.connectionContextMenuId, menuSelected: function (params){ @@ -708,6 +710,31 @@ define([ } }); + // connection click events ========================================================================== + + let single = function(e){ + let connection = this; + // left mouse button + if(e.which === 1){ + if(e.ctrlKey === true){ + // an "active" connection is required before adding more "selected" connections + let activeConnections = MapUtil.getConnectionsByType(map, 'active'); + if(activeConnections.length >= config.maxActiveConnections && !connection.hasType('active')){ + Util.showNotify({title: 'Connection select limit', text: 'You can´t select more connections', type: 'warning'}); + }else { + if(activeConnections.length > 0) { + MapUtil.toggleConnectionActive(map, [connection]); + }else{ + MapUtil.showConnectionInfo(map, connection); + } + } + }else{ + MapUtil.showConnectionInfo(map, connection); + } + } + }.bind(connection); + + connectionCanvas.singleDoubleClick(single, () => {}); }; /** @@ -1650,42 +1677,6 @@ define([ }); }; - /** - * get all relevant data for a connection object - * @param connection - * @returns {{id: Number, source: Number, sourceName: (*|T|JQuery|{}), target: Number, targetName: (*|T|JQuery), scope: *, type: *, updated: Number}} - */ - let getDataByConnection = function(connection){ - let source = $(connection.source); - let target = $(connection.target); - - let id = connection.getParameter('connectionId'); - let updated = connection.getParameter('updated'); - - let connectionTypes = connection.getType(); - - // normalize connection array - connectionTypes = $.grep(connectionTypes, function(n){ - // 'default' is added by jsPlumb by default -_- - return ( n.length > 0 && n !== 'default'); - }); - - let data = { - id: id ? id : 0, - source: parseInt( source.data('id') ), - sourceName: source.data('name'), - sourceAlias: source.getSystemInfo(['alias']) || source.data('name'), - target: parseInt( target.data('id') ), - targetName: target.data('name'), - targetAlias: target.getSystemInfo(['alias']) || target.data('name'), - scope: connection.scope, - type: connectionTypes, - updated: updated ? updated : 0 - }; - - return data; - }; - /** * stores a connection in database * @param connection @@ -1697,7 +1688,7 @@ define([ let mapContainer = $( map.getContainer() ); let mapId = mapContainer.data('id'); - let connectionData = getDataByConnection(connection); + let connectionData = MapUtil.getDataByConnection(connection); let requestData = { mapData: { @@ -2362,9 +2353,9 @@ define([ if(! system.hasClass('no-click')){ if(e.ctrlKey === true){ // select system - system.toggleSelectSystem(map); + MapUtil.toggleSelectSystem(map, [system]); }else{ - system.showSystemInfo(map); + MapUtil.showSystemInfo(map, system); } } } @@ -2412,31 +2403,6 @@ define([ return changed; }; - /** - * triggers the "showSystemInfo" event, that is responsible for initializing the "map info" panel - * @param map - */ - $.fn.showSystemInfo = function(map){ - let system = $(this); - - // activate system - markSystemActive(map, system); - - // get parent Tab Content and fire update event - let tabContentElement = MapUtil.getTabContentElementByMapElement( system ); - - // collect all required data from map module to update the info element - // store them global and assessable for each module - let currentSystemData = { - systemData: system.getSystemData(), - mapId: parseInt( system.attr('data-mapid') ) - }; - - Util.setCurrentSystemData(currentSystemData); - - $(tabContentElement).trigger('pf:drawSystemModules'); - }; - /** * select all (selectable) systems on a mapElement */ @@ -2452,35 +2418,13 @@ define([ return ( $(el).data('locked') !== true ); }); - allSystems.toggleSelectSystem(map); + MapUtil.toggleSelectSystem(map, allSystems); Util.showNotify({title: allSystems.length + ' systems selected', type: 'success'}); }); }; - /** - * toggle selectable status of a system - */ - $.fn.toggleSelectSystem = function(map){ - - return this.each(function(){ - let system = $(this); - - if( system.data('locked') !== true ){ - - if( system.hasClass( config.systemSelectedClass ) ){ - system.removeClass( config.systemSelectedClass ); - - map.removeFromDragSelection(system); - }else{ - system.addClass( config.systemSelectedClass ); - map.addToDragSelection(system); - } - } - }); - }; - /** * toggle log status of a system * @param poke @@ -2904,7 +2848,7 @@ define([ tempMapWrapper.mCustomScrollbar('scrollTo', system); // select system - system.showSystemInfo(map); + MapUtil.showSystemInfo(map, system); } }); @@ -2969,22 +2913,6 @@ define([ }); }; - /** - * mark a system as active - * @param map - * @param system - */ - let markSystemActive = function(map, system){ - - // deactivate all systems in map - let mapContainer = $( map.getContainer() ); - - mapContainer.find('.' + config.systemClass).removeClass(config.systemActiveClass); - - // set current system active - system.addClass(config.systemActiveClass); - }; - /** * get system data out of its object * @param info @@ -3051,7 +2979,7 @@ define([ // data for header update let headerUpdateData = { mapId: userData.config.id, - userCount: 0 // active user in a map + userCount: 0 // active user on a map }; if( @@ -3191,7 +3119,7 @@ define([ // format connections for(let j = 0; j < connections.length; j++){ let tempConnection = connections[j]; - let connectionData = getDataByConnection(tempConnection); + let connectionData = MapUtil.getDataByConnection(tempConnection); // only add valid connections (id is required, this is not the case if connection is new) if(connectionData.id > 0){ @@ -3422,7 +3350,6 @@ define([ return { getMapInstance: getMapInstance, clearMapInstance: clearMapInstance, - getDataByConnection: getDataByConnection, showNewSystemDialog: showNewSystemDialog }; diff --git a/js/app/map/overlay.js b/js/app/map/overlay.js index 328aa6212..f71d52ae5 100644 --- a/js/app/map/overlay.js +++ b/js/app/map/overlay.js @@ -5,8 +5,9 @@ define([ 'jquery', 'app/init', - 'app/util' -], function($, Init, Util) { + 'app/util', + 'app/map/util' +], function($, Init, Util, MapUtil) { 'use strict'; let config = { @@ -72,34 +73,15 @@ define([ * @param label */ let addEndpointOverlay = (endpoint, label) => { - let newLabel = ''; - let colorClass = 'txt-color-grayLighter'; - - if(label.length > 0){ - newLabel = label; - - // check if multiple labels found => conflict - if( label.includes(', ') ){ - colorClass = 'txt-color-orangeLight'; - }else if( !label.includes('K162') ){ - colorClass = 'txt-color-yellow'; - } - }else{ - // endpoint not connected with a signature - newLabel = ''; - colorClass = 'txt-color-red'; - } - endpoint.addOverlay([ 'Label', { - label: '' + newLabel + '', + label: MapUtil.getEndpointOverlayContent(label), id: config.connectionOverlaySmallId, cssClass: config.connectionOverlaySmallClass, - location: [ 0.5, 0.5 ] + location: [ 0.9, 0.9 ] } ]); - }; // loop through all map connections (get from DOM) @@ -119,53 +101,15 @@ define([ // ... find matching connectionData (from Ajax) for(let connectionData of connectionsData){ - if( - connectionData.id === connectionId && - connectionData.signatures // signature data is required... - ){ - - // ... collect overlay/label data from signatures - for(let signatureData of connectionData.signatures){ - // ... typeId is required to get a valid name - if(signatureData.typeId > 0){ - - // whether "source" or "target" system is relevant for current connection and current signature... - let tmpSystem = null; - let tmpSystemType = null; - - if(signatureData.system.id === sourceId){ - // relates to "source" endpoint - tmpSystemType = 'sourceLabels'; - tmpSystem = sourceSystem; - }else if(signatureData.system.id === targetId){ - // relates to "target" endpoint - tmpSystemType = 'targetLabels'; - tmpSystem = targetSystem; - } - - // ... get endpoint label for source || target system - if(tmpSystem && tmpSystem){ - // ... get all available signature type (wormholes) names - let availableSigTypeNames = SystemSignatures.getAllSignatureNamesBySystem(tmpSystem, 5); - let flattenSigTypeNames = Util.flattenXEditableSelectArray(availableSigTypeNames); - - if( flattenSigTypeNames.hasOwnProperty(signatureData.typeId) ){ - let label = flattenSigTypeNames[signatureData.typeId]; - // shorten label, just take the in game name - label = label.substr(0, label.indexOf(' ')); - signatureTypeNames[tmpSystemType].push(label); - } - } - } - } - + if(connectionData.id === connectionId){ + signatureTypeNames = MapUtil.getConnectionDataFromSignatures(connection, connectionData); // ... connection matched -> continue with next one break; } } - let sourceLabel = signatureTypeNames.sourceLabels.join(', '); - let targetLabel = signatureTypeNames.targetLabels.join(', '); + let sourceLabel = signatureTypeNames.sourceLabels; + let targetLabel = signatureTypeNames.targetLabels; // add endpoint overlays ------------------------------------------------------ addEndpointOverlay(sourceEndpoint, sourceLabel); @@ -176,19 +120,19 @@ define([ let arrowDirection = 1; if( - (sourceLabel.includes('K162') && targetLabel.includes('K162')) || + (sourceLabel.indexOf('K162') !== -1 && targetLabel.indexOf('K162') !== -1) || (sourceLabel.length === 0 && targetLabel.length === 0) || ( sourceLabel.length > 0 && targetLabel.length > 0 && - !sourceLabel.includes('K162') && !targetLabel.includes('K162') + sourceLabel.indexOf('K162') === -1 && targetLabel.indexOf('K162') === -1 ) ){ // unknown direction overlayType = 'Diamond'; // not specified arrowDirection = 1; }else if( - (sourceLabel.includes('K162')) || - (sourceLabel.length === 0 && !targetLabel.includes('K162')) + (sourceLabel.indexOf('K162') !== -1) || + (sourceLabel.length === 0 && targetLabel.indexOf('K162') === -1) ){ // convert default arrow direction overlayType = 'Arrow'; @@ -283,7 +227,9 @@ define([ showLoading(overlayConnectionIcon); let requestData = { - mapId: mapElement.data('id') + mapId: mapElement.data('id'), + addData : ['signatures'], + filterData : ['signatures'] }; $.ajax({ diff --git a/js/app/map/system.js b/js/app/map/system.js index b5dac0ffb..3aa6b03a8 100644 --- a/js/app/map/system.js +++ b/js/app/map/system.js @@ -18,7 +18,7 @@ define([ y: 0 }, - systemActiveClass: 'pf-system-active', // class for an active system in a map + systemActiveClass: 'pf-system-active', // class for an active system on a map dialogRallyId: 'pf-rally-dialog', // id for "Rally point" dialog diff --git a/js/app/map/util.js b/js/app/map/util.js index 65e181508..1ab7e8b1e 100644 --- a/js/app/map/util.js +++ b/js/app/map/util.js @@ -24,7 +24,8 @@ define([ systemIdPrefix: 'pf-system-', // id prefix for a system systemClass: 'pf-system', // class for all systems - systemSelectedClass: 'pf-system-selected', // class for selected systems in a map + systemActiveClass: 'pf-system-active', // class for an active system on a map + systemSelectedClass: 'pf-system-selected', // class for selected systems on on map // dataTable tableCellEllipsisClass: 'pf-table-cell-ellipsis', @@ -60,7 +61,7 @@ define([ * @param {bool} filterByUser * @returns {Array} */ - let getMapTypes = function(filterByUser){ + let getMapTypes = (filterByUser) => { let mapTypes = []; $.each(Init.mapTypes, function(prop, data){ @@ -109,7 +110,7 @@ define([ * get all available scopes for a map * @returns {Array} */ - let getMapScopes = function(){ + let getMapScopes = () => { let scopes = []; $.each(Init.mapScopes, function(prop, data){ let tempData = data; @@ -126,7 +127,7 @@ define([ * @param {string} option * @returns {string} */ - let getScopeInfoForMap = function(info, option){ + let getScopeInfoForMap = (info, option) => { let scopeInfo = ''; if(Init.mapScopes.hasOwnProperty(info)){ scopeInfo = Init.mapScopes[info][option]; @@ -138,7 +139,7 @@ define([ * get all available map icons * @returns {Object[]} */ - let getMapIcons = function(){ + let getMapIcons = () => { return Init.mapIcons; }; @@ -148,7 +149,7 @@ define([ * @param {string} option * @returns {string} */ - let getInfoForMap = function(mapType, option){ + let getInfoForMap = (mapType, option) => { let mapInfo = ''; if(Init.mapTypes.hasOwnProperty(mapType)){ mapInfo = Init.mapTypes[mapType][option]; @@ -162,7 +163,7 @@ define([ * @param {string} option * @returns {string} */ - let getInfoForSystem = function(info, option){ + let getInfoForSystem = (info, option) => { let systemInfo = ''; if(Init.classes.systemInfo.hasOwnProperty(info)){ systemInfo = Init.classes.systemInfo[info][option]; @@ -176,7 +177,7 @@ define([ * @param {string} option * @returns {string} */ - let getSystemTypeInfo = function(systemTypeId, option){ + let getSystemTypeInfo = (systemTypeId, option) => { let systemTypeInfo = ''; $.each(Init.systemType, function(prop, data){ if(systemTypeId === data.id){ @@ -193,7 +194,7 @@ define([ * @param option * @returns {string} */ - let getEffectInfoForSystem = function(effect, option){ + let getEffectInfoForSystem = (effect, option) => { let effectInfo = ''; if( Init.classes.systemEffects.hasOwnProperty(effect) ){ effectInfo = Init.classes.systemEffects[effect][option]; @@ -210,7 +211,7 @@ define([ }; /** - * get all selected (NOT active) systems in a map + * get all selected (NOT active) systems on a map * @returns {*} */ $.fn.getSelectedSystems = function(){ @@ -218,13 +219,320 @@ define([ return mapElement.find('.' + config.systemSelectedClass); }; + /** + * filter connections by type + * @param map + * @param type + * @returns {Array} + */ + let getConnectionsByType = (map, type) => { + let connections = []; + // iterate through ALL connections and filter... + // -> there is no "filterByScope()" method in jsPlumb + for(let connection of map.getAllConnections()){ + if(connection.getType().indexOf(type) !== -1){ + connections.push(connection); + } + } + return connections; + }; + + /** + * get all relevant data for a connection object + * @param connection + * @returns {{id: Number, source: Number, sourceName: (*|T|JQuery|{}), target: Number, targetName: (*|T|JQuery), scope: *, type: *, updated: Number}} + */ + let getDataByConnection = (connection) => { + let source = $(connection.source); + let target = $(connection.target); + + let id = connection.getParameter('connectionId'); + let updated = connection.getParameter('updated'); + + let connectionTypes = connection.getType(); + + // normalize connection array + connectionTypes = $.grep(connectionTypes, function(n){ + // 'default' is added by jsPlumb by default -_- + return ( n.length > 0 && n !== 'default'); + }); + + let data = { + id: id ? id : 0, + source: parseInt( source.data('id') ), + sourceName: source.data('name'), + sourceAlias: source.getSystemInfo(['alias']) || source.data('name'), + target: parseInt( target.data('id') ), + targetName: target.data('name'), + targetAlias: target.getSystemInfo(['alias']) || target.data('name'), + scope: connection.scope, + type: connectionTypes, + updated: updated ? updated : 0 + }; + + return data; + }; + + /** + * @see getDataByConnection + * @param connections + * @returns {Array} + */ + let getDataByConnections = (connections) => { + let data = []; + for(let connection of connections){ + data.push(getDataByConnection(connection)); + } + return data; + }; + + /** + * get connection related data from a connection + * -> data requires a signature bind to that connection + * @param connection + * @param connectionData + * @returns {{sourceLabels: Array, targetLabels: Array}} + */ + let getConnectionDataFromSignatures = (connection, connectionData) => { + let signatureTypeNames = { + sourceLabels: [], + targetLabels: [] + }; + + if( + connection && + connectionData.signatures // signature data is required... + ){ + let SystemSignatures = require('app/ui/system_signature'); + + let connectionId = connection.getParameter('connectionId'); + let sourceEndpoint = connection.endpoints[0]; + let targetEndpoint = connection.endpoints[1]; + let sourceSystem = $(sourceEndpoint.element); + let targetSystem = $(targetEndpoint.element); + let sourceId = sourceSystem.data('id'); + let targetId = targetSystem.data('id'); + + // ... collect overlay/label data from signatures + for(let signatureData of connectionData.signatures){ + // ... typeId is required to get a valid name + if(signatureData.typeId > 0){ + + // whether "source" or "target" system is relevant for current connection and current signature... + let tmpSystem = null; + let tmpSystemType = null; + + if(signatureData.system.id === sourceId){ + // relates to "source" endpoint + tmpSystemType = 'sourceLabels'; + tmpSystem = sourceSystem; + }else if(signatureData.system.id === targetId){ + // relates to "target" endpoint + tmpSystemType = 'targetLabels'; + tmpSystem = targetSystem; + } + + // ... get endpoint label for source || target system + if(tmpSystem && tmpSystem){ + // ... get all available signature type (wormholes) names + let availableSigTypeNames = SystemSignatures.getAllSignatureNamesBySystem(tmpSystem, 5); + let flattenSigTypeNames = Util.flattenXEditableSelectArray(availableSigTypeNames); + + if( flattenSigTypeNames.hasOwnProperty(signatureData.typeId) ){ + let label = flattenSigTypeNames[signatureData.typeId]; + // shorten label, just take the in game name + label = label.substr(0, label.indexOf(' ')); + signatureTypeNames[tmpSystemType].push(label); + } + } + } + } + } + + return signatureTypeNames; + }; + + /** + * get overlay HTML for connection endpoints by Label array + * @param label + * @returns {string} + */ + let getEndpointOverlayContent = (label) => { + let newLabel = ''; + let colorClass = 'txt-color-grayLighter'; + + if(label.length > 0){ + newLabel = label.join(', '); + + // check if multiple labels found => conflict + if( newLabel.includes(', ') ){ + colorClass = 'txt-color-orangeLight'; + }else if( !newLabel.includes('K162') ){ + colorClass = 'txt-color-yellow'; + } + }else{ + // endpoint not connected with a signature + newLabel = ''; + colorClass = 'txt-color-red'; + } + return '' + newLabel + ''; + }; + + /** + * get TabContentElement by any element on a map e.g. system + * @param element + * @returns {*} + */ + let getTabContentElementByMapElement = (element) => { + let tabContentElement = $(element).parents('.' + config.mapTabContentClass); + return tabContentElement; + }; + + /** + * checks if there is an "active" connection on a map + * @param map + * @returns {boolean} + */ + let hasActiveConnection = (map) => { + let activeConnections = getConnectionsByType(map, 'active'); + return activeConnections.length > 0; + }; + + /** + * mark a system as "active" + * @param map + * @param system + */ + let setSystemActive = (map, system) => { + // deselect all selected systems on map + let mapContainer = $( map.getContainer() ); + mapContainer.find('.' + config.systemClass).removeClass(config.systemActiveClass); + + // set current system active + system.addClass(config.systemActiveClass); + }; + + /** + * mark a connection as "active" + * @param connection + */ + let setConnectionActive = (map, connection) => { + // set all inactive + for(let tempConnection of getConnectionsByType(map, 'active')){ + if(tempConnection.getParameter('connectionId') !== connection.getParameter('connectionId')){ + tempConnection.removeType('active'); + } + } + + if( !connection.hasType('active') ){ + connection.addType('active'); + } + }; + + /** + * toggle "selected" status of system + * @param map + * @param systems + */ + let toggleSelectSystem = (map, systems) => { + for(let system of systems){ + system = $(system); + if( system.data('locked') !== true ){ + if( system.hasClass( config.systemSelectedClass ) ){ + system.removeClass( config.systemSelectedClass ); + + map.removeFromDragSelection(system); + }else{ + system.addClass( config.systemSelectedClass ); + map.addToDragSelection(system); + } + } + } + }; + + /** + * toggle "selected" status of connections + * @param map + * @param connections + */ + let toggleConnectionActive = (map, connections) => { + let selectedConnections = []; + let deselectedConnections = []; + for(let connection of connections){ + if(connection.hasType('active')){ + connection.removeType('active'); + deselectedConnections.push(connection); + }else{ + connection.addType('active'); + selectedConnections.push(connection); + } + } + updateConnectionInfo(map, selectedConnections, deselectedConnections); + }; + + /** + * show system info panels + * @param map + * @param system + */ + let showSystemInfo = (map, system) => { + setSystemActive(map, system); + + // get parent Tab Content and fire update event + let tabContentElement = getTabContentElementByMapElement( system ); + + // collect all required data from map module to update the info element + // store them global and assessable for each module + Util.setCurrentSystemData({ + systemData: system.getSystemData(), + mapId: parseInt( system.attr('data-mapid') ) + }); + + $(tabContentElement).trigger('pf:drawSystemModules'); + }; + + /** + * show connection info panels + * @param map + * @param connection + */ + let showConnectionInfo = (map, connection) => { + setConnectionActive(map, connection); + + // get parent Tab Content and fire update event + let mapContainer = $(map.getContainer()); + let tabContentElement = getTabContentElementByMapElement(mapContainer); + + $(tabContentElement).trigger('pf:drawConnectionModules', { + connections: [connection], + mapId: parseInt(mapContainer.data('id')) + }); + }; + + /** + * update connection info panels + * @param map + * @param selectedConnections + * @param deselectedConnections + */ + let updateConnectionInfo = (map, selectedConnections, deselectedConnections) => { + // get parent Tab Content and fire update event + let mapContainer = $(map.getContainer()); + + $(document).trigger('pf:updateConnectionInfoModule', { + connectionsUpdate: selectedConnections, + connectionsRemove: deselectedConnections, + mapId: parseInt(mapContainer.data('id')) + }); + }; + /** * search connections by systems * @param {Object} map - jsPlumb * @param {JQuery[]} systems - system DOM elements * @returns {Array} connections - found connection, DOM elements */ - let searchConnectionsBySystems = function(map, systems){ + let searchConnectionsBySystems = (map, systems) => { let connections = []; let withBackConnection = true; @@ -247,7 +555,7 @@ define([ * @param {string|string[]} type * @returns {Array} */ - let searchConnectionsByScopeAndType = function(map, scope, type){ + let searchConnectionsByScopeAndType = (map, scope, type) => { let connections = []; let scopeArray = (scope === undefined) ? ['*'] : ((Array.isArray(scope)) ? scope : [scope]); let typeArray = (type === undefined) ? [] : ((Array.isArray(type)) ? type : [type]); @@ -276,7 +584,7 @@ define([ * @param {string} option * @returns {string} */ - let getConnectionInfo = function(connectionTyp, option){ + let getConnectionInfo = (connectionTyp, option) => { let connectionInfo = ''; if(Init.connectionTypes.hasOwnProperty(connectionTyp)){ connectionInfo = Init.connectionTypes[connectionTyp][option]; @@ -291,7 +599,7 @@ define([ * @param {JQuery} systemB * @returns {Array} */ - let checkForConnection = function(map, systemA, systemB){ + let checkForConnection = (map, systemA, systemB) => { let connections = []; connections = connections.concat( map.getConnections({scope: '*', source: systemA, target: systemB}) ); // get connections where system is target @@ -305,7 +613,7 @@ define([ * @param {string} scope * @returns {string} */ - let getDefaultConnectionTypeByScope = function(scope){ + let getDefaultConnectionTypeByScope = (scope) => { let type = ''; switch(scope){ case 'wh': @@ -329,7 +637,7 @@ define([ * @param {Object} connection - jsPlumb object * @param {string} status */ - let setConnectionWHStatus = function(connection, status){ + let setConnectionWHStatus = (connection, status) => { if( status === 'wh_fresh' && connection.hasType('wh_fresh') !== true @@ -370,7 +678,7 @@ define([ * @param {string} option * @returns {string} */ - let getScopeInfoForConnection = function(info, option){ + let getScopeInfoForConnection = (info, option) => { let scopeInfo = ''; if(Init.connectionScopes.hasOwnProperty(info)){ switch(option){ @@ -388,21 +696,11 @@ define([ return scopeInfo; }; - /** - * get TabContentElement by any element on a map e.g. system - * @param element - * @returns {*} - */ - let getTabContentElementByMapElement = function(element){ - let tabContentElement = $(element).parents('.' + config.mapTabContentClass); - return tabContentElement; - }; - /** * store mapId for current user (IndexedDB) * @param mapId */ - let storeDefaultMapId = function(mapId){ + let storeDefaultMapId = (mapId) => { if(mapId > 0){ let userData = Util.getCurrentUserData(); if( @@ -419,7 +717,7 @@ define([ * @param type * @returns {boolean} */ - let getLocalStoragePrefixByType = function(type){ + let getLocalStoragePrefixByType = (type) => { let prefix = false; switch(type){ case 'character': prefix = config.characterLocalStoragePrefix; break; @@ -435,7 +733,7 @@ define([ * @param objectId * @returns {*} */ - let getLocaleData = function(type, objectId){ + let getLocaleData = (type, objectId) => { if(objectId > 0){ let storageKey = getLocalStoragePrefixByType(type) + objectId; return Util.getLocalStorage().getItem(storageKey); @@ -451,7 +749,7 @@ define([ * @param key * @param value */ - let storeLocalData = function(type, objectId, key, value){ + let storeLocalData = (type, objectId, key, value) => { if(objectId > 0){ // get current map config let storageKey = getLocalStoragePrefixByType(type) + objectId; @@ -481,7 +779,7 @@ define([ * @param objectId * @param key */ - let deleteLocalData = function(type, objectId, key){ + let deleteLocalData = (type, objectId, key) => { if(objectId > 0){ // get current map config let storageKey = getLocalStoragePrefixByType(type) + objectId; @@ -625,6 +923,54 @@ define([ }); }; + /** + * add a wormhole tooltip with wh specific data to elements + * @param tooltipData + * @returns {*} + */ + $.fn.addWormholeInfoTooltip = function(tooltipData){ + return this.each(function() { + let element = $(this); + + requirejs(['text!templates/tooltip/wormhole_info.html', 'mustache'], function (template, Mustache) { + // format tooltip data + let data = {}; + if(tooltipData.massTotal){ + data.massTotal = Util.formatMassValue(tooltipData.massTotal); + } + if(tooltipData.massIndividual){ + data.massIndividual = Util.formatMassValue(tooltipData.massIndividual); + } + if(tooltipData.massRegeneration){ + data.massRegeneration = Util.formatMassValue(tooltipData.massRegeneration); + } + if(tooltipData.maxStableTime){ + data.maxStableTime = tooltipData.maxStableTime + ' h'; + } + + let content = Mustache.render(template, data); + + element.popover({ + placement: 'top', + html: true, + trigger: 'hover', + content: '', + container: 'body', + title: tooltipData.name + + '' + tooltipData.security + '', + delay: { + show: 250, + hide: 0 + } + }); + + // set new popover content + let popover = element.data('bs.popover'); + popover.options.content = content; + }); + }); + }; + $.fn.findMapElement = function(){ return $(this).find('.' + config.mapClass); }; @@ -650,6 +996,12 @@ define([ getInfoForSystem: getInfoForSystem, getSystemTypeInfo: getSystemTypeInfo, getEffectInfoForSystem: getEffectInfoForSystem, + toggleSelectSystem: toggleSelectSystem, + toggleConnectionActive: toggleConnectionActive, + showSystemInfo: showSystemInfo, + showConnectionInfo: showConnectionInfo, + getConnectionsByType: getConnectionsByType, + getDataByConnection: getDataByConnection, searchConnectionsBySystems: searchConnectionsBySystems, searchConnectionsByScopeAndType: searchConnectionsByScopeAndType, getConnectionInfo: getConnectionInfo, @@ -657,7 +1009,11 @@ define([ getDefaultConnectionTypeByScope: getDefaultConnectionTypeByScope, setConnectionWHStatus: setConnectionWHStatus, getScopeInfoForConnection: getScopeInfoForConnection, + getDataByConnections: getDataByConnections, + getConnectionDataFromSignatures: getConnectionDataFromSignatures, + getEndpointOverlayContent: getEndpointOverlayContent, getTabContentElementByMapElement: getTabContentElementByMapElement, + hasActiveConnection: hasActiveConnection, storeDefaultMapId: storeDefaultMapId, getLocaleData: getLocaleData, storeLocalData: storeLocalData, diff --git a/js/app/mappage.js b/js/app/mappage.js index 34a0d29bf..c29ed8962 100644 --- a/js/app/mappage.js +++ b/js/app/mappage.js @@ -64,6 +64,7 @@ define([ Init.connectionScopes = initData.connectionScopes; Init.systemStatus = initData.systemStatus; Init.systemType = initData.systemType; + Init.wormholes = initData.wormholes; Init.characterStatus = initData.characterStatus; Init.routes = initData.routes; Init.url = initData.url; diff --git a/js/app/module_map.js b/js/app/module_map.js index 1337d183a..a9df0a458 100644 --- a/js/app/module_map.js +++ b/js/app/module_map.js @@ -4,14 +4,28 @@ define([ 'app/util', 'app/map/map', 'app/map/util', - 'app/counter', + 'sortable', 'app/ui/system_info', 'app/ui/system_graph', 'app/ui/system_signature', 'app/ui/system_route', - 'app/ui/system_killboard' -], function($, Init, Util, Map, MapUtil) { - + 'app/ui/system_killboard', + 'app/ui/connection_info', + 'app/counter' +], function( + $, + Init, + Util, + Map, + MapUtil, + Sortable, + SystemInfoModule, + SystemGraphModule, + SystemSignatureModule, + SystemRouteModule, + SystemKillboardModule, + ConnectionInfoModule +){ 'use strict'; let config = { @@ -67,118 +81,245 @@ define([ */ $.fn.setTabContentObserver = function(){ return this.each(function(){ + let tabContentElement = $(this); // update Tab Content with system data information - $(this).on('pf:drawSystemModules', function(e){ - drawSystemModules($( e.target )); + tabContentElement.on('pf:drawSystemModules', function(e){ + drawSystemModules($(e.target)); + }); + + tabContentElement.on('pf:removeSystemModules', function(e){ + removeSystemModules($(e.target)); + }); + + tabContentElement.on('pf:drawConnectionModules', function(e, data){ + drawConnectionModules($(e.target), data); }); - $(this).on('pf:removeSystemModules', function(e){ - removeSystemModules($( e.target )); + tabContentElement.on('pf:removeConnectionModules', function(e){ + removeConnectionModules($(e.target)); }); }); }; /** - * clear all system info modules and remove them + * remove multiple modules + * @param tabContentElement + * @param modules + */ + let removeModules = (tabContentElement, modules) => { + for(let Module of modules){ + let moduleElement = tabContentElement.find('.' + Module.config.moduleTypeClass); + removeModule(moduleElement, Module); + } + }; + + /** + * clear all system modules and remove them + * @param tabContentElement + */ + let removeSystemModules = (tabContentElement) => { + let systemModules = [SystemInfoModule, SystemGraphModule, SystemSignatureModule, SystemRouteModule, SystemKillboardModule]; + removeModules(tabContentElement, systemModules); + }; + + /** + * clear all connection modules and remove them * @param tabContentElement + */ + let removeConnectionModules = (tabContentElement) => { + let connectionModules = [ConnectionInfoModule]; + removeModules(tabContentElement, connectionModules); + }; + + /** + * remove a single module + * @param moduleElement + * @param Module * @param callback */ - let removeSystemModules = function(tabContentElement, callback){ - tabContentElement.find('.' + config.moduleClass).velocity('transition.slideDownOut', { - duration: Init.animationSpeed.mapModule, - complete: function(tempElement){ - $(tempElement).remove(); - - if(callback){ - callback(); + let removeModule = (moduleElement, Module, callback) => { + if(moduleElement.length > 0){ + if(typeof Module.beforeReDraw === 'function'){ + Module.beforeReDraw(); + } + + moduleElement.velocity('reverse',{ + complete: function(moduleElement){ + moduleElement = $(moduleElement); + if(typeof Module.beforeDestroy === 'function'){ + Module.beforeDestroy(moduleElement); + } + moduleElement.remove(); + + if(typeof callback === 'function'){ + callback(); + } } + }); + } + }; + + /** + * generic function that draws a modulePanel for a given Module object + * @param parentElement + * @param Module + * @param mapId + * @param data + */ + let drawModule = (parentElement, Module, mapId, data) => { + /** + * get module position within its parentElement + * @param parentElement + * @param Module + * @param defaultPosition + * @returns {number} + */ + let getModulePosition = (parentElement, Module, defaultPosition) => { + let position = 0; + if(defaultPosition > 0){ + parentElement.children().each((i, moduleElement) => { + position = i + 1; + let tempPosition = parseInt(moduleElement.getAttribute('data-position')) || 0; + if(tempPosition >= defaultPosition){ + position--; + return false; + } + }); } - }); + return position; + }; + + /** + * show/render a Module + * @param parentElement + * @param Module + * @param mapId + * @param data + */ + let showPanel = (parentElement, Module, mapId, data) => { + let moduleElement = Module.getModule(parentElement, mapId, data); + if (moduleElement) { + // store Module object to DOM element for further access + moduleElement.data('module', Module); + moduleElement.data('data', data); + moduleElement.addClass([config.moduleClass, Module.config.moduleTypeClass].join(' ')); + moduleElement.css({opacity: 0}); // will be animated + + // check module position from local storage + let promiseStore = MapUtil.getLocaleData('map', mapId); + promiseStore.then(function (dataStore) { + let Module = this.moduleElement.data('module'); + let defaultPosition = Module.config.modulePosition || 0; + + // check for stored module order in indexDB (client) ---------------------------------------------- + let key = 'modules_cell_' + this.parentElement.attr('data-position'); + if ( + dataStore && + dataStore[key] + ) { + let positionIndex = dataStore[key].indexOf(Module.config.moduleName); + if (positionIndex !== -1) { + // first index (0) => is position 1 + defaultPosition = positionIndex + 1; + } + } + + // find correct position for new moduleElement ---------------------------------------------------- + let position = getModulePosition(this.parentElement, Module, defaultPosition); + + this.moduleElement.attr('data-position', defaultPosition); + this.moduleElement.attr('data-module', Module.config.moduleName); + + // insert at correct position --------------------------------------------------------------------- + let prevModuleElement = this.parentElement.find('.' + config.moduleClass + ':nth-child(' + position + ')'); + if (prevModuleElement.length) { + this.moduleElement.insertAfter(prevModuleElement); + } else { + this.parentElement.prepend(this.moduleElement); + } + + if(typeof Module.beforeShow === 'function'){ + Module.beforeShow(this.moduleElement, moduleElement.data('data')); + } + + // show animation --------------------------------------------------------------------------------- + this.moduleElement.velocity({ + opacity: [1, 0], + translateY: [0, +20] + }, { + duration: Init.animationSpeed.mapModule, + easing: 'easeOutSine', + complete: function (moduleElement) { + moduleElement = $(moduleElement); + let Module = $(moduleElement).data('module'); + if (typeof Module.initModule === 'function') { + Module.initModule(moduleElement, mapId, moduleElement.data('data')); + } + } + }); + }.bind({ + parentElement: parentElement, + moduleElement: moduleElement + })); + } + }; + + // check if module already exists + let moduleElement = parentElement.find('.' + Module.config.moduleTypeClass); + if(moduleElement.length > 0){ + removeModule(moduleElement, Module, () => { + showPanel(parentElement, Module, mapId, data); + }); + }else{ + showPanel(parentElement, Module, mapId, data); + } }; /** * clears and updates the system info element (signature table, system info,...) * @param tabContentElement */ - let drawSystemModules = function(tabContentElement){ - require(['datatables.loader'], () => { + let drawSystemModules = (tabContentElement) => { + require(['datatables.loader'], function(){ let currentSystemData = Util.getCurrentSystemData(); - // get Table cell for system Info - let firstCell = $(tabContentElement).find('.' + config.mapTabContentCellFirst); - let secondCell = $(tabContentElement).find('.' + config.mapTabContentCellSecond); + // get grid cells + let firstCell = tabContentElement.find('.' + config.mapTabContentCellFirst); + let secondCell = tabContentElement.find('.' + config.mapTabContentCellSecond); // draw system info module - firstCell.drawSystemInfoModule(currentSystemData.mapId, currentSystemData.systemData); + drawModule(firstCell, SystemInfoModule, currentSystemData.mapId, currentSystemData.systemData); // draw system graph module - firstCell.drawSystemGraphModule(currentSystemData.systemData); + drawModule(firstCell, SystemGraphModule, currentSystemData.mapId, currentSystemData.systemData); // draw signature table module - firstCell.drawSignatureTableModule(currentSystemData.mapId, currentSystemData.systemData); + drawModule(firstCell, SystemSignatureModule, currentSystemData.mapId, currentSystemData.systemData); // draw system routes module - secondCell.drawSystemRouteModule(currentSystemData.mapId, currentSystemData.systemData); + drawModule(secondCell, SystemRouteModule, currentSystemData.mapId, currentSystemData.systemData); // draw system killboard module - secondCell.drawSystemKillboardModule(currentSystemData.systemData); - - // set Module Observer - setModuleObserver(); + drawModule(secondCell, SystemKillboardModule, currentSystemData.mapId, currentSystemData.systemData); }); }; /** - * set observer for each module + * clears and updates the connection info element (mass log) + * @param tabContentElement + * @param data */ - let setModuleObserver = function(){ - - // toggle height for a module - $(document).off('click.toggleModuleHeight').on('click.toggleModuleHeight', '.' + config.moduleClass, function(e){ - let moduleElement = $(this); - // get click position - let posX = moduleElement.offset().left; - let posY = moduleElement.offset().top; - let clickX = e.pageX - posX; - let clickY = e.pageY - posY; - - // check for top-left click - if(clickX <= 8 && clickY <= 8){ - - // remember height - if(! moduleElement.data('origHeight')){ + let drawConnectionModules = (tabContentElement, data) => { + require(['datatables.loader'], function(){ - moduleElement.data('origHeight', moduleElement.outerHeight()); - } + // get grid cells + let firstCell = $(tabContentElement).find('.' + config.mapTabContentCellFirst); - if(moduleElement.hasClass( config.moduleClosedClass )){ - let moduleHeight = moduleElement.data('origHeight'); - moduleElement.velocity('finish').velocity({ - height: [ moduleHeight + 'px', [ 400, 15 ] ] - },{ - duration: 400, - easing: 'easeOutSine', - complete: function(){ - moduleElement.removeClass( config.moduleClosedClass ); - moduleElement.removeData(); - } - }); - }else{ - moduleElement.velocity('finish').velocity({ - height: [ '35px', [ 400, 15 ] ] - },{ - duration: 400, - easing: 'easeOutSine', - complete: function(){ - moduleElement.addClass( config.moduleClosedClass ); - } - }); - } - } - }); + // draw connection info module + drawModule(firstCell, ConnectionInfoModule, this.mapId, this.connections); + }.bind(data)); }; - /** * updates only visible/active map module * @returns {boolean} @@ -236,26 +377,115 @@ define([ } }; + /** + * set observer for tab content (area where modules will be shown) + * @param contentStructure + * @param mapId + */ + let setContentStructureObserver = (contentStructure, mapId) => { + contentStructure.find('.' + config.mapTabContentCell).each((index, cellElement) => { + let sortable = Sortable.create(cellElement, { + group: { + name: 'cell_' + cellElement.getAttribute('data-position') + }, + animation: Init.animationSpeed.mapModule, + handle: '.pf-module-handler-drag', + draggable: '.' + config.moduleClass, + ghostClass: 'pf-sortable-ghost', + scroll: true, + scrollSensitivity: 50, + scrollSpeed: 20, + dataIdAttr: 'data-module', + sort: true, + store: { + get: function (sortable) { + return []; + }, + set: function (sortable) { + let key = 'modules_' + sortable.options.group.name; + MapUtil.storeLocalData('map', mapId, key, sortable.toArray()); + } + }, + onStart: function (e) { + // Element dragging started + // -> save initial sort state -> see store.set() + this.save(); + } + }); + }); + + // toggle height for a module + $(document).off('click.toggleModuleHeight').on('click.toggleModuleHeight', '.' + config.moduleClass, function(e){ + let moduleElement = $(this); + // get click position + let posX = moduleElement.offset().left; + let posY = moduleElement.offset().top; + let clickX = e.pageX - posX; + let clickY = e.pageY - posY; + + // check for top-left click + if(clickX <= 8 && clickY <= 8){ + + // remember height + if(! moduleElement.data('origHeight')){ + + moduleElement.data('origHeight', moduleElement.outerHeight()); + } + + if(moduleElement.hasClass( config.moduleClosedClass )){ + let moduleHeight = moduleElement.data('origHeight'); + moduleElement.velocity('finish').velocity({ + height: [ moduleHeight + 'px', [ 400, 15 ] ] + },{ + duration: 400, + easing: 'easeOutSine', + complete: function(){ + moduleElement.removeClass( config.moduleClosedClass ); + moduleElement.removeData(); + } + }); + }else{ + moduleElement.velocity('finish').velocity({ + height: [ '35px', [ 400, 15 ] ] + },{ + duration: 400, + easing: 'easeOutSine', + complete: function(){ + moduleElement.addClass( config.moduleClosedClass ); + } + }); + } + } + }); + }; + /** * load all structure elements into a TabsContent div (tab body) */ - $.fn.initContentStructure = function(){ - return this.each(function(){ - // init bootstrap Grid - let contentStructure = $('
', { - class: ['row', config.mapTabContentRow].join(' ') - }).append( + let initContentStructure = (tabContentElements) => { + tabContentElements.each(function(){ + let tabContentElement = $(this); + let mapId = parseInt( tabContentElement.attr('data-mapid') ); + + // "add" tab does not need a structure and obervers... + if(mapId > 0){ + let contentStructure = $('
', { + class: ['row', config.mapTabContentRow].join(' ') + }).append( $('
', { class: ['col-xs-12', 'col-md-8', config.mapTabContentCellFirst, config.mapTabContentCell].join(' ') - }) + }).attr('data-position', 1) ).append( $('
', { class: ['col-xs-12', 'col-md-4', config.mapTabContentCellSecond, config.mapTabContentCell].join(' ') - }) + }).attr('data-position', 2) ); - // append grid structure - $(this).append(contentStructure); + // append grid structure + tabContentElement.append(contentStructure); + + setContentStructureObserver(contentStructure, mapId); + } }); }; @@ -264,7 +494,7 @@ define([ * @param options * @returns {*|jQuery|HTMLElement} */ - let getTabElement = function(options){ + let getTabElement = (options) => { let tabElement = $('
', { id: config.mapTabElementId }); @@ -401,17 +631,17 @@ define([ // update Tab element -> set data linkElement.updateTabData(options); - // tabs content ======================================================= + // tabs content ----------------------------------------------------------------------------------------------- let contentElement = $('
', { id: config.mapTabIdPrefix + parseInt( options.id ), class: [config.mapTabContentClass].join(' ') - }); + }).attr('data-mapid', parseInt( options.id )); contentElement.addClass('tab-pane'); tabContent.append(contentElement); - // init tab =========================================================== + // init tab --------------------------------------------------------------------------------------------------- linkElement.on('click', function(e){ e.preventDefault(); @@ -603,7 +833,7 @@ define([ newTabElements.contentElement.setTabContentObserver(); // load all the structure elements for the new tab - newTabElements.contentElement.initContentStructure(); + initContentStructure(newTabElements.contentElement); tabsChanged = true; @@ -671,7 +901,7 @@ define([ mapKeyTabSelector = 'nth-child(' + ( mapDataIndex + 1 ) + ')'; } - // ============================================================== + // ---------------------------------------------------------------------------------------------------- // this new created module let tabContentElements = tabMapElement.find('.' + config.mapTabContentClass); @@ -680,7 +910,7 @@ define([ tabContentElements.setTabContentObserver(); // load all the structure elements for ALL Tab Content Body - tabContentElements.initContentStructure(); + initContentStructure(tabContentElements); // set first Tab active tabMapElement.find('.' + config.mapTabClass + ':' + mapKeyTabSelector + ' a').tab('show'); diff --git a/js/app/page.js b/js/app/page.js index bfc863f92..040011ac2 100644 --- a/js/app/page.js +++ b/js/app/page.js @@ -696,6 +696,10 @@ define([ // END menu events ============================================================================= + // global "modal" callback (for all modals) + $('body').on('hide.bs.modal', '> .modal', function(a,b) { + $(this).destroyTimestampCounter(); + }); // update header links with current map data $(document).on('pf:updateHeaderMapData', function(e, data){ @@ -783,45 +787,69 @@ define([ $.fn.updateHeaderUserData = function(){ let userData = Util.getCurrentUserData(); - let userInfoElement = $('.' + config.headUserCharacterClass); - let currentCharacterId = userInfoElement.data('characterId'); - let currentCharactersOptionIds = userInfoElement.data('characterOptionIds') ? userInfoElement.data('characterOptionIds') : []; - let newCharacterId = 0; - let newCharacterName = ''; - - let userShipElement = $('.' + config.headUserShipClass); - let currentShipId = userShipElement.data('shipId'); - let newShipId = 0; - let newShipName = ''; + let userInfoElement = $('.' + config.headUserCharacterClass); + let currentCharacterId = userInfoElement.data('characterId'); + let currentCharactersOptionIds = userInfoElement.data('characterOptionIds') ? userInfoElement.data('characterOptionIds') : []; + let newCharacterId = 0; + let newCharacterName = ''; + + let userShipElement = $('.' + config.headUserShipClass); + let currentShipData = userShipElement.data('shipData'); + let currentShipId = Util.getObjVal(currentShipData, 'typeId') || 0; + let newShipData = { + typeId: 0, + typeName: '' + }; // function for header element toggle animation - let animateHeaderElement = function(element, callback, triggerShow){ + let animateHeaderElement = (element, callback, triggerShow) => { + let currentOpacity = parseInt(element.css('opacity')); + + let showHeaderElement = (element) => { + element.show().velocity({ + opacity: [ 1, 0 ] + },{ + // display: 'block', + visibility : 'visible', + duration: 1000 + }); + }; - element.show().velocity('stop').velocity({ - opacity: 0 - },{ - visibility : 'hidden', - duration: 500, - complete: function(){ - // callback - callback(); - - // show element - if(triggerShow === true){ - element.velocity({ - opacity: 1 - }, { - visibility : 'visible', - duration: 500 - }); - }else{ - // hide element - element.hide(); + let hideHeaderElement = (element, callback) => { + element.velocity('stop').velocity({ + opacity: [ 0, 1 ] + },{ + // display: 'none', + visibility : 'hidden', + duration: 1000, + complete: function(){ + // callback + callback($(this)); } + }); + }; - } - }); - + // run show/hide toggle in the correct order + if(currentOpacity > 0 && triggerShow){ + // hide then show animation + hideHeaderElement(element, (element) => { + callback(element); + showHeaderElement(element); + }); + }else if(currentOpacity > 0 && !triggerShow){ + // hide animation + hideHeaderElement(element, (element) => { + element.hide(); + callback(element); + }); + }else if(currentOpacity === 0 && triggerShow){ + // show animation + callback(element); + showHeaderElement(element); + }else{ + // no animation + callback(element); + } }; // check for character/ship changes --------------------------------------------- @@ -833,8 +861,7 @@ define([ newCharacterName = userData.character.name; if(userData.character.log){ - newShipId = userData.character.log.ship.typeId; - newShipName = userData.character.log.ship.typeName; + newShipData = userData.character.log.ship; } // en/disable "map tracking" toggle @@ -854,7 +881,7 @@ define([ } // toggle element - animateHeaderElement(userInfoElement, function(){ + animateHeaderElement(userInfoElement, (userInfoElement) => { if(currentCharacterChanged){ userInfoElement.find('span').text( newCharacterName ); userInfoElement.find('img').attr('src', Init.url.ccpImageServer + '/Character/' + newCharacterId + '_32.jpg' ); @@ -869,21 +896,21 @@ define([ } // update user ship data -------------------------------------------------------- - if(currentShipId !== newShipId){ + if(currentShipId !== newShipData.typeId){ + // set new data for next check + userShipElement.data('shipData', newShipData); - let showShipElement = true; - if(newShipId === 0){ - showShipElement = false; - } + let showShipElement = newShipData.typeId > 0; // toggle element - animateHeaderElement(userShipElement, function(){ - userShipElement.find('span').text( newShipName ); - userShipElement.find('img').attr('src', Init.url.ccpImageServer + '/Render/' + newShipId + '_32.png' ); + animateHeaderElement(userShipElement, (userShipElement) => { + userShipElement.find('span').text( newShipData.typeName ); + userShipElement.find('img').attr('src', Init.url.ccpImageServer + '/Render/' + newShipData.typeId + '_32.png' ); + // trigger ship change event + $(document).trigger('pf:activeShip', { + shipData: newShipData + }); }, showShipElement); - - // set new id for next check - userShipElement.data('shipId', newShipId); } }; diff --git a/js/app/render.js b/js/app/render.js index bbe43ca52..b94ea2f41 100644 --- a/js/app/render.js +++ b/js/app/render.js @@ -17,7 +17,7 @@ define(['jquery', 'mustache'], function($, Mustache) { typeof config.functions === 'object' && typeof config.functions[functionName] === 'function' ){ - config.functions[functionName](); + config.functions[functionName](config); } }; @@ -27,16 +27,13 @@ define(['jquery', 'mustache'], function($, Mustache) { * @param data */ let showModule = function(config, data){ - // require module template requirejs(['text!templates/' + config.name + '.html'], function(template) { - // check for an id, if module already exists, do not insert again if( data.id === 'undefined' || $('#' + data.id).length === 0 ){ - let content = Mustache.render(template, data); // display module @@ -57,8 +54,6 @@ define(['jquery', 'mustache'], function($, Mustache) { // init module function after render initModule('after', config); - - }); }; diff --git a/js/app/ui/connection_info.js b/js/app/ui/connection_info.js new file mode 100644 index 000000000..f3b90cb9c --- /dev/null +++ b/js/app/ui/connection_info.js @@ -0,0 +1,966 @@ +/** + * connection info module + */ + +define([ + 'jquery', + 'app/init', + 'app/util', + 'app/map/util' +], ($, Init, Util, MapUtil) => { + 'use strict'; + + let config = { + // module info + modulePosition: 1, + moduleName: 'connectionInfo', + moduleHeadClass: 'pf-module-head', // class for module header + moduleHandlerClass: 'pf-module-handler-drag', // class for "drag" handler + + headUserShipClass: 'pf-head-user-ship', // class for "user settings" link + + // connection info module + moduleTypeClass: 'pf-connection-info-module', // class for this module + + // headline toolbar + moduleHeadlineIconClass: 'pf-module-icon-button', // class for toolbar icons in the head + moduleHeadlineIconRefreshClass: 'pf-module-icon-button-refresh', // class for "refresh" icon + moduleHeadlineIconCurrentMassClass: 'pf-module-icon-button-mass', // class for "current ship mass" toggle icon + + connectionInfoPanelClass: 'pf-connection-info-panel', // class for connection info panels + connectionInfoPanelId: 'pf-connection-info-panel-', // id prefix for connection info panels + + // info table + moduleTableClass: 'pf-module-table', // class for module tables + connectionInfoTableLabelSourceClass: 'pf-connection-info-label-source', // class for source label + connectionInfoTableLabelTargetClass: 'pf-connection-info-label-target', // class for target label + connectionInfoTableRowMassShipClass: 'pf-connection-info-row-mass-ship', // class for "current ship mass" table row + connectionInfoTableCellMassTotalClass: 'pf-connection-info-mass-total', // class for "mass total" table cell + connectionInfoTableCellMassLogClass: 'pf-connection-info-mass-log', // class for "mass log" table cell + connectionInfoTableCellMassShipClass: 'pf-connection-info-mass-ship', // class for "current ship mass" table cell + connectionInfoTableCellMassLeftClass: 'pf-connection-info-mass-left', // class for "mass left" table cell + + connectionInfoTableTooltipIconClass: 'pf-connection-info-tooltip-icon', // class for "tooltip" icon + connectionInfoTableWarningIconClass: 'pf-connection-info-warning-icon', // class for "warning" icon + + // dataTable + connectionInfoTableClass: 'pf-connection-info-table', // class for connection tables + tableCellImageClass: 'pf-table-image-cell', // class for table "image" cells + tableCellCounterClass: 'pf-table-counter-cell', // class for table "counter" cells + + // config + showShip: true // default for "show current ship mass" toggle + }; + + /** + * get module toolbar element + * @returns {void|*|jQuery|HTMLElement} + */ + let getHeadlineToolbar = () => { + let headlineToolbar = $('
', { + class: 'pull-right' + }).append( + $('', { + class: ['fa', 'fa-fw', 'fa-male', + config.showShip ? 'active' : '' , + config.moduleHeadlineIconClass, + config.moduleHeadlineIconCurrentMassClass].join(' '), + title: 'toggle current ship mass' + }).attr('data-html', 'true').attr('data-toggle', 'tooltip'), + $('', { + class: ['fa', 'fa-fw', 'fa-refresh', + config.moduleHeadlineIconClass, + config.moduleHeadlineIconRefreshClass].join(' '), + title: 'refresh all' + }).attr('data-html', 'true').attr('data-toggle', 'tooltip') + ); + + headlineToolbar.find('[data-toggle="tooltip"]').tooltip({ + container: 'body' + }); + + return headlineToolbar; + }; + + /** + * get new connection element + * @param mapId + * @param connectionId + * @returns {jQuery} + */ + let getConnectionElement = (mapId, connectionId) => { + let connectionElement = $('
', { + id: getConnectionElementId(connectionId), + class: ['col-xs-12', 'col-sm-4', 'col-lg-3' , config.connectionInfoPanelClass].join(' ') + }).data({ + mapId: mapId, + connectionId: connectionId + }); + + return connectionElement; + }; + + /** + * get info control panel element + * @param mapId + * @returns {void|jQuery|*} + */ + let getInfoPanelControl = (mapId) => { + let connectionElement = getConnectionElement(mapId, 0).append($('
', { + class: 'pf-dynamic-area', + html: ' add connection  ctrl + click' + })); + + return connectionElement; + }; + + /** + * get connection information element + * @param connectionData + * @returns {void|*|jQuery|HTMLElement} + */ + let getInformationElement = (connectionData) => { + + // connection scope ----------------------------------------------------------------------- + let scopeLabel = MapUtil.getScopeInfoForConnection(connectionData.scope, 'label'); + + // connection type (dummy) classes -------------------------------------------------------- + let connectionClasses = ['pf-fake-connection']; + for(let i = 0; i < connectionData.type.length; i++){ + connectionClasses.push( MapUtil.getConnectionInfo( connectionData.type[i], 'cssClass') ); + } + + let massLog = 0; + + let element = $('
', { + class: 'pf-dynamic-area' + }).append( + $('', { + class: ['table', 'table-condensed', 'pf-table-fixed', config.moduleTableClass].join(' ') + }).data('showShip', config.showShip).append( + $('').append( + $('').append( + $('').append( + $('').append( + $('').append( + $('').append( + $('', { + class: config.connectionInfoTableRowMassShipClass + }).append( + $('').append( + $('
', { + class: ['pf-table-cell-20', 'text-right', 'pf-help', 'pf-pie-chart'].join(' '), + title: 'test' + }).attr('data-toggle', 'tooltip').attr('data-percent', '-100').easyPieChart({ + barColor: (percent) => { + let color = '#e28a0d'; + if((percent * -1) >= 100){ + color = '#a52521'; + } + return color; + }, + overrideOptions: 'signed', + trackColor: '#5cb85c', + size: 14, + scaleColor: false, + lineWidth: 2, + lineCap: 'butt', + animate: false + }), + $('', { + class: ['text-right'].join(' ') + }).attr('colspan', 2).append( + $('', { + class: 'pf-link', + html: connectionData.sourceAlias + '  ' + }).on('click', function(){ + Util.getMapModule().getActiveMap().triggerMenuEvent('SelectSystem', {systemId: connectionData.source }); + }), + $('', { + class: [config.connectionInfoTableLabelSourceClass].join(' ') + }), + $('', { + class: 'fa fa-fw fa-angle-double-right' + }), + $('', { + class: [config.connectionInfoTableLabelTargetClass].join(' ') + }), + $('', { + class: 'pf-link', + html: '  ' + connectionData.targetAlias + }).on('click', function(){ + Util.getMapModule().getActiveMap().triggerMenuEvent('SelectSystem', {systemId: connectionData.target }); + }) + ) + ) + ), + $('
'), + $('', { + text: scopeLabel.charAt(0).toUpperCase() + scopeLabel.slice(1) + }), + $('', { + class: ['text-right'].join(' ') + }).append( + $('
', { + class: connectionClasses.join(' ') + }) + ) + ), + $('
', { + class: ['text-right', 'pf-help'].join(' '), + html: '', + title: 'initial mass. From signature table' + }).attr('data-toggle', 'tooltip'), + $('', { + text: 'Total mass' + }), + $('', { + class: ['text-right', 'txt-color', config.connectionInfoTableCellMassTotalClass].join(' ') + }) + ), + $('
', { + class: ['text-right', 'pf-help'].join(' '), + html: '', + title: 'recorded total jump mass' + }).attr('data-toggle', 'tooltip'), + $('', { + text: 'Logged mass' + }), + $('', { + class: ['text-right', config.connectionInfoTableCellMassLogClass].join(' ') + }) + ), + $('
', { + class: ['text-right', 'pf-help'].join(' '), + title: 'current ship mass' + }).attr('data-toggle', 'tooltip').append( + $('', { + class: [ + 'fa', 'fa-fw', 'fa-question-circle', + config.connectionInfoTableTooltipIconClass + ].join(' ') + }), + $('', { + class: [ + 'fa', 'fa-fw', 'fa-exclamation-triangle', + 'txt-color', 'txt-color-danger', + 'hidden', config.connectionInfoTableWarningIconClass + ].join(' ') + }) + ), + $('', { + class: ['pf-table-cell-ellipses-auto'].join(' '), + text: 'Ship mass' + }), + $('', { + class: ['text-right', 'txt-color', config.connectionInfoTableCellMassShipClass].join(' ') + }) + ), + $('
', { + class: ['text-right', 'pf-help'].join(' '), + html: '', + title: 'max. mass left' + }).attr('data-toggle', 'tooltip'), + $('', { + text: 'Mass left' + }), + $('', { + class: ['text-right', 'txt-color', config.connectionInfoTableCellMassLeftClass].join(' ') + }) + ) + ) + ).on('pf:updateInfoTable', function(e, data){ + // update information table ------------------------------------------------------- + let tableElement = $(this); + let connectionData = tableElement.data('connectionData'); + if(connectionData){ + if(connectionData.scope === 'wh'){ + // update signature information ------------------------------------------- + let sourceLabelElement = tableElement.find('.' + config.connectionInfoTableLabelSourceClass); + let targetLabelElement = tableElement.find('.' + config.connectionInfoTableLabelTargetClass); + + // get related jsPlumb connection + let connection = $().getConnectionById(data.mapId, data.connectionId); + let signatureTypeNames = MapUtil.getConnectionDataFromSignatures(connection, connectionData); + + let sourceLabel = signatureTypeNames.sourceLabels; + let targetLabel = signatureTypeNames.targetLabels; + sourceLabelElement.html(MapUtil.getEndpointOverlayContent(sourceLabel)); + targetLabelElement.html(MapUtil.getEndpointOverlayContent(targetLabel)); + + // remove K162 + sourceLabel.diff(['K162']); + targetLabel.diff(['K162']); + + // get static wormhole data by endpoint Labels + let wormholeName = ''; + let wormholeData = null; + if(sourceLabel.length === 1 && targetLabel.length === 0){ + wormholeName = sourceLabel[0]; + }else if(sourceLabel.length === 0 && targetLabel.length === 1){ + wormholeName = targetLabel[0]; + } + + if( + wormholeName && + Init.wormholes.hasOwnProperty(wormholeName) + ){ + wormholeData = Init.wormholes[wormholeName]; + } + + // all required data is set -> re-calculate rows + tableElement.data('wormholeData', wormholeData); + tableElement.trigger('pf:calcInfoTable'); + } + + } + }).on('pf:calcInfoTable', function(e){ + // re-calculate information table from .data() cell values ------------------------ + let tableElement = $(this); + let massChartCell = tableElement.find('[data-percent]'); + + let wormholeData = tableElement.data('wormholeData'); + let shipData = null; + let shipName = ''; + let showShip = Boolean(tableElement.data('showShip')); + let massShipRow = tableElement.find('.' + config.connectionInfoTableRowMassShipClass); + + // icons + let massShipTooltipIcon = massShipRow.find('.' + config.connectionInfoTableTooltipIconClass); + let massShipWarningIcon = massShipRow.find('.' + config.connectionInfoTableWarningIconClass); + + // table cells + let massTotalCell = tableElement.find('.' + config.connectionInfoTableCellMassTotalClass); + let massLogCell = tableElement.find('.' + config.connectionInfoTableCellMassLogClass); + let massShipCell = tableElement.find('.' + config.connectionInfoTableCellMassShipClass); + let massLeftCell = tableElement.find('.' + config.connectionInfoTableCellMassLeftClass); + let massTotal = null; // initial connection mass + let massLog = massLogCell.data('mass'); // recorded mass + let massLogTotal = massLog; // recorded mass + current ship + let massIndividual = null; // mass mass per jump + let massShip = 0; // current ship + let massIndividualError = false; + + // get wormhole data from signature binding --------------------------------------- + if(wormholeData){ + massTotal = parseInt(wormholeData.massTotal); + massIndividual = parseInt(wormholeData.massIndividual); + } + + // get current ship data ---------------------------------------------------------- + massShipCell.parent().toggle(showShip); + if(showShip){ + shipData = $('.' + config.headUserShipClass).data('shipData'); + if(shipData){ + if(shipData.mass){ + massShip = parseInt(shipData.mass); + + // check individual mass jump + if(massIndividual){ + massIndividualError = massShip > massIndividual; + } + } + if(shipData.typeId && shipData.typeName){ + shipName = shipData.typeName; + } + } + } + + // update ship mass and "individual mass" cells ---------------------------------- + massShipTooltipIcon.toggleClass('hidden', massIndividualError); + massShipWarningIcon.toggleClass('hidden', !massIndividualError); + let shipMassTooltip = 'current ship mass ' + (shipName ? '"' + shipName + '"' : ''); + if(massIndividualError){ + shipMassTooltip = '"' + shipName + '" exceeds max jump mass for this connection: ' + Util.formatMassValue(massIndividual); + }else{ + // current ship mass check is OK -> add to massLogTotal + massLogTotal += massShip; + } + massShipTooltipIcon.parent().attr('title', shipMassTooltip).tooltip('fixTitle'); + + // current ship mass -------------------------------------------------------------- + massShipCell.html( function(){ + let cell = $(this); + let value = ' '; + let error = false; + let textLineThrough = false; + if(massShip > 0){ + value += Util.formatMassValue(massShip); + if(massIndividualError){ + error = textLineThrough = true; + value = '  ' + value; + }else{ + value = '-' + value; + } + }else{ + error = true; + value = 'undefined'; + } + + // change cell style + cell.toggleClass('txt-color-red', error) + .toggleClass('txt-color-warning', !error) + .toggleClass('pf-font-line-through', textLineThrough); + + return value; + }); + + // calculate mass left ------------------------------------------------------------ + let massLeft = massTotal - massLogTotal; + massLeft = (massLeft < 0) ? 0 : massLeft; + let massPercentLog = (massTotal > 0) ? Math.floor((100 / massTotal) * massLogTotal) : 0; + + // update easyPieChart and tooltip ------------------------------------------------ + let massPercentLeft = (100 - massPercentLog <= 0) ? 0 : '< ' + (100 - massPercentLog); + massChartCell.data('easyPieChart').enableAnimation().update(massPercentLog * -1); + massChartCell.attr('title', massPercentLeft + '% mass left').tooltip('fixTitle'); + + // update mass cells -------------------------------------------------------------- + massTotalCell.html(massTotal > 0 ? Util.formatMassValue(massTotal) : 'undefined') + .toggleClass('txt-color-red', massTotal <= 0); + massLogCell.html('- ' + Util.formatMassValue(massLog)); + massLeftCell.html( + massLeft > 0 ? + '~ ' + Util.formatMassValue(massLeft) : + (massLeft === 0 && massTotal) ? + 'will collapse' : 'undefined') + .toggleClass('txt-color-red', massLeft <= 0) + .toggleClass('txt-color-success', massLeft > 0); + }) + ); + + element.find('[data-toggle="tooltip"]').tooltip({ + container: 'body' + }); + + return element; + }; + + /** + * get HTML id by connectionId + * @param connectionId + * @returns {string} + */ + let getConnectionElementId = (connectionId) => { + return config.connectionInfoPanelId + connectionId; + }; + + /** + * get all visible connection panel elements + * @param moduleElement + * @returns {*|T|{}} + */ + let getConnectionElements = (moduleElement) => { + return moduleElement.find('.' + config.connectionInfoPanelClass).not('#' + getConnectionElementId(0)); + }; + + /** + * request connection log data + * @param requestData + * @param context + * @param callback + */ + let requestConnectionLogData = (requestData, context, callback) => { + // show loading animation + for(let connectionId of requestData.connectionIds){ + context.moduleElement.find('#' + getConnectionElementId(connectionId) + ' table').showLoadingAnimation(); + } + + $.ajax({ + type: 'POST', + url: Init.path.getMapConnectionData, + data: requestData, + dataType: 'json', + context: context + }).done(function(connectionsData){ + // enrich connectionData with "logs" data (if available) and other "missing" data + for(let i = 0; i < this.connectionsData.length; i++){ + for(let connectionData of connectionsData) { + if(this.connectionsData[i].id === connectionData.id){ + // copy some missing data + this.connectionsData[i].created = connectionData.created; + // check for mass logs and copy data + if(connectionData.logs && connectionData.logs.length){ + this.connectionsData[i].logs = connectionData.logs; + } + // check for signatures and copy data + if(connectionData.signatures && connectionData.signatures.length){ + this.connectionsData[i].signatures = connectionData.signatures; + } + break; + } + } + } + + callback(this.moduleElement, this.connectionsData); + }).always(function(){ + // hide loading animation + for(let contextData of this.connectionsData){ + context.moduleElement.find('#' + getConnectionElementId(contextData.id) + ' table').hideLoadingAnimation(); + } + }); + }; + + /** + * @see requestConnectionLogData + * @param moduleElement + * @param mapId + * @param connectionsData + */ + let getConnectionsLogData = (moduleElement, mapId, connectionsData) => { + let connectionIds = []; + for(let connectionData of connectionsData) { + connectionIds.push(connectionData.id); + } + + let requestData = { + mapId: mapId, + connectionIds: connectionIds, + addData : ['signatures', 'logs'], + // filterData : ['logs'] // do not exclude connections with NO "logs" -> sig data will be used as well + }; + + let contextData = { + moduleElement: moduleElement, + connectionsData: connectionsData + }; + + requestConnectionLogData(requestData, contextData, addConnectionsData); + }; + + /** + * replace/insert dataTables log data + * @param moduleElement + * @param connectionsData + */ + let addConnectionsData = (moduleElement, connectionsData) => { + + let getRowIndexesByData = (dataTable, colName, value) => { + return dataTable.rows().eq(0).filter((rowIdx) => { + return (dataTable.cell(rowIdx, colName + ':name' ).data() === value); + }); + }; + + + + for(let connectionData of connectionsData) { + // find related dom element for current connection + let connectionElement = moduleElement.find('#' + getConnectionElementId(connectionData.id)); + if(connectionElement.length){ + // attach connectionData to connection information for later use ------------------ + let connectionInfoElement = connectionElement.find('.' + config.moduleTableClass); + connectionInfoElement.data('connectionData', connectionData); + + // update dataTable --------------------------------------------------------------- + let dataTable = connectionElement.find('.dataTable').dataTable().api(); + + if(connectionData.logs && connectionData.logs.length > 0){ + for(let i = 0; i < connectionData.logs.length; i++){ + let rowData = connectionData.logs[i]; + let row = null; + let animationStatus = null; + let indexes = getRowIndexesByData(dataTable, 'index', rowData.id); + if(indexes.length === 0){ + // row not found -> add new row + row = dataTable.row.add( rowData ); + animationStatus = 'added'; + } + /* else{ + // we DON´t expect changes -> no row update) + // update row with FIRST index + //row = dataTable.row( parseInt(indexes[0]) ); + // update row data + //row.data(connectionData.logs[i]); + //animationStatus = 'changed'; + } */ + + if( + animationStatus !== null && + row.length > 0 + ){ + row.nodes().to$().data('animationStatus', animationStatus); + } + } + }else{ + // clear table or leave empty + dataTable.clear(); + } + + // redraw dataTable + dataTable.draw(false); + } + } + }; + + /** + * + * @param moduleElement + * @param mapId + * @param connectionData + */ + let updateConnectionPanel = (moduleElement, mapId, connectionData) => { + let rowElement = moduleElement.find('.row'); + let connectionElement = rowElement.find('#' + getConnectionElementId(connectionData.id)); + + if( !connectionElement.length ){ + connectionElement = getConnectionElement(mapId, connectionData.id); + connectionElement.append(getInformationElement(connectionData)); + + let table = $('', { + class: ['compact', 'stripe', 'order-column', 'row-border', 'nowrap', config.connectionInfoTableClass].join(' ') + }).append(''); + connectionElement.append(table); + + // init empty table + let logTable = table.DataTable({ + pageLength: 8, + paging: true, + pagingType: 'simple', + lengthChange: false, + ordering: true, + order: [[ 4, 'desc' ]], + info: true, + searching: false, + hover: false, + autoWidth: false, + // rowId: 'systemTo', + language: { + emptyTable: 'No jumps recorded', + info: '_START_ to _END_ of _MAX_', + infoEmpty: '' + }, + columnDefs: [ + { + targets: 0, + name: 'index', + title: '', + orderable: false, + searchable: false, + width: 20, + class: 'text-center', + data: 'id' + },{ + targets: 1, + title: '', + width: 26, + orderable: false, + className: ['pf-help-default', 'text-center', config.tableCellImageClass].join(' '), + data: 'ship', + render: { + _: function(data, type, row){ + let value = data.typeId; + if(type === 'display'){ + value = ''; + } + return value; + } + }, + createdCell: function(cell, cellData, rowData, rowIndex, colIndex){ + $(cell).find('img').tooltip(); + } + },{ + targets: 2, + title: '', + width: 26, + orderable: false, + className: ['pf-help-default', 'text-center', config.tableCellImageClass].join(' '), + data: 'created.character', + render: { + _: function(data, type, row){ + let value = data.name; + if(type === 'display'){ + value = ''; + } + return value; + } + }, + createdCell: function(cell, cellData, rowData, rowIndex, colIndex){ + $(cell).find('img').tooltip(); + } + },{ + targets: 3, + title: 'mass', + className: ['text-right'].join(' ') , + data: 'ship.mass', + render: { + _: function(data, type, row){ + let value = data; + if(type === 'display'){ + value = Util.formatMassValue(value); + } + return value; + } + } + },{ + targets: 4, + title: 'log', + width: 55, + className: ['text-right', config.tableCellCounterClass].join(' '), + data: 'created.created', + createdCell: function(cell, cellData, rowData, rowIndex, colIndex){ + $(cell).initTimestampCounter('d'); + } + } + ], + drawCallback: function(settings){ + let animationRows = this.api().rows().nodes().to$().filter(function(a,b ) { + return ( + $(this).data('animationStatus') || + $(this).data('animationTimer') + ); + }); + + for(let i = 0; i < animationRows.length; i++){ + $(animationRows[i]).pulseTableRow($(animationRows[i]).data('animationStatus')); + $(animationRows[i]).removeData('animationStatus'); + } + + }, + footerCallback: function ( row, data, start, end, display ) { + + let api = this.api(); + let sumColumnIndexes = [3]; + + // column data for "sum" columns over this page + let pageTotalColumns = api + .columns( sumColumnIndexes, { page: 'all'} ) + .data(); + + // sum columns for "total" sum + pageTotalColumns.each((colData, index) => { + pageTotalColumns[index] = colData.reduce((a, b) => { + return parseInt(a) + parseInt(b); + }, 0); + }); + + $(sumColumnIndexes).each((index, value) => { + $( api.column( value ).footer() ).text( Util.formatMassValue(pageTotalColumns[index]) ); + + // save mass for further reCalculation of "info" table + connectionElement.find('.' + config.connectionInfoTableCellMassLogClass).data('mass', pageTotalColumns[index]); + }); + + // calculate "info" table ----------------------------------------------------- + connectionElement.find('.' + config.moduleTableClass).trigger('pf:updateInfoTable', connectionElement.data()); + } + }); + + // find position to insert + connectionElement.insertBefore(rowElement.find('#' + getConnectionElementId(0))); + + logTable.on('order.dt search.dt', function(){ + let pageInfo = logTable.page.info(); + logTable.column(0, {search:'applied', order:'applied'}).nodes().each((cell, i) => { + let content = (pageInfo.recordsTotal - i) + '.  '; + $(cell).html(content); + }); + }); + + logTable.on('destroy.dt', function(){ + $(this).destroyTimestampCounter(); + }); + } + }; + + /** + * remove connection Panel from moduleElement + * @param connectionElement + */ + let removeConnectionPanel = (connectionElement) => { + connectionElement = $(connectionElement); + if(connectionElement.length){ + // destroy dataTable (and remove table from DOM) + let logTable = connectionElement.find('.' + config.connectionInfoTableClass); + logTable.dataTable().api().destroy(true); + // remove belonging connectionElement + connectionElement.remove(); + } + }; + + /** + * get connections from ModuleElement + * -> validate with current map data + * @param moduleElement + * @param mapId + * @returns {{connectionsDataUpdate: Array, connectionsDataRemove: Array}} + */ + let getConnectionsDataFromModule = (moduleElement, mapId) => { + let activeMap = Util.getMapModule().getActiveMap(); + let mapData = activeMap.getMapDataFromClient({forceData: true}); + let connectionsData = { + connectionsDataUpdate: [], + connectionsDataRemove: [], + }; + + if(mapData !== false){ + getConnectionElements(moduleElement).each((i, connectionElement) => { + let removeConnectionPanel = true; + let connectionData = {id: $(connectionElement).data('connectionId') }; + + let connection = $().getConnectionById(mapId, connectionData.id); + if(connection){ + let connectionDataTemp = MapUtil.getDataByConnection(connection); + if(connectionDataTemp.id > 0){ + // connection still on map - OK + removeConnectionPanel = false; + connectionData = connectionDataTemp; + } + } + + if(removeConnectionPanel){ + connectionsData.connectionsDataRemove.push(connectionData); + }else{ + connectionsData.connectionsDataUpdate.push(connectionData); + } + }); + } + + return connectionsData; + }; + + /** + * update/init multiple connection panels at once + * @param moduleElement + * @param mapId + * @param connectionsDataUpdate + * @param connectionsDataRemove + */ + let updateConnectionPanels = (moduleElement, mapId, connectionsDataUpdate, connectionsDataRemove) => { + for(let connectionData of connectionsDataRemove){ + let connectionElement = moduleElement.find('#' + getConnectionElementId(connectionData.id)); + removeConnectionPanel(connectionElement); + } + + for(let connectionData of connectionsDataUpdate){ + updateConnectionPanel(moduleElement, mapId, connectionData); + } + + // request connectionsLogData for each updated connection + if(connectionsDataUpdate.length){ + getConnectionsLogData(moduleElement, mapId, connectionsDataUpdate); + } + + // remove module if no connection panel left + // --> all connection deselected on map + let connectionElements = getConnectionElements(moduleElement); + if(connectionElements.length === 0){ + MapUtil.getTabContentElementByMapElement(moduleElement).trigger('pf:removeConnectionModules'); + } + + // hide "control" panel when multiple connection + moduleElement.find('#' + getConnectionElementId(0)).toggle(connectionElements.length < 2); + }; + + /** + * set module observer + * @param moduleElement + * @param mapId + */ + let setModuleObserver = (moduleElement, mapId) => { + $(document).off('pf:updateConnectionInfoModule').on('pf:updateConnectionInfoModule', function(e, data){ + updateConnectionPanels( + moduleElement, + data.mapId, + MapUtil.getDataByConnections(data.connectionsUpdate), + MapUtil.getDataByConnections(data.connectionsRemove) + ); + }); + + $(document).off('pf:activeShip').on('pf:activeShip', function(e){ + moduleElement.find('.' + config.connectionInfoPanelClass).each((i, connectionElement) => { + $(connectionElement).find('.' + config.moduleTableClass).each((i, tableElement) => { + $(tableElement).trigger('pf:calcInfoTable'); + }); + }); + }); + + // init toggle active ship ---------------------------------------------------------------- + moduleElement.find('.' + config.moduleHeadlineIconCurrentMassClass).on('click', function(e){ + let currentMassIcon = $(this).toggleClass('active'); + moduleElement.find('.' + config.connectionInfoPanelClass).each((i, connectionElement) => { + $(connectionElement).find('.' + config.moduleTableClass).each((i, tableElement) => { + $(tableElement).data('showShip', currentMassIcon.hasClass('active')).trigger('pf:calcInfoTable'); + }); + }); + }); + + // init refresh connections --------------------------------------------------------------- + moduleElement.find('.' + config.moduleHeadlineIconRefreshClass).on('click', function(e){ + refreshConnectionPanels(moduleElement, mapId); + }); + }; + + /** + * refresh all connection panels in a module + * @param moduleElement + * @param mapId + */ + let refreshConnectionPanels = (moduleElement, mapId) => { + let connectionsData = getConnectionsDataFromModule(moduleElement, mapId); + updateConnectionPanels(moduleElement, mapId, connectionsData.connectionsDataUpdate, connectionsData.connectionsDataRemove); + }; + + /** + * before module destroy callback + * @param moduleElement + */ + let beforeDestroy = (moduleElement) => { + getConnectionElements(moduleElement).each((i, connectionElement) => { + removeConnectionPanel(connectionElement); + }); + let test; + }; + + /** + * init callback + * @param moduleElement + * @param mapId + * @param connectionData + */ + let initModule = (moduleElement, mapId, connectionData) => { + setModuleObserver(moduleElement, mapId); + }; + + /** + * get module element + * @param parentElement + * @param mapId + * @param connections + * @returns {*|jQuery|HTMLElement} + */ + let getModule = (parentElement, mapId, connections) => { + // create new module container + let moduleElement = $('
').append( + $('
', { + class: config.moduleHeadClass + }).append( + $('
', { + class: config.moduleHandlerClass + }), + $('
', { + text: 'Connection' + }), + getHeadlineToolbar() + ) + ); + + let rowElement = $('
', { + class: 'row' + }); + + moduleElement.append(rowElement); + + rowElement.append(getInfoPanelControl(mapId)); + + updateConnectionPanels(moduleElement, mapId, MapUtil.getDataByConnections(connections), []); + + return moduleElement; + }; + + return { + config: config, + getModule: getModule, + initModule: initModule, + beforeDestroy: beforeDestroy + }; +}); \ No newline at end of file diff --git a/js/app/ui/demo_map.js b/js/app/ui/demo_map.js index 48088dc30..ab5f78b14 100644 --- a/js/app/ui/demo_map.js +++ b/js/app/ui/demo_map.js @@ -9,7 +9,7 @@ define([ 'use strict'; - var config = { + let config = { headerSystemsContainerId: 'pf-header-systems', // id for systems layer headerSystemConnectorsId: 'pf-header-connectors', // id for connectors layer headerConnectionsContainerId: 'pf-header-connections', // id for connections layer @@ -26,9 +26,9 @@ define([ * draw systems layer * @param callback */ - var drawSystems = function(callback){ + let drawSystems = function(callback){ - var pathObj = { + let pathObj = { systems: { strokepath: [ // systems ======================================================================= @@ -98,11 +98,11 @@ define([ * draw connectors layer * @param callback */ - var drawConnectors = function(callback){ + let drawConnectors = function(callback){ - var connectorDuration = 150; + let connectorDuration = 150; - var pathObj = { + let pathObj = { connectors: { strokepath: [ // connectors ==================================================================== @@ -184,14 +184,14 @@ define([ * draw connections layer * @param callback */ - var drawConnections = function(callback){ + let drawConnections = function(callback){ - var connectionDuration = 250; - var connectionWidth = 8; - var connectionInnerWidth = 4; - var connectionBorderColor = '#63676A'; //gray + let connectionDuration = 250; + let connectionWidth = 8; + let connectionInnerWidth = 4; + let connectionBorderColor = '#63676A'; //gray - var pathObj = { + let pathObj = { connections: { strokepath: [ // connections ==================================================================== @@ -288,7 +288,7 @@ define([ * draw background layer * @param callback */ - var drawBackground = function(callback){ + let drawBackground = function(callback){ $('#' + config.headerBackgroundContainerId + ' .' + config.headerSystemClass).velocity('transition.bounceUpIn', { stagger: 150, complete: function(){ @@ -304,7 +304,7 @@ define([ * @param callback */ $.fn.drawDemoMap = function(callback){ - var canvasElement = $(this); + let canvasElement = $(this); // draw systems diff --git a/js/app/ui/dialog/account_settings.js b/js/app/ui/dialog/account_settings.js index e535ab4ec..2311e1935 100644 --- a/js/app/ui/dialog/account_settings.js +++ b/js/app/ui/dialog/account_settings.js @@ -11,7 +11,7 @@ define([ ], function($, Init, Util, Render, bootbox) { 'use strict'; - var config = { + let config = { // select character dialog settingsDialogId: 'pf-settings-dialog', // id for "settings" dialog settingsAccountContainerId: 'pf-settings-dialog-account', // id for the "account" container @@ -37,14 +37,14 @@ define([ $.fn.showSettingsDialog = function(){ // check if there are other dialogs open - var openDialogs = Util.getOpenDialogs(); + let openDialogs = Util.getOpenDialogs(); if(openDialogs.length > 0){ return false; } requirejs(['text!templates/dialog/settings.html', 'mustache'], function(template, Mustache) { - var data = { + let data = { id: config.settingsDialogId, settingsAccountContainerId: config.settingsAccountContainerId, settingsShareContainerId: config.settingsShareContainerId, @@ -56,9 +56,9 @@ define([ ccpImageServer: Init.url.ccpImageServer }; - var content = Mustache.render(template, data); + let content = Mustache.render(template, data); - var accountSettingsDialog = bootbox.dialog({ + let accountSettingsDialog = bootbox.dialog({ title: 'Account settings', message: content, buttons: { @@ -72,19 +72,19 @@ define([ callback: function() { // get the current active form - var form = $('#' + config.settingsDialogId).find('form').filter(':visible'); + let form = $('#' + config.settingsDialogId).find('form').filter(':visible'); // validate form form.validator('validate'); // check whether the form is valid - var formValid = form.isValidForm(); + let formValid = form.isValidForm(); if(formValid === true){ - var tabFormValues = form.getFormValues(); + let tabFormValues = form.getFormValues(); // send Tab data and store values - var requestData = { + let requestData = { formData: tabFormValues }; @@ -134,7 +134,7 @@ define([ }).fail(function( jqXHR, status, error) { accountSettingsDialog.find('.modal-content').hideLoadingAnimation(); - var reason = status + ' ' + error; + let reason = status + ' ' + error; Util.showNotify({title: jqXHR.status + ': saveAccountSettings', text: reason, type: 'error'}); // set new captcha for any request @@ -147,7 +147,7 @@ define([ if(jqXHR.status === 500){ if(jqXHR.responseText){ - var errorObj = $.parseJSON(jqXHR.responseText); + let errorObj = $.parseJSON(jqXHR.responseText); if( errorObj.error && @@ -172,11 +172,11 @@ define([ // after modal is shown ======================================================================= accountSettingsDialog.on('shown.bs.modal', function(e) { - var dialogElement = $(this); - var form = dialogElement.find('form'); + let dialogElement = $(this); + let form = dialogElement.find('form'); // request captcha image and show - var captchaImageWrapperContainer = $('#' + config.captchaImageWrapperId); + let captchaImageWrapperContainer = $('#' + config.captchaImageWrapperId); captchaImageWrapperContainer.showCaptchaImage(config.captchaKeyUpdateAccount); // init captcha refresh button diff --git a/js/app/ui/dialog/credit.js b/js/app/ui/dialog/credit.js index 8a668b01b..aa3ebe30b 100644 --- a/js/app/ui/dialog/credit.js +++ b/js/app/ui/dialog/credit.js @@ -12,7 +12,7 @@ define([ ], function($, Init, Util, Render, bootbox) { 'use strict'; - var config = { + let config = { // jump info dialog creditsDialogClass: 'pf-credits-dialog', // class for credits dialog creditsDialogLogoContainerId: 'pf-logo-container' // id for logo element @@ -25,14 +25,14 @@ define([ requirejs(['text!templates/dialog/credit.html', 'mustache'], function(template, Mustache) { - var data = { + let data = { logoContainerId: config.creditsDialogLogoContainerId, version: Util.getVersion() }; - var content = Mustache.render(template, data); + let content = Mustache.render(template, data); - var creditDialog = bootbox.dialog({ + let creditDialog = bootbox.dialog({ className: config.creditsDialogClass, title: 'Licence', message: content diff --git a/js/app/ui/dialog/delete_account.js b/js/app/ui/dialog/delete_account.js index 5facd5c37..b60e9acbe 100644 --- a/js/app/ui/dialog/delete_account.js +++ b/js/app/ui/dialog/delete_account.js @@ -10,7 +10,7 @@ define([ ], function($, Init, Util, bootbox) { 'use strict'; - var config = { + let config = { // global dialog deleteAccountId: 'pf-dialog-delete-account', // dialog id @@ -27,16 +27,16 @@ define([ requirejs(['text!templates/dialog/delete_account.html', 'mustache'], function(template, Mustache) { - var data = { + let data = { deleteAccountId: config.deleteAccountId, userData: Util.getCurrentUserData(), captchaImageWrapperId: config.captchaImageWrapperId, formErrorContainerClass: Util.config.formErrorContainerClass }; - var content = Mustache.render(template, data); + let content = Mustache.render(template, data); - var deleteAccountDialog = bootbox.dialog({ + let deleteAccountDialog = bootbox.dialog({ title: 'Delete account', message: content, buttons: { @@ -48,20 +48,20 @@ define([ label: ' delete account', className: 'btn-danger', callback: function() { - var dialogElement = $(this); - var form = dialogElement.find('form'); + let dialogElement = $(this); + let form = dialogElement.find('form'); // validate form form.validator('validate'); - var formValid = form.isValidForm(); + let formValid = form.isValidForm(); if(formValid){ - var formValues = form.getFormValues(); + let formValues = form.getFormValues(); if(! $.isEmptyObject(formValues) ){ // send Tab data and store values - var requestData = { + let requestData = { formData: formValues }; @@ -91,7 +91,7 @@ define([ }).fail(function( jqXHR, status, error) { dialogElement.find('.modal-content').hideLoadingAnimation(); - var reason = status + ' ' + error; + let reason = status + ' ' + error; Util.showNotify({title: jqXHR.status + ': deleteAccount', text: reason, type: 'error'}); }); diff --git a/js/app/ui/dialog/jump_info.js b/js/app/ui/dialog/jump_info.js index 00d4528e4..c78c0484c 100644 --- a/js/app/ui/dialog/jump_info.js +++ b/js/app/ui/dialog/jump_info.js @@ -8,31 +8,85 @@ define([ 'app/util', 'app/render', 'bootbox', -], function($, Init, Util, Render, bootbox) { - +], ($, Init, Util, Render, bootbox) => { 'use strict'; let config = { // jump info dialog - jumpInfoDialogClass: 'pf-jump-info-dialog' // class for jump info dialog + jumpInfoDialogClass: 'pf-jump-info-dialog', // class for jump info dialog + wormholeInfoMassTableClass: 'pf-wormhole-info-mass-table', // class for "wormhole mass" table + wormholeInfoJumpTableClass: 'pf-wormhole-info-jump-table' // class for "wormhole jump" table }; /** * show jump info dialog */ $.fn.showJumpInfoDialog = function(){ - - requirejs(['text!templates/dialog/jump_info.html', 'mustache'], function(template, Mustache) { - let data = {}; + requirejs(['text!templates/dialog/jump_info.html', 'mustache'], (template, Mustache) => { + let data = { + config: config, + wormholes: Object.keys(Init.wormholes).map(function(k) { return Init.wormholes[k]; }), // convert Json to array + securityClass: function(){ + return function(value, render){ + return this.Util.getSecurityClassForSystem( render(value) ); + }.bind(this); + }.bind({ + Util: Util + }), + massValue: function(){ + return function(value, render){ + let mass = render(value); + switch(mass.length){ + case 0: return ''; + case 1: return 'Yes'; + default: return this.Util.formatMassValue(mass); + } + }.bind(this); + }.bind({ + Util: Util + }) + }; let content = Mustache.render(template, data); - let signatureReaderDialog = bootbox.dialog({ + let jumpDialog = bootbox.dialog({ className: config.jumpInfoDialogClass, title: 'Wormhole jump information', - message: content + message: content, + show: false }); - }); + jumpDialog.on('show.bs.modal', function(e) { + // init dataTable + $(this).find('.' + config.wormholeInfoMassTableClass).DataTable({ + pageLength: 25, + lengthMenu: [[10, 20, 25, 30, 40, -1], [10, 20, 25, 30, 40, 'All']], + autoWidth: false, + language: { + emptyTable: 'No wormholes', + zeroRecords: 'No wormholes found', + lengthMenu: 'Show _MENU_ wormholes', + info: 'Showing _START_ to _END_ of _TOTAL_ wormholes' + }, + }); + $(this).find('.' + config.wormholeInfoJumpTableClass).DataTable({ + pageLength: -1, + paging: false, + lengthChange: false, + ordering: false, + searching: false, + info: false, + autoWidth: false, + language: { + emptyTable: 'No wormholes', + zeroRecords: 'No wormholes found', + lengthMenu: 'Show _MENU_ wormholes', + info: 'Showing _START_ to _END_ of _TOTAL_ wormholes' + }, + }); + }); + + jumpDialog.modal('show'); + }); }; }); \ No newline at end of file diff --git a/js/app/ui/dialog/map_info.js b/js/app/ui/dialog/map_info.js index c297daaf4..fd6179973 100644 --- a/js/app/ui/dialog/map_info.js +++ b/js/app/ui/dialog/map_info.js @@ -184,7 +184,6 @@ define([ systemsElement.showLoadingAnimation(config.loadingOptions); - // table init complete systemTable.on( 'init.dt', function () { systemsElement.hideLoadingAnimation(); @@ -193,6 +192,10 @@ define([ tooltipElements.tooltip(); }); + systemTable.on('destroy.dt', function(){ + $(this).destroyTimestampCounter(); + }); + // prepare data for dataTables let systemsData = []; for(let i = 0; i < mapData.data.systems.length; i++){ @@ -438,13 +441,6 @@ define([ data: 'updated', createdCell: function(cell, cellData, rowData, rowIndex, colIndex){ $(cell).initTimestampCounter(); - - // highlight cell - let diff = new Date().getTime() - cellData * 1000; - let dateDiff = new Date(diff); - if(dateDiff.getUTCDate() > 1){ - $(cell).addClass('txt-color txt-color-warning'); - } } },{ title: '', @@ -545,7 +541,6 @@ define([ let connectionClasses = []; for(let k = 0; k < tempConnectionData.type.length; k++){ connectionClasses.push( MapUtil.getConnectionInfo( tempConnectionData.type[k], 'cssClass') ); - } connectionClasses = connectionClasses.join(' '); @@ -626,11 +621,13 @@ define([ createdCell: function(cell, cellData, rowData, rowIndex, colIndex){ $(cell).initTimestampCounter(); - // highlight cell - let diff = new Date().getTime() - cellData * 1000; - let dateDiff = new Date(diff); - if(dateDiff.getUTCDate() > 1){ - $(cell).addClass('txt-color txt-color-warning'); + if(rowData.scope.scope_sort === 'wh'){ + // highlight cell + let diff = new Date().getTime() - cellData * 1000; + let dateDiff = new Date(diff); + if(dateDiff.getUTCDate() > 1){ + $(cell).addClass('txt-color txt-color-warning'); + } } } },{ @@ -1269,7 +1266,6 @@ define([ // load users table usersElement.initUsersInfoTable(mapData); - }); // events for tab change diff --git a/js/app/ui/dialog/releases.js b/js/app/ui/dialog/releases.js index b97fb46f3..5e4d91599 100644 --- a/js/app/ui/dialog/releases.js +++ b/js/app/ui/dialog/releases.js @@ -11,7 +11,7 @@ define([ ], function($, Init, Util, Render, bootbox) { 'use strict'; - var config = { + let config = { releasesDialogClass: 'pf-releases-dialog' // class for "Releases" dialog }; @@ -19,10 +19,10 @@ define([ * load release information in dialog * @param releasesDialog */ - var loadDialogData = function(releasesDialog){ + let loadDialogData = function(releasesDialog){ // lock dialog - var dialogContent = releasesDialog.find('.modal-content'); + let dialogContent = releasesDialog.find('.modal-content'); dialogContent.showLoadingAnimation(); $.ajax({ @@ -32,18 +32,18 @@ define([ dataType: 'json' }).done(function(releasesData){ requirejs(['text!templates/ui/timeline_element.html', 'mustache'], function(template, Mustache) { - for(var i = 0; i < releasesData.length; i++){ - var releaseData = releasesData[i]; + for(let i = 0; i < releasesData.length; i++){ + let releaseData = releasesData[i]; // template vars - var data = { + let data = { isFirst: (i === 0), isOdd: (i % 2 !== 0), releaseDate: releaseData.published_at.substr(0, 10), releaseData: releaseData }; - var content = Mustache.render(template, data); + let content = Mustache.render(template, data); releasesDialog.find('ul.timeline').append(content); } @@ -55,7 +55,7 @@ define([ }); }); }).fail(function( jqXHR, status, error) { - var reason = status + ' ' + jqXHR.status + ': ' + error; + let reason = status + ' ' + jqXHR.status + ': ' + error; Util.showNotify({title: jqXHR.status + ': login', text: reason, type: 'error'}); }).always(function() { dialogContent.hideLoadingAnimation(); @@ -66,9 +66,9 @@ define([ * show releases dialog */ $.fn.releasesDialog = function(){ - var content = '
    '; + let content = '
      '; - var releasesDialog = bootbox.dialog({ + let releasesDialog = bootbox.dialog({ className: config.releasesDialogClass, title: 'Releases', size: 'large', diff --git a/js/app/ui/system_graph.js b/js/app/ui/system_graph.js index 965f8dcb1..ac4aeab70 100644 --- a/js/app/ui/system_graph.js +++ b/js/app/ui/system_graph.js @@ -12,10 +12,14 @@ define([ let config = { // module info - moduleClass: 'pf-module', // class for each module + modulePosition: 3, + moduleName: 'systemGraph', + moduleHeadClass: 'pf-module-head', // class for module header + moduleHandlerClass: 'pf-module-handler-drag', // class for "drag" handler + // system graph module - systemGraphModuleClass: 'pf-system-graph-module', // class for this module + moduleTypeClass: 'pf-system-graph-module', // class for this module systemGraphClass: 'pf-system-graph', // class for each graph // system graph labels @@ -117,11 +121,25 @@ define([ }; /** - * draw graph module + * get module element * @param parentElement + * @param mapId * @param systemData + * @returns {*} */ - let drawModule = function(parentElement, systemData){ + let getModule = (parentElement, mapId, systemData) => { + // graph data is available for k-space systems + let moduleElement = (systemData.type.id === 2) ? $('
      ') : null; + + return moduleElement; + }; + + /** + * init graph module + * @param parentElement + * @param systemData + */ + let initModule = function(moduleElement, mapId, systemData){ // graph data is available for k-space systems if(systemData.type.id === 2){ @@ -149,21 +167,7 @@ define([ data: requestData, dataType: 'json' }).done(function(systemGraphsData){ - if( Object.keys(systemGraphsData).length > 0 ){ - // create new (hidden) module container - let moduleElement = $('
      ', { - class: [config.moduleClass, config.systemGraphModuleClass].join(' '), - css: {opacity: 0} - }); - - // insert at the correct position - if($(parentElement).children().length === 1){ - $(parentElement).append(moduleElement); - }else{ - $(parentElement).find('>:first-child').after(moduleElement); - } - // row element let rowElement = $('
      ', { class: 'row' @@ -177,9 +181,18 @@ define([ class: ['col-xs-12', 'col-sm-6', 'col-md-4'].join(' ') }); - let headlineElement = $('
      ').text( getInfoForGraph(graphKey, 'headline') ); - - colElement.append(headlineElement); + colElement.append( + $('
      ', { + class: config.moduleHeadClass + }).append( + $('
      ', { + class: config.moduleHandlerClass + }), + $('
      ', { + text: getInfoForGraph(graphKey, 'headline') + }) + ) + ); let graphElement = $('
      ', { class: config.systemGraphClass @@ -195,12 +208,6 @@ define([ moduleElement.append($('
      ', { css: {'clear': 'both'} })); - - // show module - moduleElement.velocity('transition.slideDownIn', { - duration: Init.animationSpeed.mapModule, - delay: Init.animationSpeed.mapModule - }); } }).fail(function( jqXHR, status, error) { let reason = status + ' ' + error; @@ -208,34 +215,12 @@ define([ $(document).setProgramStatus('problem'); }); } - }; - - /** - * main module load function - * @param systemData - */ - $.fn.drawSystemGraphModule = function(systemData){ - - let parentElement = $(this); - - // check if module already exists - let moduleElement = parentElement.find('.' + config.systemGraphModuleClass); - - if(moduleElement.length > 0){ - moduleElement.velocity('transition.slideDownOut', { - duration: Init.animationSpeed.mapModule, - complete: function(tempElement){ - $(tempElement).remove(); - drawModule(parentElement, systemData); - } - }); - }else{ - drawModule(parentElement, systemData); - } + return { + config: config, + getModule: getModule, + initModule: initModule }; - - }); diff --git a/js/app/ui/system_info.js b/js/app/ui/system_info.js index 43ebcae66..a00b8db30 100644 --- a/js/app/ui/system_info.js +++ b/js/app/ui/system_info.js @@ -13,10 +13,11 @@ define([ let config = { // module info - moduleClass: 'pf-module', // class for each module + modulePosition: 2, + moduleName: 'systemInfo', // system info module - systemInfoModuleClass: 'pf-system-info-module', // module wrapper + moduleTypeClass: 'pf-system-info-module', // class for this module // breadcrumb constellationLinkClass: 'pf-system-info-constellation', // class for "constellation" name @@ -24,7 +25,7 @@ define([ typeLinkClass: 'pf-system-info-type', // class for "type" name // info table - systemInfoTableClass: 'pf-system-info-table', // class for system info table + systemInfoTableClass: 'pf-module-table', // class for system info table systemInfoNameInfoClass: 'pf-system-info-name', // class for "name" information element systemInfoEffectInfoClass: 'pf-system-info-effect', // class for "effect" information element systemInfoStatusLabelClass: 'pf-system-info-status-label', // class for "status" information element @@ -54,7 +55,6 @@ define([ * set module observer and look for relevant system data to update */ let setModuleObserver = function(moduleElement){ - $(document).off('pf:updateSystemInfoModule').on('pf:updateSystemInfoModule', function(e, data){ if(data){ moduleElement.updateSystemInfoModule(data); @@ -197,24 +197,19 @@ define([ }; /** - * + * get module element * @param parentElement * @param mapId * @param systemData */ - let drawModule = function(parentElement, mapId, systemData){ + let getModule = function(parentElement, mapId, systemData){ // create new module container - let moduleElement = $('
      ', { - class: [config.moduleClass, config.systemInfoModuleClass].join(' '), - css: {opacity: 0} - }); + let moduleElement = $('
      '); // store systemId -> module can be updated with the correct data moduleElement.data('id', systemData.id); - parentElement.prepend(moduleElement); - // shattered wormhole info data let shatteredWormholeInfo = false; @@ -240,8 +235,8 @@ define([ position: moduleElement, link: 'append', functions: { - after: function(){ - let tempModuleElement = parentElement.find('.' + config.systemInfoModuleClass); + after: function(conf){ + let tempModuleElement = conf.position; // lock "description" field until first update tempModuleElement.find('.' + config.descriptionArea).showLoadingAnimation(); @@ -426,7 +421,6 @@ define([ return 'Loading...'; } - showModule(moduleElement); } } }; @@ -464,52 +458,40 @@ define([ }; Render.showModule(moduleConfig, moduleData); - }; - /** - * show system info module with animation - * @param moduleElement - */ - let showModule = function(moduleElement){ - moduleElement.velocity('transition.slideDownIn', { - duration: Init.animationSpeed.mapModule, - delay: Init.animationSpeed.mapModule, - complete: function(){ - // set module observer - setModuleObserver(moduleElement); - - // enable auto update - disableModuleUpdate = false; - } - }); + return moduleElement; }; /** - * update system info module + * init callback + * @param moduleElement * @param mapId * @param systemData */ - $.fn.drawSystemInfoModule = function(mapId, systemData){ + let initModule = function(moduleElement, mapId, systemData){ + // set module observer + setModuleObserver(moduleElement); - let parentElement = $(this); - - // check if module already exists - let moduleElement = parentElement.find('.' + config.systemInfoModuleClass); - - if(moduleElement.length > 0){ - moduleElement.velocity('transition.slideDownOut', { - duration: Init.animationSpeed.mapModule, - complete: function(tempElement){ - $(tempElement).remove(); + // enable auto update + disableModuleUpdate = false; + }; - drawModule(parentElement, mapId, systemData); - } - }); - }else{ - drawModule(parentElement, mapId, systemData); - } + /** + * efore module destroy callback + * @param moduleElement + */ + let beforeDestroy = (moduleElement) => { + // remove xEditable description textarea + let descriptionTextareaElement = moduleElement.find('.' + config.descriptionTextareaElementClass); + descriptionTextareaElement.editable('destroy'); }; + return { + config: config, + getModule: getModule, + initModule: initModule, + beforeDestroy: beforeDestroy + }; }); diff --git a/js/app/ui/system_killboard.js b/js/app/ui/system_killboard.js index b58483b07..2fb74161c 100644 --- a/js/app/ui/system_killboard.js +++ b/js/app/ui/system_killboard.js @@ -8,13 +8,16 @@ define([ let config = { // module info - moduleClass: 'pf-module', // class for each module + modulePosition: 2, + moduleName: 'systemKillboard', + moduleHeadClass: 'pf-module-head', // class for module header + moduleHandlerClass: 'pf-module-handler-drag', // class for "drag" handler // headline toolbar - systemModuleHeadlineIcon: 'pf-module-icon-button', // class for toolbar icons in the head + moduleHeadlineIconClass: 'pf-module-icon-button', // class for toolbar icons in the head // system killboard module - systemKillboardModuleClass: 'pf-system-killboard-module', // module wrapper + moduleTypeClass: 'pf-system-killboard-module', // class for this module systemKillboardGraphKillsClass: 'pf-system-killboard-graph-kills', // class for system kill graph // system killboard list @@ -178,34 +181,8 @@ define([ * @param systemData */ $.fn.updateSystemInfoGraphs = function(systemData){ - let moduleElement = $(this); - - // headline toolbar icons - let headlineToolbar = $('
      ', { - class: 'pull-right' - }).append( - $('', { - class: ['fa', 'fa-fw', 'fa-external-link ', config.systemModuleHeadlineIcon].join(' '), - title: 'zkillboard.com' - }).on('click', function(e){ - window.open( - '//zkillboard.com/system/' + systemData.systemId, - '_blank' - ); - }).attr('data-toggle', 'tooltip') - ); - - moduleElement.append(headlineToolbar); - - // headline - let headline = $('
      ', { - text: 'Killboard' - }); - - moduleElement.append(headline); - let killboardGraphElement = $('
      ', { class: config.systemKillboardGraphKillsClass }); @@ -222,14 +199,11 @@ define([ // private function draws a "system kills" graph let drawGraph = function(data){ - let tableData = data.tableData; // change order (show right to left) tableData.reverse(); - - if(data.count === 0){ labelOptions.type = 'label-success'; label = getLabel( 'No kills found within the last 24h', labelOptions ); @@ -247,6 +221,7 @@ define([ Morris.Bar({ element: killboardGraphElement, resize: true, + redraw: true, grid: true, gridStrokeWidth: 0.3, gridTextSize: 9, @@ -419,63 +394,70 @@ define([ }; /** - * get module element - * @param parentElement + * get module toolbar element * @param systemData - * @returns {*|jQuery|HTMLElement} + * @returns {*|jQuery|HTMLElement|void} */ - let getModule = function(parentElement, systemData){ - - // create new module container - let moduleElement = $('
      ', { - class: [config.moduleClass, config.systemKillboardModuleClass].join(' '), - css: {opacity: 0} + let getHeadlineToolbar = (systemData) => { + let headlineToolbar = $('
      ', { + class: 'pull-right' + }).append( + $('', { + class: ['fa', 'fa-fw', 'fa-external-link ', config.moduleHeadlineIconClass].join(' '), + title: 'zkillboard.com' + }).on('click', function(e){ + window.open( + '//zkillboard.com/system/' + systemData.systemId, + '_blank' + ); + }).attr('data-toggle', 'tooltip') + ); + + headlineToolbar.find('[data-toggle="tooltip"]').tooltip({ + container: 'body' }); - parentElement.append(moduleElement); + return headlineToolbar; + }; + /** + * before module "show" callback + * @param moduleElement + * @param systemData + */ + let beforeShow = (moduleElement, systemData) => { // update graph moduleElement.updateSystemInfoGraphs(systemData); - - return moduleElement; }; - /** - * main module load function + * get module element + * @param parentElement * @param systemData + * @returns {*|jQuery|HTMLElement} */ - $.fn.drawSystemKillboardModule = function(systemData){ - - let parentElement = $(this); - - // show route module - let showModule = function(moduleElement){ - if(moduleElement){ - moduleElement.velocity('transition.slideDownIn', { - duration: Init.animationSpeed.mapModule, - delay: Init.animationSpeed.mapModule - }); - } - }; - - // check if module already exists - let moduleElement = parentElement.find('.' + config.systemKillboardModuleClass); - - if(moduleElement.length > 0){ - moduleElement.velocity('transition.slideDownOut', { - duration: Init.animationSpeed.mapModule, - complete: function(tempElement){ - $(tempElement).remove(); + let getModule = (parentElement, mapId, systemData) => { + // create new module container + let moduleElement = $('
      ').append( + $('
      ', { + class: config.moduleHeadClass + }).append( + $('
      ', { + class: config.moduleHandlerClass + }), + $('
      ', { + text: 'Killboard' + }), + getHeadlineToolbar(systemData) + ) + ); - moduleElement = getModule(parentElement, systemData); - showModule(moduleElement); - } - }); - }else{ - moduleElement = getModule(parentElement, systemData); - showModule(moduleElement); - } + return moduleElement; + }; + return { + config: config, + getModule: getModule, + beforeShow: beforeShow }; }); \ No newline at end of file diff --git a/js/app/ui/system_route.js b/js/app/ui/system_route.js index e67b0e8ce..154fec75f 100644 --- a/js/app/ui/system_route.js +++ b/js/app/ui/system_route.js @@ -13,18 +13,21 @@ define([ let config = { // module info - moduleClass: 'pf-module', // class for each module + modulePosition: 1, + moduleName: 'systemRoute', + moduleHeadClass: 'pf-module-head', // class for module header + moduleHandlerClass: 'pf-module-handler-drag', // class for "drag" handler routeCacheTTL: 10, // route cache timer (client) in seconds // system route module - systemRouteModuleClass: 'pf-system-route-module', // class for this module + moduleTypeClass: 'pf-system-route-module', // class for this module // headline toolbar - systemModuleHeadlineIcon: 'pf-module-icon-button', // class for toolbar icons in the head - systemModuleHeadlineIconSearch: 'pf-module-icon-button-search', // class for "search" icon - systemModuleHeadlineIconSettings: 'pf-module-icon-button-settings', // class for "settings" icon - systemModuleHeadlineIconRefresh: 'pf-module-icon-button-refresh', // class for "refresh" icon + moduleHeadlineIconClass: 'pf-module-icon-button', // class for toolbar icons in the head + moduleHeadlineIconSearchClass: 'pf-module-icon-button-search', // class for "search" icon + moduleHeadlineIconSettingsClass: 'pf-module-icon-button-settings', // class for "settings" icon + moduleHeadlineIconRefreshClass: 'pf-module-icon-button-refresh', // class for "refresh" icon systemSecurityClassPrefix: 'pf-system-security-', // prefix class for system security level (color) @@ -35,7 +38,7 @@ define([ systemInfoRoutesTableClass: 'pf-system-route-table', // class for route tables mapSelectId: 'pf-route-dialog-map-select', // id for "map" select - dataTableActionCellClass: 'pf-table-action-cell' // class for "action" cells + dataTableActionCellClass: 'pf-table-action-cell' // class for "action" cells }; // cache for system routes @@ -48,7 +51,7 @@ define([ * @param context * @param routesData */ - let callbackAddRouteRow = function(context, routesData){ + let callbackAddRouteRow = (context, routesData) => { if(routesData.length > 0){ for(let i = 0; i < routesData.length; i++){ @@ -86,7 +89,7 @@ define([ * @param rowData * @returns {*} */ - let addRow = function(context, rowData){ + let addRow = (context, rowData) => { let dataTable = context.dataTable; let rowElement = null; let row = null; @@ -94,7 +97,7 @@ define([ // search for an existing row (e.g. on mass "table refresh" [all routes]) // get rowIndex where column 1 (equals to "systemToData.name") matches rowData.systemToData.name - let indexes = dataTable.rows().eq(0).filter( function (rowIdx) { + let indexes = dataTable.rows().eq(0).filter((rowIdx) => { return (dataTable.cell(rowIdx, 1 ).data().name === rowData.systemToData.name); }); @@ -129,8 +132,7 @@ define([ * @param context * @param callback */ - let getRouteData = function(requestData, context, callback){ - + let getRouteData = (requestData, context, callback) => { context.moduleElement.showLoadingAnimation(); $.ajax({ @@ -145,7 +147,6 @@ define([ // execute callback callback(this, routesData.routesData); }); - }; /** @@ -153,7 +154,7 @@ define([ * @param moduleElement * @param dataTable */ - let updateRoutesTable = function(moduleElement, dataTable){ + let updateRoutesTable = (moduleElement, dataTable) => { let context = { moduleElement: moduleElement, dataTable: dataTable @@ -172,7 +173,7 @@ define([ * @param {Object} rowData * @returns {Object} */ - let getRouteRequestDataFromRowData = function(rowData){ + let getRouteRequestDataFromRowData = (rowData) => { return { mapIds: (rowData.hasOwnProperty('mapIds')) ? rowData.mapIds : [], systemFromData: (rowData.hasOwnProperty('systemFromData')) ? rowData.systemFromData : {}, @@ -193,7 +194,7 @@ define([ * show route dialog. User can search for systems and jump-info for each system is added to a data table * @param dialogData */ - let showFindRouteDialog = function(dialogData){ + let showFindRouteDialog = (dialogData) => { let mapSelectOptions = []; let currentMapData = Util.getCurrentMapData(); @@ -678,50 +679,45 @@ define([ }; /** - * get the route finder moduleElement + * get module element * @returns {*} */ let getModule = function(){ - // create new module container - let moduleElement = $('
      ', { - class: [config.moduleClass, config.systemRouteModuleClass].join(' ') - }); - - // headline toolbar icons - let headlineToolbar = $('
      ', { - class: 'pull-right' - }).append( - $('', { - class: ['fa', 'fa-fw', 'fa-search', config.systemModuleHeadlineIcon, config.systemModuleHeadlineIconSearch].join(' '), - title: 'find route' - }).attr('data-html', 'true').attr('data-toggle', 'tooltip'), - $('', { - class: ['fa', 'fa-fw', 'fa-sliders', config.systemModuleHeadlineIcon, config.systemModuleHeadlineIconSettings].join(' '), - title: 'settings' - }).attr('data-html', 'true').attr('data-toggle', 'tooltip'), - $('', { - class: ['fa', 'fa-fw', 'fa-refresh', config.systemModuleHeadlineIcon, config.systemModuleHeadlineIconRefresh].join(' '), - title: 'refresh all' - }).attr('data-html', 'true').attr('data-toggle', 'tooltip') + let moduleElement = $('
      ').append( + $('
      ', { + class: config.moduleHeadClass + }).append( + $('
      ', { + class: config.moduleHandlerClass + }), + $('
      ', { + class: 'pull-right' + }).append( + $('', { + class: ['fa', 'fa-fw', 'fa-search', config.moduleHeadlineIconClass, config.moduleHeadlineIconSearchClass].join(' '), + title: 'find route' + }).attr('data-html', 'true').attr('data-toggle', 'tooltip'), + $('', { + class: ['fa', 'fa-fw', 'fa-sliders', config.moduleHeadlineIconClass, config.moduleHeadlineIconSettingsClass].join(' '), + title: 'settings' + }).attr('data-html', 'true').attr('data-toggle', 'tooltip'), + $('', { + class: ['fa', 'fa-fw', 'fa-refresh', config.moduleHeadlineIconClass, config.moduleHeadlineIconRefreshClass].join(' '), + title: 'refresh all' + }).attr('data-html', 'true').attr('data-toggle', 'tooltip') + ), + $('
      ', { + text: 'Routes' + }) + ) ); - moduleElement.append(headlineToolbar); - - // headline - let headline = $('
      ', { - class: 'pull-left', - text: 'Routes' - }); - - moduleElement.append(headline); - // crate new route table let table = $('
      ', { class: ['compact', 'stripe', 'order-column', 'row-border', config.systemInfoRoutesTableClass].join(' ') }); - - moduleElement.append( $(table) ); + moduleElement.append(table); // init empty table let routesTable = table.DataTable( { @@ -1006,12 +1002,12 @@ define([ let routesTable = routesTableElement.DataTable(); // init refresh routes -------------------------------------------------------------------- - moduleElement.find('.' + config.systemModuleHeadlineIconRefresh).on('click', function(e){ + moduleElement.find('.' + config.moduleHeadlineIconRefreshClass).on('click', function(e){ updateRoutesTable(moduleElement, routesTable); }); // init search routes dialog -------------------------------------------------------------- - moduleElement.find('.' + config.systemModuleHeadlineIconSearch).on('click', function(e){ + moduleElement.find('.' + config.moduleHeadlineIconSearchClass).on('click', function(e){ let maxRouteSearchLimit = this.Init.routeSearch.limit; if(routesTable.rows().count() >= maxRouteSearchLimit){ @@ -1032,7 +1028,7 @@ define([ })); // init settings dialog ------------------------------------------------------------------- - moduleElement.find('.' + config.systemModuleHeadlineIconSettings).on('click', function(e){ + moduleElement.find('.' + config.moduleHeadlineIconSettingsClass).on('click', function(e){ let dialogData = { mapId: mapId }; @@ -1061,49 +1057,10 @@ define([ }; - /** - * updates an dom element with the system route module - * @param mapId - * @param systemData - */ - $.fn.drawSystemRouteModule = function(mapId, systemData){ - - let parentElement = $(this); - - // show route module - let showModule = function(moduleElement){ - if(moduleElement){ - moduleElement.css({ opacity: 0 }); - parentElement.append(moduleElement); - - moduleElement.velocity('transition.slideDownIn', { - duration: Init.animationSpeed.mapModule, - delay: Init.animationSpeed.mapModule, - complete: function(){ - initModule(moduleElement, mapId, systemData); - } - }); - } - }; - - // check if module already exists - let moduleElement = parentElement.find('.' + config.systemRouteModuleClass); - - if(moduleElement.length > 0){ - moduleElement.velocity('transition.slideDownOut', { - duration: Init.animationSpeed.mapModule, - complete: function(tempElement){ - $(tempElement).remove(); - - moduleElement = getModule(); - showModule(moduleElement); - } - }); - }else{ - moduleElement = getModule(); - showModule(moduleElement); - } - + return { + config: config, + getModule: getModule, + initModule: initModule }; }); \ No newline at end of file diff --git a/js/app/ui/system_signature.js b/js/app/ui/system_signature.js index 4ce53badd..c2a921ca6 100644 --- a/js/app/ui/system_signature.js +++ b/js/app/ui/system_signature.js @@ -15,10 +15,15 @@ define([ let config = { // module info + modulePosition: 4, + moduleName: 'systemSignature', + moduleHeadClass: 'pf-module-head', // class for module header + moduleHandlerClass: 'pf-module-handler-drag', // class for "drag" handler + moduleClass: 'pf-module', // class for each module // system signature module - systemSigModuleClass: 'pf-sig-table-module', // module wrapper + moduleTypeClass: 'pf-sig-table-module', // module wrapper // tables tableToolsClass: 'pf-table-tools', // class for table toolbar @@ -1473,7 +1478,7 @@ define([ let connectionOptions = []; for(let i = 0; i < systemConnections.length; i++){ - let connectionData = Map.getDataByConnection(systemConnections[i]); + let connectionData = MapUtil.getDataByConnection(systemConnections[i]); // connectionId is required (must be stored) if(connectionData.id){ @@ -1739,7 +1744,7 @@ define([ let deleteSignatures = function(tableApi, rows){ let deletedSignatures = 0; - let moduleElement = $('.' + config.systemSigModuleClass); + let moduleElement = $('.' + config.moduleTypeClass); let data = rows.data(); let rowElements = rows.nodes().to$(); let signatureCount = data.length; @@ -2312,12 +2317,30 @@ define([ checkDeleteSignaturesButton(e.data.moduleElement); }); + // destroy dataTables event ----------------------------------------------------------------------------------- + tablePrimaryElement.on('destroy.dt', function(){ + $(this).destroyTimestampCounter(); + }); + signatureTableApi.on('destroy.dt', function(){ + $(this).destroyTimestampCounter(); + }); + // event listener for global "paste" signatures into the page ------------------------------------------------- moduleElement.on('pf:updateSystemSignatureModuleByClipboard', function(e, clipboard){ $(this).updateSignatureTableByClipboard(systemData, clipboard, {}); }); }; + /** + * init callback + * @param moduleElement + * @param mapId + * @param connectionData + */ + let initModule = (moduleElement, mapId, systemData) => { + unlockSignatureTable(true); + }; + /** * get module element * @param parentElement @@ -2326,25 +2349,23 @@ define([ * @returns {*|jQuery|HTMLElement} */ let getModule = function(parentElement, mapId, systemData){ - // create new module container - let moduleElement = $('
      ', { - class: [config.moduleClass, config.systemSigModuleClass].join(' '), - css: {opacity: 0} - }); + let moduleElement = $('
      ').append( + $('
      ', { + class: config.moduleHeadClass + }).append( + $('
      ', { + class: config.moduleHandlerClass + }), + $('
      ', { + text: 'Signatures' + }) + ) + ); moduleElement.data('mapId', mapId); moduleElement.data('systemId', systemData.id); - // headline - let headline = $('
      ', { - text: 'Signatures' - }); - - moduleElement.append(headline); - - $(parentElement).append(moduleElement); - // init dataTables initSignatureDataTable(systemData); @@ -2385,76 +2406,31 @@ define([ }; /** - * main module load function - * @param mapId - * @param systemData + * before module reDraw callback */ - $.fn.drawSignatureTableModule = function(mapId, systemData){ - let parentElement = $(this); - - // show module - let showModule = function(moduleElement){ - if(moduleElement){ - moduleElement.velocity('transition.slideDownIn', { - duration: Init.animationSpeed.mapModule, - delay: Init.animationSpeed.mapModule, - complete: function(){ - unlockSignatureTable(true); - } - }); - } - }; - - // some custom array functions - let initArrayFunctions = function(){ - /** - * sort array of objects by property name - * @param p - * @returns {Array.} - */ - Array.prototype.sortBy = function(p) { - return this.slice(0).sort(function(a,b) { - return (a[p] > b[p]) ? 1 : (a[p] < b[p]) ? -1 : 0; - }); - }; - }; - - // check if module already exists - let moduleElement = parentElement.find('.' + config.systemSigModuleClass); - - if(moduleElement.length > 0){ - // disable update - lockSignatureTable(); - - moduleElement.velocity('transition.slideDownOut', { - duration: Init.animationSpeed.mapModule, - complete: function(tempElement){ - tempElement = $(tempElement); - // Destroying the data tables throws - // save remove of all dataTables - let mapId = tempElement.data('mapId'); - let systemId = tempElement.data('systemId'); - deleteDataTableInstance(mapId, systemId, 'primary'); - deleteDataTableInstance(mapId, systemId, 'secondary'); - - tempElement.remove(); - - moduleElement = getModule(parentElement, mapId, systemData); - // make modules appear "nice" - moduleElement.delay(150); - showModule(moduleElement); - } - }); - }else{ - // init array prototype functions - initArrayFunctions(); + let beforeReDraw = () => { + // disable update + lockSignatureTable(); + }; - moduleElement = getModule(parentElement, mapId, systemData); - showModule(moduleElement); - } + /** + * before module destroy callback + */ + let beforeDestroy = (moduleElement) => { + // Destroying the data tables throws + // -> safety remove all dataTables + let mapId = moduleElement.data('mapId'); + let systemId = moduleElement.data('systemId'); + deleteDataTableInstance(mapId, systemId, 'primary'); + deleteDataTableInstance(mapId, systemId, 'secondary'); }; return { + config: config, + getModule: getModule, + initModule: initModule, + beforeReDraw: beforeReDraw, + beforeDestroy: beforeDestroy, getAllSignatureNamesBySystem: getAllSignatureNamesBySystem }; diff --git a/js/app/util.js b/js/app/util.js index 350df0267..d64686c89 100644 --- a/js/app/util.js +++ b/js/app/util.js @@ -546,6 +546,8 @@ define([ } } + + return element; }; /** @@ -668,39 +670,6 @@ define([ }); }; - /** - * add a wormhole tooltip with wh specific data to elements - * @param tooltipData - * @returns {*} - */ - $.fn.addWormholeInfoTooltip = function(tooltipData){ - return this.each(function() { - let element = $(this); - - requirejs(['text!templates/tooltip/wormhole_info.html', 'mustache'], function (template, Mustache) { - let content = Mustache.render(template, tooltipData); - - element.popover({ - placement: 'top', - html: true, - trigger: 'hover', - content: '', - container: 'body', - title: tooltipData.name + - '' + tooltipData.security + '', - delay: { - show: 250, - hide: 0 - } - }); - - // set new popover content - let popover = element.data('bs.popover'); - popover.options.content = content; - }); - }); - }; - /** * display a custom message (info/warning/error) to a container element * check: $.fn.showFormMessage() for an other way of showing messages @@ -862,6 +831,17 @@ define([ Array.prototype.diff = function(a) { return this.filter(function(i) {return a.indexOf(i) < 0;}); }; + + /** + * sort array of objects by property name + * @param p + * @returns {Array.} + */ + Array.prototype.sortBy = function(p) { + return this.slice(0).sort((a,b) => { + return (a[p] > b[p]) ? 1 : (a[p] < b[p]) ? -1 : 0; + }); + }; }; /** @@ -883,7 +863,7 @@ define([ } return flatten; - } ; + }; /** * set default configuration for "Bootbox" dialogs @@ -1278,7 +1258,6 @@ define([ * @returns {*|HTMLElement} */ let getMapModule = function(){ - let mapModule = $('#' + config.mapModuleId); if(mapModule.length === 0){ mapModule = $('
      ', { @@ -1470,13 +1449,11 @@ define([ * @param sec * @returns {string} */ - let getSecurityClassForSystem = function(sec){ + let getSecurityClassForSystem = (sec) => { let secClass = ''; - if( Init.classes.systemSecurity.hasOwnProperty(sec) ){ secClass = Init.classes.systemSecurity[sec]['class']; } - return secClass; }; @@ -1994,7 +1971,7 @@ define([ * set currentSystemData as "global" variable * @param systemData */ - let setCurrentSystemData = function(systemData){ + let setCurrentSystemData = (systemData) => { Init.currentSystemData = systemData; }; @@ -2002,7 +1979,7 @@ define([ * get currentSystemData from "global" variables * @returns {*} */ - let getCurrentSystemData = function(){ + let getCurrentSystemData = () => { return Init.currentSystemData; }; @@ -2060,7 +2037,7 @@ define([ * @param price * @returns {string} */ - let formatPrice = function(price){ + let formatPrice = (price) => { price = Number( price ).toFixed(2); let parts = price.toString().split('.'); @@ -2069,6 +2046,15 @@ define([ return price + ' ISK'; }; + /** + * format mass value + * @param value + * @returns {string} + */ + let formatMassValue = (value) => { + return (parseInt(value) / 1000).toLocaleString() + ' t'; + }; + /** * get localForage instance (singleton) for offline client site storage * @returns {localforage} @@ -2253,6 +2239,7 @@ define([ getOpenDialogs: getOpenDialogs, openIngameWindow: openIngameWindow, formatPrice: formatPrice, + formatMassValue: formatMassValue, getLocalStorage: getLocalStorage, clearSessionStorage: clearSessionStorage, getBrowserTabId: getBrowserTabId, diff --git a/js/lib/dom.jsPlumb-1.7.6.js b/js/lib/dom.jsPlumb-1.7.6.js index a9da94d0b..adf0c8da1 100644 --- a/js/lib/dom.jsPlumb-1.7.6.js +++ b/js/lib/dom.jsPlumb-1.7.6.js @@ -10388,12 +10388,13 @@ // in IE the top left corner is what it placed at the desired location. This will not // be fixed. IE8 is not going to be supported for much longer. - var ts = "translate(-50%, -50%)"; + var ts = "translate(-50%, calc(-50% - .5px))"; div.style.webkitTransform = ts; div.style.mozTransform = ts; div.style.msTransform = ts; div.style.oTransform = ts; div.style.transform = ts; + div.style.WebkitFontSmoothing = 'antialiased'; // write the related component into the created element div._jsPlumb = this; diff --git a/js/lib/jquery.peity.min.js b/js/lib/jquery.peity.min.js index 3d0166ee8..5bc10a81c 100644 --- a/js/lib/jquery.peity.min.js +++ b/js/lib/jquery.peity.min.js @@ -1,13 +1,13 @@ -// Peity jQuery plugin version 3.2.0 -// (c) 2015 Ben Pickles +// Peity jQuery plugin version 3.2.1 +// (c) 2016 Ben Pickles // // http://benpickles.github.io/peity // // Released under MIT license. (function(k,w,h,v){var d=k.fn.peity=function(a,b){y&&this.each(function(){var e=k(this),c=e.data("_peity");c?(a&&(c.type=a),k.extend(c.opts,b)):(c=new x(e,a,k.extend({},d.defaults[a],e.data("peity"),b)),e.change(function(){c.draw()}).data("_peity",c));c.draw()});return this},x=function(a,b,e){this.$el=a;this.type=b;this.opts=e},o=x.prototype,q=o.svgElement=function(a,b){return k(w.createElementNS("http://www.w3.org/2000/svg",a)).attr(b)},y="createElementNS"in w&&q("svg",{})[0].createSVGRect;o.draw= -function(){var a=this.opts;d.graphers[this.type].call(this,a);a.after&&a.after.call(this,a)};o.fill=function(){var a=this.opts.fill;return k.isFunction(a)?a:function(b,e){return a[e%a.length]}};o.prepare=function(a,b){this.$svg||this.$el.hide().after(this.$svg=q("svg",{"class":"peity"}));return this.$svg.empty().data("peity",this).attr({height:b,width:a})};o.values=function(){return k.map(this.$el.text().split(this.opts.delimiter),function(a){return parseFloat(a)})};d.defaults={};d.graphers={};d.register= -function(a,b,e){this.defaults[a]=b;this.graphers[a]=e};d.register("pie",{fill:["#ff9900","#fff4dd","#ffc66e"],radius:8},function(a){if(!a.delimiter){var b=this.$el.text().match(/[^0-9\.]/);a.delimiter=b?b[0]:","}b=k.map(this.values(),function(a){return 0i?n=s(h.min(e,0)):p=s(h.max(c,0)):o=1;o=p-n;0==o&&(o=1,0b;b++)if(b in this&&this[b]===a)return b;return-1};b=window.Morris={},a=jQuery,b.EventEmitter=function(){function a(){}return a.prototype.on=function(a,b){return null==this.handlers&&(this.handlers={}),null==this.handlers[a]&&(this.handlers[a]=[]),this.handlers[a].push(b),this},a.prototype.fire=function(){var a,b,c,d,f,g,h;if(c=arguments[0],a=2<=arguments.length?e.call(arguments,1):[],null!=this.handlers&&null!=this.handlers[c]){for(g=this.handlers[c],h=[],d=0,f=g.length;f>d;d++)b=g[d],h.push(b.apply(null,a));return h}},a}(),b.commas=function(a){var b,c,d,e;return null!=a?(d=0>a?"-":"",b=Math.abs(a),c=Math.floor(b).toFixed(0),d+=c.replace(/(?=(?:\d{3})+$)(?!^)/g,","),e=b.toString(),e.length>c.length&&(d+=e.slice(c.length)),d):"-"},b.pad2=function(a){return(10>a?"0":"")+a},b.Grid=function(c){function d(b){this.resizeHandler=f(this.resizeHandler,this);var c=this;if(this.el="string"==typeof b.element?a(document.getElementById(b.element)):a(b.element),null==this.el||0===this.el.length)throw new Error("Graph container element not found");"static"===this.el.css("position")&&this.el.css("position","relative"),this.options=a.extend({},this.gridDefaults,this.defaults||{},b),"string"==typeof this.options.units&&(this.options.postUnits=b.units),this.raphael=new Raphael(this.el[0]),this.elementWidth=null,this.elementHeight=null,this.dirty=!1,this.selectFrom=null,this.init&&this.init(),this.setData(this.options.data),this.el.bind("mousemove",function(a){var b,d,e,f,g;return d=c.el.offset(),g=a.pageX-d.left,c.selectFrom?(b=c.data[c.hitTest(Math.min(g,c.selectFrom))]._x,e=c.data[c.hitTest(Math.max(g,c.selectFrom))]._x,f=e-b,c.selectionRect.attr({x:b,width:f})):c.fire("hovermove",g,a.pageY-d.top)}),this.el.bind("mouseleave",function(){return c.selectFrom&&(c.selectionRect.hide(),c.selectFrom=null),c.fire("hoverout")}),this.el.bind("touchstart touchmove touchend",function(a){var b,d;return d=a.originalEvent.touches[0]||a.originalEvent.changedTouches[0],b=c.el.offset(),c.fire("hovermove",d.pageX-b.left,d.pageY-b.top)}),this.el.bind("click",function(a){var b;return b=c.el.offset(),c.fire("gridclick",a.pageX-b.left,a.pageY-b.top)}),this.options.rangeSelect&&(this.selectionRect=this.raphael.rect(0,0,0,this.el.innerHeight()).attr({fill:this.options.rangeSelectColor,stroke:!1}).toBack().hide(),this.el.bind("mousedown",function(a){var b;return b=c.el.offset(),c.startRange(a.pageX-b.left)}),this.el.bind("mouseup",function(a){var b;return b=c.el.offset(),c.endRange(a.pageX-b.left),c.fire("hovermove",a.pageX-b.left,a.pageY-b.top)})),this.options.resize&&a(window).bind("resize",function(){return null!=c.timeoutId&&window.clearTimeout(c.timeoutId),c.timeoutId=window.setTimeout(c.resizeHandler,100)}),this.el.css("-webkit-tap-highlight-color","rgba(0,0,0,0)"),this.postInit&&this.postInit()}return h(d,c),d.prototype.gridDefaults={dateFormat:null,axes:!0,grid:!0,gridLineColor:"#aaa",gridStrokeWidth:.5,gridTextColor:"#888",gridTextSize:12,gridTextFamily:"sans-serif",gridTextWeight:"normal",hideHover:!1,yLabelFormat:null,xLabelAngle:0,numLines:5,padding:25,parseTime:!0,postUnits:"",preUnits:"",ymax:"auto",ymin:"auto 0",goals:[],goalStrokeWidth:1,goalLineColors:["#666633","#999966","#cc6666","#663333"],events:[],eventStrokeWidth:1,eventLineColors:["#005a04","#ccffbb","#3a5f0b","#005502"],rangeSelect:null,rangeSelectColor:"#eef",resize:!1},d.prototype.setData=function(a,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;return null==c&&(c=!0),this.options.data=a,null==a||0===a.length?(this.data=[],this.raphael.clear(),null!=this.hover&&this.hover.hide(),void 0):(o=this.cumulative?0:null,p=this.cumulative?0:null,this.options.goals.length>0&&(h=Math.min.apply(Math,this.options.goals),g=Math.max.apply(Math,this.options.goals),p=null!=p?Math.min(p,h):h,o=null!=o?Math.max(o,g):g),this.data=function(){var c,d,g;for(g=[],f=c=0,d=a.length;d>c;f=++c)j=a[f],i={src:j},i.label=j[this.options.xkey],this.options.parseTime?(i.x=b.parseDate(i.label),this.options.dateFormat?i.label=this.options.dateFormat(i.x):"number"==typeof i.label&&(i.label=new Date(i.label).toString())):(i.x=f,this.options.xLabelFormat&&(i.label=this.options.xLabelFormat(i))),l=0,i.y=function(){var a,b,c,d;for(c=this.options.ykeys,d=[],e=a=0,b=c.length;b>a;e=++a)n=c[e],q=j[n],"string"==typeof q&&(q=parseFloat(q)),null!=q&&"number"!=typeof q&&(q=null),null!=q&&(this.cumulative?l+=q:null!=o?(o=Math.max(q,o),p=Math.min(q,p)):o=p=q),this.cumulative&&null!=l&&(o=Math.max(l,o),p=Math.min(l,p)),d.push(q);return d}.call(this),g.push(i);return g}.call(this),this.options.parseTime&&(this.data=this.data.sort(function(a,b){return(a.x>b.x)-(b.x>a.x)})),this.xmin=this.data[0].x,this.xmax=this.data[this.data.length-1].x,this.events=[],this.options.events.length>0&&(this.events=this.options.parseTime?function(){var a,c,e,f;for(e=this.options.events,f=[],a=0,c=e.length;c>a;a++)d=e[a],f.push(b.parseDate(d));return f}.call(this):this.options.events,this.xmax=Math.max(this.xmax,Math.max.apply(Math,this.events)),this.xmin=Math.min(this.xmin,Math.min.apply(Math,this.events))),this.xmin===this.xmax&&(this.xmin-=1,this.xmax+=1),this.ymin=this.yboundary("min",p),this.ymax=this.yboundary("max",o),this.ymin===this.ymax&&(p&&(this.ymin-=1),this.ymax+=1),((r=this.options.axes)===!0||"both"===r||"y"===r||this.options.grid===!0)&&(this.options.ymax===this.gridDefaults.ymax&&this.options.ymin===this.gridDefaults.ymin?(this.grid=this.autoGridLines(this.ymin,this.ymax,this.options.numLines),this.ymin=Math.min(this.ymin,this.grid[0]),this.ymax=Math.max(this.ymax,this.grid[this.grid.length-1])):(k=(this.ymax-this.ymin)/(this.options.numLines-1),this.grid=function(){var a,b,c,d;for(d=[],m=a=b=this.ymin,c=this.ymax;k>0?c>=a:a>=c;m=a+=k)d.push(m);return d}.call(this))),this.dirty=!0,c?this.redraw():void 0)},d.prototype.yboundary=function(a,b){var c,d;return c=this.options["y"+a],"string"==typeof c?"auto"===c.slice(0,4)?c.length>5?(d=parseInt(c.slice(5),10),null==b?d:Math[a](b,d)):null!=b?b:0:parseInt(c,10):c},d.prototype.autoGridLines=function(a,b,c){var d,e,f,g,h,i,j,k,l;return h=b-a,l=Math.floor(Math.log(h)/Math.log(10)),j=Math.pow(10,l),e=Math.floor(a/j)*j,d=Math.ceil(b/j)*j,i=(d-e)/(c-1),1===j&&i>1&&Math.ceil(i)!==i&&(i=Math.ceil(i),d=e+i*(c-1)),0>e&&d>0&&(e=Math.floor(a/i)*i,d=Math.ceil(b/i)*i),1>i?(g=Math.floor(Math.log(i)/Math.log(10)),f=function(){var a,b;for(b=[],k=a=e;i>0?d>=a:a>=d;k=a+=i)b.push(parseFloat(k.toFixed(1-g)));return b}()):f=function(){var a,b;for(b=[],k=a=e;i>0?d>=a:a>=d;k=a+=i)b.push(k);return b}(),f},d.prototype._calc=function(){var a,b,c,d,e,f,g,h;return e=this.el.width(),c=this.el.height(),(this.elementWidth!==e||this.elementHeight!==c||this.dirty)&&(this.elementWidth=e,this.elementHeight=c,this.dirty=!1,this.left=this.options.padding,this.right=this.elementWidth-this.options.padding,this.top=this.options.padding,this.bottom=this.elementHeight-this.options.padding,((g=this.options.axes)===!0||"both"===g||"y"===g)&&(f=function(){var a,c,d,e;for(d=this.grid,e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(this.measureText(this.yAxisFormat(b)).width);return e}.call(this),this.left+=Math.max.apply(Math,f)),((h=this.options.axes)===!0||"both"===h||"x"===h)&&(a=function(){var a,b,c;for(c=[],d=a=0,b=this.data.length;b>=0?b>a:a>b;d=b>=0?++a:--a)c.push(this.measureText(this.data[d].text,-this.options.xLabelAngle).height);return c}.call(this),this.bottom-=Math.max.apply(Math,a)),this.width=Math.max(1,this.right-this.left),this.height=Math.max(1,this.bottom-this.top),this.dx=this.width/(this.xmax-this.xmin),this.dy=this.height/(this.ymax-this.ymin),this.calc)?this.calc():void 0},d.prototype.transY=function(a){return this.bottom-(a-this.ymin)*this.dy},d.prototype.transX=function(a){return 1===this.data.length?(this.left+this.right)/2:this.left+(a-this.xmin)*this.dx},d.prototype.redraw=function(){return this.raphael.clear(),this._calc(),this.drawGrid(),this.drawGoals(),this.drawEvents(),this.draw?this.draw():void 0},d.prototype.measureText=function(a,b){var c,d;return null==b&&(b=0),d=this.raphael.text(100,100,a).attr("font-size",this.options.gridTextSize).attr("font-family",this.options.gridTextFamily).attr("font-weight",this.options.gridTextWeight).rotate(b),c=d.getBBox(),d.remove(),c},d.prototype.yAxisFormat=function(a){return this.yLabelFormat(a)},d.prototype.yLabelFormat=function(a){return"function"==typeof this.options.yLabelFormat?this.options.yLabelFormat(a):""+this.options.preUnits+b.commas(a)+this.options.postUnits},d.prototype.drawGrid=function(){var a,b,c,d,e,f,g,h;if(this.options.grid!==!1||(e=this.options.axes)===!0||"both"===e||"y"===e){for(f=this.grid,h=[],c=0,d=f.length;d>c;c++)a=f[c],b=this.transY(a),((g=this.options.axes)===!0||"both"===g||"y"===g)&&this.drawYAxisLabel(this.left-this.options.padding/2,b,this.yAxisFormat(a)),this.options.grid?h.push(this.drawGridLine("M"+this.left+","+b+"H"+(this.left+this.width))):h.push(void 0);return h}},d.prototype.drawGoals=function(){var a,b,c,d,e,f,g;for(f=this.options.goals,g=[],c=d=0,e=f.length;e>d;c=++d)b=f[c],a=this.options.goalLineColors[c%this.options.goalLineColors.length],g.push(this.drawGoal(b,a));return g},d.prototype.drawEvents=function(){var a,b,c,d,e,f,g;for(f=this.events,g=[],c=d=0,e=f.length;e>d;c=++d)b=f[c],a=this.options.eventLineColors[c%this.options.eventLineColors.length],g.push(this.drawEvent(b,a));return g},d.prototype.drawGoal=function(a,b){return this.raphael.path("M"+this.left+","+this.transY(a)+"H"+this.right).attr("stroke",b).attr("stroke-width",this.options.goalStrokeWidth)},d.prototype.drawEvent=function(a,b){return this.raphael.path("M"+this.transX(a)+","+this.bottom+"V"+this.top).attr("stroke",b).attr("stroke-width",this.options.eventStrokeWidth)},d.prototype.drawYAxisLabel=function(a,b,c){return this.raphael.text(a,b,c).attr("font-size",this.options.gridTextSize).attr("font-family",this.options.gridTextFamily).attr("font-weight",this.options.gridTextWeight).attr("fill",this.options.gridTextColor).attr("text-anchor","end")},d.prototype.drawGridLine=function(a){return this.raphael.path(a).attr("stroke",this.options.gridLineColor).attr("stroke-width",this.options.gridStrokeWidth)},d.prototype.startRange=function(a){return this.hover.hide(),this.selectFrom=a,this.selectionRect.attr({x:a,width:0}).show()},d.prototype.endRange=function(a){var b,c;return this.selectFrom?(c=Math.min(this.selectFrom,a),b=Math.max(this.selectFrom,a),this.options.rangeSelect.call(this.el,{start:this.data[this.hitTest(c)].x,end:this.data[this.hitTest(b)].x}),this.selectFrom=null):void 0},d.prototype.resizeHandler=function(){return this.timeoutId=null,this.raphael.setSize(this.el.width(),this.el.height()),this.redraw()},d}(b.EventEmitter),b.parseDate=function(a){var b,c,d,e,f,g,h,i,j,k,l;return"number"==typeof a?a:(c=a.match(/^(\d+) Q(\d)$/),e=a.match(/^(\d+)-(\d+)$/),f=a.match(/^(\d+)-(\d+)-(\d+)$/),h=a.match(/^(\d+) W(\d+)$/),i=a.match(/^(\d+)-(\d+)-(\d+)[ T](\d+):(\d+)(Z|([+-])(\d\d):?(\d\d))?$/),j=a.match(/^(\d+)-(\d+)-(\d+)[ T](\d+):(\d+):(\d+(\.\d+)?)(Z|([+-])(\d\d):?(\d\d))?$/),c?new Date(parseInt(c[1],10),3*parseInt(c[2],10)-1,1).getTime():e?new Date(parseInt(e[1],10),parseInt(e[2],10)-1,1).getTime():f?new Date(parseInt(f[1],10),parseInt(f[2],10)-1,parseInt(f[3],10)).getTime():h?(k=new Date(parseInt(h[1],10),0,1),4!==k.getDay()&&k.setMonth(0,1+(4-k.getDay()+7)%7),k.getTime()+6048e5*parseInt(h[2],10)):i?i[6]?(g=0,"Z"!==i[6]&&(g=60*parseInt(i[8],10)+parseInt(i[9],10),"+"===i[7]&&(g=0-g)),Date.UTC(parseInt(i[1],10),parseInt(i[2],10)-1,parseInt(i[3],10),parseInt(i[4],10),parseInt(i[5],10)+g)):new Date(parseInt(i[1],10),parseInt(i[2],10)-1,parseInt(i[3],10),parseInt(i[4],10),parseInt(i[5],10)).getTime():j?(l=parseFloat(j[6]),b=Math.floor(l),d=Math.round(1e3*(l-b)),j[8]?(g=0,"Z"!==j[8]&&(g=60*parseInt(j[10],10)+parseInt(j[11],10),"+"===j[9]&&(g=0-g)),Date.UTC(parseInt(j[1],10),parseInt(j[2],10)-1,parseInt(j[3],10),parseInt(j[4],10),parseInt(j[5],10)+g,b,d)):new Date(parseInt(j[1],10),parseInt(j[2],10)-1,parseInt(j[3],10),parseInt(j[4],10),parseInt(j[5],10),b,d).getTime()):new Date(parseInt(a,10),0,1).getTime())},b.Hover=function(){function c(c){null==c&&(c={}),this.options=a.extend({},b.Hover.defaults,c),this.el=a("
      "),this.el.hide(),this.options.parent.append(this.el)}return c.defaults={"class":"morris-hover morris-default-style"},c.prototype.update=function(a,b,c){return a?(this.html(a),this.show(),this.moveTo(b,c)):this.hide()},c.prototype.html=function(a){return this.el.html(a)},c.prototype.moveTo=function(a,b){var c,d,e,f,g,h;return g=this.options.parent.innerWidth(),f=this.options.parent.innerHeight(),d=this.el.outerWidth(),c=this.el.outerHeight(),e=Math.min(Math.max(0,a-d/2),g-d),null!=b?(h=b-c-10,0>h&&(h=b+10,h+c>f&&(h=f/2-c/2))):h=f/2-c/2,this.el.css({left:e+"px",top:parseInt(h)+"px"})},c.prototype.show=function(){return this.el.show()},c.prototype.hide=function(){return this.el.hide()},c}(),b.Line=function(a){function c(a){return this.hilight=f(this.hilight,this),this.onHoverOut=f(this.onHoverOut,this),this.onHoverMove=f(this.onHoverMove,this),this.onGridClick=f(this.onGridClick,this),this instanceof b.Line?(c.__super__.constructor.call(this,a),void 0):new b.Line(a)}return h(c,a),c.prototype.init=function(){return"always"!==this.options.hideHover?(this.hover=new b.Hover({parent:this.el}),this.on("hovermove",this.onHoverMove),this.on("hoverout",this.onHoverOut),this.on("gridclick",this.onGridClick)):void 0},c.prototype.defaults={lineWidth:3,pointSize:4,lineColors:["#0b62a4","#7A92A3","#4da74d","#afd8f8","#edc240","#cb4b4b","#9440ed"],pointStrokeWidths:[1],pointStrokeColors:["#ffffff"],pointFillColors:[],smooth:!0,xLabels:"auto",xLabelFormat:null,xLabelMargin:24,hideHover:!1},c.prototype.calc=function(){return this.calcPoints(),this.generatePaths()},c.prototype.calcPoints=function(){var a,b,c,d,e,f;for(e=this.data,f=[],c=0,d=e.length;d>c;c++)a=e[c],a._x=this.transX(a.x),a._y=function(){var c,d,e,f;for(e=a.y,f=[],c=0,d=e.length;d>c;c++)b=e[c],null!=b?f.push(this.transY(b)):f.push(b);return f}.call(this),f.push(a._ymax=Math.min.apply(Math,[this.bottom].concat(function(){var c,d,e,f;for(e=a._y,f=[],c=0,d=e.length;d>c;c++)b=e[c],null!=b&&f.push(b);return f}())));return f},c.prototype.hitTest=function(a){var b,c,d,e,f;if(0===this.data.length)return null;for(f=this.data.slice(1),b=d=0,e=f.length;e>d&&(c=f[b],!(a<(c._x+this.data[b]._x)/2));b=++d);return b},c.prototype.onGridClick=function(a,b){var c;return c=this.hitTest(a),this.fire("click",c,this.data[c].src,a,b)},c.prototype.onHoverMove=function(a){var b;return b=this.hitTest(a),this.displayHoverForRow(b)},c.prototype.onHoverOut=function(){return this.options.hideHover!==!1?this.displayHoverForRow(null):void 0},c.prototype.displayHoverForRow=function(a){var b;return null!=a?((b=this.hover).update.apply(b,this.hoverContentForRow(a)),this.hilight(a)):(this.hover.hide(),this.hilight())},c.prototype.hoverContentForRow=function(a){var b,c,d,e,f,g,h;for(d=this.data[a],b="
      "+d.label+"
      ",h=d.y,c=f=0,g=h.length;g>f;c=++f)e=h[c],b+="
      \n "+this.options.labels[c]+":\n "+this.yLabelFormat(e)+"\n
      ";return"function"==typeof this.options.hoverCallback&&(b=this.options.hoverCallback(a,this.options,b,d.src)),[b,d._x,d._ymax]},c.prototype.generatePaths=function(){var a,c,d,e;return this.paths=function(){var f,g,h,j;for(j=[],c=f=0,g=this.options.ykeys.length;g>=0?g>f:f>g;c=g>=0?++f:--f)e="boolean"==typeof this.options.smooth?this.options.smooth:(h=this.options.ykeys[c],i.call(this.options.smooth,h)>=0),a=function(){var a,b,e,f;for(e=this.data,f=[],a=0,b=e.length;b>a;a++)d=e[a],void 0!==d._y[c]&&f.push({x:d._x,y:d._y[c]});return f}.call(this),a.length>1?j.push(b.Line.createPath(a,e,this.bottom)):j.push(null);return j}.call(this)},c.prototype.draw=function(){var a;return((a=this.options.axes)===!0||"both"===a||"x"===a)&&this.drawXAxis(),this.drawSeries(),this.options.hideHover===!1?this.displayHoverForRow(this.data.length-1):void 0},c.prototype.drawXAxis=function(){var a,c,d,e,f,g,h,i,j,k,l=this;for(h=this.bottom+this.options.padding/2,f=null,e=null,a=function(a,b){var c,d,g,i,j;return c=l.drawXAxisLabel(l.transX(b),h,a),j=c.getBBox(),c.transform("r"+-l.options.xLabelAngle),d=c.getBBox(),c.transform("t0,"+d.height/2+"..."),0!==l.options.xLabelAngle&&(i=-.5*j.width*Math.cos(l.options.xLabelAngle*Math.PI/180),c.transform("t"+i+",0...")),d=c.getBBox(),(null==f||f>=d.x+d.width||null!=e&&e>=d.x)&&d.x>=0&&d.x+d.widtha;a++)g=c[a],d.push([g.label,g.x]);return d}.call(this),d.reverse(),k=[],i=0,j=d.length;j>i;i++)c=d[i],k.push(a(c[0],c[1]));return k},c.prototype.drawSeries=function(){var a,b,c,d,e,f;for(this.seriesPoints=[],a=b=d=this.options.ykeys.length-1;0>=d?0>=b:b>=0;a=0>=d?++b:--b)this._drawLineFor(a);for(f=[],a=c=e=this.options.ykeys.length-1;0>=e?0>=c:c>=0;a=0>=e?++c:--c)f.push(this._drawPointFor(a));return f},c.prototype._drawPointFor=function(a){var b,c,d,e,f,g;for(this.seriesPoints[a]=[],f=this.data,g=[],d=0,e=f.length;e>d;d++)c=f[d],b=null,null!=c._y[a]&&(b=this.drawLinePoint(c._x,c._y[a],this.colorFor(c,a,"point"),a)),g.push(this.seriesPoints[a].push(b));return g},c.prototype._drawLineFor=function(a){var b;return b=this.paths[a],null!==b?this.drawLinePath(b,this.colorFor(null,a,"line"),a):void 0},c.createPath=function(a,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r;for(k="",c&&(g=b.Line.gradients(a)),l={y:null},h=q=0,r=a.length;r>q;h=++q)e=a[h],null!=e.y&&(null!=l.y?c?(f=g[h],j=g[h-1],i=(e.x-l.x)/4,m=l.x+i,o=Math.min(d,l.y+i*j),n=e.x-i,p=Math.min(d,e.y-i*f),k+="C"+m+","+o+","+n+","+p+","+e.x+","+e.y):k+="L"+e.x+","+e.y:c&&null==g[h]||(k+="M"+e.x+","+e.y)),l=e;return k},c.gradients=function(a){var b,c,d,e,f,g,h,i;for(c=function(a,b){return(a.y-b.y)/(a.x-b.x)},i=[],d=g=0,h=a.length;h>g;d=++g)b=a[d],null!=b.y?(e=a[d+1]||{y:null},f=a[d-1]||{y:null},null!=f.y&&null!=e.y?i.push(c(f,e)):null!=f.y?i.push(c(f,b)):null!=e.y?i.push(c(b,e)):i.push(null)):i.push(null);return i},c.prototype.hilight=function(a){var b,c,d,e,f;if(null!==this.prevHilight&&this.prevHilight!==a)for(b=c=0,e=this.seriesPoints.length-1;e>=0?e>=c:c>=e;b=e>=0?++c:--c)this.seriesPoints[b][this.prevHilight]&&this.seriesPoints[b][this.prevHilight].animate(this.pointShrinkSeries(b));if(null!==a&&this.prevHilight!==a)for(b=d=0,f=this.seriesPoints.length-1;f>=0?f>=d:d>=f;b=f>=0?++d:--d)this.seriesPoints[b][a]&&this.seriesPoints[b][a].animate(this.pointGrowSeries(b));return this.prevHilight=a},c.prototype.colorFor=function(a,b,c){return"function"==typeof this.options.lineColors?this.options.lineColors.call(this,a,b,c):"point"===c?this.options.pointFillColors[b%this.options.pointFillColors.length]||this.options.lineColors[b%this.options.lineColors.length]:this.options.lineColors[b%this.options.lineColors.length]},c.prototype.drawXAxisLabel=function(a,b,c){return this.raphael.text(a,b,c).attr("font-size",this.options.gridTextSize).attr("font-family",this.options.gridTextFamily).attr("font-weight",this.options.gridTextWeight).attr("fill",this.options.gridTextColor)},c.prototype.drawLinePath=function(a,b,c){return this.raphael.path(a).attr("stroke",b).attr("stroke-width",this.lineWidthForSeries(c))},c.prototype.drawLinePoint=function(a,b,c,d){return this.raphael.circle(a,b,this.pointSizeForSeries(d)).attr("fill",c).attr("stroke-width",this.pointStrokeWidthForSeries(d)).attr("stroke",this.pointStrokeColorForSeries(d))},c.prototype.pointStrokeWidthForSeries=function(a){return this.options.pointStrokeWidths[a%this.options.pointStrokeWidths.length]},c.prototype.pointStrokeColorForSeries=function(a){return this.options.pointStrokeColors[a%this.options.pointStrokeColors.length]},c.prototype.lineWidthForSeries=function(a){return this.options.lineWidth instanceof Array?this.options.lineWidth[a%this.options.lineWidth.length]:this.options.lineWidth},c.prototype.pointSizeForSeries=function(a){return this.options.pointSize instanceof Array?this.options.pointSize[a%this.options.pointSize.length]:this.options.pointSize},c.prototype.pointGrowSeries=function(a){return Raphael.animation({r:this.pointSizeForSeries(a)+3},25,"linear")},c.prototype.pointShrinkSeries=function(a){return Raphael.animation({r:this.pointSizeForSeries(a)},25,"linear")},c}(b.Grid),b.labelSeries=function(c,d,e,f,g){var h,i,j,k,l,m,n,o,p,q,r;if(j=200*(d-c)/e,i=new Date(c),n=b.LABEL_SPECS[f],void 0===n)for(r=b.AUTO_LABEL_ORDER,p=0,q=r.length;q>p;p++)if(k=r[p],m=b.LABEL_SPECS[k],j>=m.span){n=m;break}for(void 0===n&&(n=b.LABEL_SPECS.second),g&&(n=a.extend({},n,{fmt:g})),h=n.start(i),l=[];(o=h.getTime())<=d;)o>=c&&l.push([n.fmt(h),o]),n.incr(h);return l},c=function(a){return{span:60*a*1e3,start:function(a){return new Date(a.getFullYear(),a.getMonth(),a.getDate(),a.getHours())},fmt:function(a){return""+b.pad2(a.getHours())+":"+b.pad2(a.getMinutes())},incr:function(b){return b.setUTCMinutes(b.getUTCMinutes()+a)}}},d=function(a){return{span:1e3*a,start:function(a){return new Date(a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),a.getMinutes())},fmt:function(a){return""+b.pad2(a.getHours())+":"+b.pad2(a.getMinutes())+":"+b.pad2(a.getSeconds())},incr:function(b){return b.setUTCSeconds(b.getUTCSeconds()+a)}}},b.LABEL_SPECS={decade:{span:1728e8,start:function(a){return new Date(a.getFullYear()-a.getFullYear()%10,0,1)},fmt:function(a){return""+a.getFullYear()},incr:function(a){return a.setFullYear(a.getFullYear()+10)}},year:{span:1728e7,start:function(a){return new Date(a.getFullYear(),0,1)},fmt:function(a){return""+a.getFullYear()},incr:function(a){return a.setFullYear(a.getFullYear()+1)}},month:{span:24192e5,start:function(a){return new Date(a.getFullYear(),a.getMonth(),1)},fmt:function(a){return""+a.getFullYear()+"-"+b.pad2(a.getMonth()+1)},incr:function(a){return a.setMonth(a.getMonth()+1)}},week:{span:6048e5,start:function(a){return new Date(a.getFullYear(),a.getMonth(),a.getDate())},fmt:function(a){return""+a.getFullYear()+"-"+b.pad2(a.getMonth()+1)+"-"+b.pad2(a.getDate())},incr:function(a){return a.setDate(a.getDate()+7)}},day:{span:864e5,start:function(a){return new Date(a.getFullYear(),a.getMonth(),a.getDate())},fmt:function(a){return""+a.getFullYear()+"-"+b.pad2(a.getMonth()+1)+"-"+b.pad2(a.getDate())},incr:function(a){return a.setDate(a.getDate()+1)}},hour:c(60),"30min":c(30),"15min":c(15),"10min":c(10),"5min":c(5),minute:c(1),"30sec":d(30),"15sec":d(15),"10sec":d(10),"5sec":d(5),second:d(1)},b.AUTO_LABEL_ORDER=["decade","year","month","week","day","hour","30min","15min","10min","5min","minute","30sec","15sec","10sec","5sec","second"],b.Area=function(c){function d(c){var f;return this instanceof b.Area?(f=a.extend({},e,c),this.cumulative=!f.behaveLikeLine,"auto"===f.fillOpacity&&(f.fillOpacity=f.behaveLikeLine?.8:1),d.__super__.constructor.call(this,f),void 0):new b.Area(c)}var e;return h(d,c),e={fillOpacity:"auto",behaveLikeLine:!1},d.prototype.calcPoints=function(){var a,b,c,d,e,f,g;for(f=this.data,g=[],d=0,e=f.length;e>d;d++)a=f[d],a._x=this.transX(a.x),b=0,a._y=function(){var d,e,f,g;for(f=a.y,g=[],d=0,e=f.length;e>d;d++)c=f[d],this.options.behaveLikeLine?g.push(this.transY(c)):(b+=c||0,g.push(this.transY(b)));return g}.call(this),g.push(a._ymax=Math.max.apply(Math,a._y));return g},d.prototype.drawSeries=function(){var a,b,c,d,e,f,g,h;for(this.seriesPoints=[],b=this.options.behaveLikeLine?function(){f=[];for(var a=0,b=this.options.ykeys.length-1;b>=0?b>=a:a>=b;b>=0?a++:a--)f.push(a);return f}.apply(this):function(){g=[];for(var a=e=this.options.ykeys.length-1;0>=e?0>=a:a>=0;0>=e?a++:a--)g.push(a);return g}.apply(this),h=[],c=0,d=b.length;d>c;c++)a=b[c],this._drawFillFor(a),this._drawLineFor(a),h.push(this._drawPointFor(a));return h},d.prototype._drawFillFor=function(a){var b;return b=this.paths[a],null!==b?(b+="L"+this.transX(this.xmax)+","+this.bottom+"L"+this.transX(this.xmin)+","+this.bottom+"Z",this.drawFilledPath(b,this.fillForSeries(a))):void 0},d.prototype.fillForSeries=function(a){var b;return b=Raphael.rgb2hsl(this.colorFor(this.data[a],a,"line")),Raphael.hsl(b.h,this.options.behaveLikeLine?.9*b.s:.75*b.s,Math.min(.98,this.options.behaveLikeLine?1.2*b.l:1.25*b.l))},d.prototype.drawFilledPath=function(a,b){return this.raphael.path(a).attr("fill",b).attr("fill-opacity",this.options.fillOpacity).attr("stroke","none")},d}(b.Line),b.Bar=function(c){function d(c){return this.onHoverOut=f(this.onHoverOut,this),this.onHoverMove=f(this.onHoverMove,this),this.onGridClick=f(this.onGridClick,this),this instanceof b.Bar?(d.__super__.constructor.call(this,a.extend({},c,{parseTime:!1})),void 0):new b.Bar(c)}return h(d,c),d.prototype.init=function(){return this.cumulative=this.options.stacked,"always"!==this.options.hideHover?(this.hover=new b.Hover({parent:this.el}),this.on("hovermove",this.onHoverMove),this.on("hoverout",this.onHoverOut),this.on("gridclick",this.onGridClick)):void 0},d.prototype.defaults={barSizeRatio:.75,barGap:3,barColors:["#0b62a4","#7a92a3","#4da74d","#afd8f8","#edc240","#cb4b4b","#9440ed"],barOpacity:1,barRadius:[0,0,0,0],xLabelMargin:50},d.prototype.calc=function(){var a;return this.calcBars(),this.options.hideHover===!1?(a=this.hover).update.apply(a,this.hoverContentForRow(this.data.length-1)):void 0},d.prototype.calcBars=function(){var a,b,c,d,e,f,g;for(f=this.data,g=[],a=d=0,e=f.length;e>d;a=++d)b=f[a],b._x=this.left+this.width*(a+.5)/this.data.length,g.push(b._y=function(){var a,d,e,f;for(e=b.y,f=[],a=0,d=e.length;d>a;a++)c=e[a],null!=c?f.push(this.transY(c)):f.push(null);return f}.call(this));return g},d.prototype.draw=function(){var a;return((a=this.options.axes)===!0||"both"===a||"x"===a)&&this.drawXAxis(),this.drawSeries()},d.prototype.drawXAxis=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m;for(j=this.bottom+(this.options.xAxisLabelTopPadding||this.options.padding/2),g=null,f=null,m=[],a=k=0,l=this.data.length;l>=0?l>k:k>l;a=l>=0?++k:--k)h=this.data[this.data.length-1-a],b=this.drawXAxisLabel(h._x,j,h.label),i=b.getBBox(),b.transform("r"+-this.options.xLabelAngle),c=b.getBBox(),b.transform("t0,"+c.height/2+"..."),0!==this.options.xLabelAngle&&(e=-.5*i.width*Math.cos(this.options.xLabelAngle*Math.PI/180),b.transform("t"+e+",0...")),(null==g||g>=c.x+c.width||null!=f&&f>=c.x)&&c.x>=0&&c.x+c.width=0?this.transY(0):null,this.bars=function(){var h,l,p,q;for(p=this.data,q=[],d=h=0,l=p.length;l>h;d=++h)i=p[d],e=0,q.push(function(){var h,l,p,q;for(p=i._y,q=[],j=h=0,l=p.length;l>h;j=++h)n=p[j],null!==n?(o?(m=Math.min(n,o),b=Math.max(n,o)):(m=n,b=this.bottom),f=this.left+d*c+g,this.options.stacked||(f+=j*(a+this.options.barGap)),k=b-m,this.options.verticalGridCondition&&this.options.verticalGridCondition(i.x)&&this.drawBar(this.left+d*c,this.top,c,Math.abs(this.top-this.bottom),this.options.verticalGridColor,this.options.verticalGridOpacity,this.options.barRadius),this.options.stacked&&(m-=e),this.drawBar(f,m,a,k,this.colorFor(i,j,"bar"),this.options.barOpacity,this.options.barRadius),q.push(e+=k)):q.push(null);return q}.call(this));return q}.call(this)},d.prototype.colorFor=function(a,b,c){var d,e;return"function"==typeof this.options.barColors?(d={x:a.x,y:a.y[b],label:a.label},e={index:b,key:this.options.ykeys[b],label:this.options.labels[b]},this.options.barColors.call(this,d,e,c)):this.options.barColors[b%this.options.barColors.length]},d.prototype.hitTest=function(a){return 0===this.data.length?null:(a=Math.max(Math.min(a,this.right),this.left),Math.min(this.data.length-1,Math.floor((a-this.left)/(this.width/this.data.length))))},d.prototype.onGridClick=function(a,b){var c;return c=this.hitTest(a),this.fire("click",c,this.data[c].src,a,b)},d.prototype.onHoverMove=function(a){var b,c;return b=this.hitTest(a),(c=this.hover).update.apply(c,this.hoverContentForRow(b))},d.prototype.onHoverOut=function(){return this.options.hideHover!==!1?this.hover.hide():void 0},d.prototype.hoverContentForRow=function(a){var b,c,d,e,f,g,h,i;for(d=this.data[a],b="
      "+d.label+"
      ",i=d.y,c=g=0,h=i.length;h>g;c=++g)f=i[c],b+="
      \n "+this.options.labels[c]+":\n "+this.yLabelFormat(f)+"\n
      ";return"function"==typeof this.options.hoverCallback&&(b=this.options.hoverCallback(a,this.options,b,d.src)),e=this.left+(a+.5)*this.width/this.data.length,[b,e]},d.prototype.drawXAxisLabel=function(a,b,c){var d;return d=this.raphael.text(a,b,c).attr("font-size",this.options.gridTextSize).attr("font-family",this.options.gridTextFamily).attr("font-weight",this.options.gridTextWeight).attr("fill",this.options.gridTextColor)},d.prototype.drawBar=function(a,b,c,d,e,f,g){var h,i;return h=Math.max.apply(Math,g),i=0===h||h>d?this.raphael.rect(a,b,c,d):this.raphael.path(this.roundedRect(a,b,c,d,g)),i.attr("fill",e).attr("fill-opacity",f).attr("stroke","none")},d.prototype.roundedRect=function(a,b,c,d,e){return null==e&&(e=[0,0,0,0]),["M",a,e[0]+b,"Q",a,b,a+e[0],b,"L",a+c-e[1],b,"Q",a+c,b,a+c,b+e[1],"L",a+c,b+d-e[2],"Q",a+c,b+d,a+c-e[2],b+d,"L",a+e[3],b+d,"Q",a,b+d,a,b+d-e[3],"Z"]},d}(b.Grid),b.Donut=function(c){function d(c){this.resizeHandler=f(this.resizeHandler,this),this.select=f(this.select,this),this.click=f(this.click,this);var d=this;if(!(this instanceof b.Donut))return new b.Donut(c);if(this.options=a.extend({},this.defaults,c),this.el="string"==typeof c.element?a(document.getElementById(c.element)):a(c.element),null===this.el||0===this.el.length)throw new Error("Graph placeholder not found.");void 0!==c.data&&0!==c.data.length&&(this.raphael=new Raphael(this.el[0]),this.options.resize&&a(window).bind("resize",function(){return null!=d.timeoutId&&window.clearTimeout(d.timeoutId),d.timeoutId=window.setTimeout(d.resizeHandler,100)}),this.setData(c.data))}return h(d,c),d.prototype.defaults={colors:["#0B62A4","#3980B5","#679DC6","#95BBD7","#B0CCE1","#095791","#095085","#083E67","#052C48","#042135"],backgroundColor:"#FFFFFF",labelColor:"#000000",formatter:b.commas,resize:!1},d.prototype.redraw=function(){var a,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x;for(this.raphael.clear(),c=this.el.width()/2,d=this.el.height()/2,n=(Math.min(c,d)-10)/3,l=0,u=this.values,o=0,r=u.length;r>o;o++)m=u[o],l+=m;for(i=5/(2*n),a=1.9999*Math.PI-i*this.data.length,g=0,f=0,this.segments=[],v=this.values,e=p=0,s=v.length;s>p;e=++p)m=v[e],j=g+i+a*(m/l),k=new b.DonutSegment(c,d,2*n,n,g,j,this.data[e].color||this.options.colors[f%this.options.colors.length],this.options.backgroundColor,f,this.raphael),k.render(),this.segments.push(k),k.on("hover",this.select),k.on("click",this.click),g=j,f+=1;for(this.text1=this.drawEmptyDonutLabel(c,d-10,this.options.labelColor,15,800),this.text2=this.drawEmptyDonutLabel(c,d+10,this.options.labelColor,14),h=Math.max.apply(Math,this.values),f=0,w=this.values,x=[],q=0,t=w.length;t>q;q++){if(m=w[q],m===h){this.select(f); -break}x.push(f+=1)}return x},d.prototype.setData=function(a){var b;return this.data=a,this.values=function(){var a,c,d,e;for(d=this.data,e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(parseFloat(b.value));return e}.call(this),this.redraw()},d.prototype.click=function(a){return this.fire("click",a,this.data[a])},d.prototype.select=function(a){var b,c,d,e,f,g;for(g=this.segments,e=0,f=g.length;f>e;e++)c=g[e],c.deselect();return d=this.segments[a],d.select(),b=this.data[a],this.setLabels(b.label,this.options.formatter(b.value,b))},d.prototype.setLabels=function(a,b){var c,d,e,f,g,h,i,j;return c=2*(Math.min(this.el.width()/2,this.el.height()/2)-10)/3,f=1.8*c,e=c/2,d=c/3,this.text1.attr({text:a,transform:""}),g=this.text1.getBBox(),h=Math.min(f/g.width,e/g.height),this.text1.attr({transform:"S"+h+","+h+","+(g.x+g.width/2)+","+(g.y+g.height)}),this.text2.attr({text:b,transform:""}),i=this.text2.getBBox(),j=Math.min(f/i.width,d/i.height),this.text2.attr({transform:"S"+j+","+j+","+(i.x+i.width/2)+","+i.y})},d.prototype.drawEmptyDonutLabel=function(a,b,c,d,e){var f;return f=this.raphael.text(a,b,"").attr("font-size",d).attr("fill",c),null!=e&&f.attr("font-weight",e),f},d.prototype.resizeHandler=function(){return this.timeoutId=null,this.raphael.setSize(this.el.width(),this.el.height()),this.redraw()},d}(b.EventEmitter),b.DonutSegment=function(a){function b(a,b,c,d,e,g,h,i,j,k){this.cx=a,this.cy=b,this.inner=c,this.outer=d,this.color=h,this.backgroundColor=i,this.index=j,this.raphael=k,this.deselect=f(this.deselect,this),this.select=f(this.select,this),this.sin_p0=Math.sin(e),this.cos_p0=Math.cos(e),this.sin_p1=Math.sin(g),this.cos_p1=Math.cos(g),this.is_long=g-e>Math.PI?1:0,this.path=this.calcSegment(this.inner+3,this.inner+this.outer-5),this.selectedPath=this.calcSegment(this.inner+3,this.inner+this.outer),this.hilight=this.calcArc(this.inner)}return h(b,a),b.prototype.calcArcPoints=function(a){return[this.cx+a*this.sin_p0,this.cy+a*this.cos_p0,this.cx+a*this.sin_p1,this.cy+a*this.cos_p1]},b.prototype.calcSegment=function(a,b){var c,d,e,f,g,h,i,j,k,l;return k=this.calcArcPoints(a),c=k[0],e=k[1],d=k[2],f=k[3],l=this.calcArcPoints(b),g=l[0],i=l[1],h=l[2],j=l[3],"M"+c+","+e+("A"+a+","+a+",0,"+this.is_long+",0,"+d+","+f)+("L"+h+","+j)+("A"+b+","+b+",0,"+this.is_long+",1,"+g+","+i)+"Z"},b.prototype.calcArc=function(a){var b,c,d,e,f;return f=this.calcArcPoints(a),b=f[0],d=f[1],c=f[2],e=f[3],"M"+b+","+d+("A"+a+","+a+",0,"+this.is_long+",0,"+c+","+e)},b.prototype.render=function(){var a=this;return this.arc=this.drawDonutArc(this.hilight,this.color),this.seg=this.drawDonutSegment(this.path,this.color,this.backgroundColor,function(){return a.fire("hover",a.index)},function(){return a.fire("click",a.index)})},b.prototype.drawDonutArc=function(a,b){return this.raphael.path(a).attr({stroke:b,"stroke-width":2,opacity:0})},b.prototype.drawDonutSegment=function(a,b,c,d,e){return this.raphael.path(a).attr({fill:b,stroke:c,"stroke-width":3}).hover(d).click(e)},b.prototype.select=function(){return this.selected?void 0:(this.seg.animate({path:this.selectedPath},150,"<>"),this.arc.animate({opacity:1},150,"<>"),this.selected=!0)},b.prototype.deselect=function(){return this.selected?(this.seg.animate({path:this.path},150,"<>"),this.arc.animate({opacity:0},150,"<>"),this.selected=!1):void 0},b}(b.EventEmitter)}).call(this); \ No newline at end of file + break}x.push(f+=1)}return x},d.prototype.setData=function(a){var b;return this.data=a,this.values=function(){var a,c,d,e;for(d=this.data,e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(parseFloat(b.value));return e}.call(this),this.redraw()},d.prototype.click=function(a){return this.fire("click",a,this.data[a])},d.prototype.select=function(a){var b,c,d,e,f,g;for(g=this.segments,e=0,f=g.length;f>e;e++)c=g[e],c.deselect();return d=this.segments[a],d.select(),b=this.data[a],this.setLabels(b.label,this.options.formatter(b.value,b))},d.prototype.setLabels=function(a,b){var c,d,e,f,g,h,i,j;return c=2*(Math.min(this.el.width()/2,this.el.height()/2)-10)/3,f=1.8*c,e=c/2,d=c/3,this.text1.attr({text:a,transform:""}),g=this.text1.getBBox(),h=Math.min(f/g.width,e/g.height),this.text1.attr({transform:"S"+h+","+h+","+(g.x+g.width/2)+","+(g.y+g.height)}),this.text2.attr({text:b,transform:""}),i=this.text2.getBBox(),j=Math.min(f/i.width,d/i.height),this.text2.attr({transform:"S"+j+","+j+","+(i.x+i.width/2)+","+i.y})},d.prototype.drawEmptyDonutLabel=function(a,b,c,d,e){var f;return f=this.raphael.text(a,b,"").attr("font-size",d).attr("fill",c),null!=e&&f.attr("font-weight",e),f},d.prototype.resizeHandler=function(){return this.timeoutId=null,this.raphael.setSize(this.el.width(),this.el.height()),this.redraw()},d}(b.EventEmitter),b.DonutSegment=function(a){function b(a,b,c,d,e,g,h,i,j,k){this.cx=a,this.cy=b,this.inner=c,this.outer=d,this.color=h,this.backgroundColor=i,this.index=j,this.raphael=k,this.deselect=f(this.deselect,this),this.select=f(this.select,this),this.sin_p0=Math.sin(e),this.cos_p0=Math.cos(e),this.sin_p1=Math.sin(g),this.cos_p1=Math.cos(g),this.is_long=g-e>Math.PI?1:0,this.path=this.calcSegment(this.inner+3,this.inner+this.outer-5),this.selectedPath=this.calcSegment(this.inner+3,this.inner+this.outer),this.hilight=this.calcArc(this.inner)}return h(b,a),b.prototype.calcArcPoints=function(a){return[this.cx+a*this.sin_p0,this.cy+a*this.cos_p0,this.cx+a*this.sin_p1,this.cy+a*this.cos_p1]},b.prototype.calcSegment=function(a,b){var c,d,e,f,g,h,i,j,k,l;return k=this.calcArcPoints(a),c=k[0],e=k[1],d=k[2],f=k[3],l=this.calcArcPoints(b),g=l[0],i=l[1],h=l[2],j=l[3],"M"+c+","+e+("A"+a+","+a+",0,"+this.is_long+",0,"+d+","+f)+("L"+h+","+j)+("A"+b+","+b+",0,"+this.is_long+",1,"+g+","+i)+"Z"},b.prototype.calcArc=function(a){var b,c,d,e,f;return f=this.calcArcPoints(a),b=f[0],d=f[1],c=f[2],e=f[3],"M"+b+","+d+("A"+a+","+a+",0,"+this.is_long+",0,"+c+","+e)},b.prototype.render=function(){var a=this;return this.arc=this.drawDonutArc(this.hilight,this.color),this.seg=this.drawDonutSegment(this.path,this.color,this.backgroundColor,function(){return a.fire("hover",a.index)},function(){return a.fire("click",a.index)})},b.prototype.drawDonutArc=function(a,b){return this.raphael.path(a).attr({stroke:b,"stroke-width":2,opacity:0})},b.prototype.drawDonutSegment=function(a,b,c,d,e){return this.raphael.path(a).attr({fill:b,stroke:c,"stroke-width":3}).hover(d).click(e)},b.prototype.select=function(){return this.selected?void 0:(this.seg.animate({path:this.selectedPath},150,"<>"),this.arc.animate({opacity:1},150,"<>"),this.selected=!0)},b.prototype.deselect=function(){return this.selected?(this.seg.animate({path:this.path},150,"<>"),this.arc.animate({opacity:0},150,"<>"),this.selected=!1):void 0},b}(b.EventEmitter)}).call(this); \ No newline at end of file diff --git a/js/lib/raphael-min.js b/js/lib/raphael-min.js index 7f63ffb90..cfbf7541d 100644 --- a/js/lib/raphael-min.js +++ b/js/lib/raphael-min.js @@ -1,11 +1,3 @@ -// ┌────────────────────────────────────────────────────────────────────┐ \\ -// │ Raphaël 2.1.2 - JavaScript Vector Library │ \\ -// ├────────────────────────────────────────────────────────────────────┤ \\ -// │ Copyright © 2008-2012 Dmitry Baranovskiy (http://raphaeljs.com) │ \\ -// │ Copyright © 2008-2012 Sencha Labs (http://sencha.com) │ \\ -// ├────────────────────────────────────────────────────────────────────┤ \\ -// │ Licensed under the MIT (http://raphaeljs.com/license.html) license.│ \\ -// └────────────────────────────────────────────────────────────────────┘ \\ -!function(a){var b,c,d="0.4.2",e="hasOwnProperty",f=/[\.\/]/,g="*",h=function(){},i=function(a,b){return a-b},j={n:{}},k=function(a,d){a=String(a);var e,f=c,g=Array.prototype.slice.call(arguments,2),h=k.listeners(a),j=0,l=[],m={},n=[],o=b;b=a,c=0;for(var p=0,q=h.length;q>p;p++)"zIndex"in h[p]&&(l.push(h[p].zIndex),h[p].zIndex<0&&(m[h[p].zIndex]=h[p]));for(l.sort(i);l[j]<0;)if(e=m[l[j++]],n.push(e.apply(d,g)),c)return c=f,n;for(p=0;q>p;p++)if(e=h[p],"zIndex"in e)if(e.zIndex==l[j]){if(n.push(e.apply(d,g)),c)break;do if(j++,e=m[l[j]],e&&n.push(e.apply(d,g)),c)break;while(e)}else m[e.zIndex]=e;else if(n.push(e.apply(d,g)),c)break;return c=f,b=o,n.length?n:null};k._events=j,k.listeners=function(a){var b,c,d,e,h,i,k,l,m=a.split(f),n=j,o=[n],p=[];for(e=0,h=m.length;h>e;e++){for(l=[],i=0,k=o.length;k>i;i++)for(n=o[i].n,c=[n[m[e]],n[g]],d=2;d--;)b=c[d],b&&(l.push(b),p=p.concat(b.f||[]));o=l}return p},k.on=function(a,b){if(a=String(a),"function"!=typeof b)return function(){};for(var c=a.split(f),d=j,e=0,g=c.length;g>e;e++)d=d.n,d=d.hasOwnProperty(c[e])&&d[c[e]]||(d[c[e]]={n:{}});for(d.f=d.f||[],e=0,g=d.f.length;g>e;e++)if(d.f[e]==b)return h;return d.f.push(b),function(a){+a==+a&&(b.zIndex=+a)}},k.f=function(a){var b=[].slice.call(arguments,1);return function(){k.apply(null,[a,null].concat(b).concat([].slice.call(arguments,0)))}},k.stop=function(){c=1},k.nt=function(a){return a?new RegExp("(?:\\.|\\/|^)"+a+"(?:\\.|\\/|$)").test(b):b},k.nts=function(){return b.split(f)},k.off=k.unbind=function(a,b){if(!a)return void(k._events=j={n:{}});var c,d,h,i,l,m,n,o=a.split(f),p=[j];for(i=0,l=o.length;l>i;i++)for(m=0;mi;i++)for(c=p[i];c.n;){if(b){if(c.f){for(m=0,n=c.f.length;n>m;m++)if(c.f[m]==b){c.f.splice(m,1);break}!c.f.length&&delete c.f}for(d in c.n)if(c.n[e](d)&&c.n[d].f){var q=c.n[d].f;for(m=0,n=q.length;n>m;m++)if(q[m]==b){q.splice(m,1);break}!q.length&&delete c.n[d].f}}else{delete c.f;for(d in c.n)c.n[e](d)&&c.n[d].f&&delete c.n[d].f}c=c.n}},k.once=function(a,b){var c=function(){return k.unbind(a,c),b.apply(this,arguments)};return k.on(a,c)},k.version=d,k.toString=function(){return"You are running Eve "+d},"undefined"!=typeof module&&module.exports?module.exports=k:"undefined"!=typeof define?define("eve",[],function(){return k}):a.eve=k}(window||this),function(a,b){"function"==typeof define&&define.amd?define(["eve"],function(c){return b(a,c)}):b(a,a.eve)}(this,function(a,b){function c(a){if(c.is(a,"function"))return u?a():b.on("raphael.DOMload",a);if(c.is(a,V))return c._engine.create[D](c,a.splice(0,3+c.is(a[0],T))).add(a);var d=Array.prototype.slice.call(arguments,0);if(c.is(d[d.length-1],"function")){var e=d.pop();return u?e.call(c._engine.create[D](c,d)):b.on("raphael.DOMload",function(){e.call(c._engine.create[D](c,d))})}return c._engine.create[D](c,arguments)}function d(a){if("function"==typeof a||Object(a)!==a)return a;var b=new a.constructor;for(var c in a)a[z](c)&&(b[c]=d(a[c]));return b}function e(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return a.push(a.splice(c,1)[0])}function f(a,b,c){function d(){var f=Array.prototype.slice.call(arguments,0),g=f.join("␀"),h=d.cache=d.cache||{},i=d.count=d.count||[];return h[z](g)?(e(i,g),c?c(h[g]):h[g]):(i.length>=1e3&&delete h[i.shift()],i.push(g),h[g]=a[D](b,f),c?c(h[g]):h[g])}return d}function g(){return this.hex}function h(a,b){for(var c=[],d=0,e=a.length;e-2*!b>d;d+=2){var f=[{x:+a[d-2],y:+a[d-1]},{x:+a[d],y:+a[d+1]},{x:+a[d+2],y:+a[d+3]},{x:+a[d+4],y:+a[d+5]}];b?d?e-4==d?f[3]={x:+a[0],y:+a[1]}:e-2==d&&(f[2]={x:+a[0],y:+a[1]},f[3]={x:+a[2],y:+a[3]}):f[0]={x:+a[e-2],y:+a[e-1]}:e-4==d?f[3]=f[2]:d||(f[0]={x:+a[d],y:+a[d+1]}),c.push(["C",(-f[0].x+6*f[1].x+f[2].x)/6,(-f[0].y+6*f[1].y+f[2].y)/6,(f[1].x+6*f[2].x-f[3].x)/6,(f[1].y+6*f[2].y-f[3].y)/6,f[2].x,f[2].y])}return c}function i(a,b,c,d,e){var f=-3*b+9*c-9*d+3*e,g=a*f+6*b-12*c+6*d;return a*g-3*b+3*c}function j(a,b,c,d,e,f,g,h,j){null==j&&(j=1),j=j>1?1:0>j?0:j;for(var k=j/2,l=12,m=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],n=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],o=0,p=0;l>p;p++){var q=k*m[p]+k,r=i(q,a,c,e,g),s=i(q,b,d,f,h),t=r*r+s*s;o+=n[p]*N.sqrt(t)}return k*o}function k(a,b,c,d,e,f,g,h,i){if(!(0>i||j(a,b,c,d,e,f,g,h)o;)m/=2,n+=(i>k?1:-1)*m,k=j(a,b,c,d,e,f,g,h,n);return n}}function l(a,b,c,d,e,f,g,h){if(!(O(a,c)O(e,g)||O(b,d)O(f,h))){var i=(a*d-b*c)*(e-g)-(a-c)*(e*h-f*g),j=(a*d-b*c)*(f-h)-(b-d)*(e*h-f*g),k=(a-c)*(f-h)-(b-d)*(e-g);if(k){var l=i/k,m=j/k,n=+l.toFixed(2),o=+m.toFixed(2);if(!(n<+P(a,c).toFixed(2)||n>+O(a,c).toFixed(2)||n<+P(e,g).toFixed(2)||n>+O(e,g).toFixed(2)||o<+P(b,d).toFixed(2)||o>+O(b,d).toFixed(2)||o<+P(f,h).toFixed(2)||o>+O(f,h).toFixed(2)))return{x:l,y:m}}}}function m(a,b,d){var e=c.bezierBBox(a),f=c.bezierBBox(b);if(!c.isBBoxIntersect(e,f))return d?0:[];for(var g=j.apply(0,a),h=j.apply(0,b),i=O(~~(g/5),1),k=O(~~(h/5),1),m=[],n=[],o={},p=d?0:[],q=0;i+1>q;q++){var r=c.findDotsAtSegment.apply(c,a.concat(q/i));m.push({x:r.x,y:r.y,t:q/i})}for(q=0;k+1>q;q++)r=c.findDotsAtSegment.apply(c,b.concat(q/k)),n.push({x:r.x,y:r.y,t:q/k});for(q=0;i>q;q++)for(var s=0;k>s;s++){var t=m[q],u=m[q+1],v=n[s],w=n[s+1],x=Q(u.x-t.x)<.001?"y":"x",y=Q(w.x-v.x)<.001?"y":"x",z=l(t.x,t.y,u.x,u.y,v.x,v.y,w.x,w.y);if(z){if(o[z.x.toFixed(4)]==z.y.toFixed(4))continue;o[z.x.toFixed(4)]=z.y.toFixed(4);var A=t.t+Q((z[x]-t[x])/(u[x]-t[x]))*(u.t-t.t),B=v.t+Q((z[y]-v[y])/(w[y]-v[y]))*(w.t-v.t);A>=0&&1.001>=A&&B>=0&&1.001>=B&&(d?p++:p.push({x:z.x,y:z.y,t1:P(A,1),t2:P(B,1)}))}}return p}function n(a,b,d){a=c._path2curve(a),b=c._path2curve(b);for(var e,f,g,h,i,j,k,l,n,o,p=d?0:[],q=0,r=a.length;r>q;q++){var s=a[q];if("M"==s[0])e=i=s[1],f=j=s[2];else{"C"==s[0]?(n=[e,f].concat(s.slice(1)),e=n[6],f=n[7]):(n=[e,f,e,f,i,j,i,j],e=i,f=j);for(var t=0,u=b.length;u>t;t++){var v=b[t];if("M"==v[0])g=k=v[1],h=l=v[2];else{"C"==v[0]?(o=[g,h].concat(v.slice(1)),g=o[6],h=o[7]):(o=[g,h,g,h,k,l,k,l],g=k,h=l);var w=m(n,o,d);if(d)p+=w;else{for(var x=0,y=w.length;y>x;x++)w[x].segment1=q,w[x].segment2=t,w[x].bez1=n,w[x].bez2=o;p=p.concat(w)}}}}}return p}function o(a,b,c,d,e,f){null!=a?(this.a=+a,this.b=+b,this.c=+c,this.d=+d,this.e=+e,this.f=+f):(this.a=1,this.b=0,this.c=0,this.d=1,this.e=0,this.f=0)}function p(){return this.x+H+this.y+H+this.width+" × "+this.height}function q(a,b,c,d,e,f){function g(a){return((l*a+k)*a+j)*a}function h(a,b){var c=i(a,b);return((o*c+n)*c+m)*c}function i(a,b){var c,d,e,f,h,i;for(e=a,i=0;8>i;i++){if(f=g(e)-a,Q(f)e)return c;if(e>d)return d;for(;d>c;){if(f=g(e),Q(f-a)f?c=e:d=e,e=(d-c)/2+c}return e}var j=3*b,k=3*(d-b)-j,l=1-j-k,m=3*c,n=3*(e-c)-m,o=1-m-n;return h(a,1/(200*f))}function r(a,b){var c=[],d={};if(this.ms=b,this.times=1,a){for(var e in a)a[z](e)&&(d[_(e)]=a[e],c.push(_(e)));c.sort(lb)}this.anim=d,this.top=c[c.length-1],this.percents=c}function s(a,d,e,f,g,h){e=_(e);var i,j,k,l,m,n,p=a.ms,r={},s={},t={};if(f)for(v=0,x=ic.length;x>v;v++){var u=ic[v];if(u.el.id==d.id&&u.anim==a){u.percent!=e?(ic.splice(v,1),k=1):j=u,d.attr(u.totalOrigin);break}}else f=+s;for(var v=0,x=a.percents.length;x>v;v++){if(a.percents[v]==e||a.percents[v]>f*a.top){e=a.percents[v],m=a.percents[v-1]||0,p=p/a.top*(e-m),l=a.percents[v+1],i=a.anim[e];break}f&&d.attr(a.anim[a.percents[v]])}if(i){if(j)j.initstatus=f,j.start=new Date-j.ms*f;else{for(var y in i)if(i[z](y)&&(db[z](y)||d.paper.customAttributes[z](y)))switch(r[y]=d.attr(y),null==r[y]&&(r[y]=cb[y]),s[y]=i[y],db[y]){case T:t[y]=(s[y]-r[y])/p;break;case"colour":r[y]=c.getRGB(r[y]);var A=c.getRGB(s[y]);t[y]={r:(A.r-r[y].r)/p,g:(A.g-r[y].g)/p,b:(A.b-r[y].b)/p};break;case"path":var B=Kb(r[y],s[y]),C=B[1];for(r[y]=B[0],t[y]=[],v=0,x=r[y].length;x>v;v++){t[y][v]=[0];for(var D=1,F=r[y][v].length;F>D;D++)t[y][v][D]=(C[v][D]-r[y][v][D])/p}break;case"transform":var G=d._,H=Pb(G[y],s[y]);if(H)for(r[y]=H.from,s[y]=H.to,t[y]=[],t[y].real=!0,v=0,x=r[y].length;x>v;v++)for(t[y][v]=[r[y][v][0]],D=1,F=r[y][v].length;F>D;D++)t[y][v][D]=(s[y][v][D]-r[y][v][D])/p;else{var K=d.matrix||new o,L={_:{transform:G.transform},getBBox:function(){return d.getBBox(1)}};r[y]=[K.a,K.b,K.c,K.d,K.e,K.f],Nb(L,s[y]),s[y]=L._.transform,t[y]=[(L.matrix.a-K.a)/p,(L.matrix.b-K.b)/p,(L.matrix.c-K.c)/p,(L.matrix.d-K.d)/p,(L.matrix.e-K.e)/p,(L.matrix.f-K.f)/p]}break;case"csv":var M=I(i[y])[J](w),N=I(r[y])[J](w);if("clip-rect"==y)for(r[y]=N,t[y]=[],v=N.length;v--;)t[y][v]=(M[v]-r[y][v])/p;s[y]=M;break;default:for(M=[][E](i[y]),N=[][E](r[y]),t[y]=[],v=d.paper.customAttributes[y].length;v--;)t[y][v]=((M[v]||0)-(N[v]||0))/p}var O=i.easing,P=c.easing_formulas[O];if(!P)if(P=I(O).match(Z),P&&5==P.length){var Q=P;P=function(a){return q(a,+Q[1],+Q[2],+Q[3],+Q[4],p)}}else P=nb;if(n=i.start||a.start||+new Date,u={anim:a,percent:e,timestamp:n,start:n+(a.del||0),status:0,initstatus:f||0,stop:!1,ms:p,easing:P,from:r,diff:t,to:s,el:d,callback:i.callback,prev:m,next:l,repeat:h||a.times,origin:d.attr(),totalOrigin:g},ic.push(u),f&&!j&&!k&&(u.stop=!0,u.start=new Date-p*f,1==ic.length))return kc();k&&(u.start=new Date-u.ms*f),1==ic.length&&jc(kc)}b("raphael.anim.start."+d.id,d,a)}}function t(a){for(var b=0;be;e++)for(i=a[e],f=1,h=i.length;h>f;f+=2)c=b.x(i[f],i[f+1]),d=b.y(i[f],i[f+1]),i[f]=c,i[f+1]=d;return a};if(c._g=A,c.type=A.win.SVGAngle||A.doc.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML","VML"==c.type){var sb,tb=A.doc.createElement("div");if(tb.innerHTML='',sb=tb.firstChild,sb.style.behavior="url(#default#VML)",!sb||"object"!=typeof sb.adj)return c.type=G;tb=null}c.svg=!(c.vml="VML"==c.type),c._Paper=C,c.fn=v=C.prototype=c.prototype,c._id=0,c._oid=0,c.is=function(a,b){return b=M.call(b),"finite"==b?!Y[z](+a):"array"==b?a instanceof Array:"null"==b&&null===a||b==typeof a&&null!==a||"object"==b&&a===Object(a)||"array"==b&&Array.isArray&&Array.isArray(a)||W.call(a).slice(8,-1).toLowerCase()==b},c.angle=function(a,b,d,e,f,g){if(null==f){var h=a-d,i=b-e;return h||i?(180+180*N.atan2(-i,-h)/S+360)%360:0}return c.angle(a,b,f,g)-c.angle(d,e,f,g)},c.rad=function(a){return a%360*S/180},c.deg=function(a){return 180*a/S%360},c.snapTo=function(a,b,d){if(d=c.is(d,"finite")?d:10,c.is(a,V)){for(var e=a.length;e--;)if(Q(a[e]-b)<=d)return a[e]}else{a=+a;var f=b%a;if(d>f)return b-f;if(f>a-d)return b-f+a}return b};c.createUUID=function(a,b){return function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(a,b).toUpperCase()}}(/[xy]/g,function(a){var b=16*N.random()|0,c="x"==a?b:3&b|8;return c.toString(16)});c.setWindow=function(a){b("raphael.setWindow",c,A.win,a),A.win=a,A.doc=A.win.document,c._engine.initWin&&c._engine.initWin(A.win)};var ub=function(a){if(c.vml){var b,d=/^\s+|\s+$/g;try{var e=new ActiveXObject("htmlfile");e.write(""),e.close(),b=e.body}catch(g){b=createPopup().document.body}var h=b.createTextRange();ub=f(function(a){try{b.style.color=I(a).replace(d,G);var c=h.queryCommandValue("ForeColor");return c=(255&c)<<16|65280&c|(16711680&c)>>>16,"#"+("000000"+c.toString(16)).slice(-6)}catch(e){return"none"}})}else{var i=A.doc.createElement("i");i.title="Raphaël Colour Picker",i.style.display="none",A.doc.body.appendChild(i),ub=f(function(a){return i.style.color=a,A.doc.defaultView.getComputedStyle(i,G).getPropertyValue("color")})}return ub(a)},vb=function(){return"hsb("+[this.h,this.s,this.b]+")"},wb=function(){return"hsl("+[this.h,this.s,this.l]+")"},xb=function(){return this.hex},yb=function(a,b,d){if(null==b&&c.is(a,"object")&&"r"in a&&"g"in a&&"b"in a&&(d=a.b,b=a.g,a=a.r),null==b&&c.is(a,U)){var e=c.getRGB(a);a=e.r,b=e.g,d=e.b}return(a>1||b>1||d>1)&&(a/=255,b/=255,d/=255),[a,b,d]},zb=function(a,b,d,e){a*=255,b*=255,d*=255;var f={r:a,g:b,b:d,hex:c.rgb(a,b,d),toString:xb};return c.is(e,"finite")&&(f.opacity=e),f};c.color=function(a){var b;return c.is(a,"object")&&"h"in a&&"s"in a&&"b"in a?(b=c.hsb2rgb(a),a.r=b.r,a.g=b.g,a.b=b.b,a.hex=b.hex):c.is(a,"object")&&"h"in a&&"s"in a&&"l"in a?(b=c.hsl2rgb(a),a.r=b.r,a.g=b.g,a.b=b.b,a.hex=b.hex):(c.is(a,"string")&&(a=c.getRGB(a)),c.is(a,"object")&&"r"in a&&"g"in a&&"b"in a?(b=c.rgb2hsl(a),a.h=b.h,a.s=b.s,a.l=b.l,b=c.rgb2hsb(a),a.v=b.b):(a={hex:"none"},a.r=a.g=a.b=a.h=a.s=a.v=a.l=-1)),a.toString=xb,a},c.hsb2rgb=function(a,b,c,d){this.is(a,"object")&&"h"in a&&"s"in a&&"b"in a&&(c=a.b,b=a.s,a=a.h,d=a.o),a*=360;var e,f,g,h,i;return a=a%360/60,i=c*b,h=i*(1-Q(a%2-1)),e=f=g=c-i,a=~~a,e+=[i,h,0,0,h,i][a],f+=[h,i,i,h,0,0][a],g+=[0,0,h,i,i,h][a],zb(e,f,g,d)},c.hsl2rgb=function(a,b,c,d){this.is(a,"object")&&"h"in a&&"s"in a&&"l"in a&&(c=a.l,b=a.s,a=a.h),(a>1||b>1||c>1)&&(a/=360,b/=100,c/=100),a*=360;var e,f,g,h,i;return a=a%360/60,i=2*b*(.5>c?c:1-c),h=i*(1-Q(a%2-1)),e=f=g=c-i/2,a=~~a,e+=[i,h,0,0,h,i][a],f+=[h,i,i,h,0,0][a],g+=[0,0,h,i,i,h][a],zb(e,f,g,d)},c.rgb2hsb=function(a,b,c){c=yb(a,b,c),a=c[0],b=c[1],c=c[2];var d,e,f,g;return f=O(a,b,c),g=f-P(a,b,c),d=0==g?null:f==a?(b-c)/g:f==b?(c-a)/g+2:(a-b)/g+4,d=(d+360)%6*60/360,e=0==g?0:g/f,{h:d,s:e,b:f,toString:vb}},c.rgb2hsl=function(a,b,c){c=yb(a,b,c),a=c[0],b=c[1],c=c[2];var d,e,f,g,h,i;return g=O(a,b,c),h=P(a,b,c),i=g-h,d=0==i?null:g==a?(b-c)/i:g==b?(c-a)/i+2:(a-b)/i+4,d=(d+360)%6*60/360,f=(g+h)/2,e=0==i?0:.5>f?i/(2*f):i/(2-2*f),{h:d,s:e,l:f,toString:wb}},c._path2string=function(){return this.join(",").replace(gb,"$1")};c._preload=function(a,b){var c=A.doc.createElement("img");c.style.cssText="position:absolute;left:-9999em;top:-9999em",c.onload=function(){b.call(this),this.onload=null,A.doc.body.removeChild(this)},c.onerror=function(){A.doc.body.removeChild(this)},A.doc.body.appendChild(c),c.src=a};c.getRGB=f(function(a){if(!a||(a=I(a)).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:g};if("none"==a)return{r:-1,g:-1,b:-1,hex:"none",toString:g};!(fb[z](a.toLowerCase().substring(0,2))||"#"==a.charAt())&&(a=ub(a));var b,d,e,f,h,i,j=a.match(X);return j?(j[2]&&(e=ab(j[2].substring(5),16),d=ab(j[2].substring(3,5),16),b=ab(j[2].substring(1,3),16)),j[3]&&(e=ab((h=j[3].charAt(3))+h,16),d=ab((h=j[3].charAt(2))+h,16),b=ab((h=j[3].charAt(1))+h,16)),j[4]&&(i=j[4][J](eb),b=_(i[0]),"%"==i[0].slice(-1)&&(b*=2.55),d=_(i[1]),"%"==i[1].slice(-1)&&(d*=2.55),e=_(i[2]),"%"==i[2].slice(-1)&&(e*=2.55),"rgba"==j[1].toLowerCase().slice(0,4)&&(f=_(i[3])),i[3]&&"%"==i[3].slice(-1)&&(f/=100)),j[5]?(i=j[5][J](eb),b=_(i[0]),"%"==i[0].slice(-1)&&(b*=2.55),d=_(i[1]),"%"==i[1].slice(-1)&&(d*=2.55),e=_(i[2]),"%"==i[2].slice(-1)&&(e*=2.55),("deg"==i[0].slice(-3)||"°"==i[0].slice(-1))&&(b/=360),"hsba"==j[1].toLowerCase().slice(0,4)&&(f=_(i[3])),i[3]&&"%"==i[3].slice(-1)&&(f/=100),c.hsb2rgb(b,d,e,f)):j[6]?(i=j[6][J](eb),b=_(i[0]),"%"==i[0].slice(-1)&&(b*=2.55),d=_(i[1]),"%"==i[1].slice(-1)&&(d*=2.55),e=_(i[2]),"%"==i[2].slice(-1)&&(e*=2.55),("deg"==i[0].slice(-3)||"°"==i[0].slice(-1))&&(b/=360),"hsla"==j[1].toLowerCase().slice(0,4)&&(f=_(i[3])),i[3]&&"%"==i[3].slice(-1)&&(f/=100),c.hsl2rgb(b,d,e,f)):(j={r:b,g:d,b:e,toString:g},j.hex="#"+(16777216|e|d<<8|b<<16).toString(16).slice(1),c.is(f,"finite")&&(j.opacity=f),j)):{r:-1,g:-1,b:-1,hex:"none",error:1,toString:g}},c),c.hsb=f(function(a,b,d){return c.hsb2rgb(a,b,d).hex}),c.hsl=f(function(a,b,d){return c.hsl2rgb(a,b,d).hex}),c.rgb=f(function(a,b,c){return"#"+(16777216|c|b<<8|a<<16).toString(16).slice(1)}),c.getColor=function(a){var b=this.getColor.start=this.getColor.start||{h:0,s:1,b:a||.75},c=this.hsb2rgb(b.h,b.s,b.b);return b.h+=.075,b.h>1&&(b.h=0,b.s-=.2,b.s<=0&&(this.getColor.start={h:0,s:1,b:b.b})),c.hex},c.getColor.reset=function(){delete this.start},c.parsePathString=function(a){if(!a)return null;var b=Ab(a);if(b.arr)return Cb(b.arr);var d={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},e=[];return c.is(a,V)&&c.is(a[0],V)&&(e=Cb(a)),e.length||I(a).replace(hb,function(a,b,c){var f=[],g=b.toLowerCase();if(c.replace(jb,function(a,b){b&&f.push(+b)}),"m"==g&&f.length>2&&(e.push([b][E](f.splice(0,2))),g="l",b="m"==b?"l":"L"),"r"==g)e.push([b][E](f));else for(;f.length>=d[g]&&(e.push([b][E](f.splice(0,d[g]))),d[g]););}),e.toString=c._path2string,b.arr=Cb(e),e},c.parseTransformString=f(function(a){if(!a)return null;var b=[];return c.is(a,V)&&c.is(a[0],V)&&(b=Cb(a)),b.length||I(a).replace(ib,function(a,c,d){{var e=[];M.call(c)}d.replace(jb,function(a,b){b&&e.push(+b)}),b.push([c][E](e))}),b.toString=c._path2string,b});var Ab=function(a){var b=Ab.ps=Ab.ps||{};return b[a]?b[a].sleep=100:b[a]={sleep:100},setTimeout(function(){for(var c in b)b[z](c)&&c!=a&&(b[c].sleep--,!b[c].sleep&&delete b[c])}),b[a]};c.findDotsAtSegment=function(a,b,c,d,e,f,g,h,i){var j=1-i,k=R(j,3),l=R(j,2),m=i*i,n=m*i,o=k*a+3*l*i*c+3*j*i*i*e+n*g,p=k*b+3*l*i*d+3*j*i*i*f+n*h,q=a+2*i*(c-a)+m*(e-2*c+a),r=b+2*i*(d-b)+m*(f-2*d+b),s=c+2*i*(e-c)+m*(g-2*e+c),t=d+2*i*(f-d)+m*(h-2*f+d),u=j*a+i*c,v=j*b+i*d,w=j*e+i*g,x=j*f+i*h,y=90-180*N.atan2(q-s,r-t)/S;return(q>s||t>r)&&(y+=180),{x:o,y:p,m:{x:q,y:r},n:{x:s,y:t},start:{x:u,y:v},end:{x:w,y:x},alpha:y}},c.bezierBBox=function(a,b,d,e,f,g,h,i){c.is(a,"array")||(a=[a,b,d,e,f,g,h,i]);var j=Jb.apply(null,a);return{x:j.min.x,y:j.min.y,x2:j.max.x,y2:j.max.y,width:j.max.x-j.min.x,height:j.max.y-j.min.y}},c.isPointInsideBBox=function(a,b,c){return b>=a.x&&b<=a.x2&&c>=a.y&&c<=a.y2},c.isBBoxIntersect=function(a,b){var d=c.isPointInsideBBox;return d(b,a.x,a.y)||d(b,a.x2,a.y)||d(b,a.x,a.y2)||d(b,a.x2,a.y2)||d(a,b.x,b.y)||d(a,b.x2,b.y)||d(a,b.x,b.y2)||d(a,b.x2,b.y2)||(a.xb.x||b.xa.x)&&(a.yb.y||b.ya.y)},c.pathIntersection=function(a,b){return n(a,b)},c.pathIntersectionNumber=function(a,b){return n(a,b,1)},c.isPointInsidePath=function(a,b,d){var e=c.pathBBox(a);return c.isPointInsideBBox(e,b,d)&&n(a,[["M",b,d],["H",e.x2+10]],1)%2==1},c._removedFactory=function(a){return function(){b("raphael.log",null,"Raphaël: you are calling to method “"+a+"” of removed object",a)}};var Bb=c.pathBBox=function(a){var b=Ab(a);if(b.bbox)return d(b.bbox);if(!a)return{x:0,y:0,width:0,height:0,x2:0,y2:0};a=Kb(a);for(var c,e=0,f=0,g=[],h=[],i=0,j=a.length;j>i;i++)if(c=a[i],"M"==c[0])e=c[1],f=c[2],g.push(e),h.push(f);else{var k=Jb(e,f,c[1],c[2],c[3],c[4],c[5],c[6]);g=g[E](k.min.x,k.max.x),h=h[E](k.min.y,k.max.y),e=c[5],f=c[6]}var l=P[D](0,g),m=P[D](0,h),n=O[D](0,g),o=O[D](0,h),p=n-l,q=o-m,r={x:l,y:m,x2:n,y2:o,width:p,height:q,cx:l+p/2,cy:m+q/2};return b.bbox=d(r),r},Cb=function(a){var b=d(a);return b.toString=c._path2string,b},Db=c._pathToRelative=function(a){var b=Ab(a);if(b.rel)return Cb(b.rel);c.is(a,V)&&c.is(a&&a[0],V)||(a=c.parsePathString(a));var d=[],e=0,f=0,g=0,h=0,i=0;"M"==a[0][0]&&(e=a[0][1],f=a[0][2],g=e,h=f,i++,d.push(["M",e,f]));for(var j=i,k=a.length;k>j;j++){var l=d[j]=[],m=a[j];if(m[0]!=M.call(m[0]))switch(l[0]=M.call(m[0]),l[0]){case"a":l[1]=m[1],l[2]=m[2],l[3]=m[3],l[4]=m[4],l[5]=m[5],l[6]=+(m[6]-e).toFixed(3),l[7]=+(m[7]-f).toFixed(3);break;case"v":l[1]=+(m[1]-f).toFixed(3);break;case"m":g=m[1],h=m[2];default:for(var n=1,o=m.length;o>n;n++)l[n]=+(m[n]-(n%2?e:f)).toFixed(3)}else{l=d[j]=[],"m"==m[0]&&(g=m[1]+e,h=m[2]+f);for(var p=0,q=m.length;q>p;p++)d[j][p]=m[p]}var r=d[j].length;switch(d[j][0]){case"z":e=g,f=h;break;case"h":e+=+d[j][r-1];break;case"v":f+=+d[j][r-1];break;default:e+=+d[j][r-2],f+=+d[j][r-1]}}return d.toString=c._path2string,b.rel=Cb(d),d},Eb=c._pathToAbsolute=function(a){var b=Ab(a);if(b.abs)return Cb(b.abs);if(c.is(a,V)&&c.is(a&&a[0],V)||(a=c.parsePathString(a)),!a||!a.length)return[["M",0,0]];var d=[],e=0,f=0,g=0,i=0,j=0;"M"==a[0][0]&&(e=+a[0][1],f=+a[0][2],g=e,i=f,j++,d[0]=["M",e,f]);for(var k,l,m=3==a.length&&"M"==a[0][0]&&"R"==a[1][0].toUpperCase()&&"Z"==a[2][0].toUpperCase(),n=j,o=a.length;o>n;n++){if(d.push(k=[]),l=a[n],l[0]!=bb.call(l[0]))switch(k[0]=bb.call(l[0]),k[0]){case"A":k[1]=l[1],k[2]=l[2],k[3]=l[3],k[4]=l[4],k[5]=l[5],k[6]=+(l[6]+e),k[7]=+(l[7]+f);break;case"V":k[1]=+l[1]+f;break;case"H":k[1]=+l[1]+e;break;case"R":for(var p=[e,f][E](l.slice(1)),q=2,r=p.length;r>q;q++)p[q]=+p[q]+e,p[++q]=+p[q]+f;d.pop(),d=d[E](h(p,m));break;case"M":g=+l[1]+e,i=+l[2]+f;default:for(q=1,r=l.length;r>q;q++)k[q]=+l[q]+(q%2?e:f)}else if("R"==l[0])p=[e,f][E](l.slice(1)),d.pop(),d=d[E](h(p,m)),k=["R"][E](l.slice(-2));else for(var s=0,t=l.length;t>s;s++)k[s]=l[s];switch(k[0]){case"Z":e=g,f=i;break;case"H":e=k[1];break;case"V":f=k[1];break;case"M":g=k[k.length-2],i=k[k.length-1];default:e=k[k.length-2],f=k[k.length-1]}}return d.toString=c._path2string,b.abs=Cb(d),d},Fb=function(a,b,c,d){return[a,b,c,d,c,d]},Gb=function(a,b,c,d,e,f){var g=1/3,h=2/3;return[g*a+h*c,g*b+h*d,g*e+h*c,g*f+h*d,e,f]},Hb=function(a,b,c,d,e,g,h,i,j,k){var l,m=120*S/180,n=S/180*(+e||0),o=[],p=f(function(a,b,c){var d=a*N.cos(c)-b*N.sin(c),e=a*N.sin(c)+b*N.cos(c);return{x:d,y:e}});if(k)y=k[0],z=k[1],w=k[2],x=k[3];else{l=p(a,b,-n),a=l.x,b=l.y,l=p(i,j,-n),i=l.x,j=l.y;var q=(N.cos(S/180*e),N.sin(S/180*e),(a-i)/2),r=(b-j)/2,s=q*q/(c*c)+r*r/(d*d);s>1&&(s=N.sqrt(s),c=s*c,d=s*d);var t=c*c,u=d*d,v=(g==h?-1:1)*N.sqrt(Q((t*u-t*r*r-u*q*q)/(t*r*r+u*q*q))),w=v*c*r/d+(a+i)/2,x=v*-d*q/c+(b+j)/2,y=N.asin(((b-x)/d).toFixed(9)),z=N.asin(((j-x)/d).toFixed(9));y=w>a?S-y:y,z=w>i?S-z:z,0>y&&(y=2*S+y),0>z&&(z=2*S+z),h&&y>z&&(y-=2*S),!h&&z>y&&(z-=2*S)}var A=z-y;if(Q(A)>m){var B=z,C=i,D=j;z=y+m*(h&&z>y?1:-1),i=w+c*N.cos(z),j=x+d*N.sin(z),o=Hb(i,j,c,d,e,0,h,C,D,[z,B,w,x])}A=z-y;var F=N.cos(y),G=N.sin(y),H=N.cos(z),I=N.sin(z),K=N.tan(A/4),L=4/3*c*K,M=4/3*d*K,O=[a,b],P=[a+L*G,b-M*F],R=[i+L*I,j-M*H],T=[i,j];if(P[0]=2*O[0]-P[0],P[1]=2*O[1]-P[1],k)return[P,R,T][E](o);o=[P,R,T][E](o).join()[J](",");for(var U=[],V=0,W=o.length;W>V;V++)U[V]=V%2?p(o[V-1],o[V],n).y:p(o[V],o[V+1],n).x;return U},Ib=function(a,b,c,d,e,f,g,h,i){var j=1-i;return{x:R(j,3)*a+3*R(j,2)*i*c+3*j*i*i*e+R(i,3)*g,y:R(j,3)*b+3*R(j,2)*i*d+3*j*i*i*f+R(i,3)*h}},Jb=f(function(a,b,c,d,e,f,g,h){var i,j=e-2*c+a-(g-2*e+c),k=2*(c-a)-2*(e-c),l=a-c,m=(-k+N.sqrt(k*k-4*j*l))/2/j,n=(-k-N.sqrt(k*k-4*j*l))/2/j,o=[b,h],p=[a,g];return Q(m)>"1e12"&&(m=.5),Q(n)>"1e12"&&(n=.5),m>0&&1>m&&(i=Ib(a,b,c,d,e,f,g,h,m),p.push(i.x),o.push(i.y)),n>0&&1>n&&(i=Ib(a,b,c,d,e,f,g,h,n),p.push(i.x),o.push(i.y)),j=f-2*d+b-(h-2*f+d),k=2*(d-b)-2*(f-d),l=b-d,m=(-k+N.sqrt(k*k-4*j*l))/2/j,n=(-k-N.sqrt(k*k-4*j*l))/2/j,Q(m)>"1e12"&&(m=.5),Q(n)>"1e12"&&(n=.5),m>0&&1>m&&(i=Ib(a,b,c,d,e,f,g,h,m),p.push(i.x),o.push(i.y)),n>0&&1>n&&(i=Ib(a,b,c,d,e,f,g,h,n),p.push(i.x),o.push(i.y)),{min:{x:P[D](0,p),y:P[D](0,o)},max:{x:O[D](0,p),y:O[D](0,o)}}}),Kb=c._path2curve=f(function(a,b){var c=!b&&Ab(a);if(!b&&c.curve)return Cb(c.curve);for(var d=Eb(a),e=b&&Eb(b),f={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},g={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},h=(function(a,b,c){var d,e,f={T:1,Q:1};if(!a)return["C",b.x,b.y,b.x,b.y,b.x,b.y];switch(!(a[0]in f)&&(b.qx=b.qy=null),a[0]){case"M":b.X=a[1],b.Y=a[2];break;case"A":a=["C"][E](Hb[D](0,[b.x,b.y][E](a.slice(1))));break;case"S":"C"==c||"S"==c?(d=2*b.x-b.bx,e=2*b.y-b.by):(d=b.x,e=b.y),a=["C",d,e][E](a.slice(1));break;case"T":"Q"==c||"T"==c?(b.qx=2*b.x-b.qx,b.qy=2*b.y-b.qy):(b.qx=b.x,b.qy=b.y),a=["C"][E](Gb(b.x,b.y,b.qx,b.qy,a[1],a[2]));break;case"Q":b.qx=a[1],b.qy=a[2],a=["C"][E](Gb(b.x,b.y,a[1],a[2],a[3],a[4]));break;case"L":a=["C"][E](Fb(b.x,b.y,a[1],a[2]));break;case"H":a=["C"][E](Fb(b.x,b.y,a[1],b.y));break;case"V":a=["C"][E](Fb(b.x,b.y,b.x,a[1]));break;case"Z":a=["C"][E](Fb(b.x,b.y,b.X,b.Y))}return a}),i=function(a,b){if(a[b].length>7){a[b].shift();for(var c=a[b];c.length;)a.splice(b++,0,["C"][E](c.splice(0,6)));a.splice(b,1),l=O(d.length,e&&e.length||0)}},j=function(a,b,c,f,g){a&&b&&"M"==a[g][0]&&"M"!=b[g][0]&&(b.splice(g,0,["M",f.x,f.y]),c.bx=0,c.by=0,c.x=a[g][1],c.y=a[g][2],l=O(d.length,e&&e.length||0))},k=0,l=O(d.length,e&&e.length||0);l>k;k++){d[k]=h(d[k],f),i(d,k),e&&(e[k]=h(e[k],g)),e&&i(e,k),j(d,e,f,g,k),j(e,d,g,f,k);var m=d[k],n=e&&e[k],o=m.length,p=e&&n.length;f.x=m[o-2],f.y=m[o-1],f.bx=_(m[o-4])||f.x,f.by=_(m[o-3])||f.y,g.bx=e&&(_(n[p-4])||g.x),g.by=e&&(_(n[p-3])||g.y),g.x=e&&n[p-2],g.y=e&&n[p-1]}return e||(c.curve=Cb(d)),e?[d,e]:d},null,Cb),Lb=(c._parseDots=f(function(a){for(var b=[],d=0,e=a.length;e>d;d++){var f={},g=a[d].match(/^([^:]*):?([\d\.]*)/);if(f.color=c.getRGB(g[1]),f.color.error)return null;f.color=f.color.hex,g[2]&&(f.offset=g[2]+"%"),b.push(f)}for(d=1,e=b.length-1;e>d;d++)if(!b[d].offset){for(var h=_(b[d-1].offset||0),i=0,j=d+1;e>j;j++)if(b[j].offset){i=b[j].offset;break}i||(i=100,j=e),i=_(i);for(var k=(i-h)/(j-d+1);j>d;d++)h+=k,b[d].offset=h+"%"}return b}),c._tear=function(a,b){a==b.top&&(b.top=a.prev),a==b.bottom&&(b.bottom=a.next),a.next&&(a.next.prev=a.prev),a.prev&&(a.prev.next=a.next)}),Mb=(c._tofront=function(a,b){b.top!==a&&(Lb(a,b),a.next=null,a.prev=b.top,b.top.next=a,b.top=a)},c._toback=function(a,b){b.bottom!==a&&(Lb(a,b),a.next=b.bottom,a.prev=null,b.bottom.prev=a,b.bottom=a)},c._insertafter=function(a,b,c){Lb(a,c),b==c.top&&(c.top=a),b.next&&(b.next.prev=a),a.next=b.next,a.prev=b,b.next=a},c._insertbefore=function(a,b,c){Lb(a,c),b==c.bottom&&(c.bottom=a),b.prev&&(b.prev.next=a),a.prev=b.prev,b.prev=a,a.next=b},c.toMatrix=function(a,b){var c=Bb(a),d={_:{transform:G},getBBox:function(){return c}};return Nb(d,b),d.matrix}),Nb=(c.transformPath=function(a,b){return rb(a,Mb(a,b))},c._extractTransform=function(a,b){if(null==b)return a._.transform;b=I(b).replace(/\.{3}|\u2026/g,a._.transform||G);var d=c.parseTransformString(b),e=0,f=0,g=0,h=1,i=1,j=a._,k=new o;if(j.transform=d||[],d)for(var l=0,m=d.length;m>l;l++){var n,p,q,r,s,t=d[l],u=t.length,v=I(t[0]).toLowerCase(),w=t[0]!=v,x=w?k.invert():0;"t"==v&&3==u?w?(n=x.x(0,0),p=x.y(0,0),q=x.x(t[1],t[2]),r=x.y(t[1],t[2]),k.translate(q-n,r-p)):k.translate(t[1],t[2]):"r"==v?2==u?(s=s||a.getBBox(1),k.rotate(t[1],s.x+s.width/2,s.y+s.height/2),e+=t[1]):4==u&&(w?(q=x.x(t[2],t[3]),r=x.y(t[2],t[3]),k.rotate(t[1],q,r)):k.rotate(t[1],t[2],t[3]),e+=t[1]):"s"==v?2==u||3==u?(s=s||a.getBBox(1),k.scale(t[1],t[u-1],s.x+s.width/2,s.y+s.height/2),h*=t[1],i*=t[u-1]):5==u&&(w?(q=x.x(t[3],t[4]),r=x.y(t[3],t[4]),k.scale(t[1],t[2],q,r)):k.scale(t[1],t[2],t[3],t[4]),h*=t[1],i*=t[2]):"m"==v&&7==u&&k.add(t[1],t[2],t[3],t[4],t[5],t[6]),j.dirtyT=1,a.matrix=k}a.matrix=k,j.sx=h,j.sy=i,j.deg=e,j.dx=f=k.e,j.dy=g=k.f,1==h&&1==i&&!e&&j.bbox?(j.bbox.x+=+f,j.bbox.y+=+g):j.dirtyT=1}),Ob=function(a){var b=a[0];switch(b.toLowerCase()){case"t":return[b,0,0];case"m":return[b,1,0,0,1,0,0];case"r":return 4==a.length?[b,0,a[2],a[3]]:[b,0];case"s":return 5==a.length?[b,1,1,a[3],a[4]]:3==a.length?[b,1,1]:[b,1]}},Pb=c._equaliseTransform=function(a,b){b=I(b).replace(/\.{3}|\u2026/g,a),a=c.parseTransformString(a)||[],b=c.parseTransformString(b)||[];for(var d,e,f,g,h=O(a.length,b.length),i=[],j=[],k=0;h>k;k++){if(f=a[k]||Ob(b[k]),g=b[k]||Ob(f),f[0]!=g[0]||"r"==f[0].toLowerCase()&&(f[2]!=g[2]||f[3]!=g[3])||"s"==f[0].toLowerCase()&&(f[3]!=g[3]||f[4]!=g[4]))return;for(i[k]=[],j[k]=[],d=0,e=O(f.length,g.length);e>d;d++)d in f&&(i[k][d]=f[d]),d in g&&(j[k][d]=g[d]) -}return{from:i,to:j}};c._getContainer=function(a,b,d,e){var f;return f=null!=e||c.is(a,"object")?a:A.doc.getElementById(a),null!=f?f.tagName?null==b?{container:f,width:f.style.pixelWidth||f.offsetWidth,height:f.style.pixelHeight||f.offsetHeight}:{container:f,width:b,height:d}:{container:1,x:a,y:b,width:d,height:e}:void 0},c.pathToRelative=Db,c._engine={},c.path2curve=Kb,c.matrix=function(a,b,c,d,e,f){return new o(a,b,c,d,e,f)},function(a){function b(a){return a[0]*a[0]+a[1]*a[1]}function d(a){var c=N.sqrt(b(a));a[0]&&(a[0]/=c),a[1]&&(a[1]/=c)}a.add=function(a,b,c,d,e,f){var g,h,i,j,k=[[],[],[]],l=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1]],m=[[a,c,e],[b,d,f],[0,0,1]];for(a&&a instanceof o&&(m=[[a.a,a.c,a.e],[a.b,a.d,a.f],[0,0,1]]),g=0;3>g;g++)for(h=0;3>h;h++){for(j=0,i=0;3>i;i++)j+=l[g][i]*m[i][h];k[g][h]=j}this.a=k[0][0],this.b=k[1][0],this.c=k[0][1],this.d=k[1][1],this.e=k[0][2],this.f=k[1][2]},a.invert=function(){var a=this,b=a.a*a.d-a.b*a.c;return new o(a.d/b,-a.b/b,-a.c/b,a.a/b,(a.c*a.f-a.d*a.e)/b,(a.b*a.e-a.a*a.f)/b)},a.clone=function(){return new o(this.a,this.b,this.c,this.d,this.e,this.f)},a.translate=function(a,b){this.add(1,0,0,1,a,b)},a.scale=function(a,b,c,d){null==b&&(b=a),(c||d)&&this.add(1,0,0,1,c,d),this.add(a,0,0,b,0,0),(c||d)&&this.add(1,0,0,1,-c,-d)},a.rotate=function(a,b,d){a=c.rad(a),b=b||0,d=d||0;var e=+N.cos(a).toFixed(9),f=+N.sin(a).toFixed(9);this.add(e,f,-f,e,b,d),this.add(1,0,0,1,-b,-d)},a.x=function(a,b){return a*this.a+b*this.c+this.e},a.y=function(a,b){return a*this.b+b*this.d+this.f},a.get=function(a){return+this[I.fromCharCode(97+a)].toFixed(4)},a.toString=function(){return c.svg?"matrix("+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+")":[this.get(0),this.get(2),this.get(1),this.get(3),0,0].join()},a.toFilter=function(){return"progid:DXImageTransform.Microsoft.Matrix(M11="+this.get(0)+", M12="+this.get(2)+", M21="+this.get(1)+", M22="+this.get(3)+", Dx="+this.get(4)+", Dy="+this.get(5)+", sizingmethod='auto expand')"},a.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]},a.split=function(){var a={};a.dx=this.e,a.dy=this.f;var e=[[this.a,this.c],[this.b,this.d]];a.scalex=N.sqrt(b(e[0])),d(e[0]),a.shear=e[0][0]*e[1][0]+e[0][1]*e[1][1],e[1]=[e[1][0]-e[0][0]*a.shear,e[1][1]-e[0][1]*a.shear],a.scaley=N.sqrt(b(e[1])),d(e[1]),a.shear/=a.scaley;var f=-e[0][1],g=e[1][1];return 0>g?(a.rotate=c.deg(N.acos(g)),0>f&&(a.rotate=360-a.rotate)):a.rotate=c.deg(N.asin(f)),a.isSimple=!(+a.shear.toFixed(9)||a.scalex.toFixed(9)!=a.scaley.toFixed(9)&&a.rotate),a.isSuperSimple=!+a.shear.toFixed(9)&&a.scalex.toFixed(9)==a.scaley.toFixed(9)&&!a.rotate,a.noRotation=!+a.shear.toFixed(9)&&!a.rotate,a},a.toTransformString=function(a){var b=a||this[J]();return b.isSimple?(b.scalex=+b.scalex.toFixed(4),b.scaley=+b.scaley.toFixed(4),b.rotate=+b.rotate.toFixed(4),(b.dx||b.dy?"t"+[b.dx,b.dy]:G)+(1!=b.scalex||1!=b.scaley?"s"+[b.scalex,b.scaley,0,0]:G)+(b.rotate?"r"+[b.rotate,0,0]:G)):"m"+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)]}}(o.prototype);var Qb=navigator.userAgent.match(/Version\/(.*?)\s/)||navigator.userAgent.match(/Chrome\/(\d+)/);v.safari="Apple Computer, Inc."==navigator.vendor&&(Qb&&Qb[1]<4||"iP"==navigator.platform.slice(0,2))||"Google Inc."==navigator.vendor&&Qb&&Qb[1]<8?function(){var a=this.rect(-99,-99,this.width+99,this.height+99).attr({stroke:"none"});setTimeout(function(){a.remove()})}:mb;for(var Rb=function(){this.returnValue=!1},Sb=function(){return this.originalEvent.preventDefault()},Tb=function(){this.cancelBubble=!0},Ub=function(){return this.originalEvent.stopPropagation()},Vb=function(a){var b=A.doc.documentElement.scrollTop||A.doc.body.scrollTop,c=A.doc.documentElement.scrollLeft||A.doc.body.scrollLeft;return{x:a.clientX+c,y:a.clientY+b}},Wb=function(){return A.doc.addEventListener?function(a,b,c,d){var e=function(a){var b=Vb(a);return c.call(d,a,b.x,b.y)};if(a.addEventListener(b,e,!1),F&&L[b]){var f=function(b){for(var e=Vb(b),f=b,g=0,h=b.targetTouches&&b.targetTouches.length;h>g;g++)if(b.targetTouches[g].target==a){b=b.targetTouches[g],b.originalEvent=f,b.preventDefault=Sb,b.stopPropagation=Ub;break}return c.call(d,b,e.x,e.y)};a.addEventListener(L[b],f,!1)}return function(){return a.removeEventListener(b,e,!1),F&&L[b]&&a.removeEventListener(L[b],e,!1),!0}}:A.doc.attachEvent?function(a,b,c,d){var e=function(a){a=a||A.win.event;var b=A.doc.documentElement.scrollTop||A.doc.body.scrollTop,e=A.doc.documentElement.scrollLeft||A.doc.body.scrollLeft,f=a.clientX+e,g=a.clientY+b;return a.preventDefault=a.preventDefault||Rb,a.stopPropagation=a.stopPropagation||Tb,c.call(d,a,f,g)};a.attachEvent("on"+b,e);var f=function(){return a.detachEvent("on"+b,e),!0};return f}:void 0}(),Xb=[],Yb=function(a){for(var c,d=a.clientX,e=a.clientY,f=A.doc.documentElement.scrollTop||A.doc.body.scrollTop,g=A.doc.documentElement.scrollLeft||A.doc.body.scrollLeft,h=Xb.length;h--;){if(c=Xb[h],F&&a.touches){for(var i,j=a.touches.length;j--;)if(i=a.touches[j],i.identifier==c.el._drag.id){d=i.clientX,e=i.clientY,(a.originalEvent?a.originalEvent:a).preventDefault();break}}else a.preventDefault();var k,l=c.el.node,m=l.nextSibling,n=l.parentNode,o=l.style.display;A.win.opera&&n.removeChild(l),l.style.display="none",k=c.el.paper.getElementByPoint(d,e),l.style.display=o,A.win.opera&&(m?n.insertBefore(l,m):n.appendChild(l)),k&&b("raphael.drag.over."+c.el.id,c.el,k),d+=g,e+=f,b("raphael.drag.move."+c.el.id,c.move_scope||c.el,d-c.el._drag.x,e-c.el._drag.y,d,e,a)}},Zb=function(a){c.unmousemove(Yb).unmouseup(Zb);for(var d,e=Xb.length;e--;)d=Xb[e],d.el._drag={},b("raphael.drag.end."+d.el.id,d.end_scope||d.start_scope||d.move_scope||d.el,a);Xb=[]},$b=c.el={},_b=K.length;_b--;)!function(a){c[a]=$b[a]=function(b,d){return c.is(b,"function")&&(this.events=this.events||[],this.events.push({name:a,f:b,unbind:Wb(this.shape||this.node||A.doc,a,b,d||this)})),this},c["un"+a]=$b["un"+a]=function(b){for(var d=this.events||[],e=d.length;e--;)d[e].name!=a||!c.is(b,"undefined")&&d[e].f!=b||(d[e].unbind(),d.splice(e,1),!d.length&&delete this.events);return this}}(K[_b]);$b.data=function(a,d){var e=kb[this.id]=kb[this.id]||{};if(0==arguments.length)return e;if(1==arguments.length){if(c.is(a,"object")){for(var f in a)a[z](f)&&this.data(f,a[f]);return this}return b("raphael.data.get."+this.id,this,e[a],a),e[a]}return e[a]=d,b("raphael.data.set."+this.id,this,d,a),this},$b.removeData=function(a){return null==a?kb[this.id]={}:kb[this.id]&&delete kb[this.id][a],this},$b.getData=function(){return d(kb[this.id]||{})},$b.hover=function(a,b,c,d){return this.mouseover(a,c).mouseout(b,d||c)},$b.unhover=function(a,b){return this.unmouseover(a).unmouseout(b)};var ac=[];$b.drag=function(a,d,e,f,g,h){function i(i){(i.originalEvent||i).preventDefault();var j=i.clientX,k=i.clientY,l=A.doc.documentElement.scrollTop||A.doc.body.scrollTop,m=A.doc.documentElement.scrollLeft||A.doc.body.scrollLeft;if(this._drag.id=i.identifier,F&&i.touches)for(var n,o=i.touches.length;o--;)if(n=i.touches[o],this._drag.id=n.identifier,n.identifier==this._drag.id){j=n.clientX,k=n.clientY;break}this._drag.x=j+m,this._drag.y=k+l,!Xb.length&&c.mousemove(Yb).mouseup(Zb),Xb.push({el:this,move_scope:f,start_scope:g,end_scope:h}),d&&b.on("raphael.drag.start."+this.id,d),a&&b.on("raphael.drag.move."+this.id,a),e&&b.on("raphael.drag.end."+this.id,e),b("raphael.drag.start."+this.id,g||f||this,i.clientX+m,i.clientY+l,i)}return this._drag={},ac.push({el:this,start:i}),this.mousedown(i),this},$b.onDragOver=function(a){a?b.on("raphael.drag.over."+this.id,a):b.unbind("raphael.drag.over."+this.id)},$b.undrag=function(){for(var a=ac.length;a--;)ac[a].el==this&&(this.unmousedown(ac[a].start),ac.splice(a,1),b.unbind("raphael.drag.*."+this.id));!ac.length&&c.unmousemove(Yb).unmouseup(Zb),Xb=[]},v.circle=function(a,b,d){var e=c._engine.circle(this,a||0,b||0,d||0);return this.__set__&&this.__set__.push(e),e},v.rect=function(a,b,d,e,f){var g=c._engine.rect(this,a||0,b||0,d||0,e||0,f||0);return this.__set__&&this.__set__.push(g),g},v.ellipse=function(a,b,d,e){var f=c._engine.ellipse(this,a||0,b||0,d||0,e||0);return this.__set__&&this.__set__.push(f),f},v.path=function(a){a&&!c.is(a,U)&&!c.is(a[0],V)&&(a+=G);var b=c._engine.path(c.format[D](c,arguments),this);return this.__set__&&this.__set__.push(b),b},v.image=function(a,b,d,e,f){var g=c._engine.image(this,a||"about:blank",b||0,d||0,e||0,f||0);return this.__set__&&this.__set__.push(g),g},v.text=function(a,b,d){var e=c._engine.text(this,a||0,b||0,I(d));return this.__set__&&this.__set__.push(e),e},v.set=function(a){!c.is(a,"array")&&(a=Array.prototype.splice.call(arguments,0,arguments.length));var b=new mc(a);return this.__set__&&this.__set__.push(b),b.paper=this,b.type="set",b},v.setStart=function(a){this.__set__=a||this.set()},v.setFinish=function(){var a=this.__set__;return delete this.__set__,a},v.setSize=function(a,b){return c._engine.setSize.call(this,a,b)},v.setViewBox=function(a,b,d,e,f){return c._engine.setViewBox.call(this,a,b,d,e,f)},v.top=v.bottom=null,v.raphael=c;var bc=function(a){var b=a.getBoundingClientRect(),c=a.ownerDocument,d=c.body,e=c.documentElement,f=e.clientTop||d.clientTop||0,g=e.clientLeft||d.clientLeft||0,h=b.top+(A.win.pageYOffset||e.scrollTop||d.scrollTop)-f,i=b.left+(A.win.pageXOffset||e.scrollLeft||d.scrollLeft)-g;return{y:h,x:i}};v.getElementByPoint=function(a,b){var c=this,d=c.canvas,e=A.doc.elementFromPoint(a,b);if(A.win.opera&&"svg"==e.tagName){var f=bc(d),g=d.createSVGRect();g.x=a-f.x,g.y=b-f.y,g.width=g.height=1;var h=d.getIntersectionList(g,null);h.length&&(e=h[h.length-1])}if(!e)return null;for(;e.parentNode&&e!=d.parentNode&&!e.raphael;)e=e.parentNode;return e==c.canvas.parentNode&&(e=d),e=e&&e.raphael?c.getById(e.raphaelid):null},v.getElementsByBBox=function(a){var b=this.set();return this.forEach(function(d){c.isBBoxIntersect(d.getBBox(),a)&&b.push(d)}),b},v.getById=function(a){for(var b=this.bottom;b;){if(b.id==a)return b;b=b.next}return null},v.forEach=function(a,b){for(var c=this.bottom;c;){if(a.call(b,c)===!1)return this;c=c.next}return this},v.getElementsByPoint=function(a,b){var c=this.set();return this.forEach(function(d){d.isPointInside(a,b)&&c.push(d)}),c},$b.isPointInside=function(a,b){var d=this.realPath=qb[this.type](this);return this.attr("transform")&&this.attr("transform").length&&(d=c.transformPath(d,this.attr("transform"))),c.isPointInsidePath(d,a,b)},$b.getBBox=function(a){if(this.removed)return{};var b=this._;return a?((b.dirty||!b.bboxwt)&&(this.realPath=qb[this.type](this),b.bboxwt=Bb(this.realPath),b.bboxwt.toString=p,b.dirty=0),b.bboxwt):((b.dirty||b.dirtyT||!b.bbox)&&((b.dirty||!this.realPath)&&(b.bboxwt=0,this.realPath=qb[this.type](this)),b.bbox=Bb(rb(this.realPath,this.matrix)),b.bbox.toString=p,b.dirty=b.dirtyT=0),b.bbox)},$b.clone=function(){if(this.removed)return null;var a=this.paper[this.type]().attr(this.attr());return this.__set__&&this.__set__.push(a),a},$b.glow=function(a){if("text"==this.type)return null;a=a||{};var b={width:(a.width||10)+(+this.attr("stroke-width")||1),fill:a.fill||!1,opacity:a.opacity||.5,offsetx:a.offsetx||0,offsety:a.offsety||0,color:a.color||"#000"},c=b.width/2,d=this.paper,e=d.set(),f=this.realPath||qb[this.type](this);f=this.matrix?rb(f,this.matrix):f;for(var g=1;c+1>g;g++)e.push(d.path(f).attr({stroke:b.color,fill:b.fill?b.color:"none","stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(b.width/c*g).toFixed(3),opacity:+(b.opacity/c).toFixed(3)}));return e.insertBefore(this).translate(b.offsetx,b.offsety)};var cc=function(a,b,d,e,f,g,h,i,l){return null==l?j(a,b,d,e,f,g,h,i):c.findDotsAtSegment(a,b,d,e,f,g,h,i,k(a,b,d,e,f,g,h,i,l))},dc=function(a,b){return function(d,e,f){d=Kb(d);for(var g,h,i,j,k,l="",m={},n=0,o=0,p=d.length;p>o;o++){if(i=d[o],"M"==i[0])g=+i[1],h=+i[2];else{if(j=cc(g,h,i[1],i[2],i[3],i[4],i[5],i[6]),n+j>e){if(b&&!m.start){if(k=cc(g,h,i[1],i[2],i[3],i[4],i[5],i[6],e-n),l+=["C"+k.start.x,k.start.y,k.m.x,k.m.y,k.x,k.y],f)return l;m.start=l,l=["M"+k.x,k.y+"C"+k.n.x,k.n.y,k.end.x,k.end.y,i[5],i[6]].join(),n+=j,g=+i[5],h=+i[6];continue}if(!a&&!b)return k=cc(g,h,i[1],i[2],i[3],i[4],i[5],i[6],e-n),{x:k.x,y:k.y,alpha:k.alpha}}n+=j,g=+i[5],h=+i[6]}l+=i.shift()+i}return m.end=l,k=a?n:b?m:c.findDotsAtSegment(g,h,i[0],i[1],i[2],i[3],i[4],i[5],1),k.alpha&&(k={x:k.x,y:k.y,alpha:k.alpha}),k}},ec=dc(1),fc=dc(),gc=dc(0,1);c.getTotalLength=ec,c.getPointAtLength=fc,c.getSubpath=function(a,b,c){if(this.getTotalLength(a)-c<1e-6)return gc(a,b).end;var d=gc(a,c,1);return b?gc(d,b).end:d},$b.getTotalLength=function(){var a=this.getPath();if(a)return this.node.getTotalLength?this.node.getTotalLength():ec(a)},$b.getPointAtLength=function(a){var b=this.getPath();if(b)return fc(b,a)},$b.getPath=function(){var a,b=c._getPath[this.type];if("text"!=this.type&&"set"!=this.type)return b&&(a=b(this)),a},$b.getSubpath=function(a,b){var d=this.getPath();if(d)return c.getSubpath(d,a,b)};var hc=c.easing_formulas={linear:function(a){return a},"<":function(a){return R(a,1.7)},">":function(a){return R(a,.48)},"<>":function(a){var b=.48-a/1.04,c=N.sqrt(.1734+b*b),d=c-b,e=R(Q(d),1/3)*(0>d?-1:1),f=-c-b,g=R(Q(f),1/3)*(0>f?-1:1),h=e+g+.5;return 3*(1-h)*h*h+h*h*h},backIn:function(a){var b=1.70158;return a*a*((b+1)*a-b)},backOut:function(a){a-=1;var b=1.70158;return a*a*((b+1)*a+b)+1},elastic:function(a){return a==!!a?a:R(2,-10*a)*N.sin(2*(a-.075)*S/.3)+1},bounce:function(a){var b,c=7.5625,d=2.75;return 1/d>a?b=c*a*a:2/d>a?(a-=1.5/d,b=c*a*a+.75):2.5/d>a?(a-=2.25/d,b=c*a*a+.9375):(a-=2.625/d,b=c*a*a+.984375),b}};hc.easeIn=hc["ease-in"]=hc["<"],hc.easeOut=hc["ease-out"]=hc[">"],hc.easeInOut=hc["ease-in-out"]=hc["<>"],hc["back-in"]=hc.backIn,hc["back-out"]=hc.backOut;var ic=[],jc=a.requestAnimationFrame||a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame||a.msRequestAnimationFrame||function(a){setTimeout(a,16)},kc=function(){for(var a=+new Date,d=0;dh))if(i>h){var q=j(h/i);for(var r in k)if(k[z](r)){switch(db[r]){case T:f=+k[r]+q*i*l[r];break;case"colour":f="rgb("+[lc($(k[r].r+q*i*l[r].r)),lc($(k[r].g+q*i*l[r].g)),lc($(k[r].b+q*i*l[r].b))].join(",")+")";break;case"path":f=[];for(var t=0,u=k[r].length;u>t;t++){f[t]=[k[r][t][0]];for(var v=1,w=k[r][t].length;w>v;v++)f[t][v]=+k[r][t][v]+q*i*l[r][t][v];f[t]=f[t].join(H)}f=f.join(H);break;case"transform":if(l[r].real)for(f=[],t=0,u=k[r].length;u>t;t++)for(f[t]=[k[r][t][0]],v=1,w=k[r][t].length;w>v;v++)f[t][v]=k[r][t][v]+q*i*l[r][t][v];else{var x=function(a){return+k[r][a]+q*i*l[r][a]};f=[["m",x(0),x(1),x(2),x(3),x(4),x(5)]]}break;case"csv":if("clip-rect"==r)for(f=[],t=4;t--;)f[t]=+k[r][t]+q*i*l[r][t];break;default:var y=[][E](k[r]);for(f=[],t=n.paper.customAttributes[r].length;t--;)f[t]=+y[t]+q*i*l[r][t]}o[r]=f}n.attr(o),function(a,c,d){setTimeout(function(){b("raphael.anim.frame."+a,c,d)})}(n.id,n,e.anim)}else{if(function(a,d,e){setTimeout(function(){b("raphael.anim.frame."+d.id,d,e),b("raphael.anim.finish."+d.id,d,e),c.is(a,"function")&&a.call(d)})}(e.callback,n,e.anim),n.attr(m),ic.splice(d--,1),e.repeat>1&&!e.next){for(g in m)m[z](g)&&(p[g]=e.totalOrigin[g]);e.el.attr(p),s(e.anim,e.el,e.anim.percents[0],null,e.totalOrigin,e.repeat-1)}e.next&&!e.stop&&s(e.anim,e.el,e.next,null,e.totalOrigin,e.repeat)}}}c.svg&&n&&n.paper&&n.paper.safari(),ic.length&&jc(kc)},lc=function(a){return a>255?255:0>a?0:a};$b.animateWith=function(a,b,d,e,f,g){var h=this;if(h.removed)return g&&g.call(h),h;var i=d instanceof r?d:c.animation(d,e,f,g);s(i,h,i.percents[0],null,h.attr());for(var j=0,k=ic.length;k>j;j++)if(ic[j].anim==b&&ic[j].el==a){ic[k-1].start=ic[j].start;break}return h},$b.onAnimation=function(a){return a?b.on("raphael.anim.frame."+this.id,a):b.unbind("raphael.anim.frame."+this.id),this},r.prototype.delay=function(a){var b=new r(this.anim,this.ms);return b.times=this.times,b.del=+a||0,b},r.prototype.repeat=function(a){var b=new r(this.anim,this.ms);return b.del=this.del,b.times=N.floor(O(a,0))||1,b},c.animation=function(a,b,d,e){if(a instanceof r)return a;(c.is(d,"function")||!d)&&(e=e||d||null,d=null),a=Object(a),b=+b||0;var f,g,h={};for(g in a)a[z](g)&&_(g)!=g&&_(g)+"%"!=g&&(f=!0,h[g]=a[g]);return f?(d&&(h.easing=d),e&&(h.callback=e),new r({100:h},b)):new r(a,b)},$b.animate=function(a,b,d,e){var f=this;if(f.removed)return e&&e.call(f),f;var g=a instanceof r?a:c.animation(a,b,d,e);return s(g,f,g.percents[0],null,f.attr()),f},$b.setTime=function(a,b){return a&&null!=b&&this.status(a,P(b,a.ms)/a.ms),this},$b.status=function(a,b){var c,d,e=[],f=0;if(null!=b)return s(a,this,-1,P(b,1)),this;for(c=ic.length;c>f;f++)if(d=ic[f],d.el.id==this.id&&(!a||d.anim==a)){if(a)return d.status;e.push({anim:d.anim,status:d.status})}return a?0:e},$b.pause=function(a){for(var c=0;cb;b++)!a[b]||a[b].constructor!=$b.constructor&&a[b].constructor!=mc||(this[this.items.length]=this.items[this.items.length]=a[b],this.length++)},nc=mc.prototype;nc.push=function(){for(var a,b,c=0,d=arguments.length;d>c;c++)a=arguments[c],!a||a.constructor!=$b.constructor&&a.constructor!=mc||(b=this.items.length,this[b]=this.items[b]=a,this.length++);return this},nc.pop=function(){return this.length&&delete this[this.length--],this.items.pop()},nc.forEach=function(a,b){for(var c=0,d=this.items.length;d>c;c++)if(a.call(b,this.items[c],c)===!1)return this;return this};for(var oc in $b)$b[z](oc)&&(nc[oc]=function(a){return function(){var b=arguments;return this.forEach(function(c){c[a][D](c,b)})}}(oc));return nc.attr=function(a,b){if(a&&c.is(a,V)&&c.is(a[0],"object"))for(var d=0,e=a.length;e>d;d++)this.items[d].attr(a[d]);else for(var f=0,g=this.items.length;g>f;f++)this.items[f].attr(a,b);return this},nc.clear=function(){for(;this.length;)this.pop()},nc.splice=function(a,b){a=0>a?O(this.length+a,0):a,b=O(0,P(this.length-a,b));var c,d=[],e=[],f=[];for(c=2;cc;c++)e.push(this[a+c]);for(;cc?f[c]:d[c-g];for(c=this.items.length=this.length-=b-g;this[c];)delete this[c++];return new mc(e)},nc.exclude=function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]==a)return this.splice(b,1),!0},nc.animate=function(a,b,d,e){(c.is(d,"function")||!d)&&(e=d||null);var f,g,h=this.items.length,i=h,j=this;if(!h)return this;e&&(g=function(){!--h&&e.call(j)}),d=c.is(d,U)?d:g;var k=c.animation(a,b,d,g);for(f=this.items[--i].animate(k);i--;)this.items[i]&&!this.items[i].removed&&this.items[i].animateWith(f,k,k),this.items[i]&&!this.items[i].removed||h--;return this},nc.insertAfter=function(a){for(var b=this.items.length;b--;)this.items[b].insertAfter(a);return this},nc.getBBox=function(){for(var a=[],b=[],c=[],d=[],e=this.items.length;e--;)if(!this.items[e].removed){var f=this.items[e].getBBox();a.push(f.x),b.push(f.y),c.push(f.x+f.width),d.push(f.y+f.height)}return a=P[D](0,a),b=P[D](0,b),c=O[D](0,c),d=O[D](0,d),{x:a,y:b,x2:c,y2:d,width:c-a,height:d-b}},nc.clone=function(a){a=this.paper.set();for(var b=0,c=this.items.length;c>b;b++)a.push(this.items[b].clone());return a},nc.toString=function(){return"Raphaël‘s set"},nc.glow=function(a){var b=this.paper.set();return this.forEach(function(c){var d=c.glow(a);null!=d&&d.forEach(function(a){b.push(a)})}),b},nc.isPointInside=function(a,b){var c=!1;return this.forEach(function(d){return d.isPointInside(a,b)?(c=!0,!1):void 0}),c},c.registerFont=function(a){if(!a.face)return a;this.fonts=this.fonts||{};var b={w:a.w,face:{},glyphs:{}},c=a.face["font-family"];for(var d in a.face)a.face[z](d)&&(b.face[d]=a.face[d]);if(this.fonts[c]?this.fonts[c].push(b):this.fonts[c]=[b],!a.svg){b.face["units-per-em"]=ab(a.face["units-per-em"],10);for(var e in a.glyphs)if(a.glyphs[z](e)){var f=a.glyphs[e];if(b.glyphs[e]={w:f.w,k:{},d:f.d&&"M"+f.d.replace(/[mlcxtrv]/g,function(a){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[a]||"M"})+"z"},f.k)for(var g in f.k)f[z](g)&&(b.glyphs[e].k[g]=f.k[g])}}return a},v.getFont=function(a,b,d,e){if(e=e||"normal",d=d||"normal",b=+b||{normal:400,bold:700,lighter:300,bolder:800}[b]||400,c.fonts){var f=c.fonts[a];if(!f){var g=new RegExp("(^|\\s)"+a.replace(/[^\w\d\s+!~.:_-]/g,G)+"(\\s|$)","i");for(var h in c.fonts)if(c.fonts[z](h)&&g.test(h)){f=c.fonts[h];break}}var i;if(f)for(var j=0,k=f.length;k>j&&(i=f[j],i.face["font-weight"]!=b||i.face["font-style"]!=d&&i.face["font-style"]||i.face["font-stretch"]!=e);j++);return i}},v.print=function(a,b,d,e,f,g,h,i){g=g||"middle",h=O(P(h||0,1),-1),i=O(P(i||1,3),1);var j,k=I(d)[J](G),l=0,m=0,n=G;if(c.is(e,"string")&&(e=this.getFont(e)),e){j=(f||16)/e.face["units-per-em"];for(var o=e.face.bbox[J](w),p=+o[0],q=o[3]-o[1],r=0,s=+o[1]+("baseline"==g?q+ +e.face.descent:q/2),t=0,u=k.length;u>t;t++){if("\n"==k[t])l=0,x=0,m=0,r+=q*i;else{var v=m&&e.glyphs[k[t-1]]||{},x=e.glyphs[k[t]];l+=m?(v.w||e.w)+(v.k&&v.k[k[t]]||0)+e.w*h:0,m=1}x&&x.d&&(n+=c.transformPath(x.d,["t",l*j,r*j,"s",j,j,p,s,"t",(a-p)/j,(b-s)/j]))}}return this.path(n).attr({fill:"#000",stroke:"none"})},v.add=function(a){if(c.is(a,"array"))for(var b,d=this.set(),e=0,f=a.length;f>e;e++)b=a[e]||{},x[z](b.type)&&d.push(this[b.type]().attr(b));return d},c.format=function(a,b){var d=c.is(b,V)?[0][E](b):arguments;return a&&c.is(a,U)&&d.length-1&&(a=a.replace(y,function(a,b){return null==d[++b]?G:d[b]})),a||G},c.fullfill=function(){var a=/\{([^\}]+)\}/g,b=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g,c=function(a,c,d){var e=d;return c.replace(b,function(a,b,c,d,f){b=b||d,e&&(b in e&&(e=e[b]),"function"==typeof e&&f&&(e=e()))}),e=(null==e||e==d?a:e)+""};return function(b,d){return String(b).replace(a,function(a,b){return c(a,b,d)})}}(),c.ninja=function(){return B.was?A.win.Raphael=B.is:delete Raphael,c},c.st=nc,function(a,b,d){function e(){/in/.test(a.readyState)?setTimeout(e,9):c.eve("raphael.DOMload")}null==a.readyState&&a.addEventListener&&(a.addEventListener(b,d=function(){a.removeEventListener(b,d,!1),a.readyState="complete"},!1),a.readyState="loading"),e()}(document,"DOMContentLoaded"),b.on("raphael.DOMload",function(){u=!0}),function(){if(c.svg){var a="hasOwnProperty",b=String,d=parseFloat,e=parseInt,f=Math,g=f.max,h=f.abs,i=f.pow,j=/[, ]+/,k=c.eve,l="",m=" ",n="http://www.w3.org/1999/xlink",o={block:"M5,0 0,2.5 5,5z",classic:"M5,0 0,2.5 5,5 3.5,3 3.5,2z",diamond:"M2.5,0 5,2.5 2.5,5 0,2.5z",open:"M6,1 1,3.5 6,6",oval:"M2.5,0A2.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,0z"},p={};c.toString=function(){return"Your browser supports SVG.\nYou are running Raphaël "+this.version};var q=function(d,e){if(e){"string"==typeof d&&(d=q(d));for(var f in e)e[a](f)&&("xlink:"==f.substring(0,6)?d.setAttributeNS(n,f.substring(6),b(e[f])):d.setAttribute(f,b(e[f])))}else d=c._g.doc.createElementNS("http://www.w3.org/2000/svg",d),d.style&&(d.style.webkitTapHighlightColor="rgba(0,0,0,0)");return d},r=function(a,e){var j="linear",k=a.id+e,m=.5,n=.5,o=a.node,p=a.paper,r=o.style,s=c._g.doc.getElementById(k);if(!s){if(e=b(e).replace(c._radial_gradient,function(a,b,c){if(j="radial",b&&c){m=d(b),n=d(c);var e=2*(n>.5)-1;i(m-.5,2)+i(n-.5,2)>.25&&(n=f.sqrt(.25-i(m-.5,2))*e+.5)&&.5!=n&&(n=n.toFixed(5)-1e-5*e)}return l}),e=e.split(/\s*\-\s*/),"linear"==j){var t=e.shift();if(t=-d(t),isNaN(t))return null;var u=[0,0,f.cos(c.rad(t)),f.sin(c.rad(t))],v=1/(g(h(u[2]),h(u[3]))||1);u[2]*=v,u[3]*=v,u[2]<0&&(u[0]=-u[2],u[2]=0),u[3]<0&&(u[1]=-u[3],u[3]=0)}var w=c._parseDots(e);if(!w)return null;if(k=k.replace(/[\(\)\s,\xb0#]/g,"_"),a.gradient&&k!=a.gradient.id&&(p.defs.removeChild(a.gradient),delete a.gradient),!a.gradient){s=q(j+"Gradient",{id:k}),a.gradient=s,q(s,"radial"==j?{fx:m,fy:n}:{x1:u[0],y1:u[1],x2:u[2],y2:u[3],gradientTransform:a.matrix.invert()}),p.defs.appendChild(s);for(var x=0,y=w.length;y>x;x++)s.appendChild(q("stop",{offset:w[x].offset?w[x].offset:x?"100%":"0%","stop-color":w[x].color||"#fff"}))}}return q(o,{fill:"url(#"+k+")",opacity:1,"fill-opacity":1}),r.fill=l,r.opacity=1,r.fillOpacity=1,1},s=function(a){var b=a.getBBox(1);q(a.pattern,{patternTransform:a.matrix.invert()+" translate("+b.x+","+b.y+")"})},t=function(d,e,f){if("path"==d.type){for(var g,h,i,j,k,m=b(e).toLowerCase().split("-"),n=d.paper,r=f?"end":"start",s=d.node,t=d.attrs,u=t["stroke-width"],v=m.length,w="classic",x=3,y=3,z=5;v--;)switch(m[v]){case"block":case"classic":case"oval":case"diamond":case"open":case"none":w=m[v];break;case"wide":y=5;break;case"narrow":y=2;break;case"long":x=5;break;case"short":x=2}if("open"==w?(x+=2,y+=2,z+=2,i=1,j=f?4:1,k={fill:"none",stroke:t.stroke}):(j=i=x/2,k={fill:t.stroke,stroke:"none"}),d._.arrows?f?(d._.arrows.endPath&&p[d._.arrows.endPath]--,d._.arrows.endMarker&&p[d._.arrows.endMarker]--):(d._.arrows.startPath&&p[d._.arrows.startPath]--,d._.arrows.startMarker&&p[d._.arrows.startMarker]--):d._.arrows={},"none"!=w){var A="raphael-marker-"+w,B="raphael-marker-"+r+w+x+y;c._g.doc.getElementById(A)?p[A]++:(n.defs.appendChild(q(q("path"),{"stroke-linecap":"round",d:o[w],id:A})),p[A]=1);var C,D=c._g.doc.getElementById(B);D?(p[B]++,C=D.getElementsByTagName("use")[0]):(D=q(q("marker"),{id:B,markerHeight:y,markerWidth:x,orient:"auto",refX:j,refY:y/2}),C=q(q("use"),{"xlink:href":"#"+A,transform:(f?"rotate(180 "+x/2+" "+y/2+") ":l)+"scale("+x/z+","+y/z+")","stroke-width":(1/((x/z+y/z)/2)).toFixed(4)}),D.appendChild(C),n.defs.appendChild(D),p[B]=1),q(C,k);var E=i*("diamond"!=w&&"oval"!=w);f?(g=d._.arrows.startdx*u||0,h=c.getTotalLength(t.path)-E*u):(g=E*u,h=c.getTotalLength(t.path)-(d._.arrows.enddx*u||0)),k={},k["marker-"+r]="url(#"+B+")",(h||g)&&(k.d=c.getSubpath(t.path,g,h)),q(s,k),d._.arrows[r+"Path"]=A,d._.arrows[r+"Marker"]=B,d._.arrows[r+"dx"]=E,d._.arrows[r+"Type"]=w,d._.arrows[r+"String"]=e}else f?(g=d._.arrows.startdx*u||0,h=c.getTotalLength(t.path)-g):(g=0,h=c.getTotalLength(t.path)-(d._.arrows.enddx*u||0)),d._.arrows[r+"Path"]&&q(s,{d:c.getSubpath(t.path,g,h)}),delete d._.arrows[r+"Path"],delete d._.arrows[r+"Marker"],delete d._.arrows[r+"dx"],delete d._.arrows[r+"Type"],delete d._.arrows[r+"String"];for(k in p)if(p[a](k)&&!p[k]){var F=c._g.doc.getElementById(k);F&&F.parentNode.removeChild(F)}}},u={"":[0],none:[0],"-":[3,1],".":[1,1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},v=function(a,c,d){if(c=u[b(c).toLowerCase()]){for(var e=a.attrs["stroke-width"]||"1",f={round:e,square:e,butt:0}[a.attrs["stroke-linecap"]||d["stroke-linecap"]]||0,g=[],h=c.length;h--;)g[h]=c[h]*e+(h%2?1:-1)*f;q(a.node,{"stroke-dasharray":g.join(",")})}},w=function(d,f){var i=d.node,k=d.attrs,m=i.style.visibility;i.style.visibility="hidden";for(var o in f)if(f[a](o)){if(!c._availableAttrs[a](o))continue;var p=f[o];switch(k[o]=p,o){case"blur":d.blur(p);break;case"title":var u=i.getElementsByTagName("title");if(u.length&&(u=u[0]))u.firstChild.nodeValue=p;else{u=q("title");var w=c._g.doc.createTextNode(p);u.appendChild(w),i.appendChild(u)}break;case"href":case"target":var x=i.parentNode;if("a"!=x.tagName.toLowerCase()){var z=q("a");x.insertBefore(z,i),z.appendChild(i),x=z}"target"==o?x.setAttributeNS(n,"show","blank"==p?"new":p):x.setAttributeNS(n,o,p);break;case"cursor":i.style.cursor=p;break;case"transform":d.transform(p);break;case"arrow-start":t(d,p);break;case"arrow-end":t(d,p,1);break;case"clip-rect":var A=b(p).split(j);if(4==A.length){d.clip&&d.clip.parentNode.parentNode.removeChild(d.clip.parentNode);var B=q("clipPath"),C=q("rect");B.id=c.createUUID(),q(C,{x:A[0],y:A[1],width:A[2],height:A[3]}),B.appendChild(C),d.paper.defs.appendChild(B),q(i,{"clip-path":"url(#"+B.id+")"}),d.clip=C}if(!p){var D=i.getAttribute("clip-path");if(D){var E=c._g.doc.getElementById(D.replace(/(^url\(#|\)$)/g,l));E&&E.parentNode.removeChild(E),q(i,{"clip-path":l}),delete d.clip}}break;case"path":"path"==d.type&&(q(i,{d:p?k.path=c._pathToAbsolute(p):"M0,0"}),d._.dirty=1,d._.arrows&&("startString"in d._.arrows&&t(d,d._.arrows.startString),"endString"in d._.arrows&&t(d,d._.arrows.endString,1)));break;case"width":if(i.setAttribute(o,p),d._.dirty=1,!k.fx)break;o="x",p=k.x;case"x":k.fx&&(p=-k.x-(k.width||0));case"rx":if("rx"==o&&"rect"==d.type)break;case"cx":i.setAttribute(o,p),d.pattern&&s(d),d._.dirty=1;break;case"height":if(i.setAttribute(o,p),d._.dirty=1,!k.fy)break;o="y",p=k.y;case"y":k.fy&&(p=-k.y-(k.height||0));case"ry":if("ry"==o&&"rect"==d.type)break;case"cy":i.setAttribute(o,p),d.pattern&&s(d),d._.dirty=1;break;case"r":"rect"==d.type?q(i,{rx:p,ry:p}):i.setAttribute(o,p),d._.dirty=1;break;case"src":"image"==d.type&&i.setAttributeNS(n,"href",p);break;case"stroke-width":(1!=d._.sx||1!=d._.sy)&&(p/=g(h(d._.sx),h(d._.sy))||1),d.paper._vbSize&&(p*=d.paper._vbSize),i.setAttribute(o,p),k["stroke-dasharray"]&&v(d,k["stroke-dasharray"],f),d._.arrows&&("startString"in d._.arrows&&t(d,d._.arrows.startString),"endString"in d._.arrows&&t(d,d._.arrows.endString,1));break;case"stroke-dasharray":v(d,p,f);break;case"fill":var F=b(p).match(c._ISURL);if(F){B=q("pattern");var G=q("image");B.id=c.createUUID(),q(B,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1}),q(G,{x:0,y:0,"xlink:href":F[1]}),B.appendChild(G),function(a){c._preload(F[1],function(){var b=this.offsetWidth,c=this.offsetHeight;q(a,{width:b,height:c}),q(G,{width:b,height:c}),d.paper.safari()})}(B),d.paper.defs.appendChild(B),q(i,{fill:"url(#"+B.id+")"}),d.pattern=B,d.pattern&&s(d);break}var H=c.getRGB(p);if(H.error){if(("circle"==d.type||"ellipse"==d.type||"r"!=b(p).charAt())&&r(d,p)){if("opacity"in k||"fill-opacity"in k){var I=c._g.doc.getElementById(i.getAttribute("fill").replace(/^url\(#|\)$/g,l));if(I){var J=I.getElementsByTagName("stop");q(J[J.length-1],{"stop-opacity":("opacity"in k?k.opacity:1)*("fill-opacity"in k?k["fill-opacity"]:1)})}}k.gradient=p,k.fill="none";break}}else delete f.gradient,delete k.gradient,!c.is(k.opacity,"undefined")&&c.is(f.opacity,"undefined")&&q(i,{opacity:k.opacity}),!c.is(k["fill-opacity"],"undefined")&&c.is(f["fill-opacity"],"undefined")&&q(i,{"fill-opacity":k["fill-opacity"]});H[a]("opacity")&&q(i,{"fill-opacity":H.opacity>1?H.opacity/100:H.opacity});case"stroke":H=c.getRGB(p),i.setAttribute(o,H.hex),"stroke"==o&&H[a]("opacity")&&q(i,{"stroke-opacity":H.opacity>1?H.opacity/100:H.opacity}),"stroke"==o&&d._.arrows&&("startString"in d._.arrows&&t(d,d._.arrows.startString),"endString"in d._.arrows&&t(d,d._.arrows.endString,1));break;case"gradient":("circle"==d.type||"ellipse"==d.type||"r"!=b(p).charAt())&&r(d,p);break;case"opacity":k.gradient&&!k[a]("stroke-opacity")&&q(i,{"stroke-opacity":p>1?p/100:p});case"fill-opacity":if(k.gradient){I=c._g.doc.getElementById(i.getAttribute("fill").replace(/^url\(#|\)$/g,l)),I&&(J=I.getElementsByTagName("stop"),q(J[J.length-1],{"stop-opacity":p}));break}default:"font-size"==o&&(p=e(p,10)+"px");var K=o.replace(/(\-.)/g,function(a){return a.substring(1).toUpperCase()});i.style[K]=p,d._.dirty=1,i.setAttribute(o,p)}}y(d,f),i.style.visibility=m},x=1.2,y=function(d,f){if("text"==d.type&&(f[a]("text")||f[a]("font")||f[a]("font-size")||f[a]("x")||f[a]("y"))){var g=d.attrs,h=d.node,i=h.firstChild?e(c._g.doc.defaultView.getComputedStyle(h.firstChild,l).getPropertyValue("font-size"),10):10; -if(f[a]("text")){for(g.text=f.text;h.firstChild;)h.removeChild(h.firstChild);for(var j,k=b(f.text).split("\n"),m=[],n=0,o=k.length;o>n;n++)j=q("tspan"),n&&q(j,{dy:i*x,x:g.x}),j.appendChild(c._g.doc.createTextNode(k[n])),h.appendChild(j),m[n]=j}else for(m=h.getElementsByTagName("tspan"),n=0,o=m.length;o>n;n++)n?q(m[n],{dy:i*x,x:g.x}):q(m[0],{dy:0});q(h,{x:g.x,y:g.y}),d._.dirty=1;var p=d._getBBox(),r=g.y-(p.y+p.height/2);r&&c.is(r,"finite")&&q(m[0],{dy:r})}},z=function(a,b){this[0]=this.node=a,a.raphael=!0,this.id=c._oid++,a.raphaelid=this.id,this.matrix=c.matrix(),this.realPath=null,this.paper=b,this.attrs=this.attrs||{},this._={transform:[],sx:1,sy:1,deg:0,dx:0,dy:0,dirty:1},!b.bottom&&(b.bottom=this),this.prev=b.top,b.top&&(b.top.next=this),b.top=this,this.next=null},A=c.el;z.prototype=A,A.constructor=z,c._engine.path=function(a,b){var c=q("path");b.canvas&&b.canvas.appendChild(c);var d=new z(c,b);return d.type="path",w(d,{fill:"none",stroke:"#000",path:a}),d},A.rotate=function(a,c,e){if(this.removed)return this;if(a=b(a).split(j),a.length-1&&(c=d(a[1]),e=d(a[2])),a=d(a[0]),null==e&&(c=e),null==c||null==e){var f=this.getBBox(1);c=f.x+f.width/2,e=f.y+f.height/2}return this.transform(this._.transform.concat([["r",a,c,e]])),this},A.scale=function(a,c,e,f){if(this.removed)return this;if(a=b(a).split(j),a.length-1&&(c=d(a[1]),e=d(a[2]),f=d(a[3])),a=d(a[0]),null==c&&(c=a),null==f&&(e=f),null==e||null==f)var g=this.getBBox(1);return e=null==e?g.x+g.width/2:e,f=null==f?g.y+g.height/2:f,this.transform(this._.transform.concat([["s",a,c,e,f]])),this},A.translate=function(a,c){return this.removed?this:(a=b(a).split(j),a.length-1&&(c=d(a[1])),a=d(a[0])||0,c=+c||0,this.transform(this._.transform.concat([["t",a,c]])),this)},A.transform=function(b){var d=this._;if(null==b)return d.transform;if(c._extractTransform(this,b),this.clip&&q(this.clip,{transform:this.matrix.invert()}),this.pattern&&s(this),this.node&&q(this.node,{transform:this.matrix}),1!=d.sx||1!=d.sy){var e=this.attrs[a]("stroke-width")?this.attrs["stroke-width"]:1;this.attr({"stroke-width":e})}return this},A.hide=function(){return!this.removed&&this.paper.safari(this.node.style.display="none"),this},A.show=function(){return!this.removed&&this.paper.safari(this.node.style.display=""),this},A.remove=function(){if(!this.removed&&this.node.parentNode){var a=this.paper;a.__set__&&a.__set__.exclude(this),k.unbind("raphael.*.*."+this.id),this.gradient&&a.defs.removeChild(this.gradient),c._tear(this,a),"a"==this.node.parentNode.tagName.toLowerCase()?this.node.parentNode.parentNode.removeChild(this.node.parentNode):this.node.parentNode.removeChild(this.node);for(var b in this)this[b]="function"==typeof this[b]?c._removedFactory(b):null;this.removed=!0}},A._getBBox=function(){if("none"==this.node.style.display){this.show();var a=!0}var b={};try{b=this.node.getBBox()}catch(c){}finally{b=b||{}}return a&&this.hide(),b},A.attr=function(b,d){if(this.removed)return this;if(null==b){var e={};for(var f in this.attrs)this.attrs[a](f)&&(e[f]=this.attrs[f]);return e.gradient&&"none"==e.fill&&(e.fill=e.gradient)&&delete e.gradient,e.transform=this._.transform,e}if(null==d&&c.is(b,"string")){if("fill"==b&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;if("transform"==b)return this._.transform;for(var g=b.split(j),h={},i=0,l=g.length;l>i;i++)b=g[i],h[b]=b in this.attrs?this.attrs[b]:c.is(this.paper.customAttributes[b],"function")?this.paper.customAttributes[b].def:c._availableAttrs[b];return l-1?h:h[g[0]]}if(null==d&&c.is(b,"array")){for(h={},i=0,l=b.length;l>i;i++)h[b[i]]=this.attr(b[i]);return h}if(null!=d){var m={};m[b]=d}else null!=b&&c.is(b,"object")&&(m=b);for(var n in m)k("raphael.attr."+n+"."+this.id,this,m[n]);for(n in this.paper.customAttributes)if(this.paper.customAttributes[a](n)&&m[a](n)&&c.is(this.paper.customAttributes[n],"function")){var o=this.paper.customAttributes[n].apply(this,[].concat(m[n]));this.attrs[n]=m[n];for(var p in o)o[a](p)&&(m[p]=o[p])}return w(this,m),this},A.toFront=function(){if(this.removed)return this;"a"==this.node.parentNode.tagName.toLowerCase()?this.node.parentNode.parentNode.appendChild(this.node.parentNode):this.node.parentNode.appendChild(this.node);var a=this.paper;return a.top!=this&&c._tofront(this,a),this},A.toBack=function(){if(this.removed)return this;var a=this.node.parentNode;"a"==a.tagName.toLowerCase()?a.parentNode.insertBefore(this.node.parentNode,this.node.parentNode.parentNode.firstChild):a.firstChild!=this.node&&a.insertBefore(this.node,this.node.parentNode.firstChild),c._toback(this,this.paper);this.paper;return this},A.insertAfter=function(a){if(this.removed)return this;var b=a.node||a[a.length-1].node;return b.nextSibling?b.parentNode.insertBefore(this.node,b.nextSibling):b.parentNode.appendChild(this.node),c._insertafter(this,a,this.paper),this},A.insertBefore=function(a){if(this.removed)return this;var b=a.node||a[0].node;return b.parentNode.insertBefore(this.node,b),c._insertbefore(this,a,this.paper),this},A.blur=function(a){var b=this;if(0!==+a){var d=q("filter"),e=q("feGaussianBlur");b.attrs.blur=a,d.id=c.createUUID(),q(e,{stdDeviation:+a||1.5}),d.appendChild(e),b.paper.defs.appendChild(d),b._blur=d,q(b.node,{filter:"url(#"+d.id+")"})}else b._blur&&(b._blur.parentNode.removeChild(b._blur),delete b._blur,delete b.attrs.blur),b.node.removeAttribute("filter");return b},c._engine.circle=function(a,b,c,d){var e=q("circle");a.canvas&&a.canvas.appendChild(e);var f=new z(e,a);return f.attrs={cx:b,cy:c,r:d,fill:"none",stroke:"#000"},f.type="circle",q(e,f.attrs),f},c._engine.rect=function(a,b,c,d,e,f){var g=q("rect");a.canvas&&a.canvas.appendChild(g);var h=new z(g,a);return h.attrs={x:b,y:c,width:d,height:e,r:f||0,rx:f||0,ry:f||0,fill:"none",stroke:"#000"},h.type="rect",q(g,h.attrs),h},c._engine.ellipse=function(a,b,c,d,e){var f=q("ellipse");a.canvas&&a.canvas.appendChild(f);var g=new z(f,a);return g.attrs={cx:b,cy:c,rx:d,ry:e,fill:"none",stroke:"#000"},g.type="ellipse",q(f,g.attrs),g},c._engine.image=function(a,b,c,d,e,f){var g=q("image");q(g,{x:c,y:d,width:e,height:f,preserveAspectRatio:"none"}),g.setAttributeNS(n,"href",b),a.canvas&&a.canvas.appendChild(g);var h=new z(g,a);return h.attrs={x:c,y:d,width:e,height:f,src:b},h.type="image",h},c._engine.text=function(a,b,d,e){var f=q("text");a.canvas&&a.canvas.appendChild(f);var g=new z(f,a);return g.attrs={x:b,y:d,"text-anchor":"middle",text:e,font:c._availableAttrs.font,stroke:"none",fill:"#000"},g.type="text",w(g,g.attrs),g},c._engine.setSize=function(a,b){return this.width=a||this.width,this.height=b||this.height,this.canvas.setAttribute("width",this.width),this.canvas.setAttribute("height",this.height),this._viewBox&&this.setViewBox.apply(this,this._viewBox),this},c._engine.create=function(){var a=c._getContainer.apply(0,arguments),b=a&&a.container,d=a.x,e=a.y,f=a.width,g=a.height;if(!b)throw new Error("SVG container not found.");var h,i=q("svg"),j="overflow:hidden;";return d=d||0,e=e||0,f=f||512,g=g||342,q(i,{height:g,version:1.1,width:f,xmlns:"http://www.w3.org/2000/svg"}),1==b?(i.style.cssText=j+"position:absolute;left:"+d+"px;top:"+e+"px",c._g.doc.body.appendChild(i),h=1):(i.style.cssText=j+"position:relative",b.firstChild?b.insertBefore(i,b.firstChild):b.appendChild(i)),b=new c._Paper,b.width=f,b.height=g,b.canvas=i,b.clear(),b._left=b._top=0,h&&(b.renderfix=function(){}),b.renderfix(),b},c._engine.setViewBox=function(a,b,c,d,e){k("raphael.setViewBox",this,this._viewBox,[a,b,c,d,e]);var f,h,i=g(c/this.width,d/this.height),j=this.top,l=e?"xMidYMid meet":"xMinYMin";for(null==a?(this._vbSize&&(i=1),delete this._vbSize,f="0 0 "+this.width+m+this.height):(this._vbSize=i,f=a+m+b+m+c+m+d),q(this.canvas,{viewBox:f,preserveAspectRatio:l});i&&j;)h="stroke-width"in j.attrs?j.attrs["stroke-width"]:1,j.attr({"stroke-width":h}),j._.dirty=1,j._.dirtyT=1,j=j.prev;return this._viewBox=[a,b,c,d,!!e],this},c.prototype.renderfix=function(){var a,b=this.canvas,c=b.style;try{a=b.getScreenCTM()||b.createSVGMatrix()}catch(d){a=b.createSVGMatrix()}var e=-a.e%1,f=-a.f%1;(e||f)&&(e&&(this._left=(this._left+e)%1,c.left=this._left+"px"),f&&(this._top=(this._top+f)%1,c.top=this._top+"px"))},c.prototype.clear=function(){c.eve("raphael.clear",this);for(var a=this.canvas;a.firstChild;)a.removeChild(a.firstChild);this.bottom=this.top=null,(this.desc=q("desc")).appendChild(c._g.doc.createTextNode("Created with Raphaël "+c.version)),a.appendChild(this.desc),a.appendChild(this.defs=q("defs"))},c.prototype.remove=function(){k("raphael.remove",this),this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);for(var a in this)this[a]="function"==typeof this[a]?c._removedFactory(a):null};var B=c.st;for(var C in A)A[a](C)&&!B[a](C)&&(B[C]=function(a){return function(){var b=arguments;return this.forEach(function(c){c[a].apply(c,b)})}}(C))}}(),function(){if(c.vml){var a="hasOwnProperty",b=String,d=parseFloat,e=Math,f=e.round,g=e.max,h=e.min,i=e.abs,j="fill",k=/[, ]+/,l=c.eve,m=" progid:DXImageTransform.Microsoft",n=" ",o="",p={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},q=/([clmz]),?([^clmz]*)/gi,r=/ progid:\S+Blur\([^\)]+\)/g,s=/-?[^,\s-]+/g,t="position:absolute;left:0;top:0;width:1px;height:1px",u=21600,v={path:1,rect:1,image:1},w={circle:1,ellipse:1},x=function(a){var d=/[ahqstv]/gi,e=c._pathToAbsolute;if(b(a).match(d)&&(e=c._path2curve),d=/[clmz]/g,e==c._pathToAbsolute&&!b(a).match(d)){var g=b(a).replace(q,function(a,b,c){var d=[],e="m"==b.toLowerCase(),g=p[b];return c.replace(s,function(a){e&&2==d.length&&(g+=d+p["m"==b?"l":"L"],d=[]),d.push(f(a*u))}),g+d});return g}var h,i,j=e(a);g=[];for(var k=0,l=j.length;l>k;k++){h=j[k],i=j[k][0].toLowerCase(),"z"==i&&(i="x");for(var m=1,r=h.length;r>m;m++)i+=f(h[m]*u)+(m!=r-1?",":o);g.push(i)}return g.join(n)},y=function(a,b,d){var e=c.matrix();return e.rotate(-a,.5,.5),{dx:e.x(b,d),dy:e.y(b,d)}},z=function(a,b,c,d,e,f){var g=a._,h=a.matrix,k=g.fillpos,l=a.node,m=l.style,o=1,p="",q=u/b,r=u/c;if(m.visibility="hidden",b&&c){if(l.coordsize=i(q)+n+i(r),m.rotation=f*(0>b*c?-1:1),f){var s=y(f,d,e);d=s.dx,e=s.dy}if(0>b&&(p+="x"),0>c&&(p+=" y")&&(o=-1),m.flip=p,l.coordorigin=d*-q+n+e*-r,k||g.fillsize){var t=l.getElementsByTagName(j);t=t&&t[0],l.removeChild(t),k&&(s=y(f,h.x(k[0],k[1]),h.y(k[0],k[1])),t.position=s.dx*o+n+s.dy*o),g.fillsize&&(t.size=g.fillsize[0]*i(b)+n+g.fillsize[1]*i(c)),l.appendChild(t)}m.visibility="visible"}};c.toString=function(){return"Your browser doesn’t support SVG. Falling down to VML.\nYou are running Raphaël "+this.version};var A=function(a,c,d){for(var e=b(c).toLowerCase().split("-"),f=d?"end":"start",g=e.length,h="classic",i="medium",j="medium";g--;)switch(e[g]){case"block":case"classic":case"oval":case"diamond":case"open":case"none":h=e[g];break;case"wide":case"narrow":j=e[g];break;case"long":case"short":i=e[g]}var k=a.node.getElementsByTagName("stroke")[0];k[f+"arrow"]=h,k[f+"arrowlength"]=i,k[f+"arrowwidth"]=j},B=function(e,i){e.attrs=e.attrs||{};var l=e.node,m=e.attrs,p=l.style,q=v[e.type]&&(i.x!=m.x||i.y!=m.y||i.width!=m.width||i.height!=m.height||i.cx!=m.cx||i.cy!=m.cy||i.rx!=m.rx||i.ry!=m.ry||i.r!=m.r),r=w[e.type]&&(m.cx!=i.cx||m.cy!=i.cy||m.r!=i.r||m.rx!=i.rx||m.ry!=i.ry),s=e;for(var t in i)i[a](t)&&(m[t]=i[t]);if(q&&(m.path=c._getPath[e.type](e),e._.dirty=1),i.href&&(l.href=i.href),i.title&&(l.title=i.title),i.target&&(l.target=i.target),i.cursor&&(p.cursor=i.cursor),"blur"in i&&e.blur(i.blur),(i.path&&"path"==e.type||q)&&(l.path=x(~b(m.path).toLowerCase().indexOf("r")?c._pathToAbsolute(m.path):m.path),"image"==e.type&&(e._.fillpos=[m.x,m.y],e._.fillsize=[m.width,m.height],z(e,1,1,0,0,0))),"transform"in i&&e.transform(i.transform),r){var y=+m.cx,B=+m.cy,D=+m.rx||+m.r||0,E=+m.ry||+m.r||0;l.path=c.format("ar{0},{1},{2},{3},{4},{1},{4},{1}x",f((y-D)*u),f((B-E)*u),f((y+D)*u),f((B+E)*u),f(y*u)),e._.dirty=1}if("clip-rect"in i){var G=b(i["clip-rect"]).split(k);if(4==G.length){G[2]=+G[2]+ +G[0],G[3]=+G[3]+ +G[1];var H=l.clipRect||c._g.doc.createElement("div"),I=H.style;I.clip=c.format("rect({1}px {2}px {3}px {0}px)",G),l.clipRect||(I.position="absolute",I.top=0,I.left=0,I.width=e.paper.width+"px",I.height=e.paper.height+"px",l.parentNode.insertBefore(H,l),H.appendChild(l),l.clipRect=H)}i["clip-rect"]||l.clipRect&&(l.clipRect.style.clip="auto")}if(e.textpath){var J=e.textpath.style;i.font&&(J.font=i.font),i["font-family"]&&(J.fontFamily='"'+i["font-family"].split(",")[0].replace(/^['"]+|['"]+$/g,o)+'"'),i["font-size"]&&(J.fontSize=i["font-size"]),i["font-weight"]&&(J.fontWeight=i["font-weight"]),i["font-style"]&&(J.fontStyle=i["font-style"])}if("arrow-start"in i&&A(s,i["arrow-start"]),"arrow-end"in i&&A(s,i["arrow-end"],1),null!=i.opacity||null!=i["stroke-width"]||null!=i.fill||null!=i.src||null!=i.stroke||null!=i["stroke-width"]||null!=i["stroke-opacity"]||null!=i["fill-opacity"]||null!=i["stroke-dasharray"]||null!=i["stroke-miterlimit"]||null!=i["stroke-linejoin"]||null!=i["stroke-linecap"]){var K=l.getElementsByTagName(j),L=!1;if(K=K&&K[0],!K&&(L=K=F(j)),"image"==e.type&&i.src&&(K.src=i.src),i.fill&&(K.on=!0),(null==K.on||"none"==i.fill||null===i.fill)&&(K.on=!1),K.on&&i.fill){var M=b(i.fill).match(c._ISURL);if(M){K.parentNode==l&&l.removeChild(K),K.rotate=!0,K.src=M[1],K.type="tile";var N=e.getBBox(1);K.position=N.x+n+N.y,e._.fillpos=[N.x,N.y],c._preload(M[1],function(){e._.fillsize=[this.offsetWidth,this.offsetHeight]})}else K.color=c.getRGB(i.fill).hex,K.src=o,K.type="solid",c.getRGB(i.fill).error&&(s.type in{circle:1,ellipse:1}||"r"!=b(i.fill).charAt())&&C(s,i.fill,K)&&(m.fill="none",m.gradient=i.fill,K.rotate=!1)}if("fill-opacity"in i||"opacity"in i){var O=((+m["fill-opacity"]+1||2)-1)*((+m.opacity+1||2)-1)*((+c.getRGB(i.fill).o+1||2)-1);O=h(g(O,0),1),K.opacity=O,K.src&&(K.color="none")}l.appendChild(K);var P=l.getElementsByTagName("stroke")&&l.getElementsByTagName("stroke")[0],Q=!1;!P&&(Q=P=F("stroke")),(i.stroke&&"none"!=i.stroke||i["stroke-width"]||null!=i["stroke-opacity"]||i["stroke-dasharray"]||i["stroke-miterlimit"]||i["stroke-linejoin"]||i["stroke-linecap"])&&(P.on=!0),("none"==i.stroke||null===i.stroke||null==P.on||0==i.stroke||0==i["stroke-width"])&&(P.on=!1);var R=c.getRGB(i.stroke);P.on&&i.stroke&&(P.color=R.hex),O=((+m["stroke-opacity"]+1||2)-1)*((+m.opacity+1||2)-1)*((+R.o+1||2)-1);var S=.75*(d(i["stroke-width"])||1);if(O=h(g(O,0),1),null==i["stroke-width"]&&(S=m["stroke-width"]),i["stroke-width"]&&(P.weight=S),S&&1>S&&(O*=S)&&(P.weight=1),P.opacity=O,i["stroke-linejoin"]&&(P.joinstyle=i["stroke-linejoin"]||"miter"),P.miterlimit=i["stroke-miterlimit"]||8,i["stroke-linecap"]&&(P.endcap="butt"==i["stroke-linecap"]?"flat":"square"==i["stroke-linecap"]?"square":"round"),"stroke-dasharray"in i){var T={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};P.dashstyle=T[a](i["stroke-dasharray"])?T[i["stroke-dasharray"]]:o}Q&&l.appendChild(P)}if("text"==s.type){s.paper.canvas.style.display=o;var U=s.paper.span,V=100,W=m.font&&m.font.match(/\d+(?:\.\d*)?(?=px)/);p=U.style,m.font&&(p.font=m.font),m["font-family"]&&(p.fontFamily=m["font-family"]),m["font-weight"]&&(p.fontWeight=m["font-weight"]),m["font-style"]&&(p.fontStyle=m["font-style"]),W=d(m["font-size"]||W&&W[0])||10,p.fontSize=W*V+"px",s.textpath.string&&(U.innerHTML=b(s.textpath.string).replace(/"));var X=U.getBoundingClientRect();s.W=m.w=(X.right-X.left)/V,s.H=m.h=(X.bottom-X.top)/V,s.X=m.x,s.Y=m.y+s.H/2,("x"in i||"y"in i)&&(s.path.v=c.format("m{0},{1}l{2},{1}",f(m.x*u),f(m.y*u),f(m.x*u)+1));for(var Y=["x","y","text","font","font-family","font-weight","font-style","font-size"],Z=0,$=Y.length;$>Z;Z++)if(Y[Z]in i){s._.dirty=1;break}switch(m["text-anchor"]){case"start":s.textpath.style["v-text-align"]="left",s.bbx=s.W/2;break;case"end":s.textpath.style["v-text-align"]="right",s.bbx=-s.W/2;break;default:s.textpath.style["v-text-align"]="center",s.bbx=0}s.textpath.style["v-text-kern"]=!0}},C=function(a,f,g){a.attrs=a.attrs||{};var h=(a.attrs,Math.pow),i="linear",j=".5 .5";if(a.attrs.gradient=f,f=b(f).replace(c._radial_gradient,function(a,b,c){return i="radial",b&&c&&(b=d(b),c=d(c),h(b-.5,2)+h(c-.5,2)>.25&&(c=e.sqrt(.25-h(b-.5,2))*(2*(c>.5)-1)+.5),j=b+n+c),o}),f=f.split(/\s*\-\s*/),"linear"==i){var k=f.shift();if(k=-d(k),isNaN(k))return null}var l=c._parseDots(f);if(!l)return null;if(a=a.shape||a.node,l.length){a.removeChild(g),g.on=!0,g.method="none",g.color=l[0].color,g.color2=l[l.length-1].color;for(var m=[],p=0,q=l.length;q>p;p++)l[p].offset&&m.push(l[p].offset+n+l[p].color);g.colors=m.length?m.join():"0% "+g.color,"radial"==i?(g.type="gradientTitle",g.focus="100%",g.focussize="0 0",g.focusposition=j,g.angle=0):(g.type="gradient",g.angle=(270-k)%360),a.appendChild(g)}return 1},D=function(a,b){this[0]=this.node=a,a.raphael=!0,this.id=c._oid++,a.raphaelid=this.id,this.X=0,this.Y=0,this.attrs={},this.paper=b,this.matrix=c.matrix(),this._={transform:[],sx:1,sy:1,dx:0,dy:0,deg:0,dirty:1,dirtyT:1},!b.bottom&&(b.bottom=this),this.prev=b.top,b.top&&(b.top.next=this),b.top=this,this.next=null},E=c.el;D.prototype=E,E.constructor=D,E.transform=function(a){if(null==a)return this._.transform;var d,e=this.paper._viewBoxShift,f=e?"s"+[e.scale,e.scale]+"-1-1t"+[e.dx,e.dy]:o;e&&(d=a=b(a).replace(/\.{3}|\u2026/g,this._.transform||o)),c._extractTransform(this,f+a);var g,h=this.matrix.clone(),i=this.skew,j=this.node,k=~b(this.attrs.fill).indexOf("-"),l=!b(this.attrs.fill).indexOf("url(");if(h.translate(1,1),l||k||"image"==this.type)if(i.matrix="1 0 0 1",i.offset="0 0",g=h.split(),k&&g.noRotation||!g.isSimple){j.style.filter=h.toFilter();var m=this.getBBox(),p=this.getBBox(1),q=m.x-p.x,r=m.y-p.y;j.coordorigin=q*-u+n+r*-u,z(this,1,1,q,r,0)}else j.style.filter=o,z(this,g.scalex,g.scaley,g.dx,g.dy,g.rotate);else j.style.filter=o,i.matrix=b(h),i.offset=h.offset();return d&&(this._.transform=d),this},E.rotate=function(a,c,e){if(this.removed)return this;if(null!=a){if(a=b(a).split(k),a.length-1&&(c=d(a[1]),e=d(a[2])),a=d(a[0]),null==e&&(c=e),null==c||null==e){var f=this.getBBox(1);c=f.x+f.width/2,e=f.y+f.height/2}return this._.dirtyT=1,this.transform(this._.transform.concat([["r",a,c,e]])),this}},E.translate=function(a,c){return this.removed?this:(a=b(a).split(k),a.length-1&&(c=d(a[1])),a=d(a[0])||0,c=+c||0,this._.bbox&&(this._.bbox.x+=a,this._.bbox.y+=c),this.transform(this._.transform.concat([["t",a,c]])),this)},E.scale=function(a,c,e,f){if(this.removed)return this;if(a=b(a).split(k),a.length-1&&(c=d(a[1]),e=d(a[2]),f=d(a[3]),isNaN(e)&&(e=null),isNaN(f)&&(f=null)),a=d(a[0]),null==c&&(c=a),null==f&&(e=f),null==e||null==f)var g=this.getBBox(1);return e=null==e?g.x+g.width/2:e,f=null==f?g.y+g.height/2:f,this.transform(this._.transform.concat([["s",a,c,e,f]])),this._.dirtyT=1,this},E.hide=function(){return!this.removed&&(this.node.style.display="none"),this},E.show=function(){return!this.removed&&(this.node.style.display=o),this},E._getBBox=function(){return this.removed?{}:{x:this.X+(this.bbx||0)-this.W/2,y:this.Y-this.H,width:this.W,height:this.H}},E.remove=function(){if(!this.removed&&this.node.parentNode){this.paper.__set__&&this.paper.__set__.exclude(this),c.eve.unbind("raphael.*.*."+this.id),c._tear(this,this.paper),this.node.parentNode.removeChild(this.node),this.shape&&this.shape.parentNode.removeChild(this.shape);for(var a in this)this[a]="function"==typeof this[a]?c._removedFactory(a):null;this.removed=!0}},E.attr=function(b,d){if(this.removed)return this;if(null==b){var e={};for(var f in this.attrs)this.attrs[a](f)&&(e[f]=this.attrs[f]);return e.gradient&&"none"==e.fill&&(e.fill=e.gradient)&&delete e.gradient,e.transform=this._.transform,e}if(null==d&&c.is(b,"string")){if(b==j&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;for(var g=b.split(k),h={},i=0,m=g.length;m>i;i++)b=g[i],h[b]=b in this.attrs?this.attrs[b]:c.is(this.paper.customAttributes[b],"function")?this.paper.customAttributes[b].def:c._availableAttrs[b];return m-1?h:h[g[0]]}if(this.attrs&&null==d&&c.is(b,"array")){for(h={},i=0,m=b.length;m>i;i++)h[b[i]]=this.attr(b[i]);return h}var n;null!=d&&(n={},n[b]=d),null==d&&c.is(b,"object")&&(n=b);for(var o in n)l("raphael.attr."+o+"."+this.id,this,n[o]);if(n){for(o in this.paper.customAttributes)if(this.paper.customAttributes[a](o)&&n[a](o)&&c.is(this.paper.customAttributes[o],"function")){var p=this.paper.customAttributes[o].apply(this,[].concat(n[o]));this.attrs[o]=n[o];for(var q in p)p[a](q)&&(n[q]=p[q])}n.text&&"text"==this.type&&(this.textpath.string=n.text),B(this,n)}return this},E.toFront=function(){return!this.removed&&this.node.parentNode.appendChild(this.node),this.paper&&this.paper.top!=this&&c._tofront(this,this.paper),this},E.toBack=function(){return this.removed?this:(this.node.parentNode.firstChild!=this.node&&(this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild),c._toback(this,this.paper)),this)},E.insertAfter=function(a){return this.removed?this:(a.constructor==c.st.constructor&&(a=a[a.length-1]),a.node.nextSibling?a.node.parentNode.insertBefore(this.node,a.node.nextSibling):a.node.parentNode.appendChild(this.node),c._insertafter(this,a,this.paper),this)},E.insertBefore=function(a){return this.removed?this:(a.constructor==c.st.constructor&&(a=a[0]),a.node.parentNode.insertBefore(this.node,a.node),c._insertbefore(this,a,this.paper),this)},E.blur=function(a){var b=this.node.runtimeStyle,d=b.filter;return d=d.replace(r,o),0!==+a?(this.attrs.blur=a,b.filter=d+n+m+".Blur(pixelradius="+(+a||1.5)+")",b.margin=c.format("-{0}px 0 0 -{0}px",f(+a||1.5))):(b.filter=d,b.margin=0,delete this.attrs.blur),this},c._engine.path=function(a,b){var c=F("shape");c.style.cssText=t,c.coordsize=u+n+u,c.coordorigin=b.coordorigin;var d=new D(c,b),e={fill:"none",stroke:"#000"};a&&(e.path=a),d.type="path",d.path=[],d.Path=o,B(d,e),b.canvas.appendChild(c);var f=F("skew");return f.on=!0,c.appendChild(f),d.skew=f,d.transform(o),d},c._engine.rect=function(a,b,d,e,f,g){var h=c._rectPath(b,d,e,f,g),i=a.path(h),j=i.attrs;return i.X=j.x=b,i.Y=j.y=d,i.W=j.width=e,i.H=j.height=f,j.r=g,j.path=h,i.type="rect",i},c._engine.ellipse=function(a,b,c,d,e){{var f=a.path();f.attrs}return f.X=b-d,f.Y=c-e,f.W=2*d,f.H=2*e,f.type="ellipse",B(f,{cx:b,cy:c,rx:d,ry:e}),f},c._engine.circle=function(a,b,c,d){{var e=a.path();e.attrs}return e.X=b-d,e.Y=c-d,e.W=e.H=2*d,e.type="circle",B(e,{cx:b,cy:c,r:d}),e},c._engine.image=function(a,b,d,e,f,g){var h=c._rectPath(d,e,f,g),i=a.path(h).attr({stroke:"none"}),k=i.attrs,l=i.node,m=l.getElementsByTagName(j)[0];return k.src=b,i.X=k.x=d,i.Y=k.y=e,i.W=k.width=f,i.H=k.height=g,k.path=h,i.type="image",m.parentNode==l&&l.removeChild(m),m.rotate=!0,m.src=b,m.type="tile",i._.fillpos=[d,e],i._.fillsize=[f,g],l.appendChild(m),z(i,1,1,0,0,0),i},c._engine.text=function(a,d,e,g){var h=F("shape"),i=F("path"),j=F("textpath");d=d||0,e=e||0,g=g||"",i.v=c.format("m{0},{1}l{2},{1}",f(d*u),f(e*u),f(d*u)+1),i.textpathok=!0,j.string=b(g),j.on=!0,h.style.cssText=t,h.coordsize=u+n+u,h.coordorigin="0 0";var k=new D(h,a),l={fill:"#000",stroke:"none",font:c._availableAttrs.font,text:g};k.shape=h,k.path=i,k.textpath=j,k.type="text",k.attrs.text=b(g),k.attrs.x=d,k.attrs.y=e,k.attrs.w=1,k.attrs.h=1,B(k,l),h.appendChild(j),h.appendChild(i),a.canvas.appendChild(h);var m=F("skew");return m.on=!0,h.appendChild(m),k.skew=m,k.transform(o),k},c._engine.setSize=function(a,b){var d=this.canvas.style;return this.width=a,this.height=b,a==+a&&(a+="px"),b==+b&&(b+="px"),d.width=a,d.height=b,d.clip="rect(0 "+a+" "+b+" 0)",this._viewBox&&c._engine.setViewBox.apply(this,this._viewBox),this},c._engine.setViewBox=function(a,b,d,e,f){c.eve("raphael.setViewBox",this,this._viewBox,[a,b,d,e,f]);var h,i,j=this.width,k=this.height,l=1/g(d/j,e/k);return f&&(h=k/e,i=j/d,j>d*h&&(a-=(j-d*h)/2/h),k>e*i&&(b-=(k-e*i)/2/i)),this._viewBox=[a,b,d,e,!!f],this._viewBoxShift={dx:-a,dy:-b,scale:l},this.forEach(function(a){a.transform("...")}),this};var F;c._engine.initWin=function(a){var b=a.document;b.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)");try{!b.namespaces.rvml&&b.namespaces.add("rvml","urn:schemas-microsoft-com:vml"),F=function(a){return b.createElement("')}}catch(c){F=function(a){return b.createElement("<"+a+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">')}}},c._engine.initWin(c._g.win),c._engine.create=function(){var a=c._getContainer.apply(0,arguments),b=a.container,d=a.height,e=a.width,f=a.x,g=a.y;if(!b)throw new Error("VML container not found.");var h=new c._Paper,i=h.canvas=c._g.doc.createElement("div"),j=i.style;return f=f||0,g=g||0,e=e||512,d=d||342,h.width=e,h.height=d,e==+e&&(e+="px"),d==+d&&(d+="px"),h.coordsize=1e3*u+n+1e3*u,h.coordorigin="0 0",h.span=c._g.doc.createElement("span"),h.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;",i.appendChild(h.span),j.cssText=c.format("top:0;left:0;width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",e,d),1==b?(c._g.doc.body.appendChild(i),j.left=f+"px",j.top=g+"px",j.position="absolute"):b.firstChild?b.insertBefore(i,b.firstChild):b.appendChild(i),h.renderfix=function(){},h},c.prototype.clear=function(){c.eve("raphael.clear",this),this.canvas.innerHTML=o,this.span=c._g.doc.createElement("span"),this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;",this.canvas.appendChild(this.span),this.bottom=this.top=null},c.prototype.remove=function(){c.eve("raphael.remove",this),this.canvas.parentNode.removeChild(this.canvas);for(var a in this)this[a]="function"==typeof this[a]?c._removedFactory(a):null;return!0};var G=c.st;for(var H in E)E[a](H)&&!G[a](H)&&(G[H]=function(a){return function(){var b=arguments;return this.forEach(function(c){c[a].apply(c,b)})}}(H))}}(),B.was?A.win.Raphael=c:Raphael=c,c}); \ No newline at end of file +!function t(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.Raphael=r():e.Raphael=r()}(this,function(){return function(t){function e(i){if(r[i])return r[i].exports;var n=r[i]={exports:{},id:i,loaded:!1};return t[i].call(n.exports,n,n.exports,e),n.loaded=!0,n.exports}var r={};return e.m=t,e.c=r,e.p="",e(0)}([function(t,e,r){var i,n;i=[r(1),r(3),r(4)],n=function(t){return t}.apply(e,i),!(void 0!==n&&(t.exports=n))},function(t,e,r){var i,n;i=[r(2)],n=function(t){function e(r){if(e.is(r,"function"))return w?r():t.on("raphael.DOMload",r);if(e.is(r,Q))return e._engine.create[z](e,r.splice(0,3+e.is(r[0],$))).add(r);var i=Array.prototype.slice.call(arguments,0);if(e.is(i[i.length-1],"function")){var n=i.pop();return w?n.call(e._engine.create[z](e,i)):t.on("raphael.DOMload",function(){n.call(e._engine.create[z](e,i))})}return e._engine.create[z](e,arguments)}function r(t){if("function"==typeof t||Object(t)!==t)return t;var e=new t.constructor;for(var i in t)t[A](i)&&(e[i]=r(t[i]));return e}function i(t,e){for(var r=0,i=t.length;r=1e3&&delete o[l.shift()],l.push(s),o[s]=t[z](e,a),r?r(o[s]):o[s])}return n}function a(){return this.hex}function s(t,e){for(var r=[],i=0,n=t.length;n-2*!e>i;i+=2){var a=[{x:+t[i-2],y:+t[i-1]},{x:+t[i],y:+t[i+1]},{x:+t[i+2],y:+t[i+3]},{x:+t[i+4],y:+t[i+5]}];e?i?n-4==i?a[3]={x:+t[0],y:+t[1]}:n-2==i&&(a[2]={x:+t[0],y:+t[1]},a[3]={x:+t[2],y:+t[3]}):a[0]={x:+t[n-2],y:+t[n-1]}:n-4==i?a[3]=a[2]:i||(a[0]={x:+t[i],y:+t[i+1]}),r.push(["C",(-a[0].x+6*a[1].x+a[2].x)/6,(-a[0].y+6*a[1].y+a[2].y)/6,(a[1].x+6*a[2].x-a[3].x)/6,(a[1].y+6*a[2].y-a[3].y)/6,a[2].x,a[2].y])}return r}function o(t,e,r,i,n){var a=-3*e+9*r-9*i+3*n,s=t*a+6*e-12*r+6*i;return t*s-3*e+3*r}function l(t,e,r,i,n,a,s,l,h){null==h&&(h=1),h=h>1?1:h<0?0:h;for(var u=h/2,c=12,f=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],p=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],d=0,g=0;gd;)c/=2,f+=(pW(n,s)||W(e,i)W(a,o))){var l=(t*i-e*r)*(n-s)-(t-r)*(n*o-a*s),h=(t*i-e*r)*(a-o)-(e-i)*(n*o-a*s),u=(t-r)*(a-o)-(e-i)*(n-s);if(u){var c=l/u,f=h/u,p=+c.toFixed(2),d=+f.toFixed(2);if(!(p<+G(t,r).toFixed(2)||p>+W(t,r).toFixed(2)||p<+G(n,s).toFixed(2)||p>+W(n,s).toFixed(2)||d<+G(e,i).toFixed(2)||d>+W(e,i).toFixed(2)||d<+G(a,o).toFixed(2)||d>+W(a,o).toFixed(2)))return{x:c,y:f}}}}function c(t,e){return p(t,e)}function f(t,e){return p(t,e,1)}function p(t,r,i){var n=e.bezierBBox(t),a=e.bezierBBox(r);if(!e.isBBoxIntersect(n,a))return i?0:[];for(var s=l.apply(0,t),o=l.apply(0,r),h=W(~~(s/5),1),c=W(~~(o/5),1),f=[],p=[],d={},g=i?0:[],v=0;v=0&&S<=1.001&&A>=0&&A<=1.001&&(i?g++:g.push({x:C.x,y:C.y,t1:G(S,1),t2:G(A,1)}))}}return g}function d(t,r,i){t=e._path2curve(t),r=e._path2curve(r);for(var n,a,s,o,l,h,u,c,f,d,g=i?0:[],v=0,x=t.length;vi)return i;for(;ra?r=n:i=n,n=(i-r)/2+r}return n}var h=3*e,u=3*(i-e)-h,c=1-h-u,f=3*r,p=3*(n-r)-f,d=1-f-p;return o(t,1/(200*a))}function m(t,e){var r=[],i={};if(this.ms=e,this.times=1,t){for(var n in t)t[A](n)&&(i[ht(n)]=t[n],r.push(ht(n)));r.sort(Bt)}this.anim=i,this.top=r[r.length-1],this.percents=r}function b(r,i,n,a,s,o){n=ht(n);var l,h,u,c=[],f,p,d,v=r.ms,x={},m={},b={};if(a)for(w=0,B=Ee.length;wa*r.top){n=r.percents[w],p=r.percents[w-1]||0,v=v/r.top*(n-p),f=r.percents[w+1],l=r.anim[n];break}a&&i.attr(r.anim[r.percents[w]])}if(l){if(h)h.initstatus=a,h.start=new Date-h.ms*a;else{for(var C in l)if(l[A](C)&&(pt[A](C)||i.paper.customAttributes[A](C)))switch(x[C]=i.attr(C),null==x[C]&&(x[C]=ft[C]),m[C]=l[C],pt[C]){case $:b[C]=(m[C]-x[C])/v;break;case"colour":x[C]=e.getRGB(x[C]);var S=e.getRGB(m[C]);b[C]={r:(S.r-x[C].r)/v,g:(S.g-x[C].g)/v,b:(S.b-x[C].b)/v};break;case"path":var T=Qt(x[C],m[C]),E=T[1];for(x[C]=T[0],b[C]=[],w=0,B=x[C].length;w',Lt=Nt.firstChild,Lt.style.behavior="url(#default#VML)",!Lt||"object"!=typeof Lt.adj)return e.type=R;Nt=null}e.svg=!(e.vml="VML"==e.type),e._Paper=M,e.fn=N=M.prototype=e.prototype,e._id=0,e.is=function(t,e){return e=O.call(e),"finite"==e?!at[A](+t):"array"==e?t instanceof Array:"null"==e&&null===t||e==typeof t&&null!==t||"object"==e&&t===Object(t)||"array"==e&&Array.isArray&&Array.isArray(t)||tt.call(t).slice(8,-1).toLowerCase()==e},e.angle=function(t,r,i,n,a,s){if(null==a){var o=t-i,l=r-n;return o||l?(180+180*Y.atan2(-l,-o)/U+360)%360:0}return e.angle(t,r,a,s)-e.angle(i,n,a,s)},e.rad=function(t){return t%360*U/180},e.deg=function(t){return Math.round(180*t/U%360*1e3)/1e3},e.snapTo=function(t,r,i){if(i=e.is(i,"finite")?i:10,e.is(t,Q)){for(var n=t.length;n--;)if(H(t[n]-r)<=i)return t[n]}else{t=+t;var a=r%t;if(at-i)return r-a+t}return r};var zt=e.createUUID=function(t,e){return function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(t,e).toUpperCase()}}(/[xy]/g,function(t){var e=16*Y.random()|0,r="x"==t?e:3&e|8;return r.toString(16)});e.setWindow=function(r){t("raphael.setWindow",e,T.win,r),T.win=r,T.doc=T.win.document,e._engine.initWin&&e._engine.initWin(T.win)};var Pt=function(t){if(e.vml){var r=/^\s+|\s+$/g,i;try{var a=new ActiveXObject("htmlfile");a.write(""),a.close(),i=a.body}catch(s){i=createPopup().document.body}var o=i.createTextRange();Pt=n(function(t){try{i.style.color=I(t).replace(r,R);var e=o.queryCommandValue("ForeColor");return e=(255&e)<<16|65280&e|(16711680&e)>>>16,"#"+("000000"+e.toString(16)).slice(-6)}catch(n){return"none"}})}else{var l=T.doc.createElement("i");l.title="Raphaël Colour Picker",l.style.display="none",T.doc.body.appendChild(l),Pt=n(function(t){return l.style.color=t,T.doc.defaultView.getComputedStyle(l,R).getPropertyValue("color")})}return Pt(t)},Ft=function(){return"hsb("+[this.h,this.s,this.b]+")"},Rt=function(){return"hsl("+[this.h,this.s,this.l]+")"},jt=function(){return this.hex},It=function(t,r,i){if(null==r&&e.is(t,"object")&&"r"in t&&"g"in t&&"b"in t&&(i=t.b,r=t.g,t=t.r),null==r&&e.is(t,Z)){var n=e.getRGB(t);t=n.r,r=n.g,i=n.b}return(t>1||r>1||i>1)&&(t/=255,r/=255,i/=255),[t,r,i]},qt=function(t,r,i,n){t*=255,r*=255,i*=255;var a={r:t,g:r,b:i,hex:e.rgb(t,r,i),toString:jt};return e.is(n,"finite")&&(a.opacity=n),a};e.color=function(t){var r;return e.is(t,"object")&&"h"in t&&"s"in t&&"b"in t?(r=e.hsb2rgb(t),t.r=r.r,t.g=r.g,t.b=r.b,t.hex=r.hex):e.is(t,"object")&&"h"in t&&"s"in t&&"l"in t?(r=e.hsl2rgb(t),t.r=r.r,t.g=r.g,t.b=r.b,t.hex=r.hex):(e.is(t,"string")&&(t=e.getRGB(t)),e.is(t,"object")&&"r"in t&&"g"in t&&"b"in t?(r=e.rgb2hsl(t),t.h=r.h,t.s=r.s,t.l=r.l,r=e.rgb2hsb(t),t.v=r.b):(t={hex:"none"},t.r=t.g=t.b=t.h=t.s=t.v=t.l=-1)),t.toString=jt,t},e.hsb2rgb=function(t,e,r,i){this.is(t,"object")&&"h"in t&&"s"in t&&"b"in t&&(r=t.b,e=t.s,i=t.o,t=t.h),t*=360;var n,a,s,o,l;return t=t%360/60,l=r*e,o=l*(1-H(t%2-1)),n=a=s=r-l,t=~~t,n+=[l,o,0,0,o,l][t],a+=[o,l,l,o,0,0][t],s+=[0,0,o,l,l,o][t],qt(n,a,s,i)},e.hsl2rgb=function(t,e,r,i){this.is(t,"object")&&"h"in t&&"s"in t&&"l"in t&&(r=t.l,e=t.s,t=t.h),(t>1||e>1||r>1)&&(t/=360,e/=100,r/=100),t*=360;var n,a,s,o,l;return t=t%360/60,l=2*e*(r<.5?r:1-r),o=l*(1-H(t%2-1)),n=a=s=r-l/2,t=~~t,n+=[l,o,0,0,o,l][t],a+=[o,l,l,o,0,0][t],s+=[0,0,o,l,l,o][t],qt(n,a,s,i)},e.rgb2hsb=function(t,e,r){r=It(t,e,r),t=r[0],e=r[1],r=r[2];var i,n,a,s;return a=W(t,e,r),s=a-G(t,e,r),i=0==s?null:a==t?(e-r)/s:a==e?(r-t)/s+2:(t-e)/s+4,i=(i+360)%6*60/360,n=0==s?0:s/a,{h:i,s:n,b:a,toString:Ft}},e.rgb2hsl=function(t,e,r){r=It(t,e,r),t=r[0],e=r[1],r=r[2];var i,n,a,s,o,l;return s=W(t,e,r),o=G(t,e,r),l=s-o,i=0==l?null:s==t?(e-r)/l:s==e?(r-t)/l+2:(t-e)/l+4,i=(i+360)%6*60/360,a=(s+o)/2,n=0==l?0:a<.5?l/(2*a):l/(2-2*a),{h:i,s:n,l:a,toString:Rt}},e._path2string=function(){return this.join(",").replace(xt,"$1")};var Dt=e._preload=function(t,e){var r=T.doc.createElement("img");r.style.cssText="position:absolute;left:-9999em;top:-9999em",r.onload=function(){e.call(this),this.onload=null,T.doc.body.removeChild(this)},r.onerror=function(){T.doc.body.removeChild(this)},T.doc.body.appendChild(r),r.src=t};e.getRGB=n(function(t){if(!t||(t=I(t)).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:a};if("none"==t)return{r:-1,g:-1,b:-1,hex:"none",toString:a};!(vt[A](t.toLowerCase().substring(0,2))||"#"==t.charAt())&&(t=Pt(t));var r,i,n,s,o,l,h,u=t.match(nt);return u?(u[2]&&(s=ut(u[2].substring(5),16),n=ut(u[2].substring(3,5),16),i=ut(u[2].substring(1,3),16)),u[3]&&(s=ut((l=u[3].charAt(3))+l,16),n=ut((l=u[3].charAt(2))+l,16),i=ut((l=u[3].charAt(1))+l,16)),u[4]&&(h=u[4][q](gt),i=ht(h[0]),"%"==h[0].slice(-1)&&(i*=2.55),n=ht(h[1]),"%"==h[1].slice(-1)&&(n*=2.55),s=ht(h[2]),"%"==h[2].slice(-1)&&(s*=2.55),"rgba"==u[1].toLowerCase().slice(0,4)&&(o=ht(h[3])),h[3]&&"%"==h[3].slice(-1)&&(o/=100)),u[5]?(h=u[5][q](gt),i=ht(h[0]),"%"==h[0].slice(-1)&&(i*=2.55),n=ht(h[1]),"%"==h[1].slice(-1)&&(n*=2.55),s=ht(h[2]),"%"==h[2].slice(-1)&&(s*=2.55),("deg"==h[0].slice(-3)||"°"==h[0].slice(-1))&&(i/=360),"hsba"==u[1].toLowerCase().slice(0,4)&&(o=ht(h[3])),h[3]&&"%"==h[3].slice(-1)&&(o/=100),e.hsb2rgb(i,n,s,o)):u[6]?(h=u[6][q](gt),i=ht(h[0]),"%"==h[0].slice(-1)&&(i*=2.55),n=ht(h[1]),"%"==h[1].slice(-1)&&(n*=2.55),s=ht(h[2]),"%"==h[2].slice(-1)&&(s*=2.55),("deg"==h[0].slice(-3)||"°"==h[0].slice(-1))&&(i/=360),"hsla"==u[1].toLowerCase().slice(0,4)&&(o=ht(h[3])),h[3]&&"%"==h[3].slice(-1)&&(o/=100),e.hsl2rgb(i,n,s,o)):(u={r:i,g:n,b:s,toString:a},u.hex="#"+(16777216|s|n<<8|i<<16).toString(16).slice(1),e.is(o,"finite")&&(u.opacity=o),u)):{r:-1,g:-1,b:-1,hex:"none",error:1,toString:a}},e),e.hsb=n(function(t,r,i){return e.hsb2rgb(t,r,i).hex}),e.hsl=n(function(t,r,i){return e.hsl2rgb(t,r,i).hex}),e.rgb=n(function(t,e,r){function i(t){return t+.5|0}return"#"+(16777216|i(r)|i(e)<<8|i(t)<<16).toString(16).slice(1)}),e.getColor=function(t){var e=this.getColor.start=this.getColor.start||{h:0,s:1,b:t||.75},r=this.hsb2rgb(e.h,e.s,e.b);return e.h+=.075,e.h>1&&(e.h=0,e.s-=.2,e.s<=0&&(this.getColor.start={h:0,s:1,b:e.b})),r.hex},e.getColor.reset=function(){delete this.start},e.parsePathString=function(t){if(!t)return null;var r=Vt(t);if(r.arr)return Yt(r.arr);var i={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},n=[];return e.is(t,Q)&&e.is(t[0],Q)&&(n=Yt(t)),n.length||I(t).replace(yt,function(t,e,r){var a=[],s=e.toLowerCase();if(r.replace(bt,function(t,e){e&&a.push(+e)}),"m"==s&&a.length>2&&(n.push([e][P](a.splice(0,2))),s="l",e="m"==e?"l":"L"),"r"==s)n.push([e][P](a));else for(;a.length>=i[s]&&(n.push([e][P](a.splice(0,i[s]))),i[s]););}),n.toString=e._path2string,r.arr=Yt(n),n},e.parseTransformString=n(function(t){if(!t)return null;var r={r:3,s:4,t:2,m:6},i=[];return e.is(t,Q)&&e.is(t[0],Q)&&(i=Yt(t)),i.length||I(t).replace(mt,function(t,e,r){var n=[],a=O.call(e);r.replace(bt,function(t,e){e&&n.push(+e)}),i.push([e][P](n))}),i.toString=e._path2string,i});var Vt=function(t){var e=Vt.ps=Vt.ps||{};return e[t]?e[t].sleep=100:e[t]={sleep:100},setTimeout(function(){for(var r in e)e[A](r)&&r!=t&&(e[r].sleep--,!e[r].sleep&&delete e[r])}),e[t]};e.findDotsAtSegment=function(t,e,r,i,n,a,s,o,l){var h=1-l,u=X(h,3),c=X(h,2),f=l*l,p=f*l,d=u*t+3*c*l*r+3*h*l*l*n+p*s,g=u*e+3*c*l*i+3*h*l*l*a+p*o,v=t+2*l*(r-t)+f*(n-2*r+t),x=e+2*l*(i-e)+f*(a-2*i+e),y=r+2*l*(n-r)+f*(s-2*n+r),m=i+2*l*(a-i)+f*(o-2*a+i),b=h*t+l*r,_=h*e+l*i,w=h*n+l*s,k=h*a+l*o,B=90-180*Y.atan2(v-y,x-m)/U;return(v>y||x=t.x&&e<=t.x2&&r>=t.y&&r<=t.y2},e.isBBoxIntersect=function(t,r){var i=e.isPointInsideBBox;return i(r,t.x,t.y)||i(r,t.x2,t.y)||i(r,t.x,t.y2)||i(r,t.x2,t.y2)||i(t,r.x,r.y)||i(t,r.x2,r.y)||i(t,r.x,r.y2)||i(t,r.x2,r.y2)||(t.xr.x||r.xt.x)&&(t.yr.y||r.yt.y)},e.pathIntersection=function(t,e){return d(t,e)},e.pathIntersectionNumber=function(t,e){return d(t,e,1)},e.isPointInsidePath=function(t,r,i){var n=e.pathBBox(t);return e.isPointInsideBBox(n,r,i)&&d(t,[["M",r,i],["H",n.x2+10]],1)%2==1},e._removedFactory=function(e){return function(){t("raphael.log",null,"Raphaël: you are calling to method “"+e+"” of removed object",e)}};var Ot=e.pathBBox=function(t){var e=Vt(t);if(e.bbox)return r(e.bbox);if(!t)return{x:0,y:0,width:0,height:0,x2:0,y2:0};t=Qt(t);for(var i=0,n=0,a=[],s=[],o,l=0,h=t.length;l1&&(b=Y.sqrt(b),r=b*r,i=b*i);var _=r*r,w=i*i,k=(s==o?-1:1)*Y.sqrt(H((_*w-_*m*m-w*y*y)/(_*m*m+w*y*y))),B=k*r*m/i+(t+l)/2,C=k*-i*y/r+(e+h)/2,S=Y.asin(((e-C)/i).toFixed(9)),A=Y.asin(((h-C)/i).toFixed(9));S=tA&&(S-=2*U),!o&&A>S&&(A-=2*U)}var T=A-S;if(H(T)>c){var E=A,M=l,N=h;A=S+c*(o&&A>S?1:-1),l=B+r*Y.cos(A),h=C+i*Y.sin(A),p=Ut(l,h,r,i,a,0,o,M,N,[A,E,B,C])}T=A-S;var L=Y.cos(S),z=Y.sin(S),F=Y.cos(A),R=Y.sin(A),j=Y.tan(T/4),I=4/3*r*j,D=4/3*i*j,V=[t,e],O=[t+I*z,e-D*L],W=[l+I*R,h-D*F],G=[l,h];if(O[0]=2*V[0]-O[0],O[1]=2*V[1]-O[1],u)return[O,W,G][P](p);p=[O,W,G][P](p).join()[q](",");for(var X=[],$=0,Z=p.length;$"1e12"&&(c=.5),H(f)>"1e12"&&(f=.5),c>0&&c<1&&(g=$t(t,e,r,i,n,a,s,o,c),d.push(g.x),p.push(g.y)),f>0&&f<1&&(g=$t(t,e,r,i,n,a,s,o,f),d.push(g.x),p.push(g.y)),l=a-2*i+e-(o-2*a+i),h=2*(i-e)-2*(a-i),u=e-i,c=(-h+Y.sqrt(h*h-4*l*u))/2/l,f=(-h-Y.sqrt(h*h-4*l*u))/2/l,H(c)>"1e12"&&(c=.5),H(f)>"1e12"&&(f=.5),c>0&&c<1&&(g=$t(t,e,r,i,n,a,s,o,c),d.push(g.x),p.push(g.y)),f>0&&f<1&&(g=$t(t,e,r,i,n,a,s,o,f),d.push(g.x),p.push(g.y)),{min:{x:G[z](0,d),y:G[z](0,p)},max:{x:W[z](0,d),y:W[z](0,p)}}}),Qt=e._path2curve=n(function(t,e){var r=!e&&Vt(t);if(!e&&r.curve)return Yt(r.curve);for(var i=Gt(t),n=e&&Gt(e),a={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},s={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},o=(function(t,e,r){var i,n,a={T:1,Q:1};if(!t)return["C",e.x,e.y,e.x,e.y,e.x,e.y];switch(!(t[0]in a)&&(e.qx=e.qy=null),t[0]){case"M":e.X=t[1],e.Y=t[2];break;case"A":t=["C"][P](Ut[z](0,[e.x,e.y][P](t.slice(1))));break;case"S":"C"==r||"S"==r?(i=2*e.x-e.bx,n=2*e.y-e.by):(i=e.x,n=e.y),t=["C",i,n][P](t.slice(1));break;case"T":"Q"==r||"T"==r?(e.qx=2*e.x-e.qx,e.qy=2*e.y-e.qy):(e.qx=e.x,e.qy=e.y),t=["C"][P](Xt(e.x,e.y,e.qx,e.qy,t[1],t[2]));break;case"Q":e.qx=t[1],e.qy=t[2],t=["C"][P](Xt(e.x,e.y,t[1],t[2],t[3],t[4]));break;case"L":t=["C"][P](Ht(e.x,e.y,t[1],t[2]));break;case"H":t=["C"][P](Ht(e.x,e.y,t[1],e.y));break;case"V":t=["C"][P](Ht(e.x,e.y,e.x,t[1]));break;case"Z":t=["C"][P](Ht(e.x,e.y,e.X,e.Y))}return t}),l=function(t,e){if(t[e].length>7){t[e].shift();for(var r=t[e];r.length;)u[e]="A",n&&(c[e]="A"),t.splice(e++,0,["C"][P](r.splice(0,6)));t.splice(e,1),g=W(i.length,n&&n.length||0)}},h=function(t,e,r,a,s){t&&e&&"M"==t[s][0]&&"M"!=e[s][0]&&(e.splice(s,0,["M",a.x,a.y]),r.bx=0,r.by=0,r.x=t[s][1],r.y=t[s][2],g=W(i.length,n&&n.length||0))},u=[],c=[],f="",p="",d=0,g=W(i.length,n&&n.length||0);dn){if(r&&!c.start){if(f=ke(s,o,l[1],l[2],l[3],l[4],l[5],l[6],n-p),u+=["C"+f.start.x,f.start.y,f.m.x,f.m.y,f.x,f.y],a)return u;c.start=u,u=["M"+f.x,f.y+"C"+f.n.x,f.n.y,f.end.x,f.end.y,l[5],l[6]].join(),p+=h,s=+l[5],o=+l[6];continue}if(!t&&!r)return f=ke(s,o,l[1],l[2],l[3],l[4],l[5],l[6],n-p),{x:f.x,y:f.y,alpha:f.alpha}}p+=h,s=+l[5],o=+l[6]}u+=l.shift()+l}return c.end=u,f=t?p:r?c:e.findDotsAtSegment(s,o,l[0],l[1],l[2],l[3],l[4],l[5],1),f.alpha&&(f={x:f.x,y:f.y,alpha:f.alpha}),f}},Ce=Be(1),Se=Be(),Ae=Be(0,1);e.getTotalLength=Ce,e.getPointAtLength=Se,e.getSubpath=function(t,e,r){if(this.getTotalLength(t)-r<1e-6)return Ae(t,e).end;var i=Ae(t,r,1);return e?Ae(i,e).end:i},ye.getTotalLength=function(){var t=this.getPath();if(t)return this.node.getTotalLength?this.node.getTotalLength():Ce(t)},ye.getPointAtLength=function(t){var e=this.getPath();if(e)return Se(e,t)},ye.getPath=function(){var t,r=e._getPath[this.type];if("text"!=this.type&&"set"!=this.type)return r&&(t=r(this)),t},ye.getSubpath=function(t,r){var i=this.getPath();if(i)return e.getSubpath(i,t,r)};var Te=e.easing_formulas={linear:function(t){return t},"<":function(t){return X(t,1.7)},">":function(t){return X(t,.48)},"<>":function(t){var e=.48-t/1.04,r=Y.sqrt(.1734+e*e),i=r-e,n=X(H(i),1/3)*(i<0?-1:1),a=-r-e,s=X(H(a),1/3)*(a<0?-1:1),o=n+s+.5;return 3*(1-o)*o*o+o*o*o},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){t-=1;var e=1.70158;return t*t*((e+1)*t+e)+1},elastic:function(t){return t==!!t?t:X(2,-10*t)*Y.sin((t-.075)*(2*U)/.3)+1},bounce:function(t){var e=7.5625,r=2.75,i;return t<1/r?i=e*t*t:t<2/r?(t-=1.5/r,i=e*t*t+.75):t<2.5/r?(t-=2.25/r,i=e*t*t+.9375):(t-=2.625/r,i=e*t*t+.984375),i}};Te.easeIn=Te["ease-in"]=Te["<"],Te.easeOut=Te["ease-out"]=Te[">"],Te.easeInOut=Te["ease-in-out"]=Te["<>"],Te["back-in"]=Te.backIn,Te["back-out"]=Te.backOut;var Ee=[],Me=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){setTimeout(t,16)},Ne=function(){for(var r=+new Date,i=0;i1&&!n.next){for(v in u)u[A](v)&&(g[v]=n.totalOrigin[v]);n.el.attr(g),b(n.anim,n.el,n.anim.percents[0],null,n.totalOrigin,n.repeat-1)}n.next&&!n.stop&&b(n.anim,n.el,n.next,null,n.totalOrigin,n.repeat)}}}Ee.length&&Me(Ne)},Le=function(t){return t>255?255:t<0?0:t};ye.animateWith=function(t,r,i,n,a,s){var o=this;if(o.removed)return s&&s.call(o),o;var l=i instanceof m?i:e.animation(i,n,a,s),h,u;b(l,o,l.percents[0],null,o.attr());for(var c=0,f=Ee.length;cl&&(l=u)}l+="%",!t[l].callback&&(t[l].callback=n)}return new m(t,r)},ye.animate=function(t,r,i,n){var a=this;if(a.removed)return n&&n.call(a),a;var s=t instanceof m?t:e.animation(t,r,i,n);return b(s,a,s.percents[0],null,a.attr()),a},ye.setTime=function(t,e){return t&&null!=e&&this.status(t,G(e,t.ms)/t.ms),this},ye.status=function(t,e){var r=[],i=0,n,a;if(null!=e)return b(t,this,-1,G(e,1)),this;for(n=Ee.length;i1)for(var i=0,n=r.length;i.5)-1;l(f-.5,2)+l(p-.5,2)>.25&&(p=a.sqrt(.25-l(f-.5,2))*n+.5)&&.5!=p&&(p=p.toFixed(5)-1e-5*n)}return c}),n=n.split(/\s*\-\s*/),"linear"==h){var b=n.shift();if(b=-i(b),isNaN(b))return null;var _=[0,0,a.cos(t.rad(b)),a.sin(t.rad(b))],w=1/(s(o(_[2]),o(_[3]))||1);_[2]*=w,_[3]*=w,_[2]<0&&(_[0]=-_[2],_[2]=0),_[3]<0&&(_[1]=-_[3],_[3]=0)}var k=t._parseDots(n);if(!k)return null;if(u=u.replace(/[\(\)\s,\xb0#]/g,"_"),e.gradient&&u!=e.gradient.id&&(g.defs.removeChild(e.gradient),delete e.gradient),!e.gradient){y=v(h+"Gradient",{id:u}),e.gradient=y,v(y,"radial"==h?{fx:f,fy:p}:{x1:_[0],y1:_[1],x2:_[2],y2:_[3],gradientTransform:e.matrix.invert()}),g.defs.appendChild(y);for(var B=0,C=k.length;B1?z.opacity/100:z.opacity});case"stroke":z=t.getRGB(g),l.setAttribute(d,z.hex),"stroke"==d&&z[e]("opacity")&&v(l,{"stroke-opacity":z.opacity>1?z.opacity/100:z.opacity}),"stroke"==d&&i._.arrows&&("startString"in i._.arrows&&_(i,i._.arrows.startString),"endString"in i._.arrows&&_(i,i._.arrows.endString,1));break;case"gradient":("circle"==i.type||"ellipse"==i.type||"r"!=r(g).charAt())&&x(i,g);break;case"opacity":u.gradient&&!u[e]("stroke-opacity")&&v(l,{"stroke-opacity":g>1?g/100:g});case"fill-opacity":if(u.gradient){P=t._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g,c)),P&&(F=P.getElementsByTagName("stop"),v(F[F.length-1],{"stop-opacity":g}));break}default:"font-size"==d&&(g=n(g,10)+"px");var R=d.replace(/(\-.)/g,function(t){return t.substring(1).toUpperCase()});l.style[R]=g,i._.dirty=1,l.setAttribute(d,g)}}S(i,a),l.style.visibility=f},C=1.2,S=function(i,a){if("text"==i.type&&(a[e]("text")||a[e]("font")||a[e]("font-size")||a[e]("x")||a[e]("y"))){var s=i.attrs,o=i.node,l=o.firstChild?n(t._g.doc.defaultView.getComputedStyle(o.firstChild,c).getPropertyValue("font-size"),10):10;if(a[e]("text")){for(s.text=a.text;o.firstChild;)o.removeChild(o.firstChild);for(var h=r(a.text).split("\n"),u=[],f,p=0,d=h.length;p"));var Z=X.getBoundingClientRect();m.W=f.w=(Z.right-Z.left)/U,m.H=f.h=(Z.bottom-Z.top)/U,m.X=f.x,m.Y=f.y+m.H/2,("x"in l||"y"in l)&&(m.path.v=t.format("m{0},{1}l{2},{1}",a(f.x*b),a(f.y*b),a(f.x*b)+1));for(var Q=["x","y","text","font","font-family","font-weight","font-style","font-size"],J=0,K=Q.length;J.25&&(r=n.sqrt(.25-l(e-.5,2))*(2*(r>.5)-1)+.5),f=e+p+r),d}),a=a.split(/\s*\-\s*/),"linear"==c){var g=a.shift();if(g=-i(g),isNaN(g))return null}var v=t._parseDots(a);if(!v)return null;if(e=e.shape||e.node,v.length){e.removeChild(s),s.on=!0,s.method="none",s.color=v[0].color,s.color2=v[v.length-1].color;for(var x=[],y=0,m=v.length;y')}}catch(r){N=function(t){return e.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">')}}},t._engine.initWin(t._g.win),t._engine.create=function(){var e=t._getContainer.apply(0,arguments),r=e.container,i=e.height,n,a=e.width,s=e.x,o=e.y;if(!r)throw new Error("VML container not found.");var l=new t._Paper,h=l.canvas=t._g.doc.createElement("div"),u=h.style;return s=s||0,o=o||0,a=a||512,i=i||342,l.width=a,l.height=i,a==+a&&(a+="px"),i==+i&&(i+="px"),l.coordsize=1e3*b+p+1e3*b,l.coordorigin="0 0",l.span=t._g.doc.createElement("span"),l.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;",h.appendChild(l.span),u.cssText=t.format("top:0;left:0;width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",a,i),1==r?(t._g.doc.body.appendChild(h),u.left=s+"px",u.top=o+"px",u.position="absolute"):r.firstChild?r.insertBefore(h,r.firstChild):r.appendChild(h),l.renderfix=function(){},l},t.prototype.clear=function(){t.eve("raphael.clear",this),this.canvas.innerHTML=d,this.span=t._g.doc.createElement("span"),this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;",this.canvas.appendChild(this.span),this.bottom=this.top=null},t.prototype.remove=function(){t.eve("raphael.remove",this),this.canvas.parentNode.removeChild(this.canvas);for(var e in this)this[e]="function"==typeof this[e]?t._removedFactory(e):null;return!0};var L=t.st;for(var z in M)M[e](z)&&!L[e](z)&&(L[z]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t].apply(r,e)})}}(z))}}.apply(e,i),!(void 0!==n&&(t.exports=n))}])}); \ No newline at end of file diff --git a/js/lib/sortable.min.js b/js/lib/sortable.min.js new file mode 100644 index 000000000..bef7fa3a1 --- /dev/null +++ b/js/lib/sortable.min.js @@ -0,0 +1,2 @@ +/*! Sortable 1.3.0 - MIT | git://github.com/rubaxa/Sortable.git */ +!function(a){"use strict";"function"==typeof define&&define.amd?define(a):"undefined"!=typeof module&&"undefined"!=typeof module.exports?module.exports=a():"undefined"!=typeof Package?Sortable=a():window.Sortable=a()}(function(){"use strict";function a(a,b){if(!a||!a.nodeType||1!==a.nodeType)throw"Sortable: `el` must be HTMLElement, and not "+{}.toString.call(a);this.el=a,this.options=b=r({},b),a[L]=this;var c={group:Math.random(),sort:!0,disabled:!1,store:null,handle:null,scroll:!0,scrollSensitivity:30,scrollSpeed:10,draggable:/[uo]l/i.test(a.nodeName)?"li":">*",ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",ignore:"a, img",filter:null,animation:0,setData:function(a,b){a.setData("Text",b.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1};for(var d in c)!(d in b)&&(b[d]=c[d]);V(b);for(var f in this)"_"===f.charAt(0)&&(this[f]=this[f].bind(this));this.nativeDraggable=b.forceFallback?!1:P,e(a,"mousedown",this._onTapStart),e(a,"touchstart",this._onTapStart),this.nativeDraggable&&(e(a,"dragover",this),e(a,"dragenter",this)),T.push(this._onDragOver),b.store&&this.sort(b.store.get(this))}function b(a){v&&v.state!==a&&(h(v,"display",a?"none":""),!a&&v.state&&w.insertBefore(v,s),v.state=a)}function c(a,b,c){if(a){c=c||N,b=b.split(".");var d=b.shift().toUpperCase(),e=new RegExp("\\s("+b.join("|")+")(?=\\s)","g");do if(">*"===d&&a.parentNode===c||(""===d||a.nodeName.toUpperCase()==d)&&(!b.length||((" "+a.className+" ").match(e)||[]).length==b.length))return a;while(a!==c&&(a=a.parentNode))}return null}function d(a){a.dataTransfer&&(a.dataTransfer.dropEffect="move"),a.preventDefault()}function e(a,b,c){a.addEventListener(b,c,!1)}function f(a,b,c){a.removeEventListener(b,c,!1)}function g(a,b,c){if(a)if(a.classList)a.classList[c?"add":"remove"](b);else{var d=(" "+a.className+" ").replace(K," ").replace(" "+b+" "," ");a.className=(d+(c?" "+b:"")).replace(K," ")}}function h(a,b,c){var d=a&&a.style;if(d){if(void 0===c)return N.defaultView&&N.defaultView.getComputedStyle?c=N.defaultView.getComputedStyle(a,""):a.currentStyle&&(c=a.currentStyle),void 0===b?c:c[b];b in d||(b="-webkit-"+b),d[b]=c+("string"==typeof c?"":"px")}}function i(a,b,c){if(a){var d=a.getElementsByTagName(b),e=0,f=d.length;if(c)for(;f>e;e++)c(d[e],e);return d}return[]}function j(a,b,c,d,e,f,g){var h=N.createEvent("Event"),i=(a||b[L]).options,j="on"+c.charAt(0).toUpperCase()+c.substr(1);h.initEvent(c,!0,!0),h.to=b,h.from=e||b,h.item=d||b,h.clone=v,h.oldIndex=f,h.newIndex=g,b.dispatchEvent(h),i[j]&&i[j].call(a,h)}function k(a,b,c,d,e,f){var g,h,i=a[L],j=i.options.onMove;return g=N.createEvent("Event"),g.initEvent("move",!0,!0),g.to=b,g.from=a,g.dragged=c,g.draggedRect=d,g.related=e||b,g.relatedRect=f||b.getBoundingClientRect(),a.dispatchEvent(g),j&&(h=j.call(i,g)),h}function l(a){a.draggable=!1}function m(){R=!1}function n(a,b){var c=a.lastElementChild,d=c.getBoundingClientRect();return(b.clientY-(d.top+d.height)>5||b.clientX-(d.right+d.width)>5)&&c}function o(a){for(var b=a.tagName+a.className+a.src+a.href+a.textContent,c=b.length,d=0;c--;)d+=b.charCodeAt(c);return d.toString(36)}function p(a){var b=0;if(!a||!a.parentNode)return-1;for(;a&&(a=a.previousElementSibling);)"TEMPLATE"!==a.nodeName.toUpperCase()&&b++;return b}function q(a,b){var c,d;return function(){void 0===c&&(c=arguments,d=this,setTimeout(function(){1===c.length?a.call(d,c[0]):a.apply(d,c),c=void 0},b))}}function r(a,b){if(a&&b)for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a}var s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J={},K=/\s+/g,L="Sortable"+(new Date).getTime(),M=window,N=M.document,O=M.parseInt,P=!!("draggable"in N.createElement("div")),Q=function(a){return a=N.createElement("x"),a.style.cssText="pointer-events:auto","auto"===a.style.pointerEvents}(),R=!1,S=Math.abs,T=([].slice,[]),U=q(function(a,b,c){if(c&&b.scroll){var d,e,f,g,h=b.scrollSensitivity,i=b.scrollSpeed,j=a.clientX,k=a.clientY,l=window.innerWidth,m=window.innerHeight;if(z!==c&&(y=b.scroll,z=c,y===!0)){y=c;do if(y.offsetWidth=l-j)-(h>=j),g=(h>=m-k)-(h>=k),(f||g)&&(d=M)),(J.vx!==f||J.vy!==g||J.el!==d)&&(J.el=d,J.vx=f,J.vy=g,clearInterval(J.pid),d&&(J.pid=setInterval(function(){d===M?M.scrollTo(M.pageXOffset+f*i,M.pageYOffset+g*i):(g&&(d.scrollTop+=g*i),f&&(d.scrollLeft+=f*i))},24)))}},30),V=function(a){var b=a.group;b&&"object"==typeof b||(b=a.group={name:b}),["pull","put"].forEach(function(a){a in b||(b[a]=!0)}),a.groups=" "+b.name+(b.put.join?" "+b.put.join(" "):"")+" "};return a.prototype={constructor:a,_onTapStart:function(a){var b=this,d=this.el,e=this.options,f=a.type,g=a.touches&&a.touches[0],h=(g||a).target,i=h,k=e.filter;if(!("mousedown"===f&&0!==a.button||e.disabled)&&(h=c(h,e.draggable,d))){if(D=p(h),"function"==typeof k){if(k.call(this,a,h,this))return j(b,i,"filter",h,d,D),void a.preventDefault()}else if(k&&(k=k.split(",").some(function(a){return a=c(i,a.trim(),d),a?(j(b,a,"filter",h,d,D),!0):void 0})))return void a.preventDefault();(!e.handle||c(i,e.handle,d))&&this._prepareDragStart(a,g,h)}},_prepareDragStart:function(a,b,c){var d,f=this,h=f.el,j=f.options,k=h.ownerDocument;c&&!s&&c.parentNode===h&&(G=a,w=h,s=c,t=s.parentNode,x=s.nextSibling,F=j.group,d=function(){f._disableDelayedDrag(),s.draggable=!0,g(s,f.options.chosenClass,!0),f._triggerDragStart(b)},j.ignore.split(",").forEach(function(a){i(s,a.trim(),l)}),e(k,"mouseup",f._onDrop),e(k,"touchend",f._onDrop),e(k,"touchcancel",f._onDrop),j.delay?(e(k,"mouseup",f._disableDelayedDrag),e(k,"touchend",f._disableDelayedDrag),e(k,"touchcancel",f._disableDelayedDrag),e(k,"mousemove",f._disableDelayedDrag),e(k,"touchmove",f._disableDelayedDrag),f._dragStartTimer=setTimeout(d,j.delay)):d())},_disableDelayedDrag:function(){var a=this.el.ownerDocument;clearTimeout(this._dragStartTimer),f(a,"mouseup",this._disableDelayedDrag),f(a,"touchend",this._disableDelayedDrag),f(a,"touchcancel",this._disableDelayedDrag),f(a,"mousemove",this._disableDelayedDrag),f(a,"touchmove",this._disableDelayedDrag)},_triggerDragStart:function(a){a?(G={target:s,clientX:a.clientX,clientY:a.clientY},this._onDragStart(G,"touch")):this.nativeDraggable?(e(s,"dragend",this),e(w,"dragstart",this._onDragStart)):this._onDragStart(G,!0);try{N.selection?N.selection.empty():window.getSelection().removeAllRanges()}catch(b){}},_dragStarted:function(){w&&s&&(g(s,this.options.ghostClass,!0),a.active=this,j(this,w,"start",s,w,D))},_emulateDragOver:function(){if(H){if(this._lastX===H.clientX&&this._lastY===H.clientY)return;this._lastX=H.clientX,this._lastY=H.clientY,Q||h(u,"display","none");var a=N.elementFromPoint(H.clientX,H.clientY),b=a,c=" "+this.options.group.name,d=T.length;if(b)do{if(b[L]&&b[L].options.groups.indexOf(c)>-1){for(;d--;)T[d]({clientX:H.clientX,clientY:H.clientY,target:a,rootEl:b});break}a=b}while(b=b.parentNode);Q||h(u,"display","")}},_onTouchMove:function(b){if(G){a.active||this._dragStarted(),this._appendGhost();var c=b.touches?b.touches[0]:b,d=c.clientX-G.clientX,e=c.clientY-G.clientY,f=b.touches?"translate3d("+d+"px,"+e+"px,0)":"translate("+d+"px,"+e+"px)";I=!0,H=c,h(u,"webkitTransform",f),h(u,"mozTransform",f),h(u,"msTransform",f),h(u,"transform",f),b.preventDefault()}},_appendGhost:function(){if(!u){var a,b=s.getBoundingClientRect(),c=h(s);u=s.cloneNode(!0),g(u,this.options.ghostClass,!1),g(u,this.options.fallbackClass,!0),h(u,"top",b.top-O(c.marginTop,10)),h(u,"left",b.left-O(c.marginLeft,10)),h(u,"width",b.width),h(u,"height",b.height),h(u,"opacity","0.8"),h(u,"position","fixed"),h(u,"zIndex","100000"),h(u,"pointerEvents","none"),this.options.fallbackOnBody&&N.body.appendChild(u)||w.appendChild(u),a=u.getBoundingClientRect(),h(u,"width",2*b.width-a.width),h(u,"height",2*b.height-a.height)}},_onDragStart:function(a,b){var c=a.dataTransfer,d=this.options;this._offUpEvents(),"clone"==F.pull&&(v=s.cloneNode(!0),h(v,"display","none"),w.insertBefore(v,s)),b?("touch"===b?(e(N,"touchmove",this._onTouchMove),e(N,"touchend",this._onDrop),e(N,"touchcancel",this._onDrop)):(e(N,"mousemove",this._onTouchMove),e(N,"mouseup",this._onDrop)),this._loopId=setInterval(this._emulateDragOver,50)):(c&&(c.effectAllowed="move",d.setData&&d.setData.call(this,c,s)),e(N,"drop",this),setTimeout(this._dragStarted,0))},_onDragOver:function(a){var d,e,f,g=this.el,i=this.options,j=i.group,l=j.put,o=F===j,p=i.sort;if(void 0!==a.preventDefault&&(a.preventDefault(),!i.dragoverBubble&&a.stopPropagation()),I=!0,F&&!i.disabled&&(o?p||(f=!w.contains(s)):F.pull&&l&&(F.name===j.name||l.indexOf&&~l.indexOf(F.name)))&&(void 0===a.rootEl||a.rootEl===this.el)){if(U(a,i,this.el),R)return;if(d=c(a.target,i.draggable,g),e=s.getBoundingClientRect(),f)return b(!0),void(v||x?w.insertBefore(s,v||x):p||w.appendChild(s));if(0===g.children.length||g.children[0]===u||g===a.target&&(d=n(g,a))){if(d){if(d.animated)return;r=d.getBoundingClientRect()}b(o),k(w,g,s,e,d,r)!==!1&&(s.contains(g)||(g.appendChild(s),t=g),this._animate(e,s),d&&this._animate(r,d))}else if(d&&!d.animated&&d!==s&&void 0!==d.parentNode[L]){A!==d&&(A=d,B=h(d),C=h(d.parentNode));var q,r=d.getBoundingClientRect(),y=r.right-r.left,z=r.bottom-r.top,D=/left|right|inline/.test(B.cssFloat+B.display)||"flex"==C.display&&0===C["flex-direction"].indexOf("row"),E=d.offsetWidth>s.offsetWidth,G=d.offsetHeight>s.offsetHeight,H=(D?(a.clientX-r.left)/y:(a.clientY-r.top)/z)>.5,J=d.nextElementSibling,K=k(w,g,s,e,d,r);if(K!==!1){if(R=!0,setTimeout(m,30),b(o),1===K||-1===K)q=1===K;else if(D){var M=s.offsetTop,N=d.offsetTop;q=M===N?d.previousElementSibling===s&&!E||H&&E:N>M}else q=J!==s&&!G||H&&G;s.contains(g)||(q&&!J?g.appendChild(s):d.parentNode.insertBefore(s,q?J:d)),t=s.parentNode,this._animate(e,s),this._animate(r,d)}}}},_animate:function(a,b){var c=this.options.animation;if(c){var d=b.getBoundingClientRect();h(b,"transition","none"),h(b,"transform","translate3d("+(a.left-d.left)+"px,"+(a.top-d.top)+"px,0)"),b.offsetWidth,h(b,"transition","all "+c+"ms"),h(b,"transform","translate3d(0,0,0)"),clearTimeout(b.animated),b.animated=setTimeout(function(){h(b,"transition",""),h(b,"transform",""),b.animated=!1},c)}},_offUpEvents:function(){var a=this.el.ownerDocument;f(N,"touchmove",this._onTouchMove),f(a,"mouseup",this._onDrop),f(a,"touchend",this._onDrop),f(a,"touchcancel",this._onDrop)},_onDrop:function(b){var c=this.el,d=this.options;clearInterval(this._loopId),clearInterval(J.pid),clearTimeout(this._dragStartTimer),f(N,"mousemove",this._onTouchMove),this.nativeDraggable&&(f(N,"drop",this),f(c,"dragstart",this._onDragStart)),this._offUpEvents(),b&&(I&&(b.preventDefault(),!d.dropBubble&&b.stopPropagation()),u&&u.parentNode.removeChild(u),s&&(this.nativeDraggable&&f(s,"dragend",this),l(s),g(s,this.options.ghostClass,!1),g(s,this.options.chosenClass,!1),w!==t?(E=p(s),E>=0&&(j(null,t,"sort",s,w,D,E),j(this,w,"sort",s,w,D,E),j(null,t,"add",s,w,D,E),j(this,w,"remove",s,w,D,E))):(v&&v.parentNode.removeChild(v),s.nextSibling!==x&&(E=p(s),E>=0&&(j(this,w,"update",s,w,D,E),j(this,w,"sort",s,w,D,E)))),a.active&&((null===E||-1===E)&&(E=D),j(this,w,"end",s,w,D,E),this.save())),w=s=t=u=x=v=y=z=G=H=I=E=A=B=F=a.active=null)},handleEvent:function(a){var b=a.type;"dragover"===b||"dragenter"===b?s&&(this._onDragOver(a),d(a)):("drop"===b||"dragend"===b)&&this._onDrop(a)},toArray:function(){for(var a,b=[],d=this.el.children,e=0,f=d.length,g=this.options;f>e;e++)a=d[e],c(a,g.draggable,this.el)&&b.push(a.getAttribute(g.dataIdAttr)||o(a));return b},sort:function(a){var b={},d=this.el;this.toArray().forEach(function(a,e){var f=d.children[e];c(f,this.options.draggable,d)&&(b[a]=f)},this),a.forEach(function(a){b[a]&&(d.removeChild(b[a]),d.appendChild(b[a]))})},save:function(){var a=this.options.store;a&&a.set(this)},closest:function(a,b){return c(a,b||this.options.draggable,this.el)},option:function(a,b){var c=this.options;return void 0===b?c[a]:(c[a]=b,void("group"===a&&V(c)))},destroy:function(){var a=this.el;a[L]=null,f(a,"mousedown",this._onTapStart),f(a,"touchstart",this._onTapStart),this.nativeDraggable&&(f(a,"dragover",this),f(a,"dragenter",this)),Array.prototype.forEach.call(a.querySelectorAll("[draggable]"),function(a){a.removeAttribute("draggable")}),T.splice(T.indexOf(this._onDragOver),1),this._onDrop(),this.el=a=null}},a.utils={on:e,off:f,css:h,find:i,is:function(a,b){return!!c(a,b,a)},extend:r,throttle:q,closest:c,toggleClass:g,index:p},a.create=function(b,c){return new a(b,c)},a.version="1.3.0",a}); \ No newline at end of file diff --git a/public/css/pathfinder.css b/public/css/pathfinder.css index 55512d5fe..47180214a 100644 --- a/public/css/pathfinder.css +++ b/public/css/pathfinder.css @@ -18,7 +18,7 @@ */*{-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:62.5%;-webkit-tap-highlight-color:transparent}body{font-family:"Oxygen","Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;font-size:12px;line-height:1.5;color:#63676a;background-color:#1d1d1d}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#375959;text-decoration:none}a:hover,a:focus{color:#1a2a2a;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px;outline-color:#568a89;text-decoration:none}figure{margin:0}img{vertical-align:middle}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.5;background-color:#1d1d1d;border:1px solid #ddd;border-radius:0px;-webkit-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:18px;margin-bottom:18px;border:0;border-top:1px solid #adadad}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Oxygen","Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;line-height:1.1;color:inherit}h1 small,h1 .small,h2 small,h2 .small,h3 small,h3 .small,h4 small,h4 .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:#63676a}h1,.h1,h2,.h2,h3,.h3{margin-top:18px;margin-bottom:9px}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,.h4,h5,.h5,h6,.h6{margin-top:9px;margin-bottom:9px}h4 small,h4 .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:22px}h2,.h2{font-size:20px}h3,.h3{font-size:17px}h4,.h4{font-size:12px}h5,.h5{font-size:14px}h6,.h6{font-size:13px}p{margin:0 0 9px}.lead{margin-bottom:18px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width: 780px){.lead{font-size:16px}}small,.small{font-size:85%}cite{font-style:normal}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-muted{color:#63676a}.text-primary{color:#375959}a.text-primary:hover{color:#243939}.text-success{color:#2b2b2b}a.text-success:hover{color:#121212}.text-info{color:#2b2b2b}a.text-info:hover{color:#121212}.text-warning{color:#2b2b2b}a.text-warning:hover{color:#121212}.text-danger{color:#2b2b2b}a.text-danger:hover{color:#121212}.bg-primary{color:#fff}.bg-primary{background-color:#375959}a.bg-primary:hover{background-color:#243939}.bg-success{background-color:#d1e8d1}a.bg-success:hover{background-color:#afd7af}.bg-info{background-color:#abc9e2}a.bg-info:hover{background-color:#85b0d5}.bg-warning{background-color:#fdedd8}a.bg-warning:hover{background-color:#fad8a8}.bg-danger{background-color:#f6d1d0}a.bg-danger:hover{background-color:#eda7a5}.page-header{padding-bottom:8px;margin:36px 0 18px;border-bottom:1px solid #adadad}ul,ol{margin-top:0;margin-bottom:9px}ul ul,ul ol,ol ul,ol ol{margin-bottom:0}.list-unstyled,.list-inline{padding-left:0;list-style:none}.list-inline{margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:18px}dt,dd{line-height:1.5}dt{font-weight:bold}dd{margin-left:0}@media (min-width: 480px){.dl-horizontal dt{float:left;width:80px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:100px}.dl-horizontal dd:before,.dl-horizontal dd:after{content:" ";display:table}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #63676a}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:9px 18px;margin:0 0 18px;font-size:15px;border-left:5px solid #5cb85c}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.5;color:#63676a}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 #5cb85c;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'}blockquote:before,blockquote:after{content:""}address{margin-bottom:18px;font-style:normal;line-height:1.5}code,kbd,pre,samp{font-family:Consolas,monospace,Menlo,Monaco,"Courier New"}code{padding:2px 4px;font-size:90%;color:#1d1d1d;background-color:#63676a;white-space:nowrap;border-radius:3px}kbd{padding:2px 4px;font-size:90%;color:#adadad;background-color:#2b2b2b;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}pre{display:block;padding:8.5px;margin:0 0 9px;font-size:11px;line-height:1.5;word-break:break-all;word-wrap:break-word;color:#1d1d1d;background-color:#63676a;border-radius:3px}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:10px;padding-right:10px}.container:before,.container:after{content:" ";display:table}.container:after{clear:both}@media (min-width: 780px){.container{width:740px}}@media (min-width: 1200px){.container{width:960px}}@media (min-width: 1600px){.container{width:1160px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:10px;padding-right:10px}.container-fluid:before,.container-fluid:after{content:" ";display:table}.container-fluid:after{clear:both}.row{margin-left:-10px;margin-right:-10px}.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:10px;padding-right:10px}.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.33333%}.col-xs-2{width:16.66667%}.col-xs-3{width:25%}.col-xs-4{width:33.33333%}.col-xs-5{width:41.66667%}.col-xs-6{width:50%}.col-xs-7{width:58.33333%}.col-xs-8{width:66.66667%}.col-xs-9{width:75%}.col-xs-10{width:83.33333%}.col-xs-11{width:91.66667%}.col-xs-12{width:100%}.col-xs-pull-0{right:0%}.col-xs-pull-1{right:8.33333%}.col-xs-pull-2{right:16.66667%}.col-xs-pull-3{right:25%}.col-xs-pull-4{right:33.33333%}.col-xs-pull-5{right:41.66667%}.col-xs-pull-6{right:50%}.col-xs-pull-7{right:58.33333%}.col-xs-pull-8{right:66.66667%}.col-xs-pull-9{right:75%}.col-xs-pull-10{right:83.33333%}.col-xs-pull-11{right:91.66667%}.col-xs-pull-12{right:100%}.col-xs-push-0{left:0%}.col-xs-push-1{left:8.33333%}.col-xs-push-2{left:16.66667%}.col-xs-push-3{left:25%}.col-xs-push-4{left:33.33333%}.col-xs-push-5{left:41.66667%}.col-xs-push-6{left:50%}.col-xs-push-7{left:58.33333%}.col-xs-push-8{left:66.66667%}.col-xs-push-9{left:75%}.col-xs-push-10{left:83.33333%}.col-xs-push-11{left:91.66667%}.col-xs-push-12{left:100%}.col-xs-offset-0{margin-left:0%}.col-xs-offset-1{margin-left:8.33333%}.col-xs-offset-2{margin-left:16.66667%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-4{margin-left:33.33333%}.col-xs-offset-5{margin-left:41.66667%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-7{margin-left:58.33333%}.col-xs-offset-8{margin-left:66.66667%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-10{margin-left:83.33333%}.col-xs-offset-11{margin-left:91.66667%}.col-xs-offset-12{margin-left:100%}@media (min-width: 780px){.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.33333%}.col-sm-2{width:16.66667%}.col-sm-3{width:25%}.col-sm-4{width:33.33333%}.col-sm-5{width:41.66667%}.col-sm-6{width:50%}.col-sm-7{width:58.33333%}.col-sm-8{width:66.66667%}.col-sm-9{width:75%}.col-sm-10{width:83.33333%}.col-sm-11{width:91.66667%}.col-sm-12{width:100%}.col-sm-pull-0{right:0%}.col-sm-pull-1{right:8.33333%}.col-sm-pull-2{right:16.66667%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.33333%}.col-sm-pull-5{right:41.66667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.33333%}.col-sm-pull-8{right:66.66667%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.33333%}.col-sm-pull-11{right:91.66667%}.col-sm-pull-12{right:100%}.col-sm-push-0{left:0%}.col-sm-push-1{left:8.33333%}.col-sm-push-2{left:16.66667%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.33333%}.col-sm-push-5{left:41.66667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.33333%}.col-sm-push-8{left:66.66667%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.33333%}.col-sm-push-11{left:91.66667%}.col-sm-push-12{left:100%}.col-sm-offset-0{margin-left:0%}.col-sm-offset-1{margin-left:8.33333%}.col-sm-offset-2{margin-left:16.66667%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333%}.col-sm-offset-5{margin-left:41.66667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.33333%}.col-sm-offset-8{margin-left:66.66667%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333%}.col-sm-offset-11{margin-left:91.66667%}.col-sm-offset-12{margin-left:100%}}@media (min-width: 1200px){.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.33333%}.col-md-2{width:16.66667%}.col-md-3{width:25%}.col-md-4{width:33.33333%}.col-md-5{width:41.66667%}.col-md-6{width:50%}.col-md-7{width:58.33333%}.col-md-8{width:66.66667%}.col-md-9{width:75%}.col-md-10{width:83.33333%}.col-md-11{width:91.66667%}.col-md-12{width:100%}.col-md-pull-0{right:0%}.col-md-pull-1{right:8.33333%}.col-md-pull-2{right:16.66667%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.33333%}.col-md-pull-5{right:41.66667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.33333%}.col-md-pull-8{right:66.66667%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.33333%}.col-md-pull-11{right:91.66667%}.col-md-pull-12{right:100%}.col-md-push-0{left:0%}.col-md-push-1{left:8.33333%}.col-md-push-2{left:16.66667%}.col-md-push-3{left:25%}.col-md-push-4{left:33.33333%}.col-md-push-5{left:41.66667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.33333%}.col-md-push-8{left:66.66667%}.col-md-push-9{left:75%}.col-md-push-10{left:83.33333%}.col-md-push-11{left:91.66667%}.col-md-push-12{left:100%}.col-md-offset-0{margin-left:0%}.col-md-offset-1{margin-left:8.33333%}.col-md-offset-2{margin-left:16.66667%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333%}.col-md-offset-5{margin-left:41.66667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.33333%}.col-md-offset-8{margin-left:66.66667%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333%}.col-md-offset-11{margin-left:91.66667%}.col-md-offset-12{margin-left:100%}}@media (min-width: 1600px){.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.33333%}.col-lg-2{width:16.66667%}.col-lg-3{width:25%}.col-lg-4{width:33.33333%}.col-lg-5{width:41.66667%}.col-lg-6{width:50%}.col-lg-7{width:58.33333%}.col-lg-8{width:66.66667%}.col-lg-9{width:75%}.col-lg-10{width:83.33333%}.col-lg-11{width:91.66667%}.col-lg-12{width:100%}.col-lg-pull-0{right:0%}.col-lg-pull-1{right:8.33333%}.col-lg-pull-2{right:16.66667%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.33333%}.col-lg-pull-5{right:41.66667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.33333%}.col-lg-pull-8{right:66.66667%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.33333%}.col-lg-pull-11{right:91.66667%}.col-lg-pull-12{right:100%}.col-lg-push-0{left:0%}.col-lg-push-1{left:8.33333%}.col-lg-push-2{left:16.66667%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.33333%}.col-lg-push-5{left:41.66667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.33333%}.col-lg-push-8{left:66.66667%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.33333%}.col-lg-push-11{left:91.66667%}.col-lg-push-12{left:100%}.col-lg-offset-0{margin-left:0%}.col-lg-offset-1{margin-left:8.33333%}.col-lg-offset-2{margin-left:16.66667%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333%}.col-lg-offset-5{margin-left:41.66667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.33333%}.col-lg-offset-8{margin-left:66.66667%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333%}.col-lg-offset-11{margin-left:91.66667%}.col-lg-offset-12{margin-left:100%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:0;border-spacing:0}.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.5;vertical-align:top;border-top:1px solid #313335}.table>thead>tr>th{vertical-align:bottom;border-bottom:0px solid #313335}.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 #313335}.table .table{background-color:#1d1d1d}.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:2px}.table-bordered{border:1px solid #313335}.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 #313335}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#ecf3f8}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:#ecf3f8}.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.active:hover>th{background-color:#d9e7f1}.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:#d1e8d1}.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.success:hover>th{background-color:#c0e0c0}.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:#abc9e2}.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.info:hover>th{background-color:#98bcdc}.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:#fdedd8}.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.warning:hover>th{background-color:#fbe3c0}.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:#f6d1d0}.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.danger:hover>th{background-color:#f1bcba}@media (max-width: 779px){.table-responsive{width:100%;margin-bottom:13.5px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #313335;-webkit-overflow-scrolling:touch}.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:18px;font-size:18px;line-height:inherit;color:#313335;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;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;outline-color:#568a89}output{display:block;padding-top:7px;font-size:12px;line-height:1.5;color:#adadad}.form-control{display:block;width:100%;height:32px;padding:6px 12px;font-size:12px;line-height:1.5;color:#adadad;background-color:#313335;background-image:none;border:1px solid #63676a;border-radius:0px;-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-out 0.15s,box-shadow ease-out 0.15s;transition:border-color ease-out 0.15s,box-shadow ease-out 0.15s}.form-control:focus{border-color:#568a89;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(86,138,137,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(86,138,137,0.6)}.form-control::-moz-placeholder{color:#63676a;opacity:1}.form-control:-ms-input-placeholder{color:#63676a}.form-control::-webkit-input-placeholder{color:#63676a}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#3c3f41;opacity:1}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}input[type="date"]{line-height:32px}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:18px;margin-top:10px;margin-bottom:10px;padding-left:20px}.radio label,.checkbox label{display:inline;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}.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],fieldset[disabled] input[type="radio"],input[type="checkbox"][disabled],fieldset[disabled] input[type="checkbox"],.radio[disabled],fieldset[disabled] .radio,.radio-inline[disabled],fieldset[disabled] .radio-inline,.checkbox[disabled],fieldset[disabled] .checkbox,.checkbox-inline[disabled],fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:28px;padding:5px 10px;font-size:11px;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{height:28px;line-height:28px}textarea.input-sm,.input-group-sm>textarea.form-control,.input-group-sm>textarea.input-group-addon,.input-group-sm>.input-group-btn>textarea.btn,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{height:auto}.input-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:42px;padding:10px 16px;font-size:15px;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{height:42px;line-height:42px}textarea.input-lg,.input-group-lg>textarea.form-control,.input-group-lg>textarea.input-group-addon,.input-group-lg>.input-group-btn>textarea.btn,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{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:40px}.has-feedback .form-control-feedback{position:absolute;top:23px;right:0;display:block;width:32px;height:32px;line-height:32px;text-align:center}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline{color:#5cb85c}.has-success .form-control{border-color:#5cb85c;-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{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #a3d7a3;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #a3d7a3}.has-success .select2-selection{border:1px solid !important;border-color:#5cb85c !important;-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 .input-group-addon{color:#5cb85c;border-color:#5cb85c;background-color:#d1e8d1}.has-success .form-control-feedback{color:#5cb85c}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline{color:#2b2b2b}.has-warning .form-control{border-color:#2b2b2b;-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{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #5e5e5e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #5e5e5e}.has-warning .select2-selection{border:1px solid !important;border-color:#2b2b2b !important;-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 .input-group-addon{color:#2b2b2b;border-color:#2b2b2b;background-color:#fdedd8}.has-warning .form-control-feedback{color:#2b2b2b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline{color:#d9534f}.has-error .form-control{border-color:#d9534f;-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{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #eba5a3;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #eba5a3}.has-error .select2-selection{border:1px solid !important;border-color:#d9534f !important;-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 .input-group-addon{color:#d9534f;border-color:#d9534f;background-color:#f6d1d0}.has-error .form-control-feedback{color:#d9534f}.form-control-static{margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#7c8184}@media (min-width: 780px){.form-inline .form-group,.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control,.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .input-group>.form-control,.navbar-form .input-group>.form-control{width:100%}.form-inline .control-label,.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.navbar-form .radio,.form-inline .checkbox,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.form-inline .radio input[type="radio"],.navbar-form .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}.form-inline .has-feedback .form-control-feedback,.navbar-form .has-feedback .form-control-feedback{top:0}}.form-horizontal .control-label,.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:25px}.form-horizontal .form-group{margin-left:-10px;margin-right:-10px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{content:" ";display:table}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-control-static{padding-top:7px}@media (min-width: 780px){.form-horizontal .control-label{text-align:right}}.form-horizontal .has-feedback .form-control-feedback{top:0;right:10px}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:12px;line-height:1.5;border-radius:0px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px;outline-color:#568a89}.btn:hover,.btn:focus{color:#eaeaea;text-decoration:none;-webkit-box-shadow:none;box-shadow:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:0 5px 11px 0 rgba(0,0,0,0.18),0 4px 15px 0 rgba(0,0,0,0.15);box-shadow:0 5px 11px 0 rgba(0,0,0,0.18),0 4px 15px 0 rgba(0,0,0,0.15)}.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:#eaeaea;background-color:#63676a;border-color:#575a5d}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active{color:#eaeaea;background-color:#777b7f;border-color:#74797c}.open .btn-default.dropdown-toggle{color:#eaeaea;background-color:#777b7f;border-color:#74797c}.btn-default:active,.btn-default.active{background-image:none}.open .btn-default.dropdown-toggle{background-image:none}.btn-default.disabled,.btn-default.disabled:hover,.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]:active,.btn-default[disabled].active,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default:hover,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default.active{background-color:#63676a;border-color:#575a5d}.btn-default .badge{color:#63676a;background-color:#eaeaea}.btn-primary{color:#eaeaea;background-color:#375959;border-color:#2d4949}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active{color:#eaeaea;background-color:#477272;border-color:#456f6f}.open .btn-primary.dropdown-toggle{color:#eaeaea;background-color:#477272;border-color:#456f6f}.btn-primary:active,.btn-primary.active{background-image:none}.open .btn-primary.dropdown-toggle{background-image:none}.btn-primary.disabled,.btn-primary.disabled:hover,.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]:active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary:hover,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary.active{background-color:#375959;border-color:#2d4949}.btn-primary .badge{color:#375959;background-color:#eaeaea}.btn-success,.modal-content .pf-wizard-navigation li.active a:not(.btn-danger){color:#eaeaea;background-color:#4f9e4f;border-color:#478d47}.btn-success:hover,.modal-content .pf-wizard-navigation li.active a:hover:not(.btn-danger),.btn-success:focus,.modal-content .pf-wizard-navigation li.active a:focus:not(.btn-danger),.btn-success:active,.modal-content .pf-wizard-navigation li.active a:active:not(.btn-danger),.btn-success.active,.modal-content .pf-wizard-navigation li.active a.active:not(.btn-danger){color:#eaeaea;background-color:#64b264;border-color:#61b061}.open .btn-success.dropdown-toggle,.open .modal-content .pf-wizard-navigation li.active a.dropdown-toggle:not(.btn-danger),.modal-content .pf-wizard-navigation li.active .open a.dropdown-toggle:not(.btn-danger){color:#eaeaea;background-color:#64b264;border-color:#61b061}.btn-success:active,.modal-content .pf-wizard-navigation li.active a:active:not(.btn-danger),.btn-success.active,.modal-content .pf-wizard-navigation li.active a.active:not(.btn-danger){background-image:none}.open .btn-success.dropdown-toggle,.open .modal-content .pf-wizard-navigation li.active a.dropdown-toggle:not(.btn-danger),.modal-content .pf-wizard-navigation li.active .open a.dropdown-toggle:not(.btn-danger){background-image:none}.btn-success.disabled,.modal-content .pf-wizard-navigation li.active a.disabled:not(.btn-danger),.btn-success.disabled:hover,.modal-content .pf-wizard-navigation li.active a.disabled:hover:not(.btn-danger),.btn-success.disabled:focus,.modal-content .pf-wizard-navigation li.active a.disabled:focus:not(.btn-danger),.btn-success.disabled:active,.modal-content .pf-wizard-navigation li.active a.disabled:active:not(.btn-danger),.btn-success.disabled.active,.modal-content .pf-wizard-navigation li.active a.disabled.active:not(.btn-danger),.btn-success[disabled],.modal-content .pf-wizard-navigation li.active a[disabled]:not(.btn-danger),.btn-success[disabled]:hover,.modal-content .pf-wizard-navigation li.active a[disabled]:hover:not(.btn-danger),.btn-success[disabled]:focus,.modal-content .pf-wizard-navigation li.active a[disabled]:focus:not(.btn-danger),.btn-success[disabled]:active,.modal-content .pf-wizard-navigation li.active a[disabled]:active:not(.btn-danger),.btn-success[disabled].active,.modal-content .pf-wizard-navigation li.active a[disabled].active:not(.btn-danger),fieldset[disabled] .btn-success,fieldset[disabled] .modal-content .pf-wizard-navigation li.active a:not(.btn-danger),.modal-content .pf-wizard-navigation li.active fieldset[disabled] a:not(.btn-danger),fieldset[disabled] .btn-success:hover,fieldset[disabled] .modal-content .pf-wizard-navigation li.active a:hover:not(.btn-danger),.modal-content .pf-wizard-navigation li.active fieldset[disabled] a:hover:not(.btn-danger),fieldset[disabled] .btn-success:focus,fieldset[disabled] .modal-content .pf-wizard-navigation li.active a:focus:not(.btn-danger),.modal-content .pf-wizard-navigation li.active fieldset[disabled] a:focus:not(.btn-danger),fieldset[disabled] .btn-success:active,fieldset[disabled] .modal-content .pf-wizard-navigation li.active a:active:not(.btn-danger),.modal-content .pf-wizard-navigation li.active fieldset[disabled] a:active:not(.btn-danger),fieldset[disabled] .btn-success.active,fieldset[disabled] .modal-content .pf-wizard-navigation li.active a.active:not(.btn-danger),.modal-content .pf-wizard-navigation li.active fieldset[disabled] a.active:not(.btn-danger){background-color:#4f9e4f;border-color:#478d47}.btn-success .badge,.modal-content .pf-wizard-navigation li.active a:not(.btn-danger) .badge{color:#4f9e4f;background-color:#eaeaea}.btn-info{color:#eaeaea;background-color:#316490;border-color:#2b577d}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active{color:#eaeaea;background-color:#3b79ae;border-color:#3a76ab}.open .btn-info.dropdown-toggle{color:#eaeaea;background-color:#3b79ae;border-color:#3a76ab}.btn-info:active,.btn-info.active{background-image:none}.open .btn-info.dropdown-toggle{background-image:none}.btn-info.disabled,.btn-info.disabled:hover,.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]:active,.btn-info[disabled].active,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info:hover,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info.active{background-color:#316490;border-color:#2b577d}.btn-info .badge{color:#316490;background-color:#eaeaea}.btn-warning{color:#eaeaea;background-color:#c2760c;border-color:#aa670b}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active{color:#eaeaea;background-color:#e88d0e;border-color:#e48a0e}.open .btn-warning.dropdown-toggle{color:#eaeaea;background-color:#e88d0e;border-color:#e48a0e}.btn-warning:active,.btn-warning.active{background-image:none}.open .btn-warning.dropdown-toggle{background-image:none}.btn-warning.disabled,.btn-warning.disabled:hover,.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]:active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning:hover,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning.active{background-color:#c2760c;border-color:#aa670b}.btn-warning .badge{color:#c2760c;background-color:#eaeaea}.btn-danger{color:#eaeaea;background-color:#a52521;border-color:#90201d}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active{color:#eaeaea;background-color:#c72d28;border-color:#c32c27}.open .btn-danger.dropdown-toggle{color:#eaeaea;background-color:#c72d28;border-color:#c32c27}.btn-danger:active,.btn-danger.active{background-image:none}.open .btn-danger.dropdown-toggle{background-image:none}.btn-danger.disabled,.btn-danger.disabled:hover,.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]:active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger:hover,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger.active{background-color:#a52521;border-color:#90201d}.btn-danger .badge{color:#a52521;background-color:#eaeaea}.btn-link{color:#375959;font-weight:normal;cursor:pointer;border-radius:0}.btn-link,.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:#1a2a2a;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:#63676a;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:11px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%;padding-left:0;padding-right:0}.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;transition:opacity 0.15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;will-change:height;-webkit-transition:height 0.35s ease;transition:height 0.35s ease}@font-face{font-family:'Glyphicons Halflings';src:url("../fonts/glyphicons-halflings-regular.eot");src:url("../fonts/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"),url("../fonts/glyphicons-halflings-regular.woff2") format("woff2"),url("../fonts/glyphicons-halflings-regular.woff") format("woff"),url("../fonts/glyphicons-halflings-regular.ttf") format("truetype"),url("../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.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:12px;background-color:#adadad;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:5px 0;overflow:hidden;background-color:#63676a}.dropdown-menu>li>a{display:block;padding:3px 15px;clear:both;font-weight:normal;line-height:1.5;color:#313335;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#1d1d1d;background-color:#63676a}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#adadad;text-decoration:none;outline:0;background-color:#375959}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#63676a}.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:11px;line-height:1.5;color:#63676a}.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: 480px){.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:focus,.btn-group-vertical>.btn:focus{outline:none}.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:0px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:0px;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%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display: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:12px;font-weight:normal;line-height:1;color:#63676a;text-align:center;background-color:#2b2b2b;border:1px solid #63676a;border-radius:0px}.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:11px;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:15px;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:5px 6px 5px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#63676a}.nav>li.disabled>a{color:#63676a}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#63676a;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#63676a;border-color:#375959}.nav .nav-divider{height:1px;margin:5px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #adadad}.nav-tabs>li{float:left;margin-bottom:-1px;margin-right:2px}.nav-tabs>li>a{line-height:1.5;border:1px solid transparent}.nav-tabs>li>a:hover{border-color:#adadad #adadad #adadad}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#313335;border:1px solid #adadad;border-bottom-color:transparent;cursor:default}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:0px}.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:#375959}.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: 780px){.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:0px}.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: 780px){.nav-tabs-justified>li>a,.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:0px 0px 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:#1d1d1d}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:30px;margin-bottom:18px}.navbar:before,.navbar:after{content:" ";display:table}.navbar:after{clear:both}@media (min-width: 480px){.navbar{border-radius:0px}}.navbar-header:before,.navbar-header:after{content:" ";display:table}.navbar-header:after{clear:both}@media (min-width: 480px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;overflow-x:visible;padding-right:10px;padding-left:10px;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: 480px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block !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}}.container>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-header,.container-fluid>.navbar-collapse{margin-right:-10px;margin-left:-10px}@media (min-width: 480px){.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: 480px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width: 480px){.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:6px 10px;font-size:1.2em;line-height:18px;height:30px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media (min-width: 480px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-10px}}.navbar-toggle{position:relative;float:right;margin-right:10px;margin-left:10px;padding:6px 12px;margin-top:-2px;margin-bottom:-2px;background-color:#313335;background-image:none;border:1px solid #a0a0a0;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}.navbar-toggle:focus{outline:none}.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: 480px){.navbar-toggle{display:none}}.navbar-nav{margin:3px -10px;float:left;margin:0}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:18px}@media (max-width: 479px){.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:18px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}.navbar-nav>li{float:left;margin-right:2px}.navbar-nav>li>a{padding-top:6px;padding-bottom:6px}.navbar-nav.navbar-right:last-child{margin-right:-10px}@media (min-width: 480px){.navbar-left{float:left !important}.navbar-right{float:right !important}}.navbar-form{margin-left:-10px;margin-right:-10px;padding:10px 10px;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:-1px;margin-bottom:-1px}@media (max-width: 479px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width: 480px){.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-form.navbar-right:last-child{margin-right:-10px}}.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-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:-1px;margin-bottom:-1px}.navbar-btn.btn-sm,.btn-group-sm>.navbar-btn.btn{margin-top:1px;margin-bottom:1px}.navbar-btn.btn-xs,.btn-group-xs>.navbar-btn.btn{margin-top:4px;margin-bottom:4px}.navbar-text{margin-top:6px;margin-bottom:6px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;float:left;margin-left:10px;margin-right:10px}.navbar-text.navbar-right:last-child{margin-right:0}.navbar-default{background:rgba(43,43,43,0.9);border-color:none}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#568a89;background-color:transparent}.navbar-default .navbar-text{color:#63676a}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#6caead;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus{color:#568a89;background-color:transparent}.navbar-default .navbar-nav>.active>a:hover{color:#6caead}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#3c3f41;background-color:transparent}.navbar-default .navbar-toggle{border-color:#477372;color:#2b2b2b;cursor:pointer}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{border-color:#518382;background-color:#3d4042}.navbar-default .navbar-toggle:hover .icon-bar,.navbar-default .navbar-toggle:focus .icon-bar{background-color:#568a89}.navbar-default .navbar-toggle .icon-bar{background-color:#477372}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:none}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:transparent;color:#568a89}@media (max-width: 479px){.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:#6caead;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:#568a89;background-color:transparent}.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:#3c3f41;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#6caead}.navbar-inverse{background-color:#222;border-color:#090909}.navbar-inverse .navbar-brand{color:#63676a}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#63676a}.navbar-inverse .navbar-nav>li>a{color:#63676a}.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: 479px){.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:#63676a}.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:#63676a}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:0px 0px;margin-bottom:18px;list-style:none;background-color:none;border-radius:0px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/ ";padding:0 5px;color:#63676a}.breadcrumb>.active{color:#5cb85c}.pagination{display:inline-block;padding-left:0;margin:18px 0;border-radius:0px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.5;text-decoration:none;color:#375959;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:0px;border-top-left-radius:0px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:0px;border-top-right-radius:0px}.pagination>li>a:hover,.pagination>li>a:focus,.pagination>li>span:hover,.pagination>li>span:focus{color:#1a2a2a;background-color:#adadad;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:#fff;background-color:#375959;border-color:#375959;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:#63676a;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:15px}.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:11px}.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:18px 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:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#adadad}.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:#63676a;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:2px 5px;font-size:75%;font-weight:bold;line-height:1;color:#1d1d1d;text-align:center;white-space:nowrap;vertical-align:baseline;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#63676a}.label-default[href]:hover,.label-default[href]:focus{background-color:#4a4d50}.label-primary{background-color:#375959}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#243939}.label-success{background-color:#4f9e4f}.label-success[href]:hover,.label-success[href]:focus{background-color:#3e7c3e}.label-info{background-color:#316490}.label-info[href]:hover,.label-info[href]:focus{background-color:#244a6a}.label-warning{background-color:#e28a0d}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#b26d0a}.label-danger{background-color:#a52521}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#7b1b19}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:11px;font-weight:bold;color:#eaeaea;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#63676a;text-indent:initial;-moz-border-radius:10px;-webkit-border-radius:10px;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}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#375959;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;color:inherit;background-color:#adadad}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:18px;font-weight:200}.container .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width: 780px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:54px}}.thumbnail{display:block;padding:4px;margin-bottom:18px;line-height:1.5;background-color:#1d1d1d;border:1px solid #ddd;border-radius:0px;-webkit-transition:all 0.2s ease-in-out;transition:all 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:#63676a}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#375959}.alert{padding:15px;margin-bottom:18px;border:1px solid transparent;border-radius:0px}.alert h4{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{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#d1e8d1;border-color:#4f9e4f;color:#2b2b2b}.alert-success hr{border-top-color:#478d47}.alert-success .alert-link{color:#121212}.alert-info{background-color:#abc9e2;border-color:#316490;color:#2b2b2b}.alert-info hr{border-top-color:#2b577d}.alert-info .alert-link{color:#121212}.alert-warning{background-color:#fdedd8;border-color:#e28a0d;color:#2b2b2b}.alert-warning hr{border-top-color:#ca7b0c}.alert-warning .alert-link{color:#121212}.alert-danger{background-color:#f6d1d0;border-color:#a52521;color:#2b2b2b}.alert-danger hr{border-top-color:#90201d}.alert-danger .alert-link{color:#121212}@-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:18px;margin-bottom:18px;background-color:#f5f5f5;border-radius:0px;-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:11px;line-height:18px;color:#fff;text-align:center;background-color:#375959;-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;transition:width 0.6s ease}.progress-striped .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:linear-gradient(45deg, rgba(255,255,255,0.15) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#4f9e4f}.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:linear-gradient(45deg, rgba(255,255,255,0.15) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-info{background-color:#316490}.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:linear-gradient(45deg, rgba(255,255,255,0.15) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-warning{background-color:#e28a0d}.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:linear-gradient(45deg, rgba(255,255,255,0.15) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-danger{background-color:#a52521}.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:linear-gradient(45deg, rgba(255,255,255,0.15) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:6px 8px;background-color:#adadad;border-bottom:1px solid #63676a;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.list-group-item:first-child{border-top-right-radius:0px;border-top-left-radius:0px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:0px;border-bottom-left-radius:0px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}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;background-color:#63676a;color:#1d1d1d}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{z-index:2;color:#eaeaea;background-color:#375959;border-color:#375959}a.list-group-item.active .list-group-item-heading,a.list-group-item.active:hover .list-group-item-heading,a.list-group-item.active:focus .list-group-item-heading{color:inherit}a.list-group-item.active .list-group-item-text,a.list-group-item.active:hover .list-group-item-text,a.list-group-item.active:focus .list-group-item-text{color:#9bc1c1}.list-group-item-success{color:#2b2b2b;background-color:#d1e8d1}a.list-group-item-success{color:#2b2b2b}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#2b2b2b;background-color:#c0e0c0}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#2b2b2b;border-color:#2b2b2b}.list-group-item-info{color:#2b2b2b;background-color:#abc9e2}a.list-group-item-info{color:#2b2b2b}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#2b2b2b;background-color:#98bcdc}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#2b2b2b;border-color:#2b2b2b}.list-group-item-warning{color:#2b2b2b;background-color:#fdedd8}a.list-group-item-warning{color:#2b2b2b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#2b2b2b;background-color:#fbe3c0}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#2b2b2b;border-color:#2b2b2b}.list-group-item-danger{color:#2b2b2b;background-color:#f6d1d0}a.list-group-item-danger{color:#2b2b2b}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#2b2b2b;background-color:#f1bcba}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#2b2b2b;border-color:#2b2b2b}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:18px;background-color:#3c3f41;border:1px solid transparent;border-radius:5px;-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:4px;border-top-left-radius:4px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:13px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#353739;border-top:1px solid #313335;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:4px;border-top-left-radius:4px}.panel>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.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{border-top-left-radius:4px}.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{border-top-right-radius:4px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.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{border-bottom-left-radius:4px}.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{border-bottom-right-radius:4px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #313335}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.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{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{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{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{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:18px}.panel-group .panel{margin-bottom:0;border-radius:5px;overflow:hidden}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #313335}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #313335}.panel-default{border-color:#1d1d1d}.panel-default>.panel-heading{color:#63676a;background-color:#353739;border-color:#1d1d1d}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#1d1d1d}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#1d1d1d}.panel-primary{border-color:#1d1d1d}.panel-primary>.panel-heading{color:#1d1d1d;background-color:#375959;border-color:#1d1d1d}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#1d1d1d}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#1d1d1d}.panel-success{border-color:#1d1d1d}.panel-success>.panel-heading{color:#2b2b2b;background-color:#d1e8d1;border-color:#1d1d1d}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#1d1d1d}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#1d1d1d}.panel-info{border-color:#1d1d1d}.panel-info>.panel-heading{color:#2b2b2b;background-color:#abc9e2;border-color:#1d1d1d}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#1d1d1d}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#1d1d1d}.panel-warning{border-color:#1d1d1d}.panel-warning>.panel-heading{color:#1d1d1d;background-color:#e28a0d;border-color:#1d1d1d}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#1d1d1d}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#1d1d1d}.panel-danger{border-color:#1d1d1d}.panel-danger>.panel-heading{color:#2b2b2b;background-color:#f6d1d0;border-color:#1d1d1d}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#1d1d1d}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#1d1d1d}.well{min-height:20px;padding:10px;margin-bottom:20px;background-color:#63676a;border:1px solid #313335;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;color:#2b2b2b;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well a{color:#6caead}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:18px;font-weight:bold;line-height:1;color:#a52521}.close:hover,.close:focus{color:#a52521;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:auto;overflow-y:auto;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);-moz-transition:-moz-transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);-o-transition:-o-transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);transition:transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);transform:translate(0, 0)}.modal-dialog{position:relative;width:auto;margin:10px;z-index:1050}.modal-content{position:relative;background-color:#3c3f41;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);-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:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.3;filter:alpha(opacity=30)}.modal-header{padding:14px;border-bottom:1px solid #303234;min-height:15.5px;background-color:#353739}.modal-header .close,.modal-body .close{padding:0 5px;font-size:22px;margin-top:-2px}.modal-title{margin:0;line-height:1.5}.modal-body{position:relative;padding:14px;color:#adadad}.modal-footer{padding:13px 14px 14px;text-align:right;border-top:1px solid #303234;background-color:#353739}.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}@media (min-width: 780px){.modal-dialog{width:700px;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: 1200px){.modal-lg{width:1100px}}.tooltip{position:absolute;z-index:1010;display:block;visibility:visible;font-size:11px;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:0px}.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;left:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;right: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;left:5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1030;display:none;max-width:276px;padding:1px;text-align:left;background-color:#3c3f41;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:-7px}.popover.right{margin-left:7px}.popover.bottom{margin-top:7px}.popover.left{margin-left:-7px}.popover-title{margin:0;padding:8px 14px;font-size:12px;font-weight:normal;line-height:18px;background-color:#353739;border-bottom:1px solid #282a2c;border-radius:5px 5px 0 0;color:#63676a}.popover-content{padding:7px 10px}.popover-content pre{margin-bottom:5px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:8px}.popover>.arrow:after{border-width:7px;content:""}.popover.top>.arrow{left:50%;margin-left:-8px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-8px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-7px;border-bottom-width:0;border-top-color:#63676a}.popover.right>.arrow{top:50%;left:-8px;margin-top:-8px;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:-7px;border-left-width:0;border-right-color:#63676a}.popover.bottom>.arrow{left:50%;margin-left:-8px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-8px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-7px;border-top-width:0;border-bottom-color:#63676a}.popover.left>.arrow{top:50%;right:-8px;margin-top:-8px;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:#63676a;bottom:-7px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:0.6s ease-in-out left;transition:0.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-control.left{background-image:-webkit-linear-gradient(left, color-stop(rgba(0,0,0,0.5) 0%), color-stop(rgba(0,0,0,0.0001) 100%));background-image:linear-gradient(to right, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left, color-stop(rgba(0,0,0,0.0001) 0%), color-stop(rgba(0,0,0,0.5) 100%));background-image:linear-gradient(to right, rgba(0,0,0,0.0001) 0%,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:hover,.carousel-control:focus{outline:none;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:#000 \9;background-color:transparent}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width: 780px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.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}@media (max-width: 779px){.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 (min-width: 780px) and (max-width: 1199px){.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: 1200px) and (max-width: 1599px){.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: 1600px){.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 (max-width: 779px){.hidden-xs{display:none !important}}@media (min-width: 780px) and (max-width: 1199px){.hidden-sm{display:none !important}}@media (min-width: 1200px) and (max-width: 1599px){.hidden-md{display:none !important}}@media (min-width: 1600px){.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}}@media print{.hidden-print{display:none !important}}/*! * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:'FontAwesome';src:url("../fonts/fontawesome-webfont.eot?v=4.7.0");src:url("../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"),url("../fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"),url("../fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"),url("../fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"),url("../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg");font-weight:normal;font-style:normal}.fa,.pf-landing .pf-landing-list li>i{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}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw,.pf-landing .pf-landing-list li>i,.modal-content h2[data-toggle="collapse"]:after,.modal-content h4[data-toggle="collapse"]:after{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li,.pf-landing .pf-landing-list li>i{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg,.pf-landing .pf-landing-list li>i.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.pf-landing .pf-landing-list li>i.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.pf-landing .pf-landing-list li>i.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left,.pf-landing .pf-landing-list li>i.pull-left{margin-right:.3em}.fa.pull-right,.pf-landing .pf-landing-list li>i.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-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)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180,#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper.pf-character-active:after{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-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)}.fa-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 .fa-rotate-90,:root .fa-rotate-180,:root #pf-landing-login .pf-dynamic-area .pf-character-image-wrapper.pf-character-active:after,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-remove:before,.fa-close:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-gear:before,.fa-cog:before{content:""}.fa-trash-o:before{content:""}.fa-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-rotate-right:before,.fa-repeat:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before{content:""}.fa-check-circle:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-warning:before,.fa-exclamation-triangle:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-gears:before,.fa-cogs:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before{content:""}.fa-arrow-circle-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-save:before,.fa-floppy-o:before{content:""}.fa-square:before{content:""}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-unsorted:before,.fa-sort:before{content:""}.fa-sort-down:before,.fa-sort-desc:before{content:""}.fa-sort-up:before,.fa-sort-asc:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-legal:before,.fa-gavel:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-flash:before,.fa-bolt:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-paste:before,.fa-clipboard:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before,.pf-landing .pf-landing-list li>i:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-unlink:before,.fa-chain-broken:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:""}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:""}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:""}.fa-euro:before,.fa-eur:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-rupee:before,.fa-inr:before{content:""}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:""}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:""}.fa-won:before,.fa-krw:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-turkish-lira:before,.fa-try:before{content:""}.fa-plus-square-o:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-institution:before,.fa-bank:before,.fa-university:before{content:""}.fa-mortar-board:before,.fa-graduation-cap:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:""}.fa-file-zip-o:before,.fa-file-archive-o:before{content:""}.fa-file-sound-o:before,.fa-file-audio-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:""}.fa-ge:before,.fa-empire:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-send:before,.fa-paper-plane:before{content:""}.fa-send-o:before,.fa-paper-plane-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-hotel:before,.fa-bed:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-yc:before,.fa-y-combinator:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-tv:before,.fa-television:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:""}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-signing:before,.fa-sign-language:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-vcard:before,.fa-address-card:before{content:""}.fa-vcard-o:before,.fa-address-card-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;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}.mCustomScrollbar{touch-action:none}.mCustomScrollbar.mCS_no_scrollbar{touch-action:auto}.mCustomScrollBox{position:relative;overflow:hidden;height:100%;max-width:100%;outline:none;direction:ltr}.mCSB_container{overflow:hidden;width:auto;height:auto}.mCSB_inside>.mCSB_container{margin-right:30px}.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden{margin-right:0}.mCS-dir-rtl>.mCSB_inside>.mCSB_container{margin-right:0;margin-left:30px}.mCS-dir-rtl>.mCSB_inside>.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden{margin-left:0}.mCSB_scrollTools{position:absolute;width:16px;height:auto;left:auto;top:0;right:0;bottom:0;opacity:0.75;filter:"alpha(opacity=75)"}.mCSB_outside+.mCSB_scrollTools{right:-26px}.mCS-dir-rtl>.mCSB_inside>.mCSB_scrollTools,.mCS-dir-rtl>.mCSB_outside+.mCSB_scrollTools{right:auto;left:0}.mCS-dir-rtl>.mCSB_outside+.mCSB_scrollTools{left:-26px}.mCSB_scrollTools .mCSB_draggerContainer{position:absolute;top:0;left:0;bottom:0;right:0;height:auto}.mCSB_scrollTools a+.mCSB_draggerContainer{margin:20px 0}.mCSB_scrollTools .mCSB_draggerRail{width:2px;height:100%;margin:0 auto;border-radius:16px;background-color:#000;background-color:rgba(0,0,0,0.4);filter:"alpha(opacity=40)"}.mCSB_scrollTools .mCSB_dragger{cursor:pointer;width:100%;height:30px;z-index:1}.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{position:relative;width:4px;height:100%;margin:0 auto;border-radius:16px;text-align:center;background-color:#fff;background-color:rgba(255,255,255,0.75);filter:"alpha(opacity=75)"}.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{width:12px}.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{width:8px}.mCSB_scrollTools .mCSB_buttonUp,.mCSB_scrollTools .mCSB_buttonDown{display:block;position:absolute;height:20px;width:100%;overflow:hidden;margin:0 auto;cursor:pointer}.mCSB_scrollTools .mCSB_buttonDown{bottom:0;background-position:0 -20px}.mCSB_horizontal.mCSB_inside>.mCSB_container{margin-right:0;margin-bottom:30px}.mCSB_horizontal.mCSB_outside>.mCSB_container{min-height:100%}.mCSB_horizontal>.mCSB_container.mCS_no_scrollbar_x.mCS_x_hidden{margin-bottom:0}.mCSB_scrollTools.mCSB_scrollTools_horizontal{width:auto;height:16px;top:auto;right:0;bottom:0;left:0}.mCustomScrollBox+.mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCustomScrollBox+.mCSB_scrollTools+.mCSB_scrollTools.mCSB_scrollTools_horizontal{bottom:-26px}.mCSB_scrollTools.mCSB_scrollTools_horizontal a+.mCSB_draggerContainer{margin:0 20px}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:2px;margin:7px 0}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger{width:30px;height:100%;left:0}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:4px;margin:6px auto}.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{height:12px;margin:2px auto}.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{height:8px;margin:4px 0}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft,.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight{display:block;position:absolute;width:20px;height:100%;overflow:hidden;margin:0 auto;cursor:pointer}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft{left:0}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight{right:0}.mCSB_container_wrapper{position:absolute;height:auto;width:auto;overflow:hidden;top:0;left:0;right:0;bottom:0;margin-right:30px;margin-bottom:30px}.mCSB_container_wrapper>.mCSB_container{padding-right:30px;padding-bottom:30px}.mCSB_vertical_horizontal>.mCSB_scrollTools.mCSB_scrollTools_vertical{bottom:20px}.mCSB_vertical_horizontal>.mCSB_scrollTools.mCSB_scrollTools_horizontal{right:20px}.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden+.mCSB_scrollTools.mCSB_scrollTools_vertical{bottom:0}.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden+.mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_scrollTools.mCSB_scrollTools_horizontal{right:0}.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_scrollTools.mCSB_scrollTools_horizontal{left:20px}.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden+.mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal{left:0}.mCS-dir-rtl>.mCSB_inside>.mCSB_container_wrapper{margin-right:0;margin-left:30px}.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden>.mCSB_container{padding-right:0;box-sizing:border-box}.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden>.mCSB_container{padding-bottom:0;box-sizing:border-box}.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden{margin-right:0;margin-left:0}.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden{margin-bottom:0}.mCSB_scrollTools,.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCSB_scrollTools .mCSB_buttonUp,.mCSB_scrollTools .mCSB_buttonDown,.mCSB_scrollTools .mCSB_buttonLeft,.mCSB_scrollTools .mCSB_buttonRight{transition:opacity .2s ease-in-out, background-color .2s ease-in-out}.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail,.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail{transition:width .2s ease-out .2s, height .2s ease-out .2s, margin-left .2s ease-out .2s, margin-right .2s ease-out .2s, margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s, opacity .2s ease-in-out, background-color .2s ease-in-out}.mCS-autoHide>.mCustomScrollBox>.mCSB_scrollTools,.mCS-autoHide>.mCustomScrollBox ~ .mCSB_scrollTools{opacity:0;filter:"alpha(opacity=0)"}.mCustomScrollbar>.mCustomScrollBox>.mCSB_scrollTools.mCSB_scrollTools_onDrag,.mCustomScrollbar>.mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag,.mCustomScrollBox:hover>.mCSB_scrollTools,.mCustomScrollBox:hover ~ .mCSB_scrollTools,.mCS-autoHide:hover>.mCustomScrollBox>.mCSB_scrollTools,.mCS-autoHide:hover>.mCustomScrollBox ~ .mCSB_scrollTools{opacity:1;filter:"alpha(opacity=100)"}.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.85);filter:"alpha(opacity=85)"}.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.9);filter:"alpha(opacity=90)"}.mCSB_scrollTools .mCSB_buttonUp,.mCSB_scrollTools .mCSB_buttonDown,.mCSB_scrollTools .mCSB_buttonLeft,.mCSB_scrollTools .mCSB_buttonRight{background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAACQCAYAAACPtWCAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoxMURDMzE5NzIzQkNFMTExOTY0QkYwNzFDNzkwNTlDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpDOTMwRUZENEMxMUUxMUUzOUYxQkJGN0E1MDMzNTg1MCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpDOTMwRUZEM0MxMUUxMUUzOUYxQkJGN0E1MDMzNTg1MCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1MGJlMjMyZC1hNzgzLTI1NGQtOTI4Yy02NDI0YmQxNTg0YWEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTFEQzMxOTcyM0JDRTExMTk2NEJGMDcxQzc5MDU5QzQiLz4gPC9yZGY6RGVzY3Jp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');background-repeat:no-repeat;opacity:0.4;filter:"alpha(opacity=40)"}.mCSB_scrollTools .mCSB_buttonUp{background-position:0 0}.mCSB_scrollTools .mCSB_buttonLeft{background-position:0 -40px}.mCSB_scrollTools .mCSB_buttonRight{background-position:0 -56px}.mCSB_scrollTools .mCSB_buttonUp:hover,.mCSB_scrollTools .mCSB_buttonDown:hover,.mCSB_scrollTools .mCSB_buttonLeft:hover,.mCSB_scrollTools .mCSB_buttonRight:hover{opacity:0.75;filter:"alpha(opacity=75)"}.mCSB_scrollTools .mCSB_buttonUp:active,.mCSB_scrollTools .mCSB_buttonDown:active,.mCSB_scrollTools .mCSB_buttonLeft:active,.mCSB_scrollTools .mCSB_buttonRight:active{opacity:0.9;filter:"alpha(opacity=90)"}.mCS-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.15)}.mCS-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:rgba(0,0,0,0.85)}.mCS-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:rgba(0,0,0,0.9)}.mCS-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-80px 0}.mCS-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-80px -20px}.mCS-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-80px -40px}.mCS-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-80px -56px}.mCS-light-2.mCSB_scrollTools .mCSB_draggerRail,.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail{width:4px;background-color:#fff;background-color:rgba(255,255,255,0.1);border-radius:1px}.mCS-light-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:4px;background-color:#fff;background-color:rgba(255,255,255,0.75);border-radius:1px}.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:4px;margin:6px auto}.mCS-light-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.85)}.mCS-light-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-light-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.9)}.mCS-light-2.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px 0}.mCS-light-2.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -20px}.mCS-light-2.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -40px}.mCS-light-2.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -56px}.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1);border-radius:1px}.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75);border-radius:1px}.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-dark-2.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px 0}.mCS-dark-2.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -20px}.mCS-dark-2.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -40px}.mCS-dark-2.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -56px}.mCS-light-thick.mCSB_scrollTools .mCSB_draggerRail,.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail{width:4px;background-color:#fff;background-color:rgba(255,255,255,0.1);border-radius:2px}.mCS-light-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:6px;background-color:#fff;background-color:rgba(255,255,255,0.75);border-radius:2px}.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:4px;margin:6px 0}.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:6px;margin:5px auto}.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.85)}.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-light-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.9)}.mCS-light-thick.mCSB_scrollTools .mCSB_buttonUp{background-position:-16px 0}.mCS-light-thick.mCSB_scrollTools .mCSB_buttonDown{background-position:-16px -20px}.mCS-light-thick.mCSB_scrollTools .mCSB_buttonLeft{background-position:-20px -40px}.mCS-light-thick.mCSB_scrollTools .mCSB_buttonRight{background-position:-20px -56px}.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1);border-radius:2px}.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75);border-radius:2px}.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonUp{background-position:-96px 0}.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonDown{background-position:-96px -20px}.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonLeft{background-position:-100px -40px}.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonRight{background-position:-100px -56px}.mCS-light-thin.mCSB_scrollTools .mCSB_draggerRail{background-color:#fff;background-color:rgba(255,255,255,0.1)}.mCS-light-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:2px}.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%}.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:2px;margin:7px auto}.mCS-dark-thin.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.15)}.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonUp{background-position:-80px 0}.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonDown{background-position:-80px -20px}.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonLeft{background-position:-80px -40px}.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonRight{background-position:-80px -56px}.mCS-rounded.mCSB_scrollTools .mCSB_draggerRail{background-color:#fff;background-color:rgba(255,255,255,0.15)}.mCS-rounded.mCSB_scrollTools .mCSB_dragger,.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger,.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger{height:14px}.mCS-rounded.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:14px;margin:0 1px}.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger{width:14px}.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{height:14px;margin:1px 0}.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{width:16px;height:16px;margin:-1px 0}.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{width:4px}.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{height:16px;width:16px;margin:0 -1px}.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{height:4px;margin:6px 0}.mCS-rounded.mCSB_scrollTools .mCSB_buttonUp{background-position:0 -72px}.mCS-rounded.mCSB_scrollTools .mCSB_buttonDown{background-position:0 -92px}.mCS-rounded.mCSB_scrollTools .mCSB_buttonLeft{background-position:0 -112px}.mCS-rounded.mCSB_scrollTools .mCSB_buttonRight{background-position:0 -128px}.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-rounded-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.15)}.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-80px -72px}.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-80px -92px}.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-80px -112px}.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-80px -128px}.mCS-rounded-dots.mCSB_scrollTools_vertical .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools_vertical .mCSB_draggerRail{width:4px}.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{background-color:transparent;background-position:center}.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAANElEQVQYV2NkIAAYiVbw//9/Y6DiM1ANJoyMjGdBbLgJQAX/kU0DKgDLkaQAvxW4HEvQFwCRcxIJK1XznAAAAABJRU5ErkJggg==");background-repeat:repeat-y;opacity:0.3;filter:"alpha(opacity=30)"}.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{height:4px;margin:6px 0;background-repeat:repeat-x}.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonUp{background-position:-16px -72px}.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonDown{background-position:-16px -92px}.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonLeft{background-position:-20px -112px}.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonRight{background-position:-20px -128px}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAALElEQVQYV2NkIAAYSVFgDFR8BqrBBEifBbGRTfiPZhpYjiQFBK3A6l6CvgAAE9kGCd1mvgEAAAAASUVORK5CYII=")}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-96px -72px}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-96px -92px}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-100px -112px}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-100px -128px}.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-repeat:repeat-y;background-image:linear-gradient(to right, rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 100%)}.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{background-repeat:repeat-x;background-image:linear-gradient(to bottom, rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 100%)}.mCS-3d.mCSB_scrollTools_vertical .mCSB_dragger,.mCS-3d-dark.mCSB_scrollTools_vertical .mCSB_dragger{height:70px}.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger{width:70px}.mCS-3d.mCSB_scrollTools,.mCS-3d-dark.mCSB_scrollTools{opacity:1;filter:"alpha(opacity=30)"}.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{border-radius:16px}.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail{width:8px;background-color:#000;background-color:rgba(0,0,0,0.2);box-shadow:inset 1px 0 1px rgba(0,0,0,0.5),inset -1px 0 1px rgba(255,255,255,0.2)}.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-3d.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-3d.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#555}.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:8px}.mCS-3d.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:8px;margin:4px 0;box-shadow:inset 0 1px 1px rgba(0,0,0,0.5),inset 0 -1px 1px rgba(255,255,255,0.2)}.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:8px;margin:4px auto}.mCS-3d.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px -72px}.mCS-3d.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -92px}.mCS-3d.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -112px}.mCS-3d.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -128px}.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1);box-shadow:inset 1px 0 1px rgba(0,0,0,0.1)}.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{box-shadow:inset 0 1px 1px rgba(0,0,0,0.1)}.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px -72px}.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -92px}.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -112px}.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -128px}.mCS-3d-thick.mCSB_scrollTools,.mCS-3d-thick-dark.mCSB_scrollTools{opacity:1;filter:"alpha(opacity=30)"}.mCS-3d-thick.mCSB_scrollTools,.mCS-3d-thick-dark.mCSB_scrollTools,.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer{border-radius:7px}.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{border-radius:5px;box-shadow:inset 1px 0 0 rgba(255,255,255,0.4);width:12px;margin:2px;position:absolute;height:auto;top:0;bottom:0;left:0;right:0}.mCSB_inside+.mCS-3d-thick.mCSB_scrollTools_vertical,.mCSB_inside+.mCS-3d-thick-dark.mCSB_scrollTools_vertical{right:1px}.mCS-3d-thick.mCSB_scrollTools_vertical,.mCS-3d-thick-dark.mCSB_scrollTools_vertical{box-shadow:inset 1px 0 1px rgba(0,0,0,0.1),inset 0 0 14px rgba(0,0,0,0.5)}.mCS-3d-thick.mCSB_scrollTools_horizontal,.mCS-3d-thick-dark.mCSB_scrollTools_horizontal{bottom:1px;box-shadow:inset 0 1px 1px rgba(0,0,0,0.1),inset 0 0 14px rgba(0,0,0,0.5)}.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{box-shadow:inset 0 1px 0 rgba(255,255,255,0.4);height:12px;width:auto}.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#555}.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer{background-color:#000;background-color:rgba(0,0,0,0.05);box-shadow:inset 1px 1px 16px rgba(0,0,0,0.1)}.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerRail{background-color:transparent}.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px -72px}.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -92px}.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -112px}.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -128px}.mCS-3d-thick-dark.mCSB_scrollTools{box-shadow:inset 0 0 14px rgba(0,0,0,0.2)}.mCS-3d-thick-dark.mCSB_scrollTools_horizontal{box-shadow:inset 0 1px 1px rgba(0,0,0,0.1),inset 0 0 14px rgba(0,0,0,0.2)}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{box-shadow:inset 1px 0 0 rgba(255,255,255,0.4),inset -1px 0 0 rgba(0,0,0,0.2)}.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{box-shadow:inset 0 1px 0 rgba(255,255,255,0.4),inset 0 -1px 0 rgba(0,0,0,0.2)}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#777}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer{background-color:#fff;background-color:rgba(0,0,0,0.05);box-shadow:inset 1px 1px 16px rgba(0,0,0,0.1)}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:transparent}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px -72px}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -92px}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -112px}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -128px}.mCSB_outside+.mCS-minimal.mCSB_scrollTools_vertical,.mCSB_outside+.mCS-minimal-dark.mCSB_scrollTools_vertical{right:0;margin:12px 0}.mCustomScrollBox.mCS-minimal+.mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCustomScrollBox.mCS-minimal+.mCSB_scrollTools+.mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCustomScrollBox.mCS-minimal-dark+.mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCustomScrollBox.mCS-minimal-dark+.mCSB_scrollTools+.mCSB_scrollTools.mCSB_scrollTools_horizontal{bottom:0;margin:0 12px}.mCS-dir-rtl>.mCSB_outside+.mCS-minimal.mCSB_scrollTools_vertical,.mCS-dir-rtl>.mCSB_outside+.mCS-minimal-dark.mCSB_scrollTools_vertical{left:0;right:auto}.mCS-minimal.mCSB_scrollTools .mCSB_draggerRail,.mCS-minimal-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:transparent}.mCS-minimal.mCSB_scrollTools_vertical .mCSB_dragger,.mCS-minimal-dark.mCSB_scrollTools_vertical .mCSB_dragger{height:50px}.mCS-minimal.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-minimal-dark.mCSB_scrollTools_horizontal .mCSB_dragger{width:50px}.mCS-minimal.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.2);filter:"alpha(opacity=20)"}.mCS-minimal.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-minimal.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.5);filter:"alpha(opacity=50)"}.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.2);filter:"alpha(opacity=20)"}.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.5);filter:"alpha(opacity=50)"}.mCS-light-3.mCSB_scrollTools .mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail{width:6px;background-color:#000;background-color:rgba(0,0,0,0.2)}.mCS-light-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:6px}.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:6px;margin:5px 0}.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{width:12px}.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{height:12px;margin:2px 0}.mCS-light-3.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px -72px}.mCS-light-3.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -92px}.mCS-light-3.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -112px}.mCS-light-3.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -128px}.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1)}.mCS-dark-3.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px -72px}.mCS-dark-3.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -92px}.mCS-dark-3.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -112px}.mCS-dark-3.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -128px}.mCS-inset.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail{width:12px;background-color:#000;background-color:rgba(0,0,0,0.2)}.mCS-inset.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:6px;margin:3px 5px;position:absolute;height:auto;top:0;bottom:0;left:0;right:0}.mCS-inset.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{height:6px;margin:5px 3px;position:absolute;width:auto;top:0;bottom:0;left:0;right:0}.mCS-inset.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:12px;margin:2px 0}.mCS-inset.mCSB_scrollTools .mCSB_buttonUp,.mCS-inset-2.mCSB_scrollTools .mCSB_buttonUp,.mCS-inset-3.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px -72px}.mCS-inset.mCSB_scrollTools .mCSB_buttonDown,.mCS-inset-2.mCSB_scrollTools .mCSB_buttonDown,.mCS-inset-3.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -92px}.mCS-inset.mCSB_scrollTools .mCSB_buttonLeft,.mCS-inset-2.mCSB_scrollTools .mCSB_buttonLeft,.mCS-inset-3.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -112px}.mCS-inset.mCSB_scrollTools .mCSB_buttonRight,.mCS-inset-2.mCSB_scrollTools .mCSB_buttonRight,.mCS-inset-3.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -128px}.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1)}.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonUp,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonUp,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px -72px}.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonDown,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonDown,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -92px}.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonLeft,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonLeft,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -112px}.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonRight,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonRight,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -128px}.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:transparent;border-width:1px;border-style:solid;border-color:#fff;border-color:rgba(255,255,255,0.2);box-sizing:border-box}.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail{border-color:#000;border-color:rgba(0,0,0,0.2)}.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail{background-color:#fff;background-color:rgba(255,255,255,0.6)}.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.6)}.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.75)}.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.85)}.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.9)}table.dataTable{width:100%;margin:0 auto;clear:both;border-collapse:separate;border-spacing:0}table.dataTable thead th,table.dataTable tfoot th{font-weight:bold}table.dataTable thead th,table.dataTable thead td{padding:10px 18px;border-bottom:1px solid #3c3f41}table.dataTable thead th:active,table.dataTable thead td:active{outline:none}table.dataTable tfoot th,table.dataTable tfoot td{padding:10px 18px 6px 18px;border-top:1px solid #3c3f41}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc{cursor:pointer;*cursor:hand}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{background-repeat:no-repeat;background-position:center right}table.dataTable thead .sorting{background-image:url("../img/data-tables/sort_both.png")}table.dataTable thead .sorting_asc{background-image:url("../img/data-tables/sort_asc.png")}table.dataTable thead .sorting_desc{background-image:url("../img/data-tables/sort_desc.png")}table.dataTable thead .sorting_asc_disabled{background-image:url("../img/data-tables/sort_asc_disabled.png")}table.dataTable thead .sorting_desc_disabled{background-image:url("../img/data-tables/sort_desc_disabled.png")}table.dataTable tbody tr{background-color:#212121}table.dataTable tbody tr.selected{background-color:#1b2326}table.dataTable tbody th,table.dataTable tbody td{padding:8px 10px}table.dataTable.row-border tbody th,table.dataTable.row-border tbody td,table.dataTable.display tbody th,table.dataTable.display tbody td{border-top:1px solid #3c3f41}table.dataTable.row-border tbody tr:first-child th,table.dataTable.row-border tbody tr:first-child td,table.dataTable.display tbody tr:first-child th,table.dataTable.display tbody tr:first-child td{border-top:none}table.dataTable.cell-border tbody th,table.dataTable.cell-border tbody td{border-top:1px solid #ddd;border-right:1px solid #ddd}table.dataTable.cell-border tbody tr th:first-child,table.dataTable.cell-border tbody tr td:first-child{border-left:1px solid #ddd}table.dataTable.cell-border tbody tr:first-child th,table.dataTable.cell-border tbody tr:first-child td{border-top:none}table.dataTable.stripe tbody tr.odd,table.dataTable.display tbody tr.odd{background-color:#2b2b2b}table.dataTable.stripe tbody tr.odd.selected,table.dataTable.display tbody tr.odd.selected{background-color:#1b2326}table.dataTable.hover tbody tr:hover,table.dataTable.display tbody tr:hover{background-color:#b26d0a;color:#2b2b2b}table.dataTable.hover tbody tr:hover a,table.dataTable.display tbody tr:hover a{color:#2b2b2b !important}table.dataTable.hover tbody tr:hover td>.fa-plus,table.dataTable.display tbody tr:hover td>.fa-plus{color:#2b2b2b !important}table.dataTable.hover tbody tr:hover.selected,table.dataTable.display tbody tr:hover.selected{background-color:#925909}table.dataTable.order-column tbody tr>.sorting_1,table.dataTable.order-column tbody tr>.sorting_2,table.dataTable.order-column tbody tr>.sorting_3,table.dataTable.display tbody tr>.sorting_1,table.dataTable.display tbody tr>.sorting_2,table.dataTable.display tbody tr>.sorting_3{background-color:#2b2b2b}table.dataTable.order-column tbody tr.selected>.sorting_1,table.dataTable.order-column tbody tr.selected>.sorting_2,table.dataTable.order-column tbody tr.selected>.sorting_3,table.dataTable.display tbody tr.selected>.sorting_1,table.dataTable.display tbody tr.selected>.sorting_2,table.dataTable.display tbody tr.selected>.sorting_3{background-color:#acbad5}table.dataTable.display tbody tr.odd>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd>.sorting_1{background-color:#212C30}table.dataTable.display tbody tr.odd>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd>.sorting_2{background-color:#1b2326}table.dataTable.display tbody tr.odd>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd>.sorting_3{background-color:whitesmoke}table.dataTable.display tbody tr.odd.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_1{background-color:#171e20}table.dataTable.display tbody tr.odd.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_2{background-color:#a8b5cf}table.dataTable.display tbody tr.odd.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_3{background-color:#a9b7d1}table.dataTable.display tbody tr.even>.sorting_1,table.dataTable.order-column.stripe tbody tr.even>.sorting_1{background-color:#212C30}table.dataTable.display tbody tr.even>.sorting_2,table.dataTable.order-column.stripe tbody tr.even>.sorting_2{background-color:#1b2326}table.dataTable.display tbody tr.even>.sorting_3,table.dataTable.order-column.stripe tbody tr.even>.sorting_3{background-color:#fefefe}table.dataTable.display tbody tr.even.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_1{background-color:#171e20}table.dataTable.display tbody tr.even.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_2{background-color:#aebcd6}table.dataTable.display tbody tr.even.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.display tbody tr:hover>.sorting_1,table.dataTable.order-column.hover tbody tr:hover>.sorting_1{background-color:#925909}table.dataTable.display tbody tr:hover>.sorting_2,table.dataTable.order-column.hover tbody tr:hover>.sorting_2{background-color:#ececec}table.dataTable.display tbody tr:hover>.sorting_3,table.dataTable.order-column.hover tbody tr:hover>.sorting_3{background-color:#efefef}table.dataTable.display tbody tr:hover.selected>.sorting_1,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{background-color:#885308}table.dataTable.display tbody tr:hover.selected>.sorting_2,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{background-color:#a3b0c9}table.dataTable.display tbody tr:hover.selected>.sorting_3,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{background-color:#a5b2cb}table.dataTable.no-footer{border-bottom:1px solid #3c3f41}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}table.dataTable.compact thead th:not(.sorting_disabled),table.dataTable.compact thead td:not(.sorting_disabled){padding:4px 17px 4px 4px}table.dataTable.compact thead th,table.dataTable.compact thead td{padding:4px 4px 4px 4px}table.dataTable.compact tfoot th,table.dataTable.compact tfoot td{padding:4px}table.dataTable.compact tbody th,table.dataTable.compact tbody td{padding:4px}table.dataTable th.dt-left,table.dataTable td.dt-left{text-align:left}table.dataTable th.dt-center,table.dataTable td.dt-center,table.dataTable td.dataTables_empty{text-align:center}table.dataTable th.dt-right,table.dataTable td.dt-right{text-align:right}table.dataTable th.dt-justify,table.dataTable td.dt-justify{text-align:justify}table.dataTable th.dt-nowrap,table.dataTable td.dt-nowrap{white-space:nowrap}table.dataTable thead th.dt-head-left,table.dataTable thead td.dt-head-left,table.dataTable tfoot th.dt-head-left,table.dataTable tfoot td.dt-head-left{text-align:left}table.dataTable thead th.dt-head-center,table.dataTable thead td.dt-head-center,table.dataTable tfoot th.dt-head-center,table.dataTable tfoot td.dt-head-center{text-align:center}table.dataTable thead th.dt-head-right,table.dataTable thead td.dt-head-right,table.dataTable tfoot th.dt-head-right,table.dataTable tfoot td.dt-head-right{text-align:right}table.dataTable thead th.dt-head-justify,table.dataTable thead td.dt-head-justify,table.dataTable tfoot th.dt-head-justify,table.dataTable tfoot td.dt-head-justify{text-align:justify}table.dataTable thead th.dt-head-nowrap,table.dataTable thead td.dt-head-nowrap,table.dataTable tfoot th.dt-head-nowrap,table.dataTable tfoot td.dt-head-nowrap{white-space:nowrap}table.dataTable tbody th.dt-body-left,table.dataTable tbody td.dt-body-left{text-align:left}table.dataTable tbody th.dt-body-center,table.dataTable tbody td.dt-body-center{text-align:center}table.dataTable tbody th.dt-body-right,table.dataTable tbody td.dt-body-right{text-align:right}table.dataTable tbody th.dt-body-justify,table.dataTable tbody td.dt-body-justify{text-align:justify}table.dataTable tbody th.dt-body-nowrap,table.dataTable tbody td.dt-body-nowrap{white-space:nowrap}table.dataTable,table.dataTable th,table.dataTable td{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dataTables_wrapper{position:relative;clear:both;*zoom:1;zoom:1}.dataTables_wrapper .dataTables_length{float:left}.dataTables_wrapper .dataTables_filter{float:right;text-align:right}.dataTables_wrapper .dataTables_filter input{margin-left:0.5em}.dataTables_wrapper .dataTables_info{clear:both;float:left;padding-top:0.755em}.dataTables_wrapper .dataTables_paginate{float:right;text-align:right;padding-top:0.25em}.dataTables_wrapper .dataTables_paginate .paginate_button{box-sizing:border-box;display:inline-block;min-width:1.5em;padding:0.5em 1em;margin-left:2px;text-align:center;text-decoration:none !important;cursor:pointer;*cursor:hand;color:#6f7477 !important;border:1px solid transparent;border-radius:2px}.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{color:#adadad !important;border:1px solid transparent;background-color:#313335;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #313335), color-stop(100%, #2b2b2b));background:-webkit-linear-gradient(top, #313335 0%, #2b2b2b 100%);background:-moz-linear-gradient(top, #313335 0%, #2b2b2b 100%);background:-ms-linear-gradient(top, #313335 0%, #2b2b2b 100%);background:-o-linear-gradient(top, #313335 0%, #2b2b2b 100%);background:linear-gradient(to bottom, #313335 0%,#2b2b2b 100%)}.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active{cursor:default;color:#4f5355 !important;border:1px solid transparent;background:transparent;box-shadow:none}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{color:#313335 !important;border:1px solid transparent;background-color:#c2760c;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #c2760c), color-stop(100%, #c2760c));background:-webkit-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-moz-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-ms-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-o-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:linear-gradient(to bottom, #c2760c 0%,#c2760c 100%)}.dataTables_wrapper .dataTables_paginate .paginate_button:active{outline:none;background-color:#c2760c;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #c2760c), color-stop(100%, #c2760c));background:-webkit-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-moz-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-ms-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-o-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:linear-gradient(to bottom, #c2760c 0%,#c2760c 100%)}.dataTables_wrapper .dataTables_paginate .ellipsis{padding:0 1em}.dataTables_wrapper .dataTables_processing{position:absolute;top:50%;left:50%;width:100%;height:40px;margin-left:-50%;margin-top:-25px;padding-top:20px;text-align:center;font-size:1.2em;background-color:white;background:-webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255,255,255,0)), color-stop(25%, rgba(255,255,255,0.9)), color-stop(75%, rgba(255,255,255,0.9)), color-stop(100%, rgba(255,255,255,0)));background:-webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-o-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,0.9) 25%,rgba(255,255,255,0.9) 75%,rgba(255,255,255,0) 100%)}.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_processing,.dataTables_wrapper .dataTables_paginate{color:#63676a}.dataTables_wrapper .dataTables_scroll{clear:both}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody{*margin-top:-1px;-webkit-overflow-scrolling:touch}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td{vertical-align:middle}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td>div.dataTables_sizing{height:0;overflow:hidden;margin:0 !important;padding:0 !important}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:1px solid #111}.dataTables_wrapper.no-footer div.dataTables_scrollHead table,.dataTables_wrapper.no-footer div.dataTables_scrollBody table{border-bottom:none}.dataTables_wrapper:after{visibility:hidden;display:block;content:"";clear:both;height:0}@media screen and (max-width: 767px){.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{float:none;text-align:center}.dataTables_wrapper .dataTables_paginate{margin-top:0.5em}}@media screen and (max-width: 640px){.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter{float:none;text-align:center}.dataTables_wrapper .dataTables_filter{margin-top:0.5em}}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}ul.dt-button-collection.dropdown-menu{display:block;z-index:2002;-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}ul.dt-button-collection.dropdown-menu.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}ul.dt-button-collection.dropdown-menu.fixed.two-column{margin-left:-150px}ul.dt-button-collection.dropdown-menu.fixed.three-column{margin-left:-225px}ul.dt-button-collection.dropdown-menu.fixed.four-column{margin-left:-300px}ul.dt-button-collection.dropdown-menu>*{-webkit-column-break-inside:avoid;break-inside:avoid}ul.dt-button-collection.dropdown-menu.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}ul.dt-button-collection.dropdown-menu.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}ul.dt-button-collection.dropdown-menu.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2001}@media screen and (max-width: 767px){div.dt-buttons{float:none;width:100%;text-align:center;margin-bottom:0.5em}div.dt-buttons a.btn{float:none}}/*! + */@font-face{font-family:'FontAwesome';src:url("../fonts/fontawesome-webfont.eot?v=4.7.0");src:url("../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"),url("../fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"),url("../fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"),url("../fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"),url("../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg");font-weight:normal;font-style:normal}.fa,.pf-landing .pf-landing-list li>i{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}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw,.pf-landing .pf-landing-list li>i,.modal-content h2[data-toggle="collapse"]:after,.modal-content h4[data-toggle="collapse"]:after{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li,.pf-landing .pf-landing-list li>i{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg,.pf-landing .pf-landing-list li>i.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.pf-landing .pf-landing-list li>i.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.pf-landing .pf-landing-list li>i.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left,.pf-landing .pf-landing-list li>i.pull-left{margin-right:.3em}.fa.pull-right,.pf-landing .pf-landing-list li>i.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-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)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180,#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper.pf-character-active:after{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-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)}.fa-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 .fa-rotate-90,:root .fa-rotate-180,:root #pf-landing-login .pf-dynamic-area .pf-character-image-wrapper.pf-character-active:after,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-remove:before,.fa-close:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-gear:before,.fa-cog:before{content:""}.fa-trash-o:before{content:""}.fa-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-rotate-right:before,.fa-repeat:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before{content:""}.fa-check-circle:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-warning:before,.fa-exclamation-triangle:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-gears:before,.fa-cogs:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before{content:""}.fa-arrow-circle-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-save:before,.fa-floppy-o:before{content:""}.fa-square:before{content:""}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-unsorted:before,.fa-sort:before{content:""}.fa-sort-down:before,.fa-sort-desc:before{content:""}.fa-sort-up:before,.fa-sort-asc:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-legal:before,.fa-gavel:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-flash:before,.fa-bolt:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-paste:before,.fa-clipboard:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before,.pf-landing .pf-landing-list li>i:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-unlink:before,.fa-chain-broken:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:""}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:""}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:""}.fa-euro:before,.fa-eur:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-rupee:before,.fa-inr:before{content:""}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:""}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:""}.fa-won:before,.fa-krw:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-turkish-lira:before,.fa-try:before{content:""}.fa-plus-square-o:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-institution:before,.fa-bank:before,.fa-university:before{content:""}.fa-mortar-board:before,.fa-graduation-cap:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:""}.fa-file-zip-o:before,.fa-file-archive-o:before{content:""}.fa-file-sound-o:before,.fa-file-audio-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:""}.fa-ge:before,.fa-empire:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-send:before,.fa-paper-plane:before{content:""}.fa-send-o:before,.fa-paper-plane-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-hotel:before,.fa-bed:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-yc:before,.fa-y-combinator:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-tv:before,.fa-television:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:""}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-signing:before,.fa-sign-language:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-vcard:before,.fa-address-card:before{content:""}.fa-vcard-o:before,.fa-address-card-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;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}.mCustomScrollbar{touch-action:none}.mCustomScrollbar.mCS_no_scrollbar{touch-action:auto}.mCustomScrollBox{position:relative;overflow:hidden;height:100%;max-width:100%;outline:none;direction:ltr}.mCSB_container{overflow:hidden;width:auto;height:auto}.mCSB_inside>.mCSB_container{margin-right:30px}.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden{margin-right:0}.mCS-dir-rtl>.mCSB_inside>.mCSB_container{margin-right:0;margin-left:30px}.mCS-dir-rtl>.mCSB_inside>.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden{margin-left:0}.mCSB_scrollTools{position:absolute;width:16px;height:auto;left:auto;top:0;right:0;bottom:0;opacity:0.75;filter:"alpha(opacity=75)"}.mCSB_outside+.mCSB_scrollTools{right:-26px}.mCS-dir-rtl>.mCSB_inside>.mCSB_scrollTools,.mCS-dir-rtl>.mCSB_outside+.mCSB_scrollTools{right:auto;left:0}.mCS-dir-rtl>.mCSB_outside+.mCSB_scrollTools{left:-26px}.mCSB_scrollTools .mCSB_draggerContainer{position:absolute;top:0;left:0;bottom:0;right:0;height:auto}.mCSB_scrollTools a+.mCSB_draggerContainer{margin:20px 0}.mCSB_scrollTools .mCSB_draggerRail{width:2px;height:100%;margin:0 auto;border-radius:16px;background-color:#000;background-color:rgba(0,0,0,0.4);filter:"alpha(opacity=40)"}.mCSB_scrollTools .mCSB_dragger{cursor:pointer;width:100%;height:30px;z-index:1}.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{position:relative;width:4px;height:100%;margin:0 auto;border-radius:16px;text-align:center;background-color:#fff;background-color:rgba(255,255,255,0.75);filter:"alpha(opacity=75)"}.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{width:12px}.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{width:8px}.mCSB_scrollTools .mCSB_buttonUp,.mCSB_scrollTools .mCSB_buttonDown{display:block;position:absolute;height:20px;width:100%;overflow:hidden;margin:0 auto;cursor:pointer}.mCSB_scrollTools .mCSB_buttonDown{bottom:0;background-position:0 -20px}.mCSB_horizontal.mCSB_inside>.mCSB_container{margin-right:0;margin-bottom:30px}.mCSB_horizontal.mCSB_outside>.mCSB_container{min-height:100%}.mCSB_horizontal>.mCSB_container.mCS_no_scrollbar_x.mCS_x_hidden{margin-bottom:0}.mCSB_scrollTools.mCSB_scrollTools_horizontal{width:auto;height:16px;top:auto;right:0;bottom:0;left:0}.mCustomScrollBox+.mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCustomScrollBox+.mCSB_scrollTools+.mCSB_scrollTools.mCSB_scrollTools_horizontal{bottom:-26px}.mCSB_scrollTools.mCSB_scrollTools_horizontal a+.mCSB_draggerContainer{margin:0 20px}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:2px;margin:7px 0}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger{width:30px;height:100%;left:0}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:4px;margin:6px auto}.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{height:12px;margin:2px auto}.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{height:8px;margin:4px 0}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft,.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight{display:block;position:absolute;width:20px;height:100%;overflow:hidden;margin:0 auto;cursor:pointer}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft{left:0}.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight{right:0}.mCSB_container_wrapper{position:absolute;height:auto;width:auto;overflow:hidden;top:0;left:0;right:0;bottom:0;margin-right:30px;margin-bottom:30px}.mCSB_container_wrapper>.mCSB_container{padding-right:30px;padding-bottom:30px}.mCSB_vertical_horizontal>.mCSB_scrollTools.mCSB_scrollTools_vertical{bottom:20px}.mCSB_vertical_horizontal>.mCSB_scrollTools.mCSB_scrollTools_horizontal{right:20px}.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden+.mCSB_scrollTools.mCSB_scrollTools_vertical{bottom:0}.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden+.mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_scrollTools.mCSB_scrollTools_horizontal{right:0}.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_scrollTools.mCSB_scrollTools_horizontal{left:20px}.mCS-dir-rtl>.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden+.mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal{left:0}.mCS-dir-rtl>.mCSB_inside>.mCSB_container_wrapper{margin-right:0;margin-left:30px}.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden>.mCSB_container{padding-right:0;box-sizing:border-box}.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden>.mCSB_container{padding-bottom:0;box-sizing:border-box}.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden{margin-right:0;margin-left:0}.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside>.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden{margin-bottom:0}.mCSB_scrollTools,.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCSB_scrollTools .mCSB_buttonUp,.mCSB_scrollTools .mCSB_buttonDown,.mCSB_scrollTools .mCSB_buttonLeft,.mCSB_scrollTools .mCSB_buttonRight{transition:opacity .2s ease-in-out, background-color .2s ease-in-out}.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail,.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail{transition:width .2s ease-out .2s, height .2s ease-out .2s, margin-left .2s ease-out .2s, margin-right .2s ease-out .2s, margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s, opacity .2s ease-in-out, background-color .2s ease-in-out}.mCS-autoHide>.mCustomScrollBox>.mCSB_scrollTools,.mCS-autoHide>.mCustomScrollBox ~ .mCSB_scrollTools{opacity:0;filter:"alpha(opacity=0)"}.mCustomScrollbar>.mCustomScrollBox>.mCSB_scrollTools.mCSB_scrollTools_onDrag,.mCustomScrollbar>.mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag,.mCustomScrollBox:hover>.mCSB_scrollTools,.mCustomScrollBox:hover ~ .mCSB_scrollTools,.mCS-autoHide:hover>.mCustomScrollBox>.mCSB_scrollTools,.mCS-autoHide:hover>.mCustomScrollBox ~ .mCSB_scrollTools{opacity:1;filter:"alpha(opacity=100)"}.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.85);filter:"alpha(opacity=85)"}.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.9);filter:"alpha(opacity=90)"}.mCSB_scrollTools .mCSB_buttonUp,.mCSB_scrollTools .mCSB_buttonDown,.mCSB_scrollTools .mCSB_buttonLeft,.mCSB_scrollTools .mCSB_buttonRight{background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAACQCAYAAACPtWCAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoxMURDMzE5NzIzQkNFMTExOTY0QkYwNzFDNzkwNTlDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpDOTMwRUZENEMxMUUxMUUzOUYxQkJGN0E1MDMzNTg1MCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpDOTMwRUZEM0MxMUUxMUUzOUYxQkJGN0E1MDMzNTg1MCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1MGJlMjMyZC1hNzgzLTI1NGQtOTI4Yy02NDI0YmQxNTg0YWEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTFEQzMxOTcyM0JDRTExMTk2NEJGMDcxQzc5MDU5QzQiLz4gPC9yZGY6RGVzY3Jp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');background-repeat:no-repeat;opacity:0.4;filter:"alpha(opacity=40)"}.mCSB_scrollTools .mCSB_buttonUp{background-position:0 0}.mCSB_scrollTools .mCSB_buttonLeft{background-position:0 -40px}.mCSB_scrollTools .mCSB_buttonRight{background-position:0 -56px}.mCSB_scrollTools .mCSB_buttonUp:hover,.mCSB_scrollTools .mCSB_buttonDown:hover,.mCSB_scrollTools .mCSB_buttonLeft:hover,.mCSB_scrollTools .mCSB_buttonRight:hover{opacity:0.75;filter:"alpha(opacity=75)"}.mCSB_scrollTools .mCSB_buttonUp:active,.mCSB_scrollTools .mCSB_buttonDown:active,.mCSB_scrollTools .mCSB_buttonLeft:active,.mCSB_scrollTools .mCSB_buttonRight:active{opacity:0.9;filter:"alpha(opacity=90)"}.mCS-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.15)}.mCS-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:rgba(0,0,0,0.85)}.mCS-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:rgba(0,0,0,0.9)}.mCS-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-80px 0}.mCS-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-80px -20px}.mCS-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-80px -40px}.mCS-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-80px -56px}.mCS-light-2.mCSB_scrollTools .mCSB_draggerRail,.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail{width:4px;background-color:#fff;background-color:rgba(255,255,255,0.1);border-radius:1px}.mCS-light-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:4px;background-color:#fff;background-color:rgba(255,255,255,0.75);border-radius:1px}.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:4px;margin:6px auto}.mCS-light-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.85)}.mCS-light-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-light-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.9)}.mCS-light-2.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px 0}.mCS-light-2.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -20px}.mCS-light-2.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -40px}.mCS-light-2.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -56px}.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1);border-radius:1px}.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75);border-radius:1px}.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-dark-2.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px 0}.mCS-dark-2.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -20px}.mCS-dark-2.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -40px}.mCS-dark-2.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -56px}.mCS-light-thick.mCSB_scrollTools .mCSB_draggerRail,.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail{width:4px;background-color:#fff;background-color:rgba(255,255,255,0.1);border-radius:2px}.mCS-light-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:6px;background-color:#fff;background-color:rgba(255,255,255,0.75);border-radius:2px}.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:4px;margin:6px 0}.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:6px;margin:5px auto}.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.85)}.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-light-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.9)}.mCS-light-thick.mCSB_scrollTools .mCSB_buttonUp{background-position:-16px 0}.mCS-light-thick.mCSB_scrollTools .mCSB_buttonDown{background-position:-16px -20px}.mCS-light-thick.mCSB_scrollTools .mCSB_buttonLeft{background-position:-20px -40px}.mCS-light-thick.mCSB_scrollTools .mCSB_buttonRight{background-position:-20px -56px}.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1);border-radius:2px}.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75);border-radius:2px}.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonUp{background-position:-96px 0}.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonDown{background-position:-96px -20px}.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonLeft{background-position:-100px -40px}.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonRight{background-position:-100px -56px}.mCS-light-thin.mCSB_scrollTools .mCSB_draggerRail{background-color:#fff;background-color:rgba(255,255,255,0.1)}.mCS-light-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:2px}.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%}.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:2px;margin:7px auto}.mCS-dark-thin.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.15)}.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonUp{background-position:-80px 0}.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonDown{background-position:-80px -20px}.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonLeft{background-position:-80px -40px}.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonRight{background-position:-80px -56px}.mCS-rounded.mCSB_scrollTools .mCSB_draggerRail{background-color:#fff;background-color:rgba(255,255,255,0.15)}.mCS-rounded.mCSB_scrollTools .mCSB_dragger,.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger,.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger{height:14px}.mCS-rounded.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:14px;margin:0 1px}.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger{width:14px}.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{height:14px;margin:1px 0}.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{width:16px;height:16px;margin:-1px 0}.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{width:4px}.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{height:16px;width:16px;margin:0 -1px}.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{height:4px;margin:6px 0}.mCS-rounded.mCSB_scrollTools .mCSB_buttonUp{background-position:0 -72px}.mCS-rounded.mCSB_scrollTools .mCSB_buttonDown{background-position:0 -92px}.mCS-rounded.mCSB_scrollTools .mCSB_buttonLeft{background-position:0 -112px}.mCS-rounded.mCSB_scrollTools .mCSB_buttonRight{background-position:0 -128px}.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-rounded-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.15)}.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-80px -72px}.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-80px -92px}.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-80px -112px}.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-80px -128px}.mCS-rounded-dots.mCSB_scrollTools_vertical .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools_vertical .mCSB_draggerRail{width:4px}.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{background-color:transparent;background-position:center}.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAANElEQVQYV2NkIAAYiVbw//9/Y6DiM1ANJoyMjGdBbLgJQAX/kU0DKgDLkaQAvxW4HEvQFwCRcxIJK1XznAAAAABJRU5ErkJggg==");background-repeat:repeat-y;opacity:0.3;filter:"alpha(opacity=30)"}.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{height:4px;margin:6px 0;background-repeat:repeat-x}.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonUp{background-position:-16px -72px}.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonDown{background-position:-16px -92px}.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonLeft{background-position:-20px -112px}.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonRight{background-position:-20px -128px}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAALElEQVQYV2NkIAAYSVFgDFR8BqrBBEifBbGRTfiPZhpYjiQFBK3A6l6CvgAAE9kGCd1mvgEAAAAASUVORK5CYII=")}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-96px -72px}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-96px -92px}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-100px -112px}.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-100px -128px}.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-repeat:repeat-y;background-image:linear-gradient(to right, rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 100%)}.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{background-repeat:repeat-x;background-image:linear-gradient(to bottom, rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 100%)}.mCS-3d.mCSB_scrollTools_vertical .mCSB_dragger,.mCS-3d-dark.mCSB_scrollTools_vertical .mCSB_dragger{height:70px}.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger{width:70px}.mCS-3d.mCSB_scrollTools,.mCS-3d-dark.mCSB_scrollTools{opacity:1;filter:"alpha(opacity=30)"}.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{border-radius:16px}.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail{width:8px;background-color:#000;background-color:rgba(0,0,0,0.2);box-shadow:inset 1px 0 1px rgba(0,0,0,0.5),inset -1px 0 1px rgba(255,255,255,0.2)}.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-3d.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-3d.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#555}.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:8px}.mCS-3d.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:8px;margin:4px 0;box-shadow:inset 0 1px 1px rgba(0,0,0,0.5),inset 0 -1px 1px rgba(255,255,255,0.2)}.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{width:100%;height:8px;margin:4px auto}.mCS-3d.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px -72px}.mCS-3d.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -92px}.mCS-3d.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -112px}.mCS-3d.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -128px}.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1);box-shadow:inset 1px 0 1px rgba(0,0,0,0.1)}.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{box-shadow:inset 0 1px 1px rgba(0,0,0,0.1)}.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px -72px}.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -92px}.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -112px}.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -128px}.mCS-3d-thick.mCSB_scrollTools,.mCS-3d-thick-dark.mCSB_scrollTools{opacity:1;filter:"alpha(opacity=30)"}.mCS-3d-thick.mCSB_scrollTools,.mCS-3d-thick-dark.mCSB_scrollTools,.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer{border-radius:7px}.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{border-radius:5px;box-shadow:inset 1px 0 0 rgba(255,255,255,0.4);width:12px;margin:2px;position:absolute;height:auto;top:0;bottom:0;left:0;right:0}.mCSB_inside+.mCS-3d-thick.mCSB_scrollTools_vertical,.mCSB_inside+.mCS-3d-thick-dark.mCSB_scrollTools_vertical{right:1px}.mCS-3d-thick.mCSB_scrollTools_vertical,.mCS-3d-thick-dark.mCSB_scrollTools_vertical{box-shadow:inset 1px 0 1px rgba(0,0,0,0.1),inset 0 0 14px rgba(0,0,0,0.5)}.mCS-3d-thick.mCSB_scrollTools_horizontal,.mCS-3d-thick-dark.mCSB_scrollTools_horizontal{bottom:1px;box-shadow:inset 0 1px 1px rgba(0,0,0,0.1),inset 0 0 14px rgba(0,0,0,0.5)}.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{box-shadow:inset 0 1px 0 rgba(255,255,255,0.4);height:12px;width:auto}.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#555}.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer{background-color:#000;background-color:rgba(0,0,0,0.05);box-shadow:inset 1px 1px 16px rgba(0,0,0,0.1)}.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerRail{background-color:transparent}.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px -72px}.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -92px}.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -112px}.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -128px}.mCS-3d-thick-dark.mCSB_scrollTools{box-shadow:inset 0 0 14px rgba(0,0,0,0.2)}.mCS-3d-thick-dark.mCSB_scrollTools_horizontal{box-shadow:inset 0 1px 1px rgba(0,0,0,0.1),inset 0 0 14px rgba(0,0,0,0.2)}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{box-shadow:inset 1px 0 0 rgba(255,255,255,0.4),inset -1px 0 0 rgba(0,0,0,0.2)}.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{box-shadow:inset 0 1px 0 rgba(255,255,255,0.4),inset 0 -1px 0 rgba(0,0,0,0.2)}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#777}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer{background-color:#fff;background-color:rgba(0,0,0,0.05);box-shadow:inset 1px 1px 16px rgba(0,0,0,0.1)}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:transparent}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px -72px}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -92px}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -112px}.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -128px}.mCSB_outside+.mCS-minimal.mCSB_scrollTools_vertical,.mCSB_outside+.mCS-minimal-dark.mCSB_scrollTools_vertical{right:0;margin:12px 0}.mCustomScrollBox.mCS-minimal+.mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCustomScrollBox.mCS-minimal+.mCSB_scrollTools+.mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCustomScrollBox.mCS-minimal-dark+.mCSB_scrollTools.mCSB_scrollTools_horizontal,.mCustomScrollBox.mCS-minimal-dark+.mCSB_scrollTools+.mCSB_scrollTools.mCSB_scrollTools_horizontal{bottom:0;margin:0 12px}.mCS-dir-rtl>.mCSB_outside+.mCS-minimal.mCSB_scrollTools_vertical,.mCS-dir-rtl>.mCSB_outside+.mCS-minimal-dark.mCSB_scrollTools_vertical{left:0;right:auto}.mCS-minimal.mCSB_scrollTools .mCSB_draggerRail,.mCS-minimal-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:transparent}.mCS-minimal.mCSB_scrollTools_vertical .mCSB_dragger,.mCS-minimal-dark.mCSB_scrollTools_vertical .mCSB_dragger{height:50px}.mCS-minimal.mCSB_scrollTools_horizontal .mCSB_dragger,.mCS-minimal-dark.mCSB_scrollTools_horizontal .mCSB_dragger{width:50px}.mCS-minimal.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.2);filter:"alpha(opacity=20)"}.mCS-minimal.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-minimal.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.5);filter:"alpha(opacity=50)"}.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.2);filter:"alpha(opacity=20)"}.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.5);filter:"alpha(opacity=50)"}.mCS-light-3.mCSB_scrollTools .mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail{width:6px;background-color:#000;background-color:rgba(0,0,0,0.2)}.mCS-light-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:6px}.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:6px;margin:5px 0}.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{width:12px}.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded+.mCSB_draggerRail,.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{height:12px;margin:2px 0}.mCS-light-3.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px -72px}.mCS-light-3.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -92px}.mCS-light-3.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -112px}.mCS-light-3.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -128px}.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-dark-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1)}.mCS-dark-3.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px -72px}.mCS-dark-3.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -92px}.mCS-dark-3.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -112px}.mCS-dark-3.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -128px}.mCS-inset.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail{width:12px;background-color:#000;background-color:rgba(0,0,0,0.2)}.mCS-inset.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{width:6px;margin:3px 5px;position:absolute;height:auto;top:0;bottom:0;left:0;right:0}.mCS-inset.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar{height:6px;margin:5px 3px;position:absolute;width:auto;top:0;bottom:0;left:0;right:0}.mCS-inset.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail{width:100%;height:12px;margin:2px 0}.mCS-inset.mCSB_scrollTools .mCSB_buttonUp,.mCS-inset-2.mCSB_scrollTools .mCSB_buttonUp,.mCS-inset-3.mCSB_scrollTools .mCSB_buttonUp{background-position:-32px -72px}.mCS-inset.mCSB_scrollTools .mCSB_buttonDown,.mCS-inset-2.mCSB_scrollTools .mCSB_buttonDown,.mCS-inset-3.mCSB_scrollTools .mCSB_buttonDown{background-position:-32px -92px}.mCS-inset.mCSB_scrollTools .mCSB_buttonLeft,.mCS-inset-2.mCSB_scrollTools .mCSB_buttonLeft,.mCS-inset-3.mCSB_scrollTools .mCSB_buttonLeft{background-position:-40px -112px}.mCS-inset.mCSB_scrollTools .mCSB_buttonRight,.mCS-inset-2.mCSB_scrollTools .mCSB_buttonRight,.mCS-inset-3.mCSB_scrollTools .mCSB_buttonRight{background-position:-40px -128px}.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.1)}.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonUp,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonUp,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonUp{background-position:-112px -72px}.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonDown,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonDown,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonDown{background-position:-112px -92px}.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonLeft,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonLeft,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonLeft{background-position:-120px -112px}.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonRight,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonRight,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonRight{background-position:-120px -128px}.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:transparent;border-width:1px;border-style:solid;border-color:#fff;border-color:rgba(255,255,255,0.2);box-sizing:border-box}.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail{border-color:#000;border-color:rgba(0,0,0,0.2)}.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail{background-color:#fff;background-color:rgba(255,255,255,0.6)}.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail{background-color:#000;background-color:rgba(0,0,0,0.6)}.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.75)}.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.85)}.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#000;background-color:rgba(0,0,0,0.9)}.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.75)}.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.85)}.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{background-color:#fff;background-color:rgba(255,255,255,0.9)}table.dataTable{width:100%;margin:0 auto;clear:both;border-collapse:separate;border-spacing:0}table.dataTable thead th,table.dataTable tfoot th{font-weight:bold}table.dataTable thead th,table.dataTable thead td{padding:10px 18px;border-bottom:1px solid #3c3f41}table.dataTable thead th:active,table.dataTable thead td:active{outline:none}table.dataTable tfoot th,table.dataTable tfoot td{padding:10px 18px 6px 18px;border-top:1px solid #3c3f41}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc{cursor:pointer;*cursor:hand}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{background-repeat:no-repeat;background-position:center right}table.dataTable thead .sorting{background-image:url("../img/data-tables/sort_both.png")}table.dataTable thead .sorting_asc{background-image:url("../img/data-tables/sort_asc.png")}table.dataTable thead .sorting_desc{background-image:url("../img/data-tables/sort_desc.png")}table.dataTable thead .sorting_asc_disabled{background-image:url("../img/data-tables/sort_asc_disabled.png")}table.dataTable thead .sorting_desc_disabled{background-image:url("../img/data-tables/sort_desc_disabled.png")}table.dataTable tbody tr{background-color:#212121}table.dataTable tbody tr.selected{background-color:#1b2326}table.dataTable tbody th,table.dataTable tbody td{padding:8px 10px}table.dataTable.row-border tbody th,table.dataTable.row-border tbody td,table.dataTable.display tbody th,table.dataTable.display tbody td{border-top:1px solid #3c3f41}table.dataTable.row-border tbody tr:first-child th,table.dataTable.row-border tbody tr:first-child td,table.dataTable.display tbody tr:first-child th,table.dataTable.display tbody tr:first-child td{border-top:none}table.dataTable.cell-border tbody th,table.dataTable.cell-border tbody td{border-top:1px solid #ddd;border-right:1px solid #ddd}table.dataTable.cell-border tbody tr th:first-child,table.dataTable.cell-border tbody tr td:first-child{border-left:1px solid #ddd}table.dataTable.cell-border tbody tr:first-child th,table.dataTable.cell-border tbody tr:first-child td{border-top:none}table.dataTable.stripe tbody tr.odd,table.dataTable.display tbody tr.odd{background-color:#2b2b2b}table.dataTable.stripe tbody tr.odd.selected,table.dataTable.display tbody tr.odd.selected{background-color:#1b2326}table.dataTable.hover tbody tr:hover,table.dataTable.display tbody tr:hover{background-color:#b26d0a;color:#2b2b2b}table.dataTable.hover tbody tr:hover a,table.dataTable.display tbody tr:hover a{color:#2b2b2b !important}table.dataTable.hover tbody tr:hover td>.fa-plus,table.dataTable.display tbody tr:hover td>.fa-plus{color:#2b2b2b !important}table.dataTable.hover tbody tr:hover.selected,table.dataTable.display tbody tr:hover.selected{background-color:#925909}table.dataTable.order-column tbody tr>.sorting_1,table.dataTable.order-column tbody tr>.sorting_2,table.dataTable.order-column tbody tr>.sorting_3,table.dataTable.display tbody tr>.sorting_1,table.dataTable.display tbody tr>.sorting_2,table.dataTable.display tbody tr>.sorting_3{background-color:#2b2b2b}table.dataTable.order-column tbody tr.selected>.sorting_1,table.dataTable.order-column tbody tr.selected>.sorting_2,table.dataTable.order-column tbody tr.selected>.sorting_3,table.dataTable.display tbody tr.selected>.sorting_1,table.dataTable.display tbody tr.selected>.sorting_2,table.dataTable.display tbody tr.selected>.sorting_3{background-color:#acbad5}table.dataTable.display tbody tr.odd>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd>.sorting_1{background-color:#212C30}table.dataTable.display tbody tr.odd>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd>.sorting_2{background-color:#1b2326}table.dataTable.display tbody tr.odd>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd>.sorting_3{background-color:whitesmoke}table.dataTable.display tbody tr.odd.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_1{background-color:#171e20}table.dataTable.display tbody tr.odd.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_2{background-color:#a8b5cf}table.dataTable.display tbody tr.odd.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_3{background-color:#a9b7d1}table.dataTable.display tbody tr.even>.sorting_1,table.dataTable.order-column.stripe tbody tr.even>.sorting_1{background-color:#212C30}table.dataTable.display tbody tr.even>.sorting_2,table.dataTable.order-column.stripe tbody tr.even>.sorting_2{background-color:#1b2326}table.dataTable.display tbody tr.even>.sorting_3,table.dataTable.order-column.stripe tbody tr.even>.sorting_3{background-color:#fefefe}table.dataTable.display tbody tr.even.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_1{background-color:#171e20}table.dataTable.display tbody tr.even.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_2{background-color:#aebcd6}table.dataTable.display tbody tr.even.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.display tbody tr:hover>.sorting_1,table.dataTable.order-column.hover tbody tr:hover>.sorting_1{background-color:#925909}table.dataTable.display tbody tr:hover>.sorting_2,table.dataTable.order-column.hover tbody tr:hover>.sorting_2{background-color:#ececec}table.dataTable.display tbody tr:hover>.sorting_3,table.dataTable.order-column.hover tbody tr:hover>.sorting_3{background-color:#efefef}table.dataTable.display tbody tr:hover.selected>.sorting_1,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{background-color:#885308}table.dataTable.display tbody tr:hover.selected>.sorting_2,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{background-color:#a3b0c9}table.dataTable.display tbody tr:hover.selected>.sorting_3,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{background-color:#a5b2cb}table.dataTable.no-footer{border-bottom:1px solid #3c3f41}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}table.dataTable.compact thead th:not(.sorting_disabled),table.dataTable.compact thead td:not(.sorting_disabled){padding:4px 17px 4px 4px}table.dataTable.compact thead th,table.dataTable.compact thead td{padding:4px 4px 4px 4px}table.dataTable.compact tfoot th,table.dataTable.compact tfoot td{padding:4px}table.dataTable.compact tbody th,table.dataTable.compact tbody td{padding:4px}table.dataTable th.dt-left,table.dataTable td.dt-left{text-align:left}table.dataTable th.dt-center,table.dataTable td.dt-center,table.dataTable td.dataTables_empty{text-align:center}table.dataTable th.dt-right,table.dataTable td.dt-right{text-align:right}table.dataTable th.dt-justify,table.dataTable td.dt-justify{text-align:justify}table.dataTable th.dt-nowrap,table.dataTable td.dt-nowrap{white-space:nowrap}table.dataTable thead th.dt-head-left,table.dataTable thead td.dt-head-left,table.dataTable tfoot th.dt-head-left,table.dataTable tfoot td.dt-head-left{text-align:left}table.dataTable thead th.dt-head-center,table.dataTable thead td.dt-head-center,table.dataTable tfoot th.dt-head-center,table.dataTable tfoot td.dt-head-center{text-align:center}table.dataTable thead th.dt-head-right,table.dataTable thead td.dt-head-right,table.dataTable tfoot th.dt-head-right,table.dataTable tfoot td.dt-head-right{text-align:right}table.dataTable thead th.dt-head-justify,table.dataTable thead td.dt-head-justify,table.dataTable tfoot th.dt-head-justify,table.dataTable tfoot td.dt-head-justify{text-align:justify}table.dataTable thead th.dt-head-nowrap,table.dataTable thead td.dt-head-nowrap,table.dataTable tfoot th.dt-head-nowrap,table.dataTable tfoot td.dt-head-nowrap{white-space:nowrap}table.dataTable tbody th.dt-body-left,table.dataTable tbody td.dt-body-left{text-align:left}table.dataTable tbody th.dt-body-center,table.dataTable tbody td.dt-body-center{text-align:center}table.dataTable tbody th.dt-body-right,table.dataTable tbody td.dt-body-right{text-align:right}table.dataTable tbody th.dt-body-justify,table.dataTable tbody td.dt-body-justify{text-align:justify}table.dataTable tbody th.dt-body-nowrap,table.dataTable tbody td.dt-body-nowrap{white-space:nowrap}table.dataTable,table.dataTable th,table.dataTable td{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dataTables_wrapper{position:relative;clear:both;*zoom:1;zoom:1}.dataTables_wrapper .dataTables_length{float:left}.dataTables_wrapper .dataTables_filter{float:right;text-align:right}.dataTables_wrapper .dataTables_filter input{margin-left:0.5em}.dataTables_wrapper .dataTables_info{clear:both;float:left;padding-top:0.755em}.dataTables_wrapper .dataTables_paginate{float:right;text-align:right;padding-top:0.25em}.dataTables_wrapper .dataTables_paginate .paginate_button{box-sizing:border-box;display:inline-block;min-width:1.5em;padding:0.5em 1em;margin-left:2px;text-align:center;text-decoration:none !important;cursor:pointer;*cursor:hand;color:#6f7477 !important;border:1px solid transparent;border-radius:2px}.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{color:#adadad !important;border:1px solid transparent;background-color:#313335;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #313335), color-stop(100%, #2b2b2b));background:-webkit-linear-gradient(top, #313335 0%, #2b2b2b 100%);background:-moz-linear-gradient(top, #313335 0%, #2b2b2b 100%);background:-ms-linear-gradient(top, #313335 0%, #2b2b2b 100%);background:-o-linear-gradient(top, #313335 0%, #2b2b2b 100%);background:linear-gradient(to bottom, #313335 0%,#2b2b2b 100%)}.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active{cursor:default;color:#4f5355 !important;border:1px solid transparent;background:transparent;box-shadow:none;pointer-events:all;cursor:not-allowed}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{color:#313335 !important;border:1px solid transparent;background-color:#c2760c;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #c2760c), color-stop(100%, #c2760c));background:-webkit-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-moz-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-ms-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-o-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:linear-gradient(to bottom, #c2760c 0%,#c2760c 100%)}.dataTables_wrapper .dataTables_paginate .paginate_button:active{outline:none;background-color:#c2760c;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #c2760c), color-stop(100%, #c2760c));background:-webkit-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-moz-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-ms-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:-o-linear-gradient(top, #c2760c 0%, #c2760c 100%);background:linear-gradient(to bottom, #c2760c 0%,#c2760c 100%)}.dataTables_wrapper .dataTables_paginate .ellipsis{padding:0 1em}.dataTables_wrapper .dataTables_processing{position:absolute;top:50%;left:50%;width:100%;height:40px;margin-left:-50%;margin-top:-25px;padding-top:20px;text-align:center;font-size:1.2em;background-color:white;background:-webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255,255,255,0)), color-stop(25%, rgba(255,255,255,0.9)), color-stop(75%, rgba(255,255,255,0.9)), color-stop(100%, rgba(255,255,255,0)));background:-webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-o-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,0.9) 25%,rgba(255,255,255,0.9) 75%,rgba(255,255,255,0) 100%)}.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_processing,.dataTables_wrapper .dataTables_paginate{color:#63676a}.dataTables_wrapper .dataTables_scroll{clear:both}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody{*margin-top:-1px;-webkit-overflow-scrolling:touch}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td{vertical-align:middle}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td>div.dataTables_sizing{height:0;overflow:hidden;margin:0 !important;padding:0 !important}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:1px solid #111}.dataTables_wrapper.no-footer div.dataTables_scrollHead table,.dataTables_wrapper.no-footer div.dataTables_scrollBody table{border-bottom:none}.dataTables_wrapper:after{visibility:hidden;display:block;content:"";clear:both;height:0}@media screen and (max-width: 767px){.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{float:none;text-align:center}.dataTables_wrapper .dataTables_paginate{margin-top:0.5em}}@media screen and (max-width: 640px){.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter{float:none;text-align:center}.dataTables_wrapper .dataTables_filter{margin-top:0.5em}}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}ul.dt-button-collection.dropdown-menu{display:block;z-index:2002;-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}ul.dt-button-collection.dropdown-menu.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}ul.dt-button-collection.dropdown-menu.fixed.two-column{margin-left:-150px}ul.dt-button-collection.dropdown-menu.fixed.three-column{margin-left:-225px}ul.dt-button-collection.dropdown-menu.fixed.four-column{margin-left:-300px}ul.dt-button-collection.dropdown-menu>*{-webkit-column-break-inside:avoid;break-inside:avoid}ul.dt-button-collection.dropdown-menu.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}ul.dt-button-collection.dropdown-menu.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}ul.dt-button-collection.dropdown-menu.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2001}@media screen and (max-width: 767px){div.dt-buttons{float:none;width:100%;text-align:center;margin-bottom:0.5em}div.dt-buttons a.btn{float:none}}/*! * DataTables + Font Awesome integration * License: MIT - http://datatables.net/license */table.dataTable thead th{position:relative;background-image:none !important}table.dataTable thead th.sorting:after,table.dataTable thead th.sorting_asc:after,table.dataTable thead th.sorting_desc:after{position:absolute;top:12px;right:8px;display:block;font-family:FontAwesome;margin-top:-8px}table.dataTable thead th.sorting:after{content:"\f0dc";color:#5cb85c;font-size:0.8em;margin-top:-8px}table.dataTable thead th.sorting_asc:after{content:"\f0de"}table.dataTable thead th.sorting_desc:after{content:"\f0dd"}div.dataTables_scrollBody table.dataTable thead th.sorting:after,div.dataTables_scrollBody table.dataTable thead th.sorting_asc:after,div.dataTables_scrollBody table.dataTable thead th.sorting_desc:after{content:""}div.dataTables_paginate a.paginate_button.first,div.dataTables_paginate a.paginate_button.previous{position:relative;padding-left:24px}div.dataTables_paginate a.paginate_button.next,div.dataTables_paginate a.paginate_button.last{position:relative;padding-right:24px}div.dataTables_paginate a.first:before,div.dataTables_paginate a.previous:before{position:absolute;top:7px;left:10px;display:block;font-family:FontAwesome}div.dataTables_paginate a.next:after,div.dataTables_paginate a.last:after{position:absolute;top:7px;right:10px;display:block;font-family:FontAwesome}div.dataTables_paginate a.first:before{content:"\f100"}div.dataTables_paginate a.previous:before{content:"\f104"}div.dataTables_paginate a.next:after{content:"\f105"}div.dataTables_paginate a.last:after{content:"\f101"}table.dataTable.dtr-inline.collapsed>tbody>tr>td.child,table.dataTable.dtr-inline.collapsed>tbody>tr>th.child,table.dataTable.dtr-inline.collapsed>tbody>tr>td.dataTables_empty{cursor:default !important}table.dataTable.dtr-inline.collapsed>tbody>tr>td.child:before,table.dataTable.dtr-inline.collapsed>tbody>tr>th.child:before,table.dataTable.dtr-inline.collapsed>tbody>tr>td.dataTables_empty:before{display:none !important}table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child,table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child{position:relative;padding-left:30px;cursor:pointer}table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child:before,table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child:before{top:9px;left:4px;height:14px;width:14px;display:block;position:absolute;color:white;border:2px solid white;border-radius:14px;box-shadow:0 0 3px #444;box-sizing:content-box;text-align:center;font-family:'Courier New', Courier, monospace;line-height:14px;content:'+';background-color:#31b131}table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before,table.dataTable.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before{content:'-';background-color:#d33333}table.dataTable.dtr-inline.collapsed>tbody>tr.child td:before{display:none}table.dataTable.dtr-inline.collapsed.compact>tbody>tr>td:first-child,table.dataTable.dtr-inline.collapsed.compact>tbody>tr>th:first-child{padding-left:27px}table.dataTable.dtr-inline.collapsed.compact>tbody>tr>td:first-child:before,table.dataTable.dtr-inline.collapsed.compact>tbody>tr>th:first-child:before{top:5px;left:4px;height:14px;width:14px;border-radius:14px;line-height:14px;text-indent:3px}table.dataTable.dtr-column>tbody>tr>td.control,table.dataTable.dtr-column>tbody>tr>th.control{position:relative;cursor:pointer}table.dataTable.dtr-column>tbody>tr>td.control:before,table.dataTable.dtr-column>tbody>tr>th.control:before{top:50%;left:50%;height:16px;width:16px;margin-top:-10px;margin-left:-10px;display:block;position:absolute;color:white;border:2px solid white;border-radius:14px;box-shadow:0 0 3px #444;box-sizing:content-box;text-align:center;font-family:'Courier New', Courier, monospace;line-height:14px;content:'+';background-color:#31b131}table.dataTable.dtr-column>tbody>tr.parent td.control:before,table.dataTable.dtr-column>tbody>tr.parent th.control:before{content:'-';background-color:#d33333}table.dataTable>tbody>tr.child{padding:0.5em 1em}table.dataTable>tbody>tr.child:hover{background:transparent !important}table.dataTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.dataTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:0.5em 0}table.dataTable>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable>tbody>tr.child ul li:last-child{border-bottom:none}table.dataTable>tbody>tr.child span.dtr-title{display:inline-block;min-width:75px;font-weight:bold}div.dtr-modal{position:fixed;box-sizing:border-box;top:0;left:0;height:100%;width:100%;z-index:100;padding:10em 1em}div.dtr-modal div.dtr-modal-display{position:absolute;top:0;left:0;bottom:0;right:0;width:50%;height:50%;overflow:auto;margin:auto;z-index:102;background-color:#f5f5f7;border:1px solid black;border-radius:0.5em;box-shadow:0 12px 30px rgba(0,0,0,0.6)}div.dtr-modal div.dtr-modal-content{position:relative;padding:1em}div.dtr-modal div.dtr-modal-close{position:absolute;top:6px;right:6px;width:22px;height:22px;border:1px solid #eaeaea;background-color:#f9f9f9;text-align:center;border-radius:3px;cursor:pointer;z-index:12}div.dtr-modal div.dtr-modal-close:hover{background-color:#eaeaea}div.dtr-modal div.dtr-modal-background{position:fixed;top:0;left:0;right:0;bottom:0;z-index:101;background:rgba(0,0,0,0.6)}@media screen and (max-width: 767px){div.dtr-modal div.dtr-modal-display{width:95%}}table.dataTable tbody>tr.selected,table.dataTable tbody>tr>.selected{background-color:#1b2326}table.dataTable.stripe tbody>tr.odd.selected,table.dataTable.stripe tbody>tr.odd>.selected,table.dataTable.display tbody>tr.odd.selected,table.dataTable.display tbody>tr.odd>.selected{background-color:#1b2326}table.dataTable.hover tbody>tr.selected:hover,table.dataTable.hover tbody>tr>.selected:hover,table.dataTable.display tbody>tr.selected:hover,table.dataTable.display tbody>tr>.selected:hover{background-color:#925909}table.dataTable.order-column tbody>tr.selected>.sorting_1,table.dataTable.order-column tbody>tr.selected>.sorting_2,table.dataTable.order-column tbody>tr.selected>.sorting_3,table.dataTable.order-column tbody>tr>.selected,table.dataTable.display tbody>tr.selected>.sorting_1,table.dataTable.display tbody>tr.selected>.sorting_2,table.dataTable.display tbody>tr.selected>.sorting_3,table.dataTable.display tbody>tr>.selected{background-color:#acbad5}table.dataTable.display tbody>tr.odd.selected>.sorting_1,table.dataTable.order-column.stripe tbody>tr.odd.selected>.sorting_1{background-color:#171e20}table.dataTable.display tbody>tr.odd.selected>.sorting_2,table.dataTable.order-column.stripe tbody>tr.odd.selected>.sorting_2{background-color:#a8b5cf}table.dataTable.display tbody>tr.odd.selected>.sorting_3,table.dataTable.order-column.stripe tbody>tr.odd.selected>.sorting_3{background-color:#a9b7d1}table.dataTable.display tbody>tr.even.selected>.sorting_1,table.dataTable.order-column.stripe tbody>tr.even.selected>.sorting_1{background-color:#171e20}table.dataTable.display tbody>tr.even.selected>.sorting_2,table.dataTable.order-column.stripe tbody>tr.even.selected>.sorting_2{background-color:#aebcd6}table.dataTable.display tbody>tr.even.selected>.sorting_3,table.dataTable.order-column.stripe tbody>tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.display tbody>tr.odd>.selected,table.dataTable.order-column.stripe tbody>tr.odd>.selected{background-color:#171e20}table.dataTable.display tbody>tr.even>.selected,table.dataTable.order-column.stripe tbody>tr.even>.selected{background-color:#acbad5}table.dataTable.display tbody>tr.selected:hover>.sorting_1,table.dataTable.order-column.hover tbody>tr.selected:hover>.sorting_1{background-color:#925909}table.dataTable.display tbody>tr.selected:hover>.sorting_2,table.dataTable.order-column.hover tbody>tr.selected:hover>.sorting_2{background-color:#a3b0c9}table.dataTable.display tbody>tr.selected:hover>.sorting_3,table.dataTable.order-column.hover tbody>tr.selected:hover>.sorting_3{background-color:#a5b2cb}table.dataTable.display tbody>tr:hover>.selected,table.dataTable.display tbody>tr>.selected:hover,table.dataTable.order-column.hover tbody>tr:hover>.selected,table.dataTable.order-column.hover tbody>tr>.selected:hover{background-color:#a2aec7}table.dataTable td.select-checkbox{position:relative}table.dataTable td.select-checkbox:before,table.dataTable td.select-checkbox:after{display:block;position:absolute;top:1.2em;left:50%;width:12px;height:12px;box-sizing:border-box}table.dataTable td.select-checkbox:before{content:' ';margin-top:-6px;margin-left:-6px;border:1px solid black;border-radius:3px}table.dataTable tr.selected td.select-checkbox:after{content:'\2714';margin-top:-11px;margin-left:-4px;text-align:center;text-shadow:1px 1px #B0BED9, -1px -1px #B0BED9, 1px -1px #B0BED9, -1px 1px #B0BED9}div.dataTables_wrapper span.select-info,div.dataTables_wrapper span.select-item{margin-left:0.5em}@media screen and (max-width: 640px){div.dataTables_wrapper span.select-info,div.dataTables_wrapper span.select-item{margin-left:0;display:block}}/*! X-editable - v1.5.0 @@ -32,11 +32,10 @@ * Licensed under the Apache License v2.0 * http://www.apache.org/licenses/LICENSE-2.0 * - */.datepicker{padding:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker.datepicker-rtl{direction:rtl}.datepicker.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,0.2);position:absolute;top:-7px;left:6px}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #ffffff;position:absolute;top:-6px;left:7px}.datepicker>div{display:none}.datepicker.days div.datepicker-days{display:block}.datepicker.months div.datepicker-months{display:block}.datepicker.years div.datepicker-years{display:block}.datepicker table{margin:0}.datepicker td,.datepicker th{text-align:center;width:20px;height:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border:none}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day:hover{background:#eeeeee;cursor:pointer}.datepicker table tr td.old,.datepicker table tr td.new{color:#999999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:none;color:#999999;cursor:default}.datepicker table tr td.today,.datepicker table tr td.today:hover,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover{background-color:#fde19a;background-image:-moz-linear-gradient(top, #fdd49a, #fdf59a);background-image:-ms-linear-gradient(top, #fdd49a, #fdf59a);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));background-image:-webkit-linear-gradient(top, #fdd49a, #fdf59a);background-image:-o-linear-gradient(top, #fdd49a, #fdf59a);background-image:linear-gradient(to bottom, #fdd49a,#fdf59a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);border-color:#fdf59a #fdf59a #fbed50;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#000}.datepicker table tr td.today:hover,.datepicker table tr td.today:hover:hover,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today[disabled],.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today.disabled:hover[disabled]{background-color:#fdf59a}.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active{background-color:#fbf069 \9}.datepicker table tr td.today:hover:hover{color:#000}.datepicker table tr td.today.active:hover{color:#fff}.datepicker table tr td.range,.datepicker table tr td.range:hover,.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:hover{background:#eeeeee;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.datepicker table tr td.range.today,.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:hover{background-color:#f3d17a;background-image:-moz-linear-gradient(top, #f3c17a, #f3e97a);background-image:-ms-linear-gradient(top, #f3c17a, #f3e97a);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f3c17a), to(#f3e97a));background-image:-webkit-linear-gradient(top, #f3c17a, #f3e97a);background-image:-o-linear-gradient(top, #f3c17a, #f3e97a);background-image:linear-gradient(to bottom, #f3c17a,#f3e97a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);border-color:#f3e97a #f3e97a #edde34;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today:hover:hover,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover:hover,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today:hover.disabled,.datepicker table tr td.range.today.disabled.disabled,.datepicker table tr td.range.today.disabled:hover.disabled,.datepicker table tr td.range.today[disabled],.datepicker table tr td.range.today:hover[disabled],.datepicker table tr td.range.today.disabled[disabled],.datepicker table tr td.range.today.disabled:hover[disabled]{background-color:#f3e97a}.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:hover.active{background-color:#efe24b \9}.datepicker table tr td.selected,.datepicker table tr td.selected:hover,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled:hover{background-color:#9e9e9e;background-image:-moz-linear-gradient(top, #b3b3b3, gray);background-image:-ms-linear-gradient(top, #b3b3b3, gray);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#b3b3b3), to(gray));background-image:-webkit-linear-gradient(top, #b3b3b3, gray);background-image:-o-linear-gradient(top, #b3b3b3, gray);background-image:linear-gradient(to bottom, #b3b3b3,#808080);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);border-color:#808080 #808080 #595959;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.datepicker table tr td.selected:hover,.datepicker table tr td.selected:hover:hover,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover:hover,.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected:hover.disabled,.datepicker table tr td.selected.disabled.disabled,.datepicker table tr td.selected.disabled:hover.disabled,.datepicker table tr td.selected[disabled],.datepicker table tr td.selected:hover[disabled],.datepicker table tr td.selected.disabled[disabled],.datepicker table tr td.selected.disabled:hover[disabled]{background-color:#808080}.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:hover.active{background-color:#666666 \9}.datepicker table tr td.active,.datepicker table tr td.active:hover,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top, #08c, #04c);background-image:-ms-linear-gradient(top, #08c, #04c);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c));background-image:-webkit-linear-gradient(top, #08c, #04c);background-image:-o-linear-gradient(top, #08c, #04c);background-image:linear-gradient(to bottom, #0088cc,#0044cc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#0044cc #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.datepicker table tr td.active:hover,.datepicker table tr td.active:hover:hover,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active[disabled],.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active.disabled:hover[disabled]{background-color:#0044cc}.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active{background-color:#003399 \9}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.datepicker table tr td span:hover{background:#eeeeee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:none;color:#999999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active:hover,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top, #08c, #04c);background-image:-ms-linear-gradient(top, #08c, #04c);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c));background-image:-webkit-linear-gradient(top, #08c, #04c);background-image:-o-linear-gradient(top, #08c, #04c);background-image:linear-gradient(to bottom, #0088cc,#0044cc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#0044cc #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover:hover,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active[disabled],.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active.disabled:hover[disabled]{background-color:#0044cc}.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active{background-color:#003399 \9}.datepicker table tr td span.old,.datepicker table tr td span.new{color:#999999}.datepicker th.datepicker-switch{width:145px}.datepicker thead tr:first-child th,.datepicker tfoot tr th{cursor:pointer}.datepicker thead tr:first-child th:hover,.datepicker tfoot tr th:hover{background:#eeeeee}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.datepicker thead tr:first-child th.cw{cursor:default;background-color:transparent}.input-append.date .add-on i,.input-prepend.date .add-on i{display:block;cursor:pointer;width:16px;height:16px}.input-daterange input{text-align:center}.input-daterange input:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-daterange input:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-daterange .add-on{display:inline-block;width:auto;min-width:16px;height:18px;padding:4px 5px;font-weight:normal;line-height:18px;text-align:center;text-shadow:0 1px 0 #ffffff;vertical-align:middle;background-color:#eeeeee;border:1px solid #ccc;margin-left:-5px;margin-right:-5px}.ui-pnotify{top:36px;right:36px;position:absolute;height:auto;z-index:2}body>.ui-pnotify{position:fixed;z-index:100040}.ui-pnotify-modal-overlay{background-color:rgba(0,0,0,0.4);top:0;left:0;position:absolute;height:100%;width:100%;z-index:1}body>.ui-pnotify-modal-overlay{position:fixed;z-index:100039}.ui-pnotify.ui-pnotify-in{display:block !important}.ui-pnotify.ui-pnotify-move{transition:left .5s ease, top .5s ease, right .5s ease, bottom .5s ease}.ui-pnotify.ui-pnotify-fade-slow{transition:opacity .6s linear;opacity:0}.ui-pnotify.ui-pnotify-fade-slow.ui-pnotify.ui-pnotify-move{transition:opacity .6s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease}.ui-pnotify.ui-pnotify-fade-normal{transition:opacity .4s linear;opacity:0}.ui-pnotify.ui-pnotify-fade-normal.ui-pnotify.ui-pnotify-move{transition:opacity .4s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease}.ui-pnotify.ui-pnotify-fade-fast{transition:opacity .2s linear;opacity:0}.ui-pnotify.ui-pnotify-fade-fast.ui-pnotify.ui-pnotify-move{transition:opacity .2s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease}.ui-pnotify.ui-pnotify-fade-in{opacity:1}.ui-pnotify .ui-pnotify-shadow{-webkit-box-shadow:0px 6px 28px 0px rgba(0,0,0,0.1);-moz-box-shadow:0px 6px 28px 0px rgba(0,0,0,0.1);box-shadow:0px 6px 28px 0px rgba(0,0,0,0.1)}.ui-pnotify-container{background-position:0 0;padding:.8em;height:100%;margin:0}.ui-pnotify-container:after{content:" ";visibility:hidden;display:block;height:0;clear:both}.ui-pnotify-container.ui-pnotify-sharp{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.ui-pnotify-title{display:block;margin-bottom:.4em;margin-top:0}.ui-pnotify-text{display:block}.ui-pnotify-icon,.ui-pnotify-icon span{display:block;float:left;margin-right:.2em}.ui-pnotify.stack-topleft,.ui-pnotify.stack-bottomleft{left:25px;right:auto}.ui-pnotify.stack-bottomright,.ui-pnotify.stack-bottomleft{bottom:25px;top:auto}.ui-pnotify.stack-modal{left:50%;right:auto;margin-left:-150px}.ui-pnotify.ui-pnotify-nonblock-fade{opacity:.2}.ui-pnotify.ui-pnotify-nonblock-hide{display:none !important}.ui-pnotify.stack-bar-bottom{margin-left:15%;margin-bottom:25px;right:auto;bottom:0;top:auto;left:auto}html,body,#sb-site,.sb-site-container,.sb-slidebar{margin:0;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html,body{width:100%;overflow-x:hidden}html{height:100%}body{min-height:100%;height:auto;position:relative}html.sb-scroll-lock.sb-active:not(.sb-static){overflow:hidden}#sb-site,.sb-site-container{width:100%;position:relative;z-index:1;background:url("../img/pf-bg.jpg") #05050a;background-repeat:no-repeat}.sb-slidebar{height:100%;overflow-y:auto;position:fixed;top:0;z-index:0;display:none;background-color:#313335;-webkit-transform:translate(0px)}.sb-left{left:0;-webkit-box-shadow:inset -5px 0px 10px 0px rgba(0,0,0,0.4);box-shadow:inset -5px 0px 10px 0px rgba(0,0,0,0.4)}.sb-right{right:0;-webkit-box-shadow:inset 5px 0px 10px 0px rgba(0,0,0,0.4);box-shadow:inset 5px 0px 10px 0px rgba(0,0,0,0.4)}html.sb-static .sb-slidebar,.sb-slidebar.sb-static{position:absolute}.sb-slidebar.sb-active{display:block}.sb-style-overlay{z-index:9999}.sb-momentum-scrolling{-webkit-overflow-scrolling:touch}.sb-slidebar{width:30%}.sb-width-thin{width:15%}.sb-width-wide{width:45%}@media (max-width: 480px){.sb-slidebar{width:70%}.sb-width-thin{width:55%}.sb-width-wide{width:85%}}@media (min-width: 481px){.sb-slidebar{width:55%}.sb-width-thin{width:40%}.sb-width-wide{width:70%}}@media (min-width: 768px){.sb-slidebar{width:40%}.sb-width-thin{width:25%}.sb-width-wide{width:55%}}@media (min-width: 992px){.sb-slidebar{width:30%}.sb-width-thin{width:15%}.sb-width-wide{width:45%}}@media (min-width: 1200px){.sb-slidebar{width:20%}.sb-width-thin{width:5%}.sb-width-wide{width:35%}}.sb-slide,#sb-site,.sb-site-container,.sb-slidebar{-webkit-transition:transform 180ms ease-out;transition:transform 180ms ease-out;-webkit-transition-property:-webkit-transform, left, right;-webkit-backface-visibility:hidden}.sb-hide{display:none}.pf-pie-chart{position:relative;display:table-cell;text-align:center;vertical-align:middle}.pf-pie-chart span{display:inline-block}.pf-pie-chart canvas{position:absolute;top:0;left:0}.pf-pie-chart-map-timer{width:36px;height:36px;margin:3px}.pf-pie-chart-map-timer canvas{top:3px;left:3px}.pf-pie-chart-map-timer span{font-size:10px}.pf-pie-chart-map-timer span:after{content:'s';margin-left:1px}div.pf-map-drag-to-select{background:#375959 !important;display:block;visibility:hidden;opacity:0;z-index:9000;border:1px dashed #adadad;will-change:left, top, width, height, opacity;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-transition:opacity 0.15s linear;transition:opacity 0.15s linear}div.pf-map-drag-to-select.active{visibility:visible;opacity:0.3}.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline-block;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-search--inline{float:left}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:white;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;color:#adadad;user-select:none;-webkit-user-select:none}.select2-results__option[aria-selected]{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.select2-container--pathfinder .select2-selection--single{background-color:#313335;border:1px solid #63676a;border-radius:0px;outline:0}.select2-container--pathfinder .select2-selection--single:focus{border:1px solid #568a89}.select2-container--pathfinder .select2-selection--single .select2-selection__rendered{color:#adadad;line-height:28px}.select2-container--pathfinder .select2-selection--single .select2-selection__clear{color:#a52521;cursor:pointer;float:right;font-weight:bold;margin-right:3px;margin-left:10px}.select2-container--pathfinder .select2-selection--single .select2-selection__clear:hover{color:#58100d}.select2-container--pathfinder .select2-selection--single .select2-selection__placeholder{color:#63676a}.select2-container--pathfinder .select2-selection--single .select2-selection__arrow{background-color:#313335;border:none;border-left:none;border-top-right-radius:0px;border-bottom-right-radius:0px;height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--pathfinder .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--pathfinder[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--pathfinder[dir="rtl"] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #63676a;border-radius:0;border-top-left-radius:0px;border-bottom-left-radius:0px;left:1px;right:auto}.select2-container--pathfinder.select2-container--open .select2-selection--single{border:1px solid #568a89}.select2-container--pathfinder.select2-container--open .select2-selection--single .select2-selection__arrow{background:transparent;border:none}.select2-container--pathfinder.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--pathfinder.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--pathfinder.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--pathfinder .select2-selection--multiple{background-color:#313335;color:#313335;border:1px solid #63676a;border-radius:0px;cursor:text;outline:0}.select2-container--pathfinder .select2-selection--multiple:focus{border:1px solid #568a89}.select2-container--pathfinder .select2-selection--multiple .select2-selection__rendered{list-style:none;margin:0;padding:0 5px;width:100%}.select2-container--pathfinder .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--pathfinder .select2-selection--multiple .select2-selection__choice{background-color:#adadad;border:1px solid #63676a;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--pathfinder .select2-selection--multiple .select2-selection__choice__remove{color:#a52521;cursor:pointer;display:inline-block;font-weight:bold;margin-right:2px}.select2-container--pathfinder .select2-selection--multiple .select2-selection__choice__remove:hover{color:#58100d}.select2-container--pathfinder .select2-selection--multiple .select2-selection__placeholder{color:#63676a}.select2-container--pathfinder[dir="rtl"] .select2-selection--multiple .select2-selection__choice{float:right}.select2-container--pathfinder[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--pathfinder[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--pathfinder.select2-container--open .select2-selection--multiple{border:1px solid #568a89}.select2-container--pathfinder.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--pathfinder.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--pathfinder .select2-search--dropdown .select2-search__field{border:1px solid #63676a;outline:0}.select2-container--pathfinder .select2-search--inline .select2-search__field{outline:0}.select2-container--pathfinder .select2-search--inline .select2-search__field::-moz-placeholder{color:#63676a;opacity:1}.select2-container--pathfinder .select2-search--inline .select2-search__field:-ms-input-placeholder{color:#63676a}.select2-container--pathfinder .select2-search--inline .select2-search__field::-webkit-input-placeholder{color:#63676a}.select2-container--pathfinder .select2-dropdown{background-color:#313335;border:1px solid transparent;overflow:hidden;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.3);box-shadow:0 6px 12px rgba(0,0,0,0.3)}.select2-container--pathfinder .select2-dropdown--above{border-bottom:none}.select2-container--pathfinder .select2-dropdown--below{border-top:none}.select2-container--pathfinder .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--pathfinder .select2-results__option[role=group]{padding:0}.select2-container--pathfinder .select2-results__option[aria-disabled=true],.select2-container--pathfinder .select2-results__option[aria-selected=true]{color:#63676a;background-color:#3c3f41}.select2-container--pathfinder .select2-results__option[aria-disabled=true] .pf-select-item-anchor:before,.select2-container--pathfinder .select2-results__option[aria-selected=true] .pf-select-item-anchor:before{content:"\f05e";font-family:FontAwesome;font-size:9px;position:absolute;left:0;top:0;color:#63676a}.select2-container--pathfinder .select2-results__option--highlighted[aria-selected]{background-color:#adadad;color:#313335}.select2-container--pathfinder .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--pathfinder.select2-container--open .select2-dropdown{border-color:#568a89}select.select2-hidden-accessible{-moz-appearance:none;-webkit-appearance:none}.blueimp-gallery,.blueimp-gallery>.slides>.slide>.slide-content{position:absolute;top:0;right:0;bottom:0;left:0;-moz-backface-visibility:hidden}.blueimp-gallery>.slides>.slide>.slide-content{margin:auto;width:auto;height:auto;max-width:100%;max-height:100%;opacity:1}.blueimp-gallery{position:fixed;z-index:999999;overflow:hidden;background:#000;background:rgba(0,0,0,0.9);opacity:0;display:none;direction:ltr;-ms-touch-action:none;touch-action:none}.blueimp-gallery-carousel{position:relative;z-index:auto;margin:1em auto;padding-bottom:56.25%;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-ms-touch-action:pan-y;touch-action:pan-y}.blueimp-gallery-display{display:block;opacity:1}.blueimp-gallery>.slides{position:relative;height:100%;overflow:hidden}.blueimp-gallery-carousel>.slides{position:absolute}.blueimp-gallery>.slides>.slide{position:relative;float:left;height:100%;text-align:center;will-change:all;-webkit-transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);-moz-transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);-ms-transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);-o-transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1)}.blueimp-gallery,.blueimp-gallery>.slides>.slide>.slide-content{-webkit-transition:opacity 0.5s linear;-moz-transition:opacity 0.5s linear;-ms-transition:opacity 0.5s linear;-o-transition:opacity 0.5s linear;transition:opacity 0.5s linear}.blueimp-gallery>.slides>.slide-loading{background-size:64px 64px}.blueimp-gallery>.slides>.slide-loading>.slide-content{opacity:0}.blueimp-gallery>.slides>.slide-error>.slide-content{display:none}.blueimp-gallery>.prev,.blueimp-gallery>.next{position:absolute;top:50%;left:15px;width:35px;height:35px;margin-top:-17px;font-size:22px;line-height:35px;color:#63676a;text-decoration:none;text-align:center;background:rgba(0,0,0,0.2);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-transition:color 0.09s linear;transition:color 0.09s linear;will-change:color;opacity:1;cursor:pointer;display:none}.blueimp-gallery>.next{left:auto;right:15px}.blueimp-gallery>.close,.blueimp-gallery>.title{position:absolute;bottom:15px;left:15px;margin:0 40px 0 0;font-size:14px;line-height:14px;font-font:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;color:#63676a;text-shadow:0 1px 3px #1d1d1d;opacity:1;display:none}.blueimp-gallery>.title{margin-left:20px}.blueimp-gallery>.title:before{content:'\f101';font-family:'FontAwesome';position:absolute;top:-1px;left:-20px;height:14px;width:14px}.blueimp-gallery>.close{padding:15px;right:15px;left:auto;margin:-15px;font-size:30px;text-decoration:none;cursor:pointer}.blueimp-gallery>.play-pause{position:absolute;right:15px;bottom:15px;width:35px;height:35px;font-size:22px;line-height:35px;text-align:center;background:rgba(0,0,0,0.2);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-transition:color 0.09s linear;transition:color 0.09s linear;will-change:color;color:#e28a0d;cursor:pointer;opacity:1;display:none}.blueimp-gallery-playing>.play-pause{color:#2b2b2b}.blueimp-gallery>.prev:hover,.blueimp-gallery>.next:hover,.blueimp-gallery>.close:hover,.blueimp-gallery>.play-pause:hover{color:#e28a0d}.blueimp-gallery-controls>.prev,.blueimp-gallery-controls>.next,.blueimp-gallery-controls>.close,.blueimp-gallery-controls>.title,.blueimp-gallery-controls>.play-pause{display:block;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0)}.blueimp-gallery-single>.prev,.blueimp-gallery-left>.prev,.blueimp-gallery-single>.next,.blueimp-gallery-right>.next,.blueimp-gallery-single>.play-pause{display:none}.blueimp-gallery>.slides>.slide>.slide-content,.blueimp-gallery>.prev,.blueimp-gallery>.next,.blueimp-gallery>.close,.blueimp-gallery>.play-pause{-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body:last-child .blueimp-gallery-playing>.play-pause{background-position:-20px 0}*+html .blueimp-gallery>.slides>.slide{min-height:300px}*+html .blueimp-gallery>.slides>.slide>.slide-content{position:relative}.blueimp-gallery>.slides>.slide>.text-content{overflow:auto;margin:0 auto;overflow:hidden;text-align:left}.blueimp-gallery .modal-body{position:relative;text-align:center;padding:0 0 56.25% 0;overflow:hidden;cursor:pointer}.blueimp-gallery .modal-footer{margin:0}.blueimp-gallery .modal-body img,.blueimp-gallery .modal-body .video-content video,.blueimp-gallery .modal-body .video-content iframe,.blueimp-gallery .modal-body .video-content a{max-width:100%;max-height:100%;margin:auto;position:absolute;top:0;right:0;bottom:0;left:0}.blueimp-gallery .modal-body .video-content video{display:none}.blueimp-gallery .modal-body .video-playing video{display:block}.blueimp-gallery .modal-body .video-content iframe{width:100%;height:100%;border:none;left:100%}.blueimp-gallery .modal-body .video-playing iframe{left:0}.blueimp-gallery .modal-body .video-playing img,.blueimp-gallery .modal-body .video-playing a{display:none}.blueimp-gallery .modal-body .video-content a{cursor:pointer}.blueimp-gallery .modal-body .video-content a:after{font-family:"Glyphicons Halflings";-webkit-font-smoothing:antialiased;content:"\e029";font-size:64px;line-height:64px;width:64px;height:64px;position:absolute;top:50%;margin:-32px 0 0 -32px}.blueimp-gallery .modal-body .video-loading a{background:url(../img/loading.gif) center no-repeat;background-size:64px 64px}.blueimp-gallery .modal-body .video-loading a:after{content:none}@media screen and (min-width: 768px){.blueimp-gallery .modal-dialog{right:auto;left:auto;width:auto;max-width:1200px;padding-left:5%;padding-right:5%}}/*! ======================================================================== + */.datepicker{padding:4px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker.datepicker-rtl{direction:rtl}.datepicker.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,0.2);position:absolute;top:-7px;left:6px}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #ffffff;position:absolute;top:-6px;left:7px}.datepicker>div{display:none}.datepicker.days div.datepicker-days{display:block}.datepicker.months div.datepicker-months{display:block}.datepicker.years div.datepicker-years{display:block}.datepicker table{margin:0}.datepicker td,.datepicker th{text-align:center;width:20px;height:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border:none}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day:hover{background:#eeeeee;cursor:pointer}.datepicker table tr td.old,.datepicker table tr td.new{color:#999999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:none;color:#999999;cursor:default}.datepicker table tr td.today,.datepicker table tr td.today:hover,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover{background-color:#fde19a;background-image:-moz-linear-gradient(top, #fdd49a, #fdf59a);background-image:-ms-linear-gradient(top, #fdd49a, #fdf59a);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));background-image:-webkit-linear-gradient(top, #fdd49a, #fdf59a);background-image:-o-linear-gradient(top, #fdd49a, #fdf59a);background-image:linear-gradient(to bottom, #fdd49a,#fdf59a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);border-color:#fdf59a #fdf59a #fbed50;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#000}.datepicker table tr td.today:hover,.datepicker table tr td.today:hover:hover,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today[disabled],.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today.disabled:hover[disabled]{background-color:#fdf59a}.datepicker table tr td.today:active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:hover.active{background-color:#fbf069 \9}.datepicker table tr td.today:hover:hover{color:#000}.datepicker table tr td.today.active:hover{color:#fff}.datepicker table tr td.range,.datepicker table tr td.range:hover,.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:hover{background:#eeeeee;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.datepicker table tr td.range.today,.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:hover{background-color:#f3d17a;background-image:-moz-linear-gradient(top, #f3c17a, #f3e97a);background-image:-ms-linear-gradient(top, #f3c17a, #f3e97a);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f3c17a), to(#f3e97a));background-image:-webkit-linear-gradient(top, #f3c17a, #f3e97a);background-image:-o-linear-gradient(top, #f3c17a, #f3e97a);background-image:linear-gradient(to bottom, #f3c17a,#f3e97a);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);border-color:#f3e97a #f3e97a #edde34;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today:hover:hover,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover:hover,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today:hover.disabled,.datepicker table tr td.range.today.disabled.disabled,.datepicker table tr td.range.today.disabled:hover.disabled,.datepicker table tr td.range.today[disabled],.datepicker table tr td.range.today:hover[disabled],.datepicker table tr td.range.today.disabled[disabled],.datepicker table tr td.range.today.disabled:hover[disabled]{background-color:#f3e97a}.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:hover.active{background-color:#efe24b \9}.datepicker table tr td.selected,.datepicker table tr td.selected:hover,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled:hover{background-color:#9e9e9e;background-image:-moz-linear-gradient(top, #b3b3b3, gray);background-image:-ms-linear-gradient(top, #b3b3b3, gray);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#b3b3b3), to(gray));background-image:-webkit-linear-gradient(top, #b3b3b3, gray);background-image:-o-linear-gradient(top, #b3b3b3, gray);background-image:linear-gradient(to bottom, #b3b3b3,#808080);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);border-color:#808080 #808080 #595959;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.datepicker table tr td.selected:hover,.datepicker table tr td.selected:hover:hover,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover:hover,.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected:hover.disabled,.datepicker table tr td.selected.disabled.disabled,.datepicker table tr td.selected.disabled:hover.disabled,.datepicker table tr td.selected[disabled],.datepicker table tr td.selected:hover[disabled],.datepicker table tr td.selected.disabled[disabled],.datepicker table tr td.selected.disabled:hover[disabled]{background-color:#808080}.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:hover.active{background-color:#666666 \9}.datepicker table tr td.active,.datepicker table tr td.active:hover,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top, #08c, #04c);background-image:-ms-linear-gradient(top, #08c, #04c);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c));background-image:-webkit-linear-gradient(top, #08c, #04c);background-image:-o-linear-gradient(top, #08c, #04c);background-image:linear-gradient(to bottom, #0088cc,#0044cc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#0044cc #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.datepicker table tr td.active:hover,.datepicker table tr td.active:hover:hover,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active[disabled],.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active.disabled:hover[disabled]{background-color:#0044cc}.datepicker table tr td.active:active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:hover.active{background-color:#003399 \9}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.datepicker table tr td span:hover{background:#eeeeee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:none;color:#999999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active:hover,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover{background-color:#006dcc;background-image:-moz-linear-gradient(top, #08c, #04c);background-image:-ms-linear-gradient(top, #08c, #04c);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#08c), to(#04c));background-image:-webkit-linear-gradient(top, #08c, #04c);background-image:-o-linear-gradient(top, #08c, #04c);background-image:linear-gradient(to bottom, #0088cc,#0044cc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);border-color:#0044cc #0044cc #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover:hover,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active[disabled],.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active.disabled:hover[disabled]{background-color:#0044cc}.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:hover.active{background-color:#003399 \9}.datepicker table tr td span.old,.datepicker table tr td span.new{color:#999999}.datepicker th.datepicker-switch{width:145px}.datepicker thead tr:first-child th,.datepicker tfoot tr th{cursor:pointer}.datepicker thead tr:first-child th:hover,.datepicker tfoot tr th:hover{background:#eeeeee}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.datepicker thead tr:first-child th.cw{cursor:default;background-color:transparent}.input-append.date .add-on i,.input-prepend.date .add-on i{display:block;cursor:pointer;width:16px;height:16px}.input-daterange input{text-align:center}.input-daterange input:first-child{-webkit-border-radius:3px 0 0 3px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.input-daterange input:last-child{-webkit-border-radius:0 3px 3px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.input-daterange .add-on{display:inline-block;width:auto;min-width:16px;height:18px;padding:4px 5px;font-weight:normal;line-height:18px;text-align:center;text-shadow:0 1px 0 #ffffff;vertical-align:middle;background-color:#eeeeee;border:1px solid #ccc;margin-left:-5px;margin-right:-5px}.ui-pnotify{top:36px;right:36px;position:absolute;height:auto;z-index:2}body>.ui-pnotify{position:fixed;z-index:100040}.ui-pnotify-modal-overlay{background-color:rgba(0,0,0,0.4);top:0;left:0;position:absolute;height:100%;width:100%;z-index:1}body>.ui-pnotify-modal-overlay{position:fixed;z-index:100039}.ui-pnotify.ui-pnotify-in{display:block !important}.ui-pnotify.ui-pnotify-move{transition:left .5s ease, top .5s ease, right .5s ease, bottom .5s ease}.ui-pnotify.ui-pnotify-fade-slow{transition:opacity .6s linear;opacity:0}.ui-pnotify.ui-pnotify-fade-slow.ui-pnotify.ui-pnotify-move{transition:opacity .6s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease}.ui-pnotify.ui-pnotify-fade-normal{transition:opacity .4s linear;opacity:0}.ui-pnotify.ui-pnotify-fade-normal.ui-pnotify.ui-pnotify-move{transition:opacity .4s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease}.ui-pnotify.ui-pnotify-fade-fast{transition:opacity .2s linear;opacity:0}.ui-pnotify.ui-pnotify-fade-fast.ui-pnotify.ui-pnotify-move{transition:opacity .2s linear, left .5s ease, top .5s ease, right .5s ease, bottom .5s ease}.ui-pnotify.ui-pnotify-fade-in{opacity:1}.ui-pnotify .ui-pnotify-shadow{-webkit-box-shadow:0px 6px 28px 0px rgba(0,0,0,0.1);-moz-box-shadow:0px 6px 28px 0px rgba(0,0,0,0.1);box-shadow:0px 6px 28px 0px rgba(0,0,0,0.1)}.ui-pnotify-container{background-position:0 0;padding:.8em;height:100%;margin:0}.ui-pnotify-container:after{content:" ";visibility:hidden;display:block;height:0;clear:both}.ui-pnotify-container.ui-pnotify-sharp{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.ui-pnotify-title{display:block;margin-bottom:.4em;margin-top:0}.ui-pnotify-text{display:block}.ui-pnotify-icon,.ui-pnotify-icon span{display:block;float:left;margin-right:.2em}.ui-pnotify.stack-topleft,.ui-pnotify.stack-bottomleft{left:25px;right:auto}.ui-pnotify.stack-bottomright,.ui-pnotify.stack-bottomleft{bottom:25px;top:auto}.ui-pnotify.stack-modal{left:50%;right:auto;margin-left:-150px}.ui-pnotify.ui-pnotify-nonblock-fade{opacity:.2}.ui-pnotify.ui-pnotify-nonblock-hide{display:none !important}.ui-pnotify.stack-bar-bottom{margin-left:15%;margin-bottom:25px;right:auto;bottom:0;top:auto;left:auto}html,body,#sb-site,.sb-site-container,.sb-slidebar{margin:0;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html,body{width:100%;overflow-x:hidden}html{height:100%}body{min-height:100%;height:auto;position:relative}html.sb-scroll-lock.sb-active:not(.sb-static){overflow:hidden}#sb-site,.sb-site-container{width:100%;position:relative;z-index:1;background:url("../img/pf-bg.jpg") #05050a;background-repeat:no-repeat}.sb-slidebar{height:100%;overflow-y:auto;position:fixed;top:0;z-index:0;display:none;background-color:#313335;-webkit-transform:translate(0px)}.sb-left{left:0;-webkit-box-shadow:inset -5px 0px 10px 0px rgba(0,0,0,0.4);box-shadow:inset -5px 0px 10px 0px rgba(0,0,0,0.4)}.sb-right{right:0;-webkit-box-shadow:inset 5px 0px 10px 0px rgba(0,0,0,0.4);box-shadow:inset 5px 0px 10px 0px rgba(0,0,0,0.4)}html.sb-static .sb-slidebar,.sb-slidebar.sb-static{position:absolute}.sb-slidebar.sb-active{display:block}.sb-style-overlay{z-index:9999}.sb-momentum-scrolling{-webkit-overflow-scrolling:touch}.sb-slidebar{width:30%}.sb-width-thin{width:15%}.sb-width-wide{width:45%}@media (max-width: 480px){.sb-slidebar{width:70%}.sb-width-thin{width:55%}.sb-width-wide{width:85%}}@media (min-width: 481px){.sb-slidebar{width:55%}.sb-width-thin{width:40%}.sb-width-wide{width:70%}}@media (min-width: 768px){.sb-slidebar{width:40%}.sb-width-thin{width:25%}.sb-width-wide{width:55%}}@media (min-width: 992px){.sb-slidebar{width:30%}.sb-width-thin{width:15%}.sb-width-wide{width:45%}}@media (min-width: 1200px){.sb-slidebar{width:20%}.sb-width-thin{width:5%}.sb-width-wide{width:35%}}.sb-slide,#sb-site,.sb-site-container,.sb-slidebar{-webkit-transition:transform 180ms ease-out;transition:transform 180ms ease-out;-webkit-transition-property:-webkit-transform, left, right;-webkit-backface-visibility:hidden}.sb-hide{display:none}.pf-pie-chart{position:relative !important;display:table-cell;text-align:center;vertical-align:middle}.pf-pie-chart span{display:inline-block}.pf-pie-chart canvas{position:absolute;top:0;left:0}.pf-pie-chart-map-timer{width:36px;height:36px;margin:3px}.pf-pie-chart-map-timer canvas{top:3px;left:3px}.pf-pie-chart-map-timer span{font-size:10px}.pf-pie-chart-map-timer span:after{content:'s';margin-left:1px}div.pf-map-drag-to-select{background:#375959 !important;display:block;visibility:hidden;opacity:0;z-index:9000;border:1px dashed #adadad;will-change:left, top, width, height, opacity;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-transition:opacity 0.15s linear;transition:opacity 0.15s linear}div.pf-map-drag-to-select.active{visibility:visible;opacity:0.3}.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline-block;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-search--inline{float:left}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:white;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;color:#adadad;user-select:none;-webkit-user-select:none}.select2-results__option[aria-selected]{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.select2-container--pathfinder .select2-selection--single{background-color:#313335;border:1px solid #63676a;border-radius:0px;outline:0}.select2-container--pathfinder .select2-selection--single:focus{border:1px solid #568a89}.select2-container--pathfinder .select2-selection--single .select2-selection__rendered{color:#adadad;line-height:28px}.select2-container--pathfinder .select2-selection--single .select2-selection__clear{color:#a52521;cursor:pointer;float:right;font-weight:bold;margin-right:3px;margin-left:10px}.select2-container--pathfinder .select2-selection--single .select2-selection__clear:hover{color:#58100d}.select2-container--pathfinder .select2-selection--single .select2-selection__placeholder{color:#63676a}.select2-container--pathfinder .select2-selection--single .select2-selection__arrow{background-color:#313335;border:none;border-left:none;border-top-right-radius:0px;border-bottom-right-radius:0px;height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--pathfinder .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--pathfinder[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--pathfinder[dir="rtl"] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #63676a;border-radius:0;border-top-left-radius:0px;border-bottom-left-radius:0px;left:1px;right:auto}.select2-container--pathfinder.select2-container--open .select2-selection--single{border:1px solid #568a89}.select2-container--pathfinder.select2-container--open .select2-selection--single .select2-selection__arrow{background:transparent;border:none}.select2-container--pathfinder.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--pathfinder.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--pathfinder.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--pathfinder .select2-selection--multiple{background-color:#313335;color:#313335;border:1px solid #63676a;border-radius:0px;cursor:text;outline:0}.select2-container--pathfinder .select2-selection--multiple:focus{border:1px solid #568a89}.select2-container--pathfinder .select2-selection--multiple .select2-selection__rendered{list-style:none;margin:0;padding:0 5px;width:100%}.select2-container--pathfinder .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--pathfinder .select2-selection--multiple .select2-selection__choice{background-color:#adadad;border:1px solid #63676a;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--pathfinder .select2-selection--multiple .select2-selection__choice__remove{color:#a52521;cursor:pointer;display:inline-block;font-weight:bold;margin-right:2px}.select2-container--pathfinder .select2-selection--multiple .select2-selection__choice__remove:hover{color:#58100d}.select2-container--pathfinder .select2-selection--multiple .select2-selection__placeholder{color:#63676a}.select2-container--pathfinder[dir="rtl"] .select2-selection--multiple .select2-selection__choice{float:right}.select2-container--pathfinder[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--pathfinder[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--pathfinder.select2-container--open .select2-selection--multiple{border:1px solid #568a89}.select2-container--pathfinder.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--pathfinder.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--pathfinder .select2-search--dropdown .select2-search__field{border:1px solid #63676a;outline:0}.select2-container--pathfinder .select2-search--inline .select2-search__field{outline:0}.select2-container--pathfinder .select2-search--inline .select2-search__field::-moz-placeholder{color:#63676a;opacity:1}.select2-container--pathfinder .select2-search--inline .select2-search__field:-ms-input-placeholder{color:#63676a}.select2-container--pathfinder .select2-search--inline .select2-search__field::-webkit-input-placeholder{color:#63676a}.select2-container--pathfinder .select2-dropdown{background-color:#313335;border:1px solid transparent;overflow:hidden;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.3);box-shadow:0 6px 12px rgba(0,0,0,0.3)}.select2-container--pathfinder .select2-dropdown--above{border-bottom:none}.select2-container--pathfinder .select2-dropdown--below{border-top:none}.select2-container--pathfinder .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--pathfinder .select2-results__option[role=group]{padding:0}.select2-container--pathfinder .select2-results__option[aria-disabled=true],.select2-container--pathfinder .select2-results__option[aria-selected=true]{color:#63676a;background-color:#3c3f41}.select2-container--pathfinder .select2-results__option[aria-disabled=true] .pf-select-item-anchor:before,.select2-container--pathfinder .select2-results__option[aria-selected=true] .pf-select-item-anchor:before{content:"\f05e";font-family:FontAwesome;font-size:9px;position:absolute;left:0;top:0;color:#63676a}.select2-container--pathfinder .select2-results__option--highlighted[aria-selected]{background-color:#adadad;color:#313335}.select2-container--pathfinder .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--pathfinder.select2-container--open .select2-dropdown{border-color:#568a89}select.select2-hidden-accessible{-moz-appearance:none;-webkit-appearance:none}.blueimp-gallery,.blueimp-gallery>.slides>.slide>.slide-content{position:absolute;top:0;right:0;bottom:0;left:0;-moz-backface-visibility:hidden}.blueimp-gallery>.slides>.slide>.slide-content{margin:auto;width:auto;height:auto;max-width:100%;max-height:100%;opacity:1}.blueimp-gallery{position:fixed;z-index:999999;overflow:hidden;background:#000;background:rgba(0,0,0,0.9);opacity:0;display:none;direction:ltr;-ms-touch-action:none;touch-action:none}.blueimp-gallery-carousel{position:relative;z-index:auto;margin:1em auto;padding-bottom:56.25%;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-ms-touch-action:pan-y;touch-action:pan-y}.blueimp-gallery-display{display:block;opacity:1}.blueimp-gallery>.slides{position:relative;height:100%;overflow:hidden}.blueimp-gallery-carousel>.slides{position:absolute}.blueimp-gallery>.slides>.slide{position:relative;float:left;height:100%;text-align:center;will-change:all;-webkit-transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);-moz-transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);-ms-transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);-o-transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1)}.blueimp-gallery,.blueimp-gallery>.slides>.slide>.slide-content{-webkit-transition:opacity 0.5s linear;-moz-transition:opacity 0.5s linear;-ms-transition:opacity 0.5s linear;-o-transition:opacity 0.5s linear;transition:opacity 0.5s linear}.blueimp-gallery>.slides>.slide-loading{background-size:64px 64px}.blueimp-gallery>.slides>.slide-loading>.slide-content{opacity:0}.blueimp-gallery>.slides>.slide-error>.slide-content{display:none}.blueimp-gallery>.prev,.blueimp-gallery>.next{position:absolute;top:50%;left:15px;width:35px;height:35px;margin-top:-17px;font-size:22px;line-height:35px;color:#63676a;text-decoration:none;text-align:center;background:rgba(0,0,0,0.2);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-transition:color 0.09s linear;transition:color 0.09s linear;will-change:color;opacity:1;cursor:pointer;display:none}.blueimp-gallery>.next{left:auto;right:15px}.blueimp-gallery>.close,.blueimp-gallery>.title{position:absolute;bottom:15px;left:15px;margin:0 40px 0 0;font-size:14px;line-height:14px;font-font:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;color:#63676a;text-shadow:0 1px 3px #1d1d1d;opacity:1;display:none}.blueimp-gallery>.title{margin-left:20px}.blueimp-gallery>.title:before{content:'\f101';font-family:'FontAwesome';position:absolute;top:-1px;left:-20px;height:14px;width:14px}.blueimp-gallery>.close{padding:15px;right:15px;left:auto;margin:-15px;font-size:30px;text-decoration:none;cursor:pointer}.blueimp-gallery>.play-pause{position:absolute;right:15px;bottom:15px;width:35px;height:35px;font-size:22px;line-height:35px;text-align:center;background:rgba(0,0,0,0.2);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-transition:color 0.09s linear;transition:color 0.09s linear;will-change:color;color:#e28a0d;cursor:pointer;opacity:1;display:none}.blueimp-gallery-playing>.play-pause{color:#2b2b2b}.blueimp-gallery>.prev:hover,.blueimp-gallery>.next:hover,.blueimp-gallery>.close:hover,.blueimp-gallery>.play-pause:hover{color:#e28a0d}.blueimp-gallery-controls>.prev,.blueimp-gallery-controls>.next,.blueimp-gallery-controls>.close,.blueimp-gallery-controls>.title,.blueimp-gallery-controls>.play-pause{display:block;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0)}.blueimp-gallery-single>.prev,.blueimp-gallery-left>.prev,.blueimp-gallery-single>.next,.blueimp-gallery-right>.next,.blueimp-gallery-single>.play-pause{display:none}.blueimp-gallery>.slides>.slide>.slide-content,.blueimp-gallery>.prev,.blueimp-gallery>.next,.blueimp-gallery>.close,.blueimp-gallery>.play-pause{-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body:last-child .blueimp-gallery-playing>.play-pause{background-position:-20px 0}*+html .blueimp-gallery>.slides>.slide{min-height:300px}*+html .blueimp-gallery>.slides>.slide>.slide-content{position:relative}.blueimp-gallery>.slides>.slide>.text-content{overflow:auto;margin:0 auto;overflow:hidden;text-align:left}.blueimp-gallery .modal-body{position:relative;text-align:center;padding:0 0 56.25% 0;overflow:hidden;cursor:pointer}.blueimp-gallery .modal-footer{margin:0}.blueimp-gallery .modal-body img,.blueimp-gallery .modal-body .video-content video,.blueimp-gallery .modal-body .video-content iframe,.blueimp-gallery .modal-body .video-content a{max-width:100%;max-height:100%;margin:auto;position:absolute;top:0;right:0;bottom:0;left:0}.blueimp-gallery .modal-body .video-content video{display:none}.blueimp-gallery .modal-body .video-playing video{display:block}.blueimp-gallery .modal-body .video-content iframe{width:100%;height:100%;border:none;left:100%}.blueimp-gallery .modal-body .video-playing iframe{left:0}.blueimp-gallery .modal-body .video-playing img,.blueimp-gallery .modal-body .video-playing a{display:none}.blueimp-gallery .modal-body .video-content a{cursor:pointer}.blueimp-gallery .modal-body .video-content a:after{font-family:"Glyphicons Halflings";-webkit-font-smoothing:antialiased;content:"\e029";font-size:64px;line-height:64px;width:64px;height:64px;position:absolute;top:50%;margin:-32px 0 0 -32px}.blueimp-gallery .modal-body .video-loading a{background:url(../img/loading.gif) center no-repeat;background-size:64px 64px}.blueimp-gallery .modal-body .video-loading a:after{content:none}@media screen and (min-width: 768px){.blueimp-gallery .modal-dialog{right:auto;left:auto;width:auto;max-width:1200px;padding-left:5%;padding-right:5%}}/*! ======================================================================== * Bootstrap Toggle: bootstrap2-toggle.css v2.2.0 * http://www.bootstraptoggle.com * ======================================================================== * Copyright 2014 Min Hur, The New York Times Company * Licensed under MIT - * ======================================================================== */label.checkbox .toggle,label.checkbox.inline .toggle{margin-left:-20px;margin-right:5px}.toggle{min-width:40px;height:20px;position:relative;overflow:hidden}.toggle input[type="checkbox"]{display:none}.toggle-group{position:absolute;width:200%;top:0;bottom:0;left:0;transition:left 0.35s;-webkit-transition:left 0.35s;-moz-user-select:none;-webkit-user-select:none}.toggle.off .toggle-group{left:-100%}.toggle-on{position:absolute;top:0;bottom:0;left:0;right:50%;margin:0;border:0;border-radius:0}.toggle-off{position:absolute;top:0;bottom:0;left:50%;right:0;margin:0;border:0;border-radius:0}.toggle-handle{position:relative;margin:0 auto;padding-top:0px;padding-bottom:0px;height:100%;width:0px;border-width:0 1px}.toggle-handle.btn-mini{top:-2px}.toggle.btn{min-width:30px}.toggle-on.btn{padding-right:24px}.toggle-off.btn{padding-left:24px}.toggle.btn-large{min-width:40px}.toggle-on.btn-large{padding-right:35px}.toggle-off.btn-large{padding-left:35px}.toggle.btn-small{min-width:25px}.toggle-on.btn-small{padding-right:20px}.toggle-off.btn-small{padding-left:20px}.toggle.btn-mini{min-width:20px}.toggle-on.btn-mini{padding-right:12px}.toggle-off.btn-mini{padding-left:12px}.checkbox{padding-left:20px}.checkbox label{display:inline-block;vertical-align:middle;position:relative;padding-left:5px}.checkbox label::before{content:"";display:inline-block;position:absolute;width:17px;height:17px;left:0;margin-left:-20px;border:1px solid #63676a;border-radius:3px;background-color:#313335;-webkit-transition:border 0.15s ease-in-out,color 0.15s ease-in-out;transition:border 0.15s ease-in-out,color 0.15s ease-in-out}.checkbox label::after{font-family:"FontAwesome";content:"";display:inline-block;position:absolute;width:16px;height:16px;left:0;top:0;opacity:0;transform:scale(2) rotateZ(-20deg);transition:all .18s ease-in;will-change:transform, opacity;margin-left:-20px;padding-left:3px;padding-top:1px;font-size:11px;color:#adadad}.checkbox input[type="checkbox"],.checkbox input[type="radio"]{opacity:0;z-index:1}.checkbox input[type="checkbox"]:focus+label::before,.checkbox input[type="radio"]:focus+label::before{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px;outline-color:#568a89}.checkbox input[type="checkbox"]:checked+label::after,.checkbox input[type="radio"]:checked+label::after{transform:scale(1) rotateZ(0deg);opacity:1}.checkbox input[type="checkbox"]:indeterminate+label::after,.checkbox input[type="radio"]:indeterminate+label::after{display:block;content:"";width:10px;height:3px;background-color:#555555;border-radius:2px;margin-left:-16.5px;margin-top:7px}.checkbox input[type="checkbox"]:disabled+label,.checkbox input[type="radio"]:disabled+label{opacity:0.65}.checkbox input[type="checkbox"]:disabled+label::before,.checkbox input[type="radio"]:disabled+label::before{background-color:#3c3f41;cursor:not-allowed}.checkbox.checkbox-circle label::before{border-radius:50%}.checkbox.checkbox-inline{margin-top:0}.checkbox-primary input[type="checkbox"]:checked+label::before,.checkbox-primary input[type="radio"]:checked+label::before{background-color:#375959;border-color:#375959}.checkbox-primary input[type="checkbox"]:checked+label::after,.checkbox-primary input[type="radio"]:checked+label::after{color:#fff}.checkbox-danger input[type="checkbox"]:checked+label::before,.checkbox-danger input[type="radio"]:checked+label::before{background-color:#a52521;border-color:#a52521}.checkbox-danger input[type="checkbox"]:checked+label::after,.checkbox-danger input[type="radio"]:checked+label::after{color:#fff}.checkbox-info input[type="checkbox"]:checked+label::before,.checkbox-info input[type="radio"]:checked+label::before{background-color:#316490;border-color:#316490}.checkbox-info input[type="checkbox"]:checked+label::after,.checkbox-info input[type="radio"]:checked+label::after{color:#fff}.checkbox-warning input[type="checkbox"]:checked+label::before,.checkbox-warning input[type="radio"]:checked+label::before{background-color:#e28a0d;border-color:#e28a0d}.checkbox-warning input[type="checkbox"]:checked+label::after,.checkbox-warning input[type="radio"]:checked+label::after{color:#fff}.checkbox-success input[type="checkbox"]:checked+label::before,.checkbox-success input[type="radio"]:checked+label::before{background-color:#4f9e4f;border-color:#4f9e4f}.checkbox-success input[type="checkbox"]:checked+label::after,.checkbox-success input[type="radio"]:checked+label::after{color:#fff}.checkbox-primary input[type="checkbox"]:indeterminate+label::before,.checkbox-primary input[type="radio"]:indeterminate+label::before{background-color:#375959;border-color:#375959}.checkbox-primary input[type="checkbox"]:indeterminate+label::after,.checkbox-primary input[type="radio"]:indeterminate+label::after{background-color:#fff}.checkbox-danger input[type="checkbox"]:indeterminate+label::before,.checkbox-danger input[type="radio"]:indeterminate+label::before{background-color:#a52521;border-color:#a52521}.checkbox-danger input[type="checkbox"]:indeterminate+label::after,.checkbox-danger input[type="radio"]:indeterminate+label::after{background-color:#fff}.checkbox-info input[type="checkbox"]:indeterminate+label::before,.checkbox-info input[type="radio"]:indeterminate+label::before{background-color:#316490;border-color:#316490}.checkbox-info input[type="checkbox"]:indeterminate+label::after,.checkbox-info input[type="radio"]:indeterminate+label::after{background-color:#fff}.checkbox-warning input[type="checkbox"]:indeterminate+label::before,.checkbox-warning input[type="radio"]:indeterminate+label::before{background-color:#e28a0d;border-color:#e28a0d}.checkbox-warning input[type="checkbox"]:indeterminate+label::after,.checkbox-warning input[type="radio"]:indeterminate+label::after{background-color:#fff}.checkbox-success input[type="checkbox"]:indeterminate+label::before,.checkbox-success input[type="radio"]:indeterminate+label::before{background-color:#4f9e4f;border-color:#4f9e4f}.checkbox-success input[type="checkbox"]:indeterminate+label::after,.checkbox-success input[type="radio"]:indeterminate+label::after{background-color:#fff}.radio{padding-left:20px}.radio label{display:inline-block;vertical-align:middle;position:relative;padding-left:5px}.radio label::before{content:"";display:inline-block;position:absolute;width:17px;height:17px;left:0;margin-left:-20px;border:1px solid #63676a;border-radius:50%;background-color:#313335;-webkit-transition:border 0.15s ease-in-out;transition:border 0.15s ease-in-out}.radio label::after{display:inline-block;position:absolute;content:" ";width:11px;height:11px;left:3px;top:3px;margin-left:-20px;border-radius:50%;background-color:#adadad;-webkit-transform:scale(0,0);-ms-transform:scale(0,0);transform:scale(0,0);-webkit-transition:-webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);-moz-transition:-moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);-o-transition:-o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);transition:transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33)}.radio input[type="radio"]{opacity:0;z-index:1}.radio input[type="radio"]:focus+label::before{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px;outline-color:#568a89}.radio input[type="radio"]:checked+label::after{-webkit-transform:scale(1,1);-ms-transform:scale(1,1);transform:scale(1,1)}.radio input[type="radio"]:disabled+label{opacity:0.65}.radio input[type="radio"]:disabled+label::before{cursor:not-allowed}.radio.radio-inline{margin-top:0}.radio-primary input[type="radio"]+label::after{background-color:#375959}.radio-primary input[type="radio"]:checked+label::before{border-color:#375959}.radio-primary input[type="radio"]:checked+label::after{background-color:#375959}.radio-danger input[type="radio"]+label::after{background-color:#a52521}.radio-danger input[type="radio"]:checked+label::before{border-color:#a52521}.radio-danger input[type="radio"]:checked+label::after{background-color:#a52521}.radio-info input[type="radio"]+label::after{background-color:#316490}.radio-info input[type="radio"]:checked+label::before{border-color:#316490}.radio-info input[type="radio"]:checked+label::after{background-color:#316490}.radio-warning input[type="radio"]+label::after{background-color:#e28a0d}.radio-warning input[type="radio"]:checked+label::before{border-color:#e28a0d}.radio-warning input[type="radio"]:checked+label::after{background-color:#e28a0d}.radio-success input[type="radio"]+label::after{background-color:#4f9e4f}.radio-success input[type="radio"]:checked+label::before{border-color:#4f9e4f}.radio-success input[type="radio"]:checked+label::after{background-color:#4f9e4f}input[type="checkbox"].styled:checked+label:after,input[type="radio"].styled:checked+label:after{font-family:"FontAwesome";content:""}input[type="checkbox"] .styled:checked+label::before,input[type="radio"] .styled:checked+label::before{color:#fff}input[type="checkbox"] .styled:checked+label::after,input[type="radio"] .styled:checked+label::after{color:#fff}html{margin:0;padding:0;height:100%;position:relative}body{margin:0;padding:0;min-height:100%;direction:ltr}body.mobile-view-activated.hidden-menu{overflow-x:hidden}body.modal-open{overflow:hidden !important}a:hover,a:active,a:focus,button,button:active,button:focus,object,embed,input::-moz-focus-inner{outline:0}h1,h3,h4{margin:0;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.page-title{margin:12px 0 28px}.page-title span{font-size:15px;color:#313335;display:inline-block;vertical-align:1px}label{font-weight:normal}*:focus{outline:0 !important}a,input,button{-ms-touch-action:none !important}textarea:focus,select:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{outline:0;outline:thin dotted \9;box-shadow:inset -1px 1px 5px 0 rgba(0,0,0,0.8) !important}.input-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn,.input-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn,.input-xs,.form-control{border-radius:0px !important;-webkit-border-radius:0px !important;-moz-border-radius:0px !important}.input-xs{height:24px;padding:2px 10px;font-size:11px;line-height:1.5}.btn-xs,.btn-group-xs>.btn{padding:0px 2px;font-size:10px;line-height:1.3}.btn-sm,.btn-group-sm>.btn{padding:5px 8px 4px}.btn-lg,.btn-group-lg>.btn{padding:10px 16px}.no-space{margin:0}.no-space>[class*="col-"]{margin:0 !important;padding-right:0;padding-left:0}h1{letter-spacing:-1px;font-size:22px;margin:10px 0}h1 small{font-size:12px;font-weight:300;letter-spacing:-1px}h2{font-size:20px;margin:20px 0;line-height:normal}h3{display:block;font-size:17px;font-weight:400;margin:20px 0;line-height:normal}h4{line-height:normal;margin:20px 0 10px 0}h5{font-size:14px;font-weight:300;margin-top:0;margin-bottom:10px;line-height:normal}h6{font-size:13px;margin:10px 0;font-weight:bold;line-height:normal}.row-seperator-header{margin:15px 14px 20px;border-bottom:none;display:block;color:#303133;font-size:20px;font-weight:400}.center-canvas,.center-child-canvas>canvas{display:block !important;margin:0 auto !important}.smart-accordion-default.panel-group{margin-bottom:0px}.smart-accordion-default.panel-group .panel+.panel{margin-top:-1px}.smart-accordion-default.panel-group .panel-heading{padding:0px}.smart-accordion-default.panel-group .panel-title a{display:block;padding:10px 15px;text-decoration:none !important}.smart-accordion-default .panel-heading,.panel-group .panel{border-radius:0px;-webkit-border-radius:0px;-moz-border-radius:0px}.smart-accordion-default .panel-default>.panel-heading{background-color:#f3f3f3}.smart-accordion-default .panel-default{border-color:#8d9194}.smart-accordion-default .panel-title>a>:first-child{display:none}.smart-accordion-default .panel-title>a.collapsed>.fa{display:none}.smart-accordion-default .panel-title>a.collapsed>:first-child{display:inline-block}.no-padding .smart-accordion-default>div{border-left:none !important;border-right:none !important}.no-padding .smart-accordion-default>div:first-child{border-top:none !important}.no-padding .smart-accordion-default>div:last-child{border-bottom:none !important}.onoffswitch-container{margin-top:4px;margin-left:7px;display:inline-block}.onoffswitch{position:relative;width:50px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;margin-top:3px;margin-bottom:3px;margin-left:5px;display:inline-block;vertical-align:middle}.onoffswitch-checkbox{display:none}.onoffswitch-label{display:block;overflow:hidden;cursor:pointer;border:1px solid #484c4e;border-radius:50px;border-color:#777b7f #7c8184 #686c6f;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.onoffswitch-inner{width:200%;margin-left:-100%;display:block}.onoffswitch-inner:before,.onoffswitch-inner:after{float:left;width:50%;height:15px;padding:0;line-height:15px;font-size:10px;color:#fff;font-family:Trebuchet, Arial, sans-serif;font-weight:bold;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.onoffswitch-inner:before{content:attr(data-swchon-text);text-shadow:0 -1px 0 #313335;padding-left:7px;background-color:#3276b1;color:#fff;box-shadow:inset 0 2px 6px rgba(0,0,0,0.5),0 1px 2px rgba(0,0,0,0.05);text-align:left}.onoffswitch-inner:after{content:attr(data-swchoff-text);padding-right:7px;text-shadow:0 -1px 0 #fff;background-color:#fff;color:#3c3f41;text-align:right;box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.onoffswitch-switch{width:19px;height:19px;margin:-2px;background:white;border:1px solid #64686b;border-radius:50px;position:absolute;top:0;bottom:0;right:32px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;background-color:#eaeaea;background-image:-moz-linear-gradient(top, #fff, #adadad);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#adadad));background-image:-webkit-linear-gradient(top, #fff, #adadad);background-image:-o-linear-gradient(top, #fff, #adadad);background-image:linear-gradient(to bottom, #ffffff,#adadad);background-repeat:repeat-x;-webkit-box-shadow:1px 1px 4px 0px rgba(0,0,0,0.3);box-shadow:1px 1px 4px 0px rgba(0,0,0,0.3)}.onoffswitch-checkbox+.onoffswitch-label .onoffswitch-switch:before,.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-switch:before{content:"\f00d";color:#a52521;display:block;text-align:center;line-height:19px;font-size:10px;text-shadow:0 -1px 0 #fff;font-weight:bold;font-family:FontAwesome}.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-switch:before{content:"\f00c";color:#428bca}.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-inner{margin-left:0;display:block}.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-switch{right:0px}.onoffswitch-switch:hover{background-color:#adadad}.onoffswitch-switch:active{background-color:#adadad;box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.onoffswitch-checkbox:disabled+.onoffswitch-label .onoffswitch-inner:after,.onoffswitch-checkbox:checked:disabled+.onoffswitch-label .onoffswitch-inner:before{text-shadow:0 1px 0 #fff;background:#bfbfbf;color:#313335}.onoffswitch-checkbox:checked:disabled+.onoffswitch-label .onoffswitch-switch,.onoffswitch-checkbox:disabled+.onoffswitch-label .onoffswitch-switch{background-color:#eaeaea;background-image:-moz-linear-gradient(top, #bfbfbf, #eaeaea);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#bfbfbf), to(#eaeaea));background-image:-webkit-linear-gradient(top, #bfbfbf, #eaeaea);background-image:-o-linear-gradient(top, #bfbfbf, #eaeaea);background-image:linear-gradient(to bottom, #bfbfbf,#eaeaea);box-shadow:none !important}.onoffswitch-checkbox:disabled+.onoffswitch-label,.onoffswitch-checkbox:checked:disabled+.onoffswitch-label .onoffswitch-label{border-color:#74797c #63676a #525558 !important}.onoffswitch-checkbox:checked+.onoffswitch-label{border-color:#3276b1 #2a6395 #255681}.onoffswitch+span,.onoffswitch-title{display:inline-block;vertical-align:middle;margin-top:-5px}.form-control{box-shadow:none !important;-webkit-box-shadow:none !important;-moz-box-shadow:none !important}.form hr{margin-left:-13px;margin-right:-13px;border-color:rgba(0,0,0,0.1);margin-top:20px;margin-bottom:20px}.form fieldset{display:block;border:none;background:rgba(255,255,255,0.9);position:relative}fieldset{position:relative}.form-actions{display:block;padding:13px 14px 15px;border-top:1px solid rgba(0,0,0,0.1);background:rgba(239,239,239,0.9);margin-top:25px;margin-left:-13px;margin-right:-13px;margin-bottom:-13px;text-align:right}.well .form-actions{margin-left:-19px;margin-right:-19px;margin-bottom:-19px}.well.well-lg .form-actions{margin-left:-24px;margin-right:-24px;margin-bottom:-24px}.well.well-sm .form-actions{margin-left:-9px;margin-right:-9px;margin-bottom:-9px}.popover-content .form-actions{margin:0 -14px -9px;border-radius:0 0 3px 3px;padding:9px 14px}.no-padding .form .form-actions{margin:0;display:block;padding:13px 14px 15px;border-top:1px solid rgba(0,0,0,0.1);background:rgba(248,248,248,0.9);text-align:right;margin-top:25px}.form header,legend{display:block;padding:8px 0;border-bottom:1px dashed rgba(0,0,0,0.2);background:#fff;font-size:16px;font-weight:300;color:#2b2b2b;margin:25px 0px 20px}.no-padding .form header{margin:25px 14px 0}.form header:first-child{margin-top:10px}legend{font-weight:400;margin-top:0px;background:none}.input-group-addon{padding:6px 10px;will-change:background-color, border-color;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-webkit-transition:all ease-out 0.15s;transition:all ease-out 0.15s}.input-group-addon .fa,.input-group-addon .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list .input-group-addon li>i{font-size:14px}.input-group-addon .fa-lg,.input-group-addon .fa-2x{font-size:2em}.input-group-addon .fa-3x,.input-group-addon .fa-4x,.input-group-addon .fa-5x{font-size:30px}input[type="text"]:focus+.input-group-addon,input[type="password"]:focus+.input-group-addon,input[type="email"]:focus+.input-group-addon{border-color:#568a89;color:#568a89}.has-warning input[type="text"],.has-warning input[type="text"]+.input-group-addon{border-color:#e28a0d}.has-warning input[type="text"]+.input-group-addon{background-color:#fbe3c0;color:#2b2b2b}.has-warning input[type="text"]:focus,.has-warning input[type="text"]:focus+.input-group-addon{border-color:#e28a0d}.has-warning input[type="text"]:focus+.input-group-addon{background-color:#e28a0d;color:#fff}.has-error .input-group-addon{border-color:#d9534f !important;background:#d9534f !important;color:#2b2b2b !important}.has-success .input-group-addon{border-color:#4f9e4f !important;background-color:#2b2b2b !important;color:#4f9e4f !important}.form fieldset .form-group:last-child,.form fieldset .form-group:last-child .note,.form .form-group:last-child,.form .form-group:last-child .note{margin-bottom:0}.note{margin-top:6px;padding:0 1px;font-size:11px;line-height:15px;color:#7c8184}.input-icon-right>i,.input-icon-left>i{position:absolute;right:10px;top:10px;font-size:12px;color:#63676a}.input-icon-left>i{right:auto;left:24px}.input-icon-right .form-control{padding-right:27px}.input-icon-left .form-control{padding-left:29px}input[type="text"].ui-autocomplete-loading,input[type="password"].ui-autocomplete-loading,input[type="datetime"].ui-autocomplete-loading,input[type="datetime-local"].ui-autocomplete-loading,input[type="date"].ui-autocomplete-loading,input[type="month"].ui-autocomplete-loading,input[type="time"].ui-autocomplete-loading,input[type="week"].ui-autocomplete-loading,input[type="number"].ui-autocomplete-loading,input[type="email"].ui-autocomplete-loading,input[type="url"].ui-autocomplete-loading,input[type="search"].ui-autocomplete-loading,input[type="tel"].ui-autocomplete-loading,input[type="color"].ui-autocomplete-loading{background-image:url("../img/select2-spinner.gif") !important;background-repeat:no-repeat;background-position:99% 50%;padding-right:27px}.input-group-addon .checkbox,.input-group-addon .radio{min-height:0px;margin-right:0px !important;padding-top:0}.input-group-addon label input[type="checkbox"].checkbox+span,.input-group-addon label input[type="radio"].radiobox+span,.input-group-addon label input[type="radio"].radiobox+span:before,.input-group-addon label input[type="checkbox"].checkbox+span:before{margin-right:0px}.input-group-addon .onoffswitch,.input-group-addon .onoffswitch-label{margin:0}.alert{margin-bottom:10px;margin-top:0px;padding:5px 15px 5px 34px;color:#675100;border-width:0px;border-left-width:3px;padding:10px}.alert .ui-pnotify-title{line-height:12px}.alert .ui-pnotify-text{font-size:10px}.alert .close{top:0px;right:-5px;line-height:20px}.alert-heading{font-weight:600}.alert-danger{border-color:#a52521;color:#2b2b2b;background:#f6d1d0;text-shadow:none}.alert-danger .ui-pnotify-icon{color:#a52521}.alert-warning{border-color:#e28a0d;color:#2b2b2b;background:#fdedd8}.alert-warning .ui-pnotify-icon{color:#e28a0d}.alert-success{border-color:#4f9e4f;color:#2b2b2b;background:#d1e8d1}.alert-success .ui-pnotify-icon{color:#4f9e4f}.alert-info{border-color:#316490;color:#2b2b2b;background:#abc9e2}.alert-info .ui-pnotify-icon{color:#316490}.progress-micro{height:2px !important;line-height:2px !important}.progress-xs{height:7px !important;line-height:7px !important}.progress-sm{height:14px !important;line-height:14px !important}.progress-lg{height:30px !important;line-height:30px !important}.progress .progress-bar{position:absolute;overflow:hidden;line-height:18px}.progress .progressbar-back-text{position:absolute;width:100%;height:100%;font-size:12px;line-height:20px;text-align:center}.progress .progressbar-front-text{display:block;width:100%;font-size:12px;line-height:20px;text-align:center}.progress.right .progress-bar{right:0}.progress.right .progressbar-front-text{position:absolute;right:0}.progress.vertical{width:25px;height:100%;min-height:150px;margin-right:20px;display:inline-block;margin-bottom:0px}.progress.wide-bar{width:40px}.progress.vertical.bottom{position:relative}.progress.vertical.bottom .progressbar-front-text{position:absolute;bottom:0}.progress.vertical .progress-bar{width:100%;height:0;-webkit-transition:height 0.6s ease;transition:height 0.6s ease}.progress.vertical.bottom .progress-bar{position:absolute;bottom:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{position:relative;margin-bottom:20px;overflow:hidden;height:18px;background:#adadad;-webkit-box-shadow:0 1px 0 transparent,0 0 0 1px #aeb1b3 inset;box-shadow:0 1px 0 transparent,0 0 0 1px #aeb1b3 inset;-moz-border-radius:0px;-webkit-border-radius:0px;border-radius:0px}.progress-bar{float:left;width:0;height:100%;font-size:11px;color:#fff;text-align:center;background-color:#428bca;font-weight:bold;text-shadow:0 -1px 0 rgba(0,0,0,0.25);-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 1s ease-in-out;transition:width 1s ease-in-out}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-danger{background-color:#a52521}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-success{background-color:#4f9e4f}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-warning{background-color:#e28a0d}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-info{background-color:#316490}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-info .bar,.progress .bar-info{background:#316490}.vertical-bars{padding:0;margin:0}.vertical-bars:after{content:"";display:block;height:0;clear:both}.vertical-bars li{padding:14px 0;width:25%;display:block;float:left;text-align:center}.vertical-bars li:first-child{border-left:none}.vertical-bars>li>.progress.vertical:first-child{margin-left:auto}.vertical-bars>li>.progress.vertical{margin:0 auto;float:none}.nav-tabs{border-bottom:none}.nav-tabs>li>a .badge{font-size:11px;padding:3px 5px 3px 5px;opacity:.5;margin-left:5px;min-width:17px;font-weight:normal}.tabs-left .nav-tabs>li>a .badge{margin-right:5px;margin-left:0px}.nav-tabs>li>a .label{display:inline-block;font-size:11px;margin-left:5px;opacity:.5}.nav-tabs>li>a{color:#adadad;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.nav-tabs>li>a:hover{color:#1d1d1d;border-color:transparent transparent #adadad transparent;margin-top:1px;border-top-width:0}.nav-tabs>li.active>a{background-color:#adadad;color:#2b2b2b;border-top-width:0px !important;margin-top:1px !important;font-weight:bold}.tabs-left .nav-tabs>li.active>a{-webkit-box-shadow:-2px 0 0 #428bca;-moz-box-shadow:-2px 0 0 #428bca;box-shadow:-2px 0 0 #428bca;border-top-width:1px !important;border-left:none !important;margin-left:1px !important}.tabs-left .nav-pills>li.active>a{border:none !important;box-shadow:none !important;-webkit-box-shadow:none !important;-moz-box-shadow:none !important}.tabs-right .nav-tabs>li.active>a{-webkit-box-shadow:2px 0 0 #428bca;-moz-box-shadow:2px 0 0 #428bca;box-shadow:2px 0 0 #428bca;border-top-width:1px !important;border-right:none !important;margin-right:1px !important}.tabs-below .nav-tabs>li.active>a{-webkit-box-shadow:0 2px 0 #428bca;-moz-box-shadow:0 2px 0 #428bca;box-shadow:0 2px 0 #428bca;border-bottom-width:0px !important;border-top:none !important;margin-top:0px !important}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #9b9b9b}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li,.tabs-left>.nav-pills>li,.tabs-right>.nav-pills>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a,.tabs-left>.nav-pills>li>a,.tabs-right>.nav-pills>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs,.tabs-left>.nav-pills{float:left;margin-right:19px;border-right:1px solid #9b9b9b}.tabs-left>.nav-pills{border-right:none}.tabs-left>.nav-tabs>li>a{margin-right:-1px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#adadad #949494 #adadad #adadad}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#949494 transparent #949494 #9b9b9b;*border-right-color:#fff}.tabs-left>.tab-content{margin-left:109px}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #9b9b9b}.tabs-right>.nav-tabs>li>a{margin-left:-1px}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#adadad #adadad #adadad #9b9b9b}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#9b9b9b #9b9b9b #9b9b9b transparent;*border-left-color:#fff}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #9b9b9b}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-top-color:#9b9b9b;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #9b9b9b #9b9b9b #9b9b9b}.nav-tabs.bordered{background:#fff;border:1px solid #9b9b9b}.nav-tabs.bordered>:first-child a{border-left-width:0px !important}.nav-tabs.bordered+.tab-content{border:1px solid #9b9b9b;border-top:none}.tabs-pull-right.nav-tabs>li,.tabs-pull-right.nav-pills>li{float:right}.tabs-pull-right.nav-tabs>li:first-child>a,.tabs-pull-right.nav-pills>li:first-child>a{margin-right:1px}.tabs-pull-right.bordered.nav-tabs>li:first-child>a,.tabs-pull-right.bordered.nav-pills>li:first-child>a{border-left-width:1px !important;margin-right:0px;border-right-width:0px}.dropdown-menu-xs{min-width:37px}.dropdown-menu-xs>li>a{padding:3px 10px}.dropdown-menu-xs>li>a:hover i{color:#fff !important}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropdown-submenu:hover>a{background-color:#63676a;color:#1d1d1d}.dropdown-submenu:hover a:after{border-left-color:#5cb85c}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#2b2b2b;margin-top:5px;margin-right:-10px}.dropdown-submenu>a:hover:after{border-left-color:#adadad}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px}.pagination>li>a,.pagination>li>span{box-shadow:inset 0 -2px 0 rgba(0,0,0,0.05);-moz-box-shadow:inset 0 -2px 0 rgba(0,0,0,0.05);-webkit-box-shadow:inset 0 -2px 0 rgba(0,0,0,0.05)}.btn-default.disabled{color:#adadad}.btn{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;will-change:background-color, border-color;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-transition:all 0.18s ease-in-out;transition:all 0.18s ease-in-out}.btn.btn-ribbon{background-color:#707070;background-image:-moz-linear-gradient(top, #777, #666);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#777), to(#666));background-image:-webkit-linear-gradient(top, #777, #666);background-image:-o-linear-gradient(top, #777, #666);background-image:linear-gradient(to bottom, #777777,#666666);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff777777', endColorstr='#ff666666', GradientType=0);color:white;padding:0 5px;line-height:20px;vertical-align:middle;height:20px;display:block;border:none;float:left;margin:0 8px 0 0;cursor:pointer}.btn.btn-ribbon>i{font-size:111%}.ribbon-button-alignment{padding-top:10px;display:inline-block}.ribbon-button-alignment.pull-right>.btn.btn-ribbon{margin:0 0 0 8px}.panel-purple{border-color:#6e587a}.panel-purple>.panel-heading{color:#fff;background-color:#6e587a;border-color:#6e587a}.panel-greenLight{border-color:#71843f}.panel-greenLight>.panel-heading{color:#fff;background-color:#71843f;border-color:#71843f}.panel-greenDark{border-color:#496949}.panel-greenDark>.panel-heading{color:#fff;background-color:#496949;border-color:#496949}.panel-darken{border-color:#313335}.panel-darken>.panel-heading{color:#fff;background-color:#404040;border-color:#404040}.panel-pink{border-color:#e06fdf}.panel-pink>.panel-heading{color:#fff;background-color:#e06fdf;border-color:#e06fdf}.panel-green{border-color:#5cb85c}.panel-green>.panel-heading{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.panel-blueLight{border-color:#92a2a8}.panel-blueLight>.panel-heading{color:#fff;background-color:#92a2a8;border-color:#92a2a8}.panel-pinkDark{border-color:#a8829f}.panel-pinkDark>.panel-heading{color:#fff;background-color:#a8829f;border-color:#a8829f}.panel-redLight{border-color:#a65858}.panel-redLight>.panel-heading{color:#fff;background-color:#a65858;border-color:#a65858}.panel-red{border-color:#d9534f}.panel-red>.panel-heading{color:#fff;background-color:#d9534f;border-color:#d9534f}.panel-teal{border-color:#568a89}.panel-teal>.panel-heading{color:#fff;background-color:#568a89;border-color:#568a89}.panel-orange{border-color:#e28a0d}.panel-orange>.panel-heading{color:#fff;background-color:#e28a0d;border-color:#e28a0d}.panel-blueDark{border-color:#4c4f53}.panel-blueDark>.panel-heading{color:#fff;background-color:#4c4f53;border-color:#4c4f53}.panel-magenta{border-color:#6e3671}.panel-magenta>.panel-heading{color:#fff;background-color:#6e3671;border-color:#6e3671}.panel-blue{border-color:#428bca}.panel-blue>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-footer>.btn-block{border-radius:0px;-moz-border-radius:0px;-webkit-border-radius:0px;border-bottom:none;border-left:none;border-right:none}.btn-circle{width:30px;height:30px;text-align:center;padding:6px 0;font-size:12px;line-height:18px;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;-webkit-box-shadow:0 1px 6px 0 rgba(0,0,0,0.12),0 1px 6px 0 rgba(0,0,0,0.12);box-shadow:0 1px 6px 0 rgba(0,0,0,0.12),0 1px 6px 0 rgba(0,0,0,0.12)}.btn-circle.btn-sm,.btn-group-sm>.btn-circle.btn{width:22px;height:22px;padding:4px 0;font-size:12px;line-height:14px;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%}.btn-circle.btn-lg,.btn-group-lg>.btn-circle.btn{width:50px;height:50px;padding:10px 15px;font-size:18px;line-height:30px;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%}.btn-circle.btn-xl{width:70px;height:70px;padding:10px 15px;font-size:24px;line-height:50px;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%}.btn-metro{margin:0 0 20px;padding-top:15px;padding-bottom:15px}.btn-metro>span{display:block;vertical-align:bottom;margin-top:10px;text-transform:uppercase}.btn-metro>span.label{position:absolute;top:0px;right:0px}.btn-label{position:relative;left:-8px;display:inline-block;padding:5px 8px;background:rgba(0,0,0,0.15);border-radius:3px 0 0 3px}.btn-labeled{padding-top:0;padding-bottom:0;padding-left:8px}.btn-link{box-shadow:none;-webkit-box-shadow:none;font-size:13px}.morris-hover.morris-default-style{border-radius:5px;padding:5px;color:#666;background:rgba(29,29,29,0.9);border:solid 2px #375959;font-family:'Oxygen Bold';font-size:10px;text-align:left;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.morris-hover.morris-default-style .morris-hover-row-label{font-weight:bold}.morris-hover.morris-default-style .morris-hover-point{white-space:nowrap}.morris-hover{position:absolute;z-index:903}.fixed-page-footer .morris-hover{z-index:900}.txt-color.txt-color-blue,.txt-color-blue.pf-help-light,.pf-help-light:hover,.txt-color-blue.pf-help,.pf-help:hover,.txt-color.pf-help-default:hover,.dataTable td.pf-help-default.pf-table-link-cell:hover,.dataTable td.pf-table-link-cell.pf-help-light:hover,.dataTable td.pf-table-link-cell.pf-help:hover,.dataTable td.pf-table-action-cell>.pf-help-default.pf-table-action-icon-cell:hover,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-help-light:hover,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-help:hover,.pf-landing .pf-landing-list li>i.pf-help-default:hover,.pf-landing .pf-landing-list li>i.pf-help-light:hover,.pf-landing .pf-landing-list li>i.pf-help:hover,.dataTable td.txt-color-blue.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-blue.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-blue{color:#428bca !important}.txt-color.txt-color-blueLight,.txt-color-blueLight.pf-help-light,.txt-color-blueLight.pf-help,.dataTable td.txt-color-blueLight.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-blueLight.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-blueLight{color:#92a2a8 !important}.txt-color.txt-color-blueDark,.txt-color-blueDark.pf-help-light,.txt-color-blueDark.pf-help,.dataTable td.txt-color-blueDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-blueDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-blueDark{color:#4c4f53 !important}.txt-color.txt-color-grayLightest,.txt-color-grayLightest.pf-help-light,.txt-color-grayLightest.pf-help,.dataTable td.txt-color-grayLightest.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-grayLightest.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-grayLightest{color:#eaeaea !important}.txt-color.txt-color-grayLighter,.txt-color-grayLighter.pf-help-light,.txt-color-grayLighter.pf-help,.dataTable td.txt-color-grayLighter.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-grayLighter.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-grayLighter{color:#adadad !important}.txt-color.txt-color-grayLight,.pf-help-light,.txt-color-grayLight.pf-help,.dataTable td.txt-color-grayLight.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-help-light,.dataTable td.pf-table-action-cell>.txt-color-grayLight.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-help-light,.pf-landing .pf-landing-list li>i.txt-color-grayLight,.pf-landing .pf-landing-list li>i.pf-help-light{color:#63676a !important}.txt-color.txt-color-gray,.txt-color-gray.pf-help-light,.pf-help,.dataTable td.txt-color-gray.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-help,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-gray,.pf-landing .pf-landing-list li>i.pf-help{color:#3c3f41 !important}.txt-color.txt-color-grayDark,.txt-color-grayDark.pf-help-light,.txt-color-grayDark.pf-help,.dataTable td.txt-color-grayDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-grayDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-grayDark{color:#313335 !important}.txt-color.txt-color-greenLight,.txt-color-greenLight.pf-help-light,.txt-color-greenLight.pf-help,.dataTable td.txt-color-greenLight.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-greenLight.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-greenLight{color:#66c84f !important}.txt-color.txt-color-green,.txt-color-green.pf-help-light,.pf-help-light.pf-log-info,.txt-color-green.pf-help,.pf-help.pf-log-info,.dataTable td.txt-color-green.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-log-info,.dataTable td.pf-table-action-cell>.txt-color-green.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-log-info,.txt-color.pf-log-info,.pf-landing .pf-landing-list li>i.pf-log-info,.pf-landing .pf-landing-list li>i.txt-color-green{color:#5cb85c !important}.txt-color.txt-color-greenDark,.txt-color-greenDark.pf-help-light,.txt-color-greenDark.pf-help,.dataTable td.txt-color-greenDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-greenDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-greenDark{color:#4f9e4f !important}.txt-color.txt-color-redLight,.txt-color-redLight.pf-help-light,.txt-color-redLight.pf-help,.dataTable td.txt-color-redLight.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-redLight.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-redLight{color:#a65858 !important}.txt-color.txt-color-red,.txt-color-red.pf-help-light,.pf-help-light.pf-log-error,.txt-color-red.pf-help,.pf-help.pf-log-error,.dataTable td.txt-color-red.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-log-error,.dataTable td.pf-table-action-cell>.txt-color-red.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-log-error,.txt-color.pf-log-error,.pf-landing .pf-landing-list li>i.pf-log-error,.pf-landing .pf-landing-list li>i.txt-color-red{color:#d9534f !important}.txt-color.txt-color-redDarker,.txt-color-redDarker.pf-help-light,.txt-color-redDarker.pf-help,.dataTable td.txt-color-redDarker.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-redDarker.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-redDarker{color:#a52521 !important}.txt-color.txt-color-yellow,.txt-color-yellow.pf-help-light,.txt-color-yellow.pf-help,.dataTable td.txt-color-yellow.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-yellow.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-yellow{color:#e2ce48 !important}.txt-color.txt-color-orangeLight,.txt-color-orangeLight.pf-help-light,.txt-color-orangeLight.pf-help,.dataTable td.txt-color-orangeLight.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-orangeLight.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-orangeLight{color:#f0ad4e !important}.txt-color.txt-color-orange,.txt-color-orange.pf-help-light,.txt-color-orange.pf-help,.dataTable td.txt-color-orange.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-orange.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell:hover>.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-orange{color:#e28a0d !important}.txt-color.txt-color-orangeDark,.txt-color-orangeDark.pf-help-light,.txt-color-orangeDark.pf-help,.dataTable td.txt-color-orangeDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-orangeDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-orangeDark{color:#c2760c !important}.txt-color.txt-color-pink,.txt-color-pink.pf-help-light,.txt-color-pink.pf-help,.dataTable td.txt-color-pink.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-pink.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-pink{color:#e06fdf !important}.txt-color.txt-color-pinkDark,.txt-color-pinkDark.pf-help-light,.txt-color-pinkDark.pf-help,.dataTable td.txt-color-pinkDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-pinkDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-pinkDark{color:#a8829f !important}.txt-color.txt-color-purple,.txt-color-purple.pf-help-light,.txt-color-purple.pf-help,.dataTable td.txt-color-purple.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-purple.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-purple{color:#6e587a !important}.txt-color.txt-color-darken,.txt-color-darken.pf-help-light,.txt-color-darken.pf-help,.dataTable td.txt-color-darken.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-darken.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-darken{color:#404040 !important}.txt-color.txt-color-lighten,.txt-color-lighten.pf-help-light,.txt-color-lighten.pf-help,.dataTable td.txt-color-lighten.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-lighten.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-lighten{color:#d5e7ec !important}.txt-color.txt-color-white,.txt-color-white.pf-help-light,.txt-color-white.pf-help,.dataTable td.txt-color-white.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-white.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-white{color:#fff !important}.txt-color.txt-color-magenta,.txt-color-magenta.pf-help-light,.txt-color-magenta.pf-help,.dataTable td.txt-color-magenta.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-magenta.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-magenta{color:#6e3671 !important}.txt-color.txt-color-tealLightest,.txt-color-tealLightest.pf-help-light,.txt-color-tealLightest.pf-help,.dataTable td.txt-color-tealLightest.pf-table-link-cell,.dataTable td.pf-table-link-cell:hover,.dataTable td.pf-table-action-cell>.txt-color-tealLightest.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-tealLightest{color:#6caead !important}.txt-color.txt-color-tealLighter,.txt-color-tealLighter.pf-help-light,.txt-color-tealLighter.pf-help,.dataTable td.txt-color-tealLighter.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-tealLighter.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i{color:#568a89 !important}.txt-color.txt-color-teal,.txt-color-teal.pf-help-light,.txt-color-teal.pf-help,.dataTable td.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-teal.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>td.pf-table-action-icon-cell.pf-table-link-cell,.pf-landing .pf-landing-list li>i.txt-color-teal{color:#477372 !important}.txt-color.txt-color-indigoDark,.txt-color-indigoDark.pf-help-light,.txt-color-indigoDark.pf-help,.dataTable td.txt-color-indigoDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-indigoDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-indigoDark{color:#5c6bc0 !important}.txt-color.txt-color-indigoDarkest,.txt-color-indigoDarkest.pf-help-light,.txt-color-indigoDarkest.pf-help,.dataTable td.txt-color-indigoDarkest.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-indigoDarkest.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-indigoDarkest{color:#313966 !important}.txt-color.txt-color-gold,.txt-color-gold.pf-help-light,.txt-color-gold.pf-help,.dataTable td.txt-color-gold.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-gold.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-gold{color:#cfb53b !important}.txt-color.txt-color-silver,.txt-color-silver.pf-help-light,.txt-color-silver.pf-help,.dataTable td.txt-color-silver.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-silver.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-silver{color:silver !important}.txt-color.txt-color-bronze,.txt-color-bronze.pf-help-light,.txt-color-bronze.pf-help,.dataTable td.txt-color-bronze.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-bronze.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-bronze{color:#8c7853 !important}.txt-color.txt-color-primary,.txt-color-primary.pf-help-light,.txt-color-primary.pf-help,.dataTable td.txt-color-primary.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-primary.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-primary{color:#375959 !important}.txt-color.txt-color-success,.txt-color-success.pf-help-light,.txt-color-success.pf-help,.dataTable td.txt-color-success.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-success.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-success{color:#4f9e4f !important}.txt-color.txt-color-information,.txt-color-information.pf-help-light,.txt-color-information.pf-help,.dataTable td.txt-color-information.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-information.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-information{color:#316490 !important}.txt-color.txt-color-warning,.txt-color-warning.pf-help-light,.pf-help-light.pf-log-warning,.txt-color-warning.pf-help,.pf-help.pf-log-warning,.dataTable td.txt-color-warning.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-log-warning,.dataTable td.pf-table-action-cell>.txt-color-warning.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-log-warning,.txt-color.pf-log-warning,.pf-landing .pf-landing-list li>i.pf-log-warning,.pf-landing .pf-landing-list li>i.txt-color-warning{color:#e28a0d !important}.txt-color.txt-color-danger,.txt-color-danger.pf-help-light,.txt-color-danger.pf-help,.dataTable td.txt-color-danger.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-danger.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-danger{color:#a52521 !important}.bg-color.bg-color-blue{background-color:#428bca !important}.bg-color.bg-color-blueLight{background-color:#92a2a8 !important}.bg-color.bg-color-blueDark{background-color:#4c4f53 !important}.bg-color.bg-color-green{background-color:#5cb85c !important}.bg-color.bg-color-greenLight{background-color:#71843f !important}.bg-color.bg-color-greenDark{background-color:#496949 !important}.bg-color.bg-color-red{background-color:#d9534f !important}.bg-color.bg-color-yellow{background-color:#e2ce48 !important}.bg-color.bg-color-orange{background-color:#e28a0d !important}.bg-color.bg-color-orangeDark{background-color:#c2760c !important}.bg-color.bg-color-pink{background-color:#e06fdf !important}.bg-color.bg-color-pinkDark{background-color:#a8829f !important}.bg-color.bg-color-purple{background-color:#6e587a !important}.bg-color.bg-color-darken{background-color:#404040 !important}.bg-color.bg-color-lighten{background-color:#d5e7ec !important}.bg-color.bg-color-white{background-color:#fff !important}.bg-color.bg-color-gray{background-color:#3c3f41 !important}.bg-color.bg-color-grayDark{background-color:#525252 !important}.bg-color.bg-color-grayDarker{background-color:#2b2b2b !important}.bg-color.bg-color-magenta{background-color:#6e3671 !important}.bg-color.bg-color-tealLighter{background-color:#568a89 !important}.bg-color.bg-color-tealDarker{background-color:#212C30 !important}.bg-color.bg-color-tealDarkest{background-color:#1b2326 !important}.bg-color.bg-color-redLight{background-color:#a65858 !important}.pf-animation-slide-in{-moz-animation-duration:1.2s;-webkit-animation-duration:1.2s;-moz-animation-name:pfSlideIn;-webkit-animation-name:pfSlideIn;position:relative}@-webkit-keyframes pfSlideIn{from{opacity:0;top:-20px}to{opacity:1;top:0px}}@-moz-keyframes pfSlideIn{from{opacity:0;top:-20px}to{opacity:1;top:0px}}@-ms-keyframes pfSlideIn{from{opacity:0;top:-20px}to{opacity:1;top:0px}}@keyframes pfSlideIn{from{opacity:0;top:-20px}to{opacity:1;top:0px}}@-webkit-keyframes pfPulseDanger{0%{fill:#d9534f}50%{fill:#58100d}100%{fill:#d9534f}}@-moz-keyframes pfPulseDanger{0%{fill:#d9534f}50%{fill:#58100d}100%{fill:#d9534f}}@-ms-keyframes pfPulseDanger{0%{fill:#d9534f}50%{fill:#58100d}100%{fill:#d9534f}}@keyframes pfPulseDanger{0%{fill:#d9534f}50%{fill:#58100d}100%{fill:#d9534f}}.pf-animation-pulse-success{-webkit-animation:pulseBackgroundSuccess 1.5s 1;animation:pulseBackgroundSuccess 1.5s 1;-webkit-animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38);animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38)}.pf-animation-pulse-success .sorting_1{-webkit-animation:pulseBackgroundSuccessActive 1.5s 1;animation:pulseBackgroundSuccessActive 1.5s 1;-webkit-animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38);animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38)}.pf-animation-pulse-warning{-webkit-animation:pulseBackgroundWarning 1.5s 1;animation:pulseBackgroundWarning 1.5s 1;-webkit-animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38);animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38)}.pf-animation-pulse-warning .sorting_1{-webkit-animation:pulseBackgroundWarningActive 1.5s 1;animation:pulseBackgroundWarningActive 1.5s 1;-webkit-animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38);animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38)}@-webkit-keyframes pulseBackgroundSuccess{5%{background-color:#4f9e4f;color:#313335}}@-moz-keyframes pulseBackgroundSuccess{5%{background-color:#4f9e4f;color:#313335}}@-ms-keyframes pulseBackgroundSuccess{5%{background-color:#4f9e4f;color:#313335}}@keyframes pulseBackgroundSuccess{5%{background-color:#4f9e4f;color:#313335}}@-webkit-keyframes pulseBackgroundSuccessActive{5%{background-color:#478d47;color:#313335}}@-moz-keyframes pulseBackgroundSuccessActive{5%{background-color:#478d47;color:#313335}}@-ms-keyframes pulseBackgroundSuccessActive{5%{background-color:#478d47;color:#313335}}@keyframes pulseBackgroundSuccessActive{5%{background-color:#478d47;color:#313335}}@-webkit-keyframes pulseBackgroundWarning{5%{background-color:#e28a0d;color:#2b2b2b}}@-moz-keyframes pulseBackgroundWarning{5%{background-color:#e28a0d;color:#2b2b2b}}@-ms-keyframes pulseBackgroundWarning{5%{background-color:#e28a0d;color:#2b2b2b}}@keyframes pulseBackgroundWarning{5%{background-color:#e28a0d;color:#2b2b2b}}@-webkit-keyframes pulseBackgroundWarningActive{5%{background-color:#ca7b0c;color:#2b2b2b}}@-moz-keyframes pulseBackgroundWarningActive{5%{background-color:#ca7b0c;color:#2b2b2b}}@-ms-keyframes pulseBackgroundWarningActive{5%{background-color:#ca7b0c;color:#2b2b2b}}@keyframes pulseBackgroundWarningActive{5%{background-color:#ca7b0c;color:#2b2b2b}}.pf-animate-rotate,.modal-content h2[data-toggle="collapse"]:after,.modal-content h4[data-toggle="collapse"]:after{-webkit-transition:all 0.08s linear;transition:all 0.08s linear}.pf-animate-rotate.right,.modal-content h2.right[data-toggle="collapse"]:after,.modal-content h4.right[data-toggle="collapse"]:after{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.pf-animate-rotate.left,.modal-content h2.left[data-toggle="collapse"]:after,.modal-content h4.left[data-toggle="collapse"]:after{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}body{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.pf-body{overflow:hidden}a{color:#477372;will-change:color;text-decoration:none;-webkit-transition:color 0.08s ease-out;transition:color 0.08s ease-out}a:hover{color:#6caead;text-decoration:none}a:focus{color:#477372}em{font-style:italic}em.pf-brand{text-transform:uppercase}.pf-font-capitalize{text-transform:capitalize}.no-padding{padding:0 !important}::-webkit-scrollbar{width:16px;height:16px}::-webkit-scrollbar-track{background-color:#2b2b2b;border-left:1px solid #313335;border-radius:2px;-webkit-transition:background-color 0.5s;transition:background-color 0.5s}::-webkit-scrollbar-thumb{height:6px;border:5px solid transparent;background-clip:padding-box;-webkit-border-radius:8px;background-color:#868c90}::-webkit-scrollbar-thumb:hover{background-color:#a1a5a8}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-corner{background-color:transparent}::selection{background:#adadad;color:#1d1d1d}::-moz-selection{background:#adadad;color:#1d1d1d}.pf-help-default,.pf-help-light,.pf-help{cursor:help;-webkit-transition:color 0.08s ease-out;transition:color 0.08s ease-out}.pf-dialog-icon-button,.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text.editable-empty,.pf-sig-table-module .pf-sig-table .fa-plus,.pf-system-route-module .pf-system-route-table td .fa-refresh,.pf-system-route-module .pf-system-route-table td .fa-search-plus{cursor:pointer;margin-top:2px;-webkit-transition:color 0.15s ease-out;transition:color 0.15s ease-out}.pf-dialog-icon-button:not(.collapsed),.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text.editable-empty:not(.collapsed),.pf-sig-table-module .pf-sig-table .fa-plus:not(.collapsed),.pf-system-route-module .pf-system-route-table td .fa-refresh:not(.collapsed),.pf-system-route-module .pf-system-route-table td .fa-search-plus:not(.collapsed),.pf-dialog-icon-button:hover,.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text.editable-empty:hover,.pf-sig-table-module .pf-sig-table .fa-plus:hover,.pf-system-route-module .pf-system-route-table td .fa-refresh:hover,.pf-system-route-module .pf-system-route-table td .fa-search-plus:hover{color:#e28a0d}.pf-module-icon-button{cursor:pointer;-webkit-transition:color 0.15s ease-out;transition:color 0.15s ease-out}.pf-module-icon-button:hover{color:#e28a0d !important}a.disabled{color:#777;pointer-events:none;cursor:default}.alert{will-change:opacity, transform}.editable-input optgroup[label]{background-color:#3c3f41;color:#63676a}.editable-input optgroup[label] option{background-color:#313335;color:#adadad;font-family:Consolas,monospace,Menlo,Monaco,"Courier New"}select:active,select:hover{outline:none}select:active,select:hover{outline-color:red}.select2-results [class*="col-"]{line-height:22px}.select2 ::-webkit-search-cancel-button{-webkit-appearance:none !important}.select2 .select2-selection__choice__remove{float:left}.select2 .select2-selection--multiple input{box-shadow:none !important}.dataTable.pf-table-fixed{width:100%;table-layout:fixed}.dataTable th.pf-table-image-cell,.dataTable th.pf-table-image-small-cell{padding-left:0 !important;padding-right:0 !important}.dataTable th.sorting,.dataTable th.sorting_asc,.dataTable th.sorting_desc{padding-right:18px !important}.dataTable td.pf-table-link-cell{cursor:pointer;-webkit-transition:color 0.08s ease-out;transition:color 0.08s ease-out}.dataTable td.pf-table-action-cell{cursor:pointer}.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell{-webkit-transition:color 0.08s ease-out;transition:color 0.08s ease-out}.dataTable td.pf-table-image-cell{padding:0 !important}.dataTable td.pf-table-image-cell img{width:26px;box-sizing:content-box;border-left:1px solid #3c3f41;border-right:1px solid #3c3f41}.dataTable td.pf-table-image-small-cell img{width:24px;border-left:1px solid transparent;border-right:1px solid transparent}.dataTable td.pf-table-button-sm-cell{padding:0}.dataTable td.pf-table-counter-cell{color:#63676a}.dataTable td.pf-table-counter-cell .pf-digit-counter-small{width:20px;display:inline-block;font-size:10px}.dataTable td.pf-table-counter-cell .pf-digit-counter-large{width:26px;display:inline-block;font-size:10px}.dataTable td .pf-table-cell-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataTable td .pf-table-cell-80{width:90px}.dataTable td .pf-table-cell-90{width:100px}.dataTable td .pf-table-cell-100{width:110px}.dataTable td.pf-table-cell-ellipses-auto{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataTable td.separator-right,.dataTable th.separator-right{border-right:1px solid #3c3f41}.dataTable td svg.peity,.dataTable th svg.peity{display:block}table tr.collapsing{-webkit-transition:height 0.01s ease;transition:height 0.01s ease}table tr.collapse.in{display:table-row !important}.pf-table-tools{height:45px}.pf-table-tools .btn:not(:last-child){margin-right:10px}.pf-table-tools-action{will-change:height, opacity, display;opacity:0;display:none;height:0;visibility:hidden}.pf-loading-overlay{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;background:#2b2b2b;z-index:1060;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.pf-loading-overlay .pf-loading-overlay-wrapper{width:25px;height:25px;margin:auto;text-align:center;position:absolute;top:0;left:0;bottom:0;right:0}.pf-loading-overlay .pf-loading-overlay-wrapper i{padding:3px}.navbar-header-block{width:100%}.navbar-header-block .navbar-nav{width:100%}.navbar-nav li:not(.disabled):hover:before,.navbar-nav li:not(.disabled).active:before{top:-4px;opacity:1}.navbar-nav li:not(.disabled):before{content:'';position:absolute;background-color:#5cb85c;opacity:0;will-change:opacity,top;-webkit-transition:top 0.15s ease-out,opacity 0.15s ease-out;transition:top 0.15s ease-out,opacity 0.15s ease-out;width:100%;height:2px;top:0}.pf-navbar-version-info{cursor:pointer}.pf-site{will-change:transform}.sb-slidebar{will-change:transform}.sb-left .list-group-item{cursor:pointer;-webkit-box-shadow:inset -10px 0px 5px -5px rgba(0,0,0,0.4);box-shadow:inset -10px 0px 5px -5px rgba(0,0,0,0.4)}.sb-right .list-group-item{cursor:pointer;-webkit-box-shadow:inset 10px 0px 5px -5px rgba(0,0,0,0.4);box-shadow:inset 10px 0px 5px -5px rgba(0,0,0,0.4)}.mCSB_container,.mCSB_dragger{will-change:top, left}.pf-timestamp-counter{visibility:hidden}.pf-map-type-private{color:#7986cb}.pf-map-type-corporation{color:#5cb85c}.pf-map-type-alliance{color:#428bca}.pf-map-type-global{color:#568a89}#pf-map-module{margin:20px 10px 0 10px}#pf-map-module #pf-map-tabs .pf-map-type-tab-default{border-top:2px solid transparent}#pf-map-module #pf-map-tabs .pf-map-type-tab-private{border-top:2px solid #7986cb}#pf-map-module #pf-map-tabs .pf-map-type-tab-corporation{border-top:2px solid #5cb85c}#pf-map-module #pf-map-tabs .pf-map-type-tab-alliance{border-top:2px solid #428bca}#pf-map-module #pf-map-tabs .pf-map-type-tab-global{border-top:2px solid #568a89}#pf-map-module #pf-map-tabs .pf-map-tab-icon{margin-right:5px}#pf-map-module #pf-map-tabs .pf-map-tab-shared-icon{margin-left:5px}.pf-map-content-row{margin-top:10px;padding-bottom:40px}.pf-map-content-row .pf-module{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;background:rgba(60,63,65,0.3);padding:10px;width:100%;margin-bottom:10px;will-change:height, transform, opacity;overflow:hidden;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.pf-map-content-row .pf-module:before{content:'';position:absolute;top:0;left:0;border-style:solid;border-width:0 0 8px 8px;border-color:transparent transparent transparent #3c3f41;cursor:pointer}.pf-map-content-row .pf-module .label{margin-bottom:10px}.pf-map-content-row .pf-module .pf-dynamic-area{background:rgba(43,43,43,0.4)}.pf-map-content-row .pf-module h5 .pf-module-icon-button{margin-left:5px}.pf-user-status{color:#a52521}.pf-user-status-corp{color:#5cb85c}.pf-user-status-ally{color:#428bca}.pf-user-status-own{color:#7986cb}.pf-system-effect{display:none;cursor:default;color:#adadad}.pf-system-effect-magnetar{color:#e06fdf;display:inline-block}.pf-system-effect-redgiant{color:#d9534f;display:inline-block}.pf-system-effect-pulsar{color:#428bca;display:inline-block}.pf-system-effect-wolfrayet{color:#e28a0d;display:inline-block}.pf-system-effect-cataclysmic{color:#ffb;display:inline-block}.pf-system-effect-blackhole{color:#000;display:inline-block}.pf-system-info-rally .pf-system-head{background-color:#782d77;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjEuMCIgeTE9IjEuMCIgeDI9IjAuMCIgeTI9IjAuMCI+PHN0b3Agb2Zmc2V0PSIyNSUiIHN0b3AtY29sb3I9IiMzZTI2NGUiLz48c3RvcCBvZmZzZXQ9IjI1JSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzNlMjY0ZSIvPjxzdG9wIG9mZnNldD0iNzUlIiBzdG9wLWNvbG9yPSIjM2UyNjRlIi8+PHN0b3Agb2Zmc2V0PSI3NSUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4wIi8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-moz-linear-gradient(135deg, #3e264e 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,#3e264e 50%,#3e264e 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-image:-webkit-linear-gradient(135deg, #3e264e 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,#3e264e 50%,#3e264e 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-image:linear-gradient(-45deg, #3e264e 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,#3e264e 50%,#3e264e 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-size:25px 25px;-webkit-animation:move 3s linear infinite;-moz-animation:move 3s linear infinite;-ms-animation:move 3s linear infinite;animation:move 3s linear infinite}.pf-system-security-0-0{color:#be0000}.pf-system-security-0-1{color:#ab2600}.pf-system-security-0-2{color:#be3900}.pf-system-security-0-3{color:#c24e02}.pf-system-security-0-4{color:#ab5f00}.pf-system-security-0-5{color:#bebe00}.pf-system-security-0-6{color:#73bf26}.pf-system-security-0-7{color:#00bf00}.pf-system-security-0-8{color:#00bf39}.pf-system-security-0-9{color:#39bf99}.pf-system-security-1-0{color:#28c0bf}.pf-system-sec{margin-right:5px;cursor:-moz-grab;cursor:-webkit-grab}.pf-system-sec-highSec{color:#5cb85c}.pf-system-sec-lowSec{color:#e28a0d}.pf-system-sec-nullSec{color:#d9534f}.pf-system-sec-high{color:#d9534f}.pf-system-sec-mid{color:#e28a0d}.pf-system-sec-low{color:#428bca}.pf-system-sec-unknown{color:#7986cb}.pf-system-status-friendly{border-color:#428bca !important;color:#428bca}.pf-system-status-occupied{border-color:#e28a0d !important;color:#e28a0d}.pf-system-status-hostile{border-color:#d9534f !important;color:#d9534f}.pf-system-status-empty{border-color:#5cb85c !important;color:#5cb85c}.pf-system-status-unscanned{border-color:#568a89 !important;color:#568a89}.pf-system-info-status-label{background-color:#63676a;color:#000;will-change:background-color;-webkit-transition:background-color 0.5s ease-out;transition:background-color 0.5s ease-out}.pf-system-info-status-label.pf-system-status-friendly{background-color:#428bca}.pf-system-info-status-label.pf-system-status-occupied{background-color:#e28a0d}.pf-system-info-status-label.pf-system-status-hostile{background-color:#d9534f}.pf-system-info-status-label.pf-system-status-empty{background-color:#5cb85c}.pf-system-info-status-label.pf-system-status-unscanned{background-color:#568a89}.pf-system-effect-dialog-wrapper .table,.pf-jump-info-dialog .table{margin:15px 0}.pf-system-effect-dialog-wrapper .table td,.pf-jump-info-dialog .table td{text-transform:capitalize}.pf-fake-connection{box-sizing:content-box;display:inline-block;width:70px;height:4px;margin-right:5px;border-top:2px solid #63676a;border-bottom:2px solid #63676a;background-color:#3c3f41;position:relative;font-family:"Oxygen","Helvetica Neue",Helvetica,Arial,sans-serif}.pf-fake-connection.pf-map-connection-stargate{background-color:#313966;border-color:#63676a}.pf-fake-connection.pf-map-connection-jumpbridge{background-color:#6caead;border-color:#3c3f41;background:repeating-linear-gradient(to right, #6caead, #6caead 10px, #3c3f41 10px, #3c3f41 20px)}.pf-fake-connection.pf-map-connection-wh-eol{border-color:#d747d6}.pf-fake-connection.pf-map-connection-wh-reduced{background-color:#e28a0d}.pf-fake-connection.pf-map-connection-wh-critical{background-color:#a52521}.pf-fake-connection.pf-map-connection-frig{border-style:dashed;border-left:none;border-right:none}.pf-fake-connection.pf-map-connection-frig:after{content:'frig';background-color:#e28a0d;color:#1d1d1d;padding:0px 3px;position:absolute;left:25px;top:-6px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.pf-fake-connection.pf-map-connection-preserve-mass:after{content:'save mass';background-color:#a52521;color:#eaeaea;padding:0px 3px;position:absolute;left:9px;top:-6px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.tooltip-inner{color:#5cb85c;background-color:#3c3f41;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;padding:5px 5px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.modal .tooltip{z-index:1060}.modal .tooltip .tooltip-inner{color:#313335;background-color:#adadad}.tooltip.top .tooltip-arrow{border-top-color:#63676a}.tooltip.right .tooltip-arrow{border-right-color:#63676a}.tooltip.bottom .tooltip-arrow{border-bottom-color:#63676a}.tooltip.left .tooltip-arrow{border-left-color:#63676a}.popover{z-index:1060;max-width:600px}.popover img{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.popover h4{color:#adadad}.popover table{color:#adadad;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;line-height:16px;font-size:11px}.popover table td{padding:0 5px;vertical-align:middle !important}.pf-popover{display:initial}.pf-popover .popover-content{padding:0}.pf-popover h6{white-space:nowrap;margin-right:50px}.pf-popover h6:before,.pf-popover h6:after{content:" ";display:table}.pf-popover h6:after{clear:both}.pf-popover .well{margin-top:7px;margin-bottom:10px}.pf-popover .list-group{margin:0}.pf-popover .list-group .list-group-item{color:#313335}.pf-popover .list-group .list-group-item:hover{color:#1d1d1d}.pf-popover .list-group .list-group-item.disabled{background-color:#3c3f41;color:#63676a;cursor:not-allowed}.pf-popover .list-group .list-group-item img{width:30px;margin:-8px 10px -6px -8px;border-radius:0}.pf-popover .list-group .list-group-item i{margin-right:20px}td.pf-popover-trigger:hover{color:#477372}.pf-notransition{-webkit-transition:none !important;-moz-transition:none !important;-o-transition:none !important;transition:none !important}.pf-dynamic-area{padding:10px;min-height:100px;position:relative;background-color:#313335;overflow:hidden;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.pf-dynamic-area .dl-horizontal{margin-bottom:0}.pf-dynamic-area .dl-horizontal dd{min-width:100px}.pf-dynamic-area .dl-horizontal dd.txt-color,.pf-dynamic-area .dl-horizontal dd.pf-help-light,.pf-dynamic-area .dl-horizontal dd.pf-help,.pf-dynamic-area .dl-horizontal .dataTable td.pf-table-action-cell>dd.pf-table-action-icon-cell,.dataTable .pf-dynamic-area .dl-horizontal td.pf-table-action-cell>dd.pf-table-action-icon-cell{font-weight:bold}.pf-dynamic-area>[class~='alert']:last-of-type{margin-bottom:0}.pf-code-ObjectBrace{color:#782d77;font-weight:bold}.pf-code-ArrayBrace{color:#3e264e;font-weight:bold}.pf-code-PropertyName{color:#1d1d1d;font-weight:bold}.pf-code-String{color:#e28a0d}.pf-code-Number{color:#4f9e4f}.pf-code-Boolean{color:#313966;font-weight:bold}.pf-code-Function{color:#782d77}.pf-code-Null{color:#2b2b2b;font-weight:bold}.pf-code-Comma{color:#1d1d1d;font-weight:bold}code .fa,code .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list code li>i{color:#3c3f41;cursor:pointer}#pf-logo-wrapper{display:block}#pf-head{margin-bottom:0px}#pf-head a{-webkit-transition:color 0.15s ease-out;transition:color 0.15s ease-out;will-change:color}#pf-head a:focus{color:#477372}#pf-head a:focus img{border-color:#3c3f41}#pf-head a:hover{text-decoration:none}#pf-head a:hover .badge{color:#6caead}#pf-head a:hover img{border-color:#568a89}#pf-head i{margin-right:2px}#pf-head .pf-brand-desc{margin:6px 10px 0 90px;width:180px}#pf-head .pf-head-menu{padding:3px 10px;line-height:24px}#pf-head .pf-head-menu .pf-head-menu-logo{width:24px;height:24px;display:inline-block;float:left}#pf-head .pf-head-user-character,#pf-head .pf-head-user-ship{opacity:0;visibility:hidden}#pf-head .pf-head-active-user,#pf-head #pf-head-current-location{display:none}#pf-head .pf-head-active-user .badge,#pf-head #pf-head-current-location .badge{-webkit-transition:color 0.3s ease-out;transition:color 0.3s ease-out}#pf-head .pf-head-user-character-image,#pf-head .pf-head-user-ship-image{display:inline-block;margin-top:-6px;margin-bottom:-6px;width:27px;border:1px solid #3c3f41;margin-right:3px;-webkit-transition:border-color 0.15s ease-out;transition:border-color 0.15s ease-out;will-change:border-color}#pf-head .pf-head-program-status{cursor:pointer}#pf-head .navbar-text{min-width:60px}#pf-head .tooltip .tooltip-inner{color:#adadad}.pf-head{-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.pf-head .badge{background-color:#3c3f41;color:#adadad}.pf-head small{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}#pf-head-character-switch td{border:none}#pf-head-character-switch td:first-child+td{padding:0 5px}#pf-footer{position:absolute;bottom:0;left:0;width:100%;margin:0;background:rgba(60,63,65,0.3)}#pf-footer a{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;color:#375959}#pf-footer a:hover{color:#477372;text-decoration:none}.navbar-fixed-bottom{padding:2px 0}.navbar-fixed-bottom .container-fluid{padding-left:0;padding-right:0}#pf-global-info{position:absolute;left:0;bottom:32px;width:100%;height:32px;margin-bottom:0}@-webkit-keyframes move{0%{background-position:0 0}100%{background-position:50px 50px}}@-moz-keyframes move{0%{background-position:0 0}100%{background-position:50px 50px}}@-ms-keyframes move{0%{background-position:0 0}100%{background-position:50px 50px}}@keyframes move{0%{background-position:0 0}100%{background-position:50px 50px}}.pf-animate{visibility:hidden;opacity:0}.pf-color-line{position:fixed;top:0;left:0;width:100%;height:3px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzY2Yzg0ZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzY2Yzg0ZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #66c84f),color-stop(100%, #66c84f));background-image:-moz-linear-gradient(left, #66c84f,#66c84f 100%);background-image:-webkit-linear-gradient(left, #66c84f,#66c84f 100%);background-image:linear-gradient(to right, #66c84f,#66c84f 100%)}.pf-color-line.warning{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UyOGEwZCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UyOGEwZCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #e28a0d),color-stop(100%, #e28a0d));background-image:-moz-linear-gradient(left, #e28a0d,#e28a0d 100%);background-image:-webkit-linear-gradient(left, #e28a0d,#e28a0d 100%);background-image:linear-gradient(to right, #e28a0d,#e28a0d 100%)}.pf-color-line.danger{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2E1MjUyMSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2E1MjUyMSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #a52521),color-stop(100%, #a52521));background-image:-moz-linear-gradient(left, #a52521,#a52521 100%);background-image:-webkit-linear-gradient(left, #a52521,#a52521 100%);background-image:linear-gradient(to right, #a52521,#a52521 100%)}.pf-splash,.pf-splash-warning,.pf-splash-error{position:absolute;z-index:2000;background-color:#1d1d1d;color:#63676a;top:0;bottom:0;left:0;right:0;will-change:opacity}.pf-splash .pf-splash-title,.pf-splash-warning .pf-splash-title,.pf-splash-error .pf-splash-title{position:fixed;left:50%;top:30%;text-align:center;max-width:500px;padding:20px;-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}.pf-splash .pf-splash-debug,.pf-splash-warning .pf-splash-debug,.pf-splash-error .pf-splash-debug{position:absolute;bottom:0;width:100%}.pf-splash .pf-splash-debug .pf-splash-debug-headline,.pf-splash-warning .pf-splash-debug .pf-splash-debug-headline,.pf-splash-error .pf-splash-debug .pf-splash-debug-headline{padding:0 10px}.pf-splash .pf-splash-debug .pf-splash-pre,.pf-splash-warning .pf-splash-debug .pf-splash-pre,.pf-splash-error .pf-splash-debug .pf-splash-pre{margin-bottom:0}@media (max-width: 1200px){.pf-landing #pf-logo-container{margin:5px auto}.pf-landing .pf-brand-desc{display:none}.pf-landing .navbar .navbar-brand{margin-left:10px}}.pf-landing section{min-height:200px;padding:20px 0 40px 0;border-bottom:1px solid #2b2b2b}.pf-landing section h4{font-size:18px;font-family:"Oxygen","Helvetica Neue",Helvetica,Arial,sans-serif;margin:5px 0 10px 0;border-bottom:1px solid #2b2b2b;line-height:34px}.pf-landing .container>.row{margin-bottom:30px}.pf-landing .alert{box-shadow:0 4px 10px rgba(0,0,0,0.4)}.pf-landing a[data-gallery]{position:relative}.pf-landing a[data-gallery]:before{content:'\f002';font-family:'FontAwesome';font-size:20px;line-height:20px;color:#e28a0d;position:absolute;top:9px;height:100%;width:100%;padding-top:calc(50% - 10px);z-index:10;text-align:center;-webkit-transition:transform 0.1s ease-out,opacity 0.1s ease-out;transition:transform 0.1s ease-out,opacity 0.1s ease-out;will-change:transform, opacity;transform:scale(1.3, 1.3);opacity:0}.pf-landing a[data-gallery]:hover img{border-color:#6caead;-webkit-filter:brightness(50%);filter:brightness(50%)}.pf-landing a[data-gallery]:hover:before{-webkit-transition-delay:.1s;transition-delay:.1s;transform:scale(1, 1);opacity:1}.pf-landing a[data-gallery] .pf-landing-image-preview{border-width:1px;border-style:solid;border-color:#1d1d1d;margin:5px 0 15px 0;display:inline-block;will-change:all;-webkit-filter:brightness(100%);filter:brightness(100%);-webkit-transition:all 0.2s ease-out;transition:all 0.2s ease-out;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4)}.pf-landing a[data-gallery] .pf-landing-image-preview.pf-landing-image-preview-small{height:160px}.pf-landing a[data-gallery] .pf-landing-image-preview.pf-landing-image-preview-medium{height:256px}#pf-landing-top{height:355px;border-bottom:1px solid #313335;position:relative}#pf-landing-top:before{content:'';width:100%;height:100%;position:absolute;background:url("../img/pf-bg.jpg") #05050a;background-repeat:no-repeat;background-position:0 0;-webkit-filter:brightness(.9);filter:brightness(.9)}#pf-landing-top #pf-logo-container{-moz-transform:scale3d(0.8, 0.8, 1);-ms-transform:scale3d(0.8, 0.8, 1);-webkit-transform:scale3d(0.8, 0.8, 1);transform:scale3d(0.8, 0.8, 1)}#pf-landing-top #pf-header-container{position:absolute;width:100%;background-position:center center}#pf-landing-top #pf-header-container #pf-header-canvas{position:absolute;visibility:hidden;top:0;left:0}#pf-landing-top #pf-header-container #pf-logo-container{z-index:110}#pf-landing-top #pf-header-container #pf-header-preview-container{position:absolute;left:400px;width:590px;height:350px;top:37px}#pf-landing-top #pf-header-container #pf-header-preview-container .pf-header-preview-element{position:relative;margin-left:12px;margin-top:12px;height:155px;width:180px;padding:7px;opacity:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;background-color:rgba(43,43,43,0.5)}#pf-landing-top #pf-header-container #pf-header-preview-container .pf-header-preview-element:nth-child(n+4){box-shadow:0 4px 10px rgba(0,0,0,0.4)}#pf-landing-top #pf-header-container #pf-header-preview-container .pf-header-preview-element:after{content:'';position:absolute;width:calc(100% - 14px);height:calc(100% - 14px);-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-repeat:no-repeat;background-position:50% 50%;background-color:rgba(29,29,29,0.75)}#pf-landing-top .container{position:relative;margin-top:10px}#pf-header-preview-intel:after{background-image:url("../img/landing/intel.png")}#pf-header-preview-map:after{background-image:url("../img/landing/map.png")}#pf-header-preview-scope:after{background-image:url("../img/landing/scope.png")}#pf-header-preview-signature:after{background-image:url("../img/landing/signature.png")}#pf-header-preview-data:after{background-image:url("../img/landing/data.png")}#pf-header-preview-gameplay:after{background-image:url("../img/landing/gameplay.png")}#pf-landing-login{padding-top:40px;padding-bottom:30px}#pf-landing-login .row{margin-bottom:0}#pf-landing-login .pf-character-selection>div:not(.pf-character-row-animate){-webkit-transition:width 0.2s ease,margin 0.2s ease;transition:width 0.2s ease,margin 0.2s ease}#pf-landing-login .pf-dynamic-area{display:inline-block;margin:10px 5px 20px 5px;padding:10px 10px 5px 10px;min-width:155px;min-height:184px;overflow:visible;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4)}#pf-landing-login .pf-dynamic-area .ribbon-wrapper{z-index:5}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper{opacity:0;width:128px;border:2px solid #63676a;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px;-webkit-transition:border-color 0.2s ease-out,box-shadow 0.2s ease-out;transition:border-color 0.2s ease-out,box-shadow 0.2s ease-out;-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);will-change:border-color, transition;overflow:hidden;cursor:pointer;display:inline-block;background-color:#2b2b2b;box-sizing:content-box}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper:hover{border-color:#4f9e4f}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper:hover .pf-character-name{color:#4f9e4f}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper:hover .pf-character-image{-webkit-filter:grayscale(50%);filter:grayscale(50%)}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper.pf-character-active:after{font-family:FontAwesome;content:"\f111";position:absolute;top:5px;left:5px;height:14px;width:14px;color:#5cb85c;font-size:10px}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-select-image{overflow:hidden;width:128px;height:128px;position:relative}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-select-image .pf-character-info{position:absolute;top:0;left:0;width:0;height:100%;color:#adadad;background:rgba(60,63,65,0.8);overflow:hidden;will-change:width, transition;padding:10px 0}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-select-image .pf-character-info .pf-character-info-text{line-height:25px}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-name{font-size:13px;line-height:30px;border-top:1px solid #313335;color:#adadad;-webkit-transition:color 0.2s ease-out;transition:color 0.2s ease-out}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-image{-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out;-webkit-filter:grayscale(0%);filter:grayscale(0%)}#pf-landing-login .pf-sso-login-button{position:relative;display:inline-block;width:270px;height:45px;border:none;margin-bottom:10px;background-color:transparent;background-image:url("../img/landing/eve_sso_login_buttons_large_black_hover.png");cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,0.2);-webkit-transition:box-shadow 0.12s ease-out;transition:box-shadow 0.12s ease-out;will-change:box-shadow}#pf-landing-login .pf-sso-login-button:after{content:' ';position:absolute;width:270px;height:45px;left:0;top:0;background-image:url("../img/landing/eve_sso_login_buttons_large_black.png");-webkit-transition:opacity 0.12s ease-in-out;transition:opacity 0.12s ease-in-out;will-change:opacity}#pf-landing-login .pf-sso-login-button:hover{box-shadow:0 4px 5px rgba(0,0,0,0.2)}#pf-landing-login .pf-sso-login-button:hover:after{opacity:0}#pf-landing-login .pf-sso-login-button.disabled{pointer-events:auto}#pf-landing-login #pf-notification-panel{display:none}#pf-header-map{position:relative;margin:0 auto;height:380px;width:600px;pointer-events:none}#pf-header-map .pf-header-svg-layer{position:absolute;top:0;left:0;right:0;bottom:0}#pf-header-map #pf-header-systems{z-index:100}#pf-header-map #pf-header-connectors{z-index:90}#pf-header-map #pf-header-connections{z-index:80}#pf-header-map #pf-header-background{z-index:70}#pf-header-map #pf-header-background .pf-header-system{display:none}#pf-header-map-bg{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none}#pf-header-map-bg img{pointer-events:none}#pf-header-map-bg #pf-map-bg-image{opacity:0;position:absolute;bottom:0;right:0;width:100%;height:100%}#pf-header-map-bg #pf-map-neocom{opacity:0;height:665px;width:21px}#pf-header-map-bg #pf-map-browser{opacity:0;position:absolute;top:110px;left:21px;height:560px;width:515px}#pf-landing-gallery-carousel{background-image:url("../img/pf-header-bg.jpg")}#pf-landing-gallery-carousel .slide-content{border-radius:5px;pointer-events:none}#pf-landing-gallery-carousel h3{width:100%;text-align:left}.pf-landing-pricing-panel{margin-top:20px}.pricing-big{-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4)}.pricing-big .panel-heading{border-color:#3c3f41}.pricing-big .the-price{padding:1px 0;background:#2d3031;text-align:center}.pricing-big .the-price .subscript{font-size:12px;color:#63676a}.pricing-big .price-features{background:#3c3f41;color:#adadad;padding:20px 15px;line-height:22px}.pricing-big .price-features:not(.price-features-fluid){min-height:205px}.pricing-big .price-features .list-unstyled.text-left li,.pricing-big .price-features .text-left.list-inline li{text-indent:-1em;padding-left:1.5em}.pricing-big .price-features .list-unstyled.text-left li .fa,.pricing-big .price-features .text-left.list-inline li .fa,.pricing-big .price-features .list-unstyled.text-left .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list .pricing-big .price-features .list-unstyled.text-left li>i,.pricing-big .price-features .text-left.list-inline .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list .pricing-big .price-features .text-left.list-inline li>i{text-indent:0}.pricing-big table tr td{line-height:1}#pf-landing-admin .pf-landing-admin-login{margin-bottom:0}#pf-landing-about .pf-landing-about-me{width:256px;height:256px;border:none;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4)}.pf-landing-footer{padding:30px 0;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;background-color:#171717}.pf-landing-footer .row{margin-bottom:0 !important}.pf-landing-footer .pf-social-networks>li{display:inline-block;line-height:1}.pf-landing-footer .pf-social-networks>li a{display:inline-block;background:rgba(99,103,106,0.5);line-height:24px;text-align:center;font-size:12px;margin-right:5px;width:28px;height:24px}#pf-static-logo-svg{opacity:0;position:absolute;z-index:105;overflow:visible}#pf-static-logo-svg path{will-change:fill, opacity, transform, translateZ, translateX, translateY;pointer-events:all;-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.logo-ploygon-top-right{fill:#477372;fill-rule:evenodd;stroke:#477372;stroke-width:0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1}.logo-ploygon-bottom-left{fill:#5cb85c;fill-rule:evenodd;stroke:#5cb85c;stroke-width:0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1}.logo-ploygon-bottom-right{fill:#375959;fill-rule:evenodd;stroke:#375959;stroke-width:0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1}.logo-ploygon-top-left{fill:#63676a;fill-opacity:1;fill-rule:evenodd;stroke:#63676a;stroke-width:0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1}@-webkit-keyframes bounce{0%, 20%, 50%, 80%, 100%{-webkit-transform:translateY(0)}40%{-webkit-transform:translateY(-8px)}60%{-webkit-transform:translateY(-4px)}}@keyframes bounce{0%, 20%, 50%, 80%, 100%{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}#pf-map-tab-element{max-width:2515px;margin:0 auto}.pf-map-tab-content .pf-map-wrapper{position:relative;width:100%;max-width:2515px;height:550px;overflow:auto;padding:5px;background:rgba(43,43,43,0.93);box-shadow:inset -3px 3px 10px 0 rgba(0,0,0,0.3);border-bottom-right-radius:5px;border-bottom-left-radius:5px;border-width:1px;border-style:solid;border-color:#313335}.pf-map-tab-content .pf-map-wrapper:focus{border:1px solid #3c3f41}.pf-map-overlay{position:absolute;display:none;z-index:10000;right:10px;background:rgba(0,0,0,0.25);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.pf-map-overlay.pf-map-overlay-timer{bottom:23px;width:36px;height:36px}.pf-map-overlay.pf-map-overlay-info{top:8px;height:36px;min-height:36px;min-width:36px;color:#2b2b2b;padding:3px;line-height:26px}.pf-map-overlay.pf-map-overlay-info i{margin:0;margin-top:3px;width:0;height:26px;opacity:0;color:#63676a;transform:scale(0);transform-origin:50% 50% 0px;-webkit-transition:color 0.18s ease-in-out;transition:color 0.18s ease-in-out;cursor:help;will-change:all}.pf-map-overlay.pf-map-overlay-info i.fa,.pf-map-overlay.pf-map-overlay-info .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list .pf-map-overlay.pf-map-overlay-info li>i{font-size:26px}.pf-map-overlay.pf-map-overlay-info i.glyphicon{margin-top:1px;font-size:24px;padding-left:3px}.pf-map-overlay.pf-map-overlay-info i.active,.pf-map-overlay.pf-map-overlay-info i:hover{color:#c2760c}.pf-map-overlay.pf-map-overlay-local{top:54px;min-height:80px;width:32px;display:block;will-change:width}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content{margin-right:36px;padding:5px 0 5px 5px;overflow:hidden}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-headline{font-size:12px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;white-space:nowrap}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-headline .badge{margin-left:5px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-headline .pf-system-sec{cursor:default}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-local-table{font-size:10px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-local-table td{white-space:nowrap}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .dataTables_paginate,.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .dataTables_empty{white-space:nowrap}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-toolbar .pf-map-overlay-toolbar-icon{vertical-align:0;margin-top:14px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-toolbar .pf-map-overlay-toolbar-checkbox{display:inline-block;margin-bottom:0}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-main{position:absolute;top:0;right:0;height:100%;padding:3px;width:32px;cursor:pointer;text-align:center;border-left:1px solid #2b2b2b}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-main .pf-map-overlay-local-trigger{margin-bottom:10px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-main i{font-size:12px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-jumps{position:absolute;bottom:5px;width:calc(100% - 6px)}.pf-map-overlay.pf-map-overlay-local .badge{font-family:Arial, sans-serif;background-color:#2b2b2b}.pf-grid-small{background:url('data:image/png;base64,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') !important}.pf-map{width:2500px;height:520px;position:relative;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.pf-map .jsplumb-overlay{opacity:1;pointer-events:none;will-change:opacity;-webkit-transition:opacity 0.18s ease-out;transition:opacity 0.18s ease-out}.pf-map .jsplumb-hover.jsplumb-overlay{opacity:0 !important}.pf-map .jsplumb-hover:not(.jsplumb-overlay){-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-delay:.5s;animation-delay:.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-timing-function:linear;animation-timing-function:linear;animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite;-webkit-animation-name:bounce;animation-name:bounce}.pf-map .jsplumb-target-hover,.pf-map .jsplumb-source-hover{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-delay:.5s;animation-delay:.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-timing-function:linear;animation-timing-function:linear;animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite;-webkit-animation-name:bounce;animation-name:bounce;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.3);box-shadow:0 6px 12px rgba(0,0,0,0.3)}.pf-map .pf-system{position:absolute;min-width:60px;height:auto;overflow:hidden;background-color:#313335;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;z-index:100;will-change:top, left, opacity;border-width:2px;border-style:solid;border-color:#63676a;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-transition:border-color 0.5s ease-out,box-shadow 0.2s ease-out;transition:border-color 0.5s ease-out,box-shadow 0.2s ease-out;-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.pf-map .pf-system:hover{-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.3);box-shadow:0 6px 12px rgba(0,0,0,0.3);-moz-transform:translate3d(0, -2px, 0);-ms-transform:translate3d(0, -2px, 0);-webkit-transform:translate3d(0, -2px, 0);transform:translate3d(0, -2px, 0)}.pf-map .pf-system .pf-system-head{padding:0px 3px 0px 3px;cursor:pointer;font-family:Arial, sans-serif;font-weight:bold}.pf-map .pf-system .pf-system-head .pf-system-head-name{border:none;display:inline-block;min-width:41px;color:#adadad;margin-right:2px}.pf-map .pf-system .pf-system-head .fa-lock{display:none}.pf-map .pf-system .pf-system-head .pf-system-head-expand{margin-left:2px;color:#63676a;display:none}.pf-map .pf-system .pf-system-head .editable-empty{font-style:normal}.pf-map .pf-system .pf-system-body{height:0px;width:100%;overflow:hidden;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab;padding:0 4px;white-space:nowrap;display:none;will-change:width;border-top-width:1px;border-top-style:dashed;border-top-color:#63676a}.pf-map .pf-system .pf-system-body .pf-system-body-item{color:#7c8184;font-size:10px;line-height:16px;height:16px}.pf-map .pf-system .pf-system-body .pf-system-body-item .pf-system-body-right{text-overflow:ellipsis;float:right;color:#f0ad4e;display:none}.pf-map .pf-system .pf-system-body .pf-system-body-item .pf-user-status{font-size:7px;width:10px;vertical-align:middle;height:14px}.pf-map .pf-system .pf-system-body .pf-system-body-item .pf-system-body-item-name{display:inline-block;width:65px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.pf-map .pf-system .tooltip.in{opacity:1}.pf-map .pf-system .tooltip .tooltip-inner{color:#313335;background-color:#adadad;padding:3px 3px}.pf-map .pf-system-active:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target){-webkit-box-shadow:#ffb 0px 0px 8px 0px;box-shadow:#ffb 0px 0px 8px 0px}.pf-map .pf-system-selected:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target),.pf-map .jsPlumb_dragged:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target){-webkit-box-shadow:#58100d 0px 0px 8px 0px;box-shadow:#58100d 0px 0px 8px 0px}.pf-map .pf-system-selected:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target) .pf-system-head,.pf-map .jsPlumb_dragged:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target) .pf-system-head,.pf-map .pf-system-selected:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target) .pf-system-body,.pf-map .jsPlumb_dragged:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target) .pf-system-body{background-color:#58100d}.pf-map .pf-system-locked .pf-system-sec{cursor:default !important}.pf-map .pf-system-locked .pf-system-body{cursor:default !important}.pf-map .pf-system-locked .fa-lock{color:#63676a !important;display:inline-block !important}.pf-map .pf-map-endpoint-source,.pf-map .pf-map-endpoint-target{z-index:90}.pf-map .pf-map-endpoint-source svg,.pf-map .pf-map-endpoint-target svg{overflow:visible}.pf-map .pf-map-endpoint-source svg circle,.pf-map .pf-map-endpoint-target svg circle{-webkit-transition:stroke 0.18s ease-out,fill 0.18s ease-out;transition:stroke 0.18s ease-out,fill 0.18s ease-out}.pf-map .pf-map-endpoint-source svg *,.pf-map .pf-map-endpoint-target svg *{stroke:#63676a;stroke-width:2;fill:#3c3f41;cursor:pointer}.pf-map .pf-map-endpoint-source:hover circle,.pf-map .pf-map-endpoint-target:hover circle{stroke:#e28a0d !important}.pf-map .pf-map-endpoint-source.jsplumb-hover,.pf-map .pf-map-endpoint-target.jsplumb-hover{z-index:95}.pf-map .pf-map-endpoint-source.jsplumb-dragging circle,.pf-map .pf-map-endpoint-target.jsplumb-dragging circle{stroke:#e28a0d}.pf-map .jsplumb-endpoint-drop-allowed circle{stroke:#5cb85c !important;fill:#5cb85c !important}.pf-map .jsplumb-endpoint-drop-forbidden circle{stroke:#a52521 !important;fill:#a52521 !important}.pf-map svg.jsplumb-connector{cursor:pointer;stroke-linecap:round;-webkit-transition:stroke 0.18s ease-out;transition:stroke 0.18s ease-out;will-change:all}.pf-map svg.jsplumb-connector path{-webkit-transition:stroke 0.18s ease-out;transition:stroke 0.18s ease-out}.pf-map svg.jsplumb-connector path:nth-child(2){stroke:#3c3f41}.pf-map svg.jsplumb-connector path:first-child{stroke:#63676a}.pf-map svg.jsplumb-connector.jsplumb-hover{z-index:80}.pf-map svg.jsplumb-connector.jsplumb-hover path:first-child{stroke:#eaeaea}.pf-map svg.jsplumb-connector.jsplumb-dragging{-webkit-transition:opacity 0.18s ease-out;transition:opacity 0.18s ease-out;opacity:0.4;z-index:80}.pf-map svg.pf-map-connection-jumpbridge{z-index:50}.pf-map svg.pf-map-connection-jumpbridge path:first-child{stroke:rgba(255,255,255,0)}.pf-map svg.pf-map-connection-jumpbridge path:nth-child(2){stroke:#568a89}.pf-map svg.pf-map-connection-jumpbridge:hover path:first-child{stroke:rgba(255,255,255,0)}.pf-map svg.pf-map-connection-jumpbridge:hover path:nth-child(2){stroke:#eaeaea}.pf-map svg.pf-map-connection-stargate{z-index:60}.pf-map svg.pf-map-connection-stargate path:first-child{stroke:#63676a}.pf-map svg.pf-map-connection-stargate path:nth-child(2){stroke:#313966}.pf-map svg.pf-map-connection-stargate:hover path:first-child{stroke:#eaeaea}.pf-map svg.pf-map-connection-wh-fresh,.pf-map svg.pf-map-connection-wh-reduced,.pf-map svg.pf-map-connection-wh-critical,.pf-map svg.pf-map-connection-wh-eol{z-index:70}.pf-map svg.pf-map-connection-wh-eol path:first-child{stroke:#d747d6}.pf-map svg.pf-map-connection-wh-eol:hover path:first-child{stroke:#eaeaea}.pf-map svg.pf-map-connection-wh-reduced path:nth-child(2){stroke:#e28a0d}.pf-map svg.pf-map-connection-wh-critical path:nth-child(2){stroke:#a52521}.pf-map .pf-map-connection-overlay{padding:1px 4px;font-size:11px;z-index:1020;background-color:#3c3f41;color:#adadad;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.pf-map .frig{background-color:#f0ad4e;color:#1d1d1d}.pf-map .mass{background-color:#a52521;color:#eaeaea}.pf-map .eol{background-color:#3c3f41;color:#d747d6}.pf-map .pf-map-connection-arrow-overlay{stroke:#313335;fill:#5cb85c}.pf-map .pf-map-connection-diamond-overlay{stroke:#313335;fill:#d9534f;animation-name:pfPulseDanger;animation-duration:4s;animation-iteration-count:infinite}.pf-map .pf-map-connection-small-overlay{font-family:Arial, sans-serif;padding:0 2px;font-size:10px;z-index:1020;background-color:#3c3f41;color:#adadad;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.ui-dialog-content label{min-width:60px}.dropdown-menu{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;z-index:1020;will-change:opacity, top, left, transform}.dropdown-menu a{cursor:pointer}.dropdown-menu i{width:20px;pointer-events:none}.dropdown-menu .dropdown-menu{border-top-left-radius:0;border-bottom-left-radius:0;clip-path:inset(-12px -12px -12px 0px)}.dropdown-menu[role]>li{position:relative}.dropdown-menu[role]>li:before{content:'';position:absolute;background-color:#5cb85c;opacity:0;will-change:opacity,left;-webkit-transition:left 0.15s ease-out,opacity 0.15s ease-out;transition:left 0.15s ease-out,opacity 0.15s ease-out;width:2px;height:100%;left:0}.dropdown-menu[role]>li:hover:before{left:-4px;opacity:1}.pf-system-tooltip-inner{color:#adadad;padding:2px 4px;min-width:25px;-webkit-transition:color 0.2s ease-out;transition:color 0.2s ease-out}.pf-system-info-module h5{text-transform:capitalize;line-height:16px}.pf-system-info-module .pf-system-info-description-area{min-height:123px}.pf-system-info-module .pf-system-info-description-area .editable-container{width:100%}.pf-system-info-module .pf-system-info-description-area .editable-container .editableform{width:100%}.pf-system-info-module .pf-system-info-description-area .editable-container .editableform .form-group{width:100%}.pf-system-info-module .pf-system-info-description-area .editable-container .editableform .form-group .editable-input{width:calc(100% - 75px)}.pf-system-info-module .pf-system-info-description-area .editable-container .editableform .form-group .editable-input textarea{width:100%;max-height:200px;resize:vertical}.pf-system-info-module .pf-system-info-description-area .pf-form-field-char-count{display:block;margin-top:10px}.pf-system-info-module .pf-system-info-table{font-size:11px;white-space:nowrap}.pf-sig-table-module .pf-sig-table-clear-button{will-change:opacity, transform;display:none}.pf-sig-table-module .pf-sig-table{font-size:10px}.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text{white-space:normal}.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text.editable-empty{border-bottom:none}.pf-sig-table-module .pf-sig-table .pf-editable-description{background-color:#2b2b2b;max-height:50px}.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-name-input{text-transform:uppercase}.pf-sig-table-module .pf-sig-table .pf-editable-filter{color:#63676a;border:none;font-style:normal}.pf-editable-filter-active{min-width:100px}.pf-system-graph-module .pf-system-graph{width:100%;height:100px}.pf-system-route-module .pf-system-route-table{width:100%;font-size:10px}.pf-system-route-module .pf-system-route-table td{text-transform:capitalize}.pf-system-route-module .pf-system-route-table td>.fa{font-size:10px}.pf-system-killboard-module .pf-system-killboard-graph-kills{width:100%;height:100px;position:relative;margin-bottom:30px}.pf-system-killboard-module .pf-system-killboard-list{padding-bottom:10px;border-bottom:1px solid #2b2b2b}.pf-system-killboard-module .pf-system-killboard-list li{margin-left:0;overflow:visible;min-height:50px;will-change:margin-left;-webkit-transition:margin-left 0.12s cubic-bezier(0.3, 0.8, 0.8, 1.7);transition:margin-left 0.12s cubic-bezier(0.3, 0.8, 0.8, 1.7)}.pf-system-killboard-module .pf-system-killboard-list li h5{white-space:nowrap}.pf-system-killboard-module .pf-system-killboard-list li h3{width:120px;display:inline-block}.pf-system-killboard-module .pf-system-killboard-list li .pf-system-killboard-img-corp{margin-right:10px;width:16px}.pf-system-killboard-module .pf-system-killboard-list li .pf-system-killboard-img-ship{width:50px;margin-right:10px;border:1px solid #2b2b2b;transform:translateZ(1px);will-change:border-color;-moz-border-radius:25px;-webkit-border-radius:25px;border-radius:25px;-webkit-transition:border-color 0.12s ease-out;transition:border-color 0.12s ease-out}.pf-system-killboard-module .pf-system-killboard-list li:before{content:"\f054";font-family:FontAwesome;position:absolute;z-index:10;left:-25px;top:15px;color:#477372;opacity:0;will-change:opacity, left;-webkit-transition:all 0.12s ease-out;transition:all 0.12s ease-out}.pf-system-killboard-module .pf-system-killboard-list li:hover{margin-left:20px}.pf-system-killboard-module .pf-system-killboard-list li:hover .pf-system-killboard-img-ship{border-color:#568a89}.pf-system-killboard-module .pf-system-killboard-list li:hover:before{opacity:1;left:-20px}input,select{background-color:#313335;color:#adadad;border:1px solid #63676a;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}input:focus,select:focus{border-color:#568a89}input:-webkit-autofill,select:-webkit-autofill{background-color:#313335 !important;-webkit-box-shadow:0 0 0 50px #313335 inset !important;box-shadow:0 0 0 50px #313335 inset !important;-webkit-text-fill-color:#adadad}input:-webkit-autofill:focus,select:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 50px #313335 inset !important;box-shadow:0 0 0 50px #313335 inset !important;-webkit-text-fill-color:#adadad}input::-webkit-file-upload-button,select::-webkit-file-upload-button{background-color:transparent;border:none;color:#63676a;outline:none}input[disabled]::-moz-placeholder,select[disabled]::-moz-placeholder{color:transparent;opacity:1}input[disabled]:-ms-input-placeholder,select[disabled]:-ms-input-placeholder{color:transparent}input[disabled]::-webkit-input-placeholder,select[disabled]::-webkit-input-placeholder{color:transparent}textarea{min-height:32px;max-height:400px;resize:vertical}fieldset[disabled] .form-control{color:#63676a}fieldset[disabled] .form-control::-moz-placeholder{color:transparent;opacity:1}fieldset[disabled] .form-control:-ms-input-placeholder{color:transparent}fieldset[disabled] .form-control::-webkit-input-placeholder{color:transparent}fieldset[disabled] .input-icon-left .fa-stack i:last-child,fieldset[disabled] .input-icon-right .fa-stack i:last-child{color:#3c3f41}.input-icon-left:not(.input-icon-right) .fa-stack:first-child{left:14px}.input-icon-right:not(.input-icon-left) .fa-stack:first-child{right:14px}.input-icon-left.input-icon-right .fa-stack:first-child{left:14px}.input-icon-left.input-icon-right .fa-stack:nth-child(2){right:14px}.input-icon-left .fa-stack,.input-icon-right .fa-stack{position:absolute;top:4px}.input-icon-left .fa-stack i:first-child,.input-icon-right .fa-stack i:first-child{color:#63676a}.input-icon-left .fa-stack i:last-child,.input-icon-right .fa-stack i:last-child{color:#313335}.btn-fake{border:none;text-align:left;cursor:default;opacity:1 !important;color:#63676a !important;background-color:#3c3f41 !important}.pf-form-dropzone{border:2px dashed #2b2b2b;height:100px;background-color:#353739;text-align:center;font-size:20px;line-height:100px;margin:15px 0;color:#2b2b2b;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:color 0.18s ease-out,border-color 0.18s ease-out;transition:color 0.18s ease-out,border-color 0.18s ease-out}.pf-form-dropzone:hover{color:#568a89;border-color:#568a89;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.toggle.btn:active{box-shadow:none}.toggle .toggle-group .btn{padding:0px 5px}.pf-icon{display:inline-block}.pf-icon.disabled{opacity:0.5;color:#63676a}.pf-icon-dotlan{background:url('data:image/png;base64,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');width:17px;height:17px;opacity:0.8;margin:-5px 0px 0 10px}.pf-icon-wormhol-es{background:url('data:image/png;base64,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');width:17px;height:17px;opacity:0.8;margin:-5px 0px 0 10px}.modal-content h2{font-family:"Oxygen","Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:0px;font-size:14px;margin:20px 0;line-height:normal}.modal-content h2.pf-dynamic-area,.modal-content h4.pf-dynamic-area{min-height:0;margin:0 0 10px 0}.modal-content h2.pf-dynamic-area>img,.modal-content h4.pf-dynamic-area>img{margin:-10px 5px -10px -10px;width:35px}.modal-content h2[data-toggle="collapse"],.modal-content h4[data-toggle="collapse"]{cursor:pointer}.modal-content h2[data-toggle="collapse"]:hover:after,.modal-content h4[data-toggle="collapse"]:hover:after{color:#e28a0d !important}.modal-content h2[data-toggle="collapse"]:after,.modal-content h4[data-toggle="collapse"]:after{content:"\f078";font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:13px;padding-right:10px;position:absolute;color:#e28a0d;top:10px;right:6px}.modal-content h2[data-toggle="collapse"].collapsed:after,.modal-content h4[data-toggle="collapse"].collapsed:after{top:13px;right:5px;color:#63676a;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.modal-content .dataTables_wrapper+.alert{margin-top:10px}.modal-content .dataTable,.modal-content .table{font-size:10px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.modal-content hr{margin:5px 0 15px 0;border-color:#63676a}.modal-content .well{margin-bottom:0}.modal-content .well .list-inline{margin-bottom:0}.modal-content .pf-wizard-navigation{margin:0}.modal-content .pf-wizard-navigation li:not(:last-child):before{border-top:1px solid #63676a;content:"";display:block;font-size:0;overflow:hidden;position:relative;top:12px;left:71px;right:1px;width:100%}.modal-content .pf-wizard-navigation li.finished:before{-moz-border-image:-moz-linear-gradient(left, #375959,#375959) 1 1%;-moz-border-image:linear-gradient(to right, #375959,#375959) 1 1%;-o-border-image:linear-gradient(to right, #375959,#375959) 1 1%;-webkit-border-image:-webkit-linear-gradient(left, #375959,#375959) 1 1%;-webkit-border-image:linear-gradient(to right, #375959,#375959) 1 1%;border-image:-moz-linear-gradient(left, #375959,#375959) 1 1%;border-image:-webkit-linear-gradient(left, #375959,#375959) 1 1%;border-image:linear-gradient(to right, #375959,#375959) 1 1%;border-bottom:0}.modal-content .pf-wizard-navigation li.active:before{-moz-border-image:-moz-linear-gradient(left, #4f9e4f,#63676a) 1 1%;-moz-border-image:linear-gradient(to right, #4f9e4f,#63676a) 1 1%;-o-border-image:linear-gradient(to right, #4f9e4f,#63676a) 1 1%;-webkit-border-image:-webkit-linear-gradient(left, #4f9e4f,#63676a) 1 1%;-webkit-border-image:linear-gradient(to right, #4f9e4f,#63676a) 1 1%;border-image:-moz-linear-gradient(left, #4f9e4f,#63676a) 1 1%;border-image:-webkit-linear-gradient(left, #4f9e4f,#63676a) 1 1%;border-image:linear-gradient(to right, #4f9e4f,#63676a) 1 1%;border-bottom:0}.modal-content .pf-wizard-navigation li>h6{color:#63676a;font-size:11px;margin:5px}.modal-content .pf-wizard-navigation li a:hover+h6{color:#adadad}.modal-content .pf-wizard-navigation li.active a:not(.btn-danger)+h6{color:#adadad}#pf-settings-dialog .form-group .btn-sm,#pf-settings-dialog .form-group .btn-group-sm>.btn{padding:4px 7px 3px}#pf-settings-dialog #pf-dialog-captcha-wrapper{margin:0;padding:3px 0}#pf-map-dialog #pf-map-dialog-character-select,#pf-map-dialog #pf-map-dialog-corporation-select,#pf-map-dialog #pf-map-dialog-alliance-select{width:535px}#pf-route-dialog #pf-route-dialog-map-select{width:300px !important}#pf-shortcuts-dialog td kbd:last-of-type+i{display:none}#pf-manual-scrollspy{position:relative;height:700px;overflow:auto}.pf-system-dialog-select{width:270px !important}#pf-task-dialog .pf-task-dialog-status{min-height:auto}#pf-map-info-logs{margin-bottom:10px}#pf-stats-dialog .pf-dynamic-area{margin-bottom:10px}.pf-credits-dialog .pf-credits-logo-background{overflow:visible;background:url("../img/logo_bg.png");background-size:cover;padding:20px;margin-bottom:20px}.pf-credits-dialog #pf-logo-container{width:355px;height:366px;margin:0 auto}.pf-credits-dialog .pf-dynamic-area{min-height:50px}.pf-credits-dialog .dl-horizontal{display:inline-block;width:48%}.pf-credits-dialog .btn{padding:0}.pf-credits-dialog blockquote{font-size:14px}.pf-log-graph{height:100px;width:100%}.timeline{list-style:none;position:relative}.timeline:before{top:0;bottom:0;position:absolute;content:" ";width:1px;left:50%;margin-top:20px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzRmOWU0ZiIvPjxzdG9wIG9mZnNldD0iMjUlIiBzdG9wLWNvbG9yPSIjNjM2NzZhIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4f9e4f),color-stop(25%, #63676a));background-image:-moz-linear-gradient(top, #4f9e4f,#63676a 25%);background-image:-webkit-linear-gradient(top, #4f9e4f,#63676a 25%);background-image:linear-gradient(to bottom, #4f9e4f,#63676a 25%)}.timeline>li{margin-bottom:20px;position:relative}.timeline>li.timeline-first .timeline-title{color:#4f9e4f}.timeline>li.timeline-first .timeline-badge{background-color:#4f9e4f}.timeline>li:before,.timeline>li:after{content:" ";display:table}.timeline>li:after{clear:both}.timeline>li:before,.timeline>li:after{content:" ";display:table}.timeline>li:after{clear:both}.timeline>li>.timeline-panel{width:47%;float:left;border:1px solid #313335;padding:8px;position:relative;background-color:#313335;font-size:11px;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.timeline>li>.timeline-panel:before{content:" ";position:absolute;top:10px;right:-8px;display:inline-block;border-top:7px solid transparent;border-left:7px solid #63676a;border-right:0 solid #63676a;border-bottom:7px solid transparent}.timeline>li>.timeline-panel:after{content:" ";position:absolute;top:10px;right:-8px;display:inline-block;border-top:7px solid transparent;border-left:7px solid #63676a;border-right:0 solid #63676a;border-bottom:7px solid transparent}.timeline>li>.timeline-badge{color:#2b2b2b;width:22px;height:22px;line-height:22px;text-align:center;position:absolute;top:7px;left:50%;margin-left:-11px;background-color:#63676a;z-index:100;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%}.timeline>li.timeline-inverted>.timeline-panel{float:right}.timeline>li.timeline-inverted>.timeline-panel:before{border-left-width:0;border-right-width:7px;left:-8px;right:auto}.timeline>li.timeline-inverted>.timeline-panel:after{border-left-width:0;border-right-width:8px;left:-9px;right:auto}.timeline-title{margin-top:0;color:inherit}.timeline-body>hr{display:none}.timeline-body>hr ~ *{display:none}.timeline-body>p,.timeline-body>ul{margin-bottom:0;list-style-type:disc;margin-left:15px}.timeline-body>p+p{margin-top:5px}@media (max-width: 1200px){ul.timeline:before{left:40px}ul.timeline>li>.timeline-panel{width:calc(100% - 62px)}ul.timeline>li>.timeline-badge{left:29px;margin-left:0;top:6px}ul.timeline>li>.timeline-panel{float:right}ul.timeline>li>.timeline-panel:before{border-left-width:0;border-right-width:7px;left:-8px;right:auto}ul.timeline>li>.timeline-panel:after{border-left-width:0;border-right-width:7px;left:-8px;right:auto}}.ribbon-wrapper{width:72px;height:88px;overflow:hidden;position:absolute;top:-3px;right:-3px;pointer-events:none}.ribbon{font:bold 12px "Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;color:#2b2b2b;text-align:center;text-shadow:rgba(255,255,255,0.2) 0px 1px 0px;position:relative;padding:3px 0;left:-4px;top:16px;width:99px;-webkit-box-shadow:2px 3px 3px rgba(0,0,0,0.2);box-shadow:2px 3px 3px rgba(0,0,0,0.2);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-webkit-transform:rotate(45deg);transform:rotate(45deg)}.ribbon:before,.ribbon:after{content:"";border-left:3px solid transparent;border-right:3px solid transparent;position:absolute;bottom:-3px}.ribbon.ribbon-default{color:#adadad;background-color:#353739;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzJkMzAzMSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzJhMmIyZCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #2d3031),color-stop(100%, #2a2b2d));background-image:-moz-linear-gradient(top, #2d3031,#2a2b2d);background-image:-webkit-linear-gradient(top, #2d3031,#2a2b2d);background-image:linear-gradient(to bottom, #2d3031,#2a2b2d)}.ribbon.ribbon-default:before,.ribbon.ribbon-default:after{border-top:3px solid #000}.ribbon.ribbon-green{background-color:#5cb85c;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzUxYjM1MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzRhOTQ0YSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #51b351),color-stop(100%, #4a944a));background-image:-moz-linear-gradient(top, #51b351,#4a944a);background-image:-webkit-linear-gradient(top, #51b351,#4a944a);background-image:linear-gradient(to bottom, #51b351,#4a944a)}.ribbon.ribbon-green:before,.ribbon.ribbon-green:after{border-top:3px solid #285028}.ribbon.ribbon-orange{background-color:#e28a0d;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Q0ODEwYyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2I0NmQwYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #d4810c),color-stop(100%, #b46d0b));background-image:-moz-linear-gradient(top, #d4810c,#b46d0b);background-image:-webkit-linear-gradient(top, #d4810c,#b46d0b);background-image:linear-gradient(to bottom, #d4810c,#b46d0b)}.ribbon.ribbon-orange:before,.ribbon.ribbon-orange:after{border-top:3px solid #6c4107}.ribbon.ribbon-red{background-color:#d9534f;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2M5MzAyYyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2E4MjgyNCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #c9302c),color-stop(100%, #a82824));background-image:-moz-linear-gradient(top, #c9302c,#a82824);background-image:-webkit-linear-gradient(top, #c9302c,#a82824);background-image:linear-gradient(to bottom, #c9302c,#a82824)}.ribbon.ribbon-red:before,.ribbon.ribbon-red:after{border-top:3px solid #541412}.ribbon.ribbon-blue{background-color:#428bca;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzM3ODRjNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzJkNWM4NSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #3784c5),color-stop(100%, #2d5c85));background-image:-moz-linear-gradient(top, #3784c5,#2d5c85);background-image:-webkit-linear-gradient(top, #3784c5,#2d5c85);background-image:linear-gradient(to bottom, #3784c5,#2d5c85)}.ribbon.ribbon-blue:before,.ribbon.ribbon-blue:after{border-top:3px solid #1a344c}.ribbon:before{left:0}.ribbon:after{right:0}.pf-loading-bars-container{position:relative;z-index:4;margin:0 auto;left:5px;right:19px;width:70px;height:50px;list-style:none}.pf-loading-bars-container .pf-loading-bars-loader{position:absolute;z-index:3;margin:0 auto;left:0;right:0;top:50%;margin-top:-19px;width:56px;height:37px;list-style:none}.pf-loading-bars-container .pf-loading-bars-loader li{background-color:#5cb85c;width:6px;height:6px;float:right;margin-right:3px !important;-webkit-box-shadow:0px 12px 6px rgba(0,0,0,0.2);box-shadow:0px 12px 6px rgba(0,0,0,0.2)}.pf-loading-bars-container .pf-loading-bars-loader li:first-child{-webkit-animation:cssload-loadbars 1.75s cubic-bezier(0.645, 0.045, 0.355, 1) infinite 0s;animation:cssload-loadbars 1.75s cubic-bezier(0.645, 0.045, 0.355, 1) infinite 0s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(2){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -0.35s;animation:cssload-loadbars 1.75s ease-in-out infinite -0.35s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(3){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -0.7s;animation:cssload-loadbars 1.75s ease-in-out infinite -0.7s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(4){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -1.05s;animation:cssload-loadbars 1.75s ease-in-out infinite -1.05s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(5){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -1.4s;animation:cssload-loadbars 1.75s ease-in-out infinite -1.4s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(6){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -1.75s;animation:cssload-loadbars 1.75s ease-in-out infinite -1.75s}@-webkit-keyframes cssload-loadbars{0%{height:6px;margin-top:16px}33%{height:6px;margin-top:16px}66%{height:31px;margin-top:0px}100%{height:6px;margin-top:16px}}@-moz-keyframes cssload-loadbars{0%{height:6px;margin-top:16px}33%{height:6px;margin-top:16px}66%{height:31px;margin-top:0px}100%{height:6px;margin-top:16px}}@-ms-keyframes cssload-loadbars{0%{height:6px;margin-top:16px}33%{height:6px;margin-top:16px}66%{height:31px;margin-top:0px}100%{height:6px;margin-top:16px}}@keyframes cssload-loadbars{0%{height:6px;margin-top:16px}33%{height:6px;margin-top:16px}66%{height:31px;margin-top:0px}100%{height:6px;margin-top:16px}}.pf-landing-sticky-panel{position:fixed;min-width:100px;border-radius:5px;padding:7px;box-shadow:0 4px 10px rgba(0,0,0,0.4);background-color:rgba(43,43,43,0.7)}.pf-landing-sticky-panel h4{margin:5px 0 10px 0}.pf-landing-sticky-panel ul{margin-bottom:0}.pf-landing-sticky-panel ul li{text-transform:lowercase}#pf-landing-server-panel{top:50px;left:10px}#pf-landing-admin-panel{bottom:10px;right:10px}.youtube{background-position:center;background-repeat:no-repeat;position:relative;display:inline-block;overflow:hidden;transition:all 200ms ease-out;cursor:pointer}.youtube .play{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAERklEQVR4nOWbTWhcVRTHb1IJVoxGtNCNdal2JYJReC6GWuO83PM/59yUS3FRFARdFlwYP1CfiojQWt36sRCUurRIdVFXIn41lAoVdRGrG1M01YpKrWjiYmaSl8ybZJL3cd+YA//NLObd3++eO8x79z5jSq5Gw+8kov0AP8vMR5l1BtBZQM4B8ks75wCdZdYZZj5qLZ4hov2Nht9Z9vhKKSIaB/gI4M4w62KeAO6Mte4lYOq20FxrlqqOibhHmeWbvNC9ZfDX1mLae391aN6limO/gwgvAPJbWeAZuSDingdwXTBw7/0IsyaA/Fkh+KqOkD+YNfHej1QKD+y7iVlOhgLvFqFfNJvNGyuBJ+KDAF8MDd0tgS8y64OlgSdJMsysL4cG7SOHkyQZLhTee7+d2R2rAVy/S+Jd7/32ouBHAP4gNNRGQyTHc/84NhqNywZp5rvjjnnvt21aABFeCQ+RLwAf2hQ8s7sv9OCLk6AHNgQvIrvbfzKCD76g/O6cu7lf/iER/aQGgy448pExZmhdegAPhR9sObFWH1gT3lp7DaA/5bkIgJhZPgsNmz02novj+KqeApj1ubwXWe4kdyeznAgNvTpE/HQmvKqOMeuFogTUVQSRno+iaLRLAJF7uIgL9O4ubgL8aWgB7S44mNX+35YpICUiAvS9sBLkq1WzT+NFffl6AuoiApi6NT37h6sWkBIRZGkQ8YtLgyji6e1mBYTqCEBPG2Naz+0BWQgtoGoRgCzEsd9hAN1X5BfnFZASUfrSAFQNsyZ1FJASUVpHiLinDJG8U2cBZYogkrcNs5waBAGdstbeU9zdqpw0gPwwSAI6VUxHyFlDpOcHUUBBIuYNs14aZAE5RVwyzPr3/0EAEY0TyfGNjBWQvwZ +CTSbehfAH29mrID8bET0+0EUkAd8WYDOmqJ3ecsG30yr9wqRfm6Y+a1BEFDEjHfHvWmY9ck6CygHvBVr8Xhtb4ZE5HZA3y8DvBNA1TjnrmXWf+sioMwZX5V/VHXMGGMMoKdDCxCRvRWBdzKzdHEO+EisilbPyopHYqp6S9UCAsz4iojI7hUDAtyXVQgIDd6KnOoaWNkbI6FaPSuZGyMArsi7MZoloB4zviI/Nhr3X95jltwTRQmoIfgisy5ai+me67OI7fE4nrqjrqfK1t0eby0FPRB6oGVlchL3rgnfrq19RKbVBdhV9IOSwJmfmJi4vi/4ThERitwyCxVAFqydshuCX5awhQ9KtmuIWd8IDZED/nXT77rvVVv6sHRKwjYi91poqP7Dr+Y6JJ1VSZIMA3wkPNy6bX+o8Bcm0sXMdwM8Fxo0A3xORPaWBp6uPXsmbxCRD0NDL0dOANhVCXy6iAjMcjbcrMt3RITKwdMVRdFo+y5yvkL4eWZ+zHt/ZVD4dEVRNGotpst+dZZZH8k86lqn2pIvT/eqrNfn2xuyqYPZ8mv7s8pfn/8Pybm4TIjanscAAAAASUVORK5CYII=") no-repeat center center;background-size:64px 64px;position:absolute;height:100%;width:100%;opacity:.8;filter:alpha(opacity=80);transition:all 0.2s ease-out}.youtube .play:hover{opacity:1;filter:alpha(opacity=100)} -/*# sourceMappingURL=pathfinder.css.map */ + * ======================================================================== */label.checkbox .toggle,label.checkbox.inline .toggle{margin-left:-20px;margin-right:5px}.toggle{min-width:40px;height:20px;position:relative;overflow:hidden}.toggle input[type="checkbox"]{display:none}.toggle-group{position:absolute;width:200%;top:0;bottom:0;left:0;transition:left 0.35s;-webkit-transition:left 0.35s;-moz-user-select:none;-webkit-user-select:none}.toggle.off .toggle-group{left:-100%}.toggle-on{position:absolute;top:0;bottom:0;left:0;right:50%;margin:0;border:0;border-radius:0}.toggle-off{position:absolute;top:0;bottom:0;left:50%;right:0;margin:0;border:0;border-radius:0}.toggle-handle{position:relative;margin:0 auto;padding-top:0px;padding-bottom:0px;height:100%;width:0px;border-width:0 1px}.toggle-handle.btn-mini{top:-2px}.toggle.btn{min-width:30px}.toggle-on.btn{padding-right:24px}.toggle-off.btn{padding-left:24px}.toggle.btn-large{min-width:40px}.toggle-on.btn-large{padding-right:35px}.toggle-off.btn-large{padding-left:35px}.toggle.btn-small{min-width:25px}.toggle-on.btn-small{padding-right:20px}.toggle-off.btn-small{padding-left:20px}.toggle.btn-mini{min-width:20px}.toggle-on.btn-mini{padding-right:12px}.toggle-off.btn-mini{padding-left:12px}.checkbox{padding-left:20px}.checkbox label{display:inline-block;vertical-align:middle;position:relative;padding-left:5px}.checkbox label::before{content:"";display:inline-block;position:absolute;width:17px;height:17px;left:0;margin-left:-20px;border:1px solid #63676a;border-radius:3px;background-color:#313335;-webkit-transition:border 0.15s ease-in-out,color 0.15s ease-in-out;transition:border 0.15s ease-in-out,color 0.15s ease-in-out}.checkbox label::after{font-family:"FontAwesome";content:"";display:inline-block;position:absolute;width:16px;height:16px;left:0;top:0;opacity:0;transform:scale(2) rotateZ(-20deg);transition:all .18s ease-in;will-change:transform, opacity;margin-left:-20px;padding-left:3px;padding-top:1px;font-size:11px;color:#adadad}.checkbox input[type="checkbox"],.checkbox input[type="radio"]{opacity:0;z-index:1}.checkbox input[type="checkbox"]:focus+label::before,.checkbox input[type="radio"]:focus+label::before{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px;outline-color:#568a89}.checkbox input[type="checkbox"]:checked+label::after,.checkbox input[type="radio"]:checked+label::after{transform:scale(1) rotateZ(0deg);opacity:1}.checkbox input[type="checkbox"]:indeterminate+label::after,.checkbox input[type="radio"]:indeterminate+label::after{display:block;content:"";width:10px;height:3px;background-color:#555555;border-radius:2px;margin-left:-16.5px;margin-top:7px}.checkbox input[type="checkbox"]:disabled+label,.checkbox input[type="radio"]:disabled+label{opacity:0.65}.checkbox input[type="checkbox"]:disabled+label::before,.checkbox input[type="radio"]:disabled+label::before{background-color:#3c3f41;cursor:not-allowed}.checkbox.checkbox-circle label::before{border-radius:50%}.checkbox.checkbox-inline{margin-top:0}.checkbox-primary input[type="checkbox"]:checked+label::before,.checkbox-primary input[type="radio"]:checked+label::before{background-color:#375959;border-color:#375959}.checkbox-primary input[type="checkbox"]:checked+label::after,.checkbox-primary input[type="radio"]:checked+label::after{color:#fff}.checkbox-danger input[type="checkbox"]:checked+label::before,.checkbox-danger input[type="radio"]:checked+label::before{background-color:#a52521;border-color:#a52521}.checkbox-danger input[type="checkbox"]:checked+label::after,.checkbox-danger input[type="radio"]:checked+label::after{color:#fff}.checkbox-info input[type="checkbox"]:checked+label::before,.checkbox-info input[type="radio"]:checked+label::before{background-color:#316490;border-color:#316490}.checkbox-info input[type="checkbox"]:checked+label::after,.checkbox-info input[type="radio"]:checked+label::after{color:#fff}.checkbox-warning input[type="checkbox"]:checked+label::before,.checkbox-warning input[type="radio"]:checked+label::before{background-color:#e28a0d;border-color:#e28a0d}.checkbox-warning input[type="checkbox"]:checked+label::after,.checkbox-warning input[type="radio"]:checked+label::after{color:#fff}.checkbox-success input[type="checkbox"]:checked+label::before,.checkbox-success input[type="radio"]:checked+label::before{background-color:#4f9e4f;border-color:#4f9e4f}.checkbox-success input[type="checkbox"]:checked+label::after,.checkbox-success input[type="radio"]:checked+label::after{color:#fff}.checkbox-primary input[type="checkbox"]:indeterminate+label::before,.checkbox-primary input[type="radio"]:indeterminate+label::before{background-color:#375959;border-color:#375959}.checkbox-primary input[type="checkbox"]:indeterminate+label::after,.checkbox-primary input[type="radio"]:indeterminate+label::after{background-color:#fff}.checkbox-danger input[type="checkbox"]:indeterminate+label::before,.checkbox-danger input[type="radio"]:indeterminate+label::before{background-color:#a52521;border-color:#a52521}.checkbox-danger input[type="checkbox"]:indeterminate+label::after,.checkbox-danger input[type="radio"]:indeterminate+label::after{background-color:#fff}.checkbox-info input[type="checkbox"]:indeterminate+label::before,.checkbox-info input[type="radio"]:indeterminate+label::before{background-color:#316490;border-color:#316490}.checkbox-info input[type="checkbox"]:indeterminate+label::after,.checkbox-info input[type="radio"]:indeterminate+label::after{background-color:#fff}.checkbox-warning input[type="checkbox"]:indeterminate+label::before,.checkbox-warning input[type="radio"]:indeterminate+label::before{background-color:#e28a0d;border-color:#e28a0d}.checkbox-warning input[type="checkbox"]:indeterminate+label::after,.checkbox-warning input[type="radio"]:indeterminate+label::after{background-color:#fff}.checkbox-success input[type="checkbox"]:indeterminate+label::before,.checkbox-success input[type="radio"]:indeterminate+label::before{background-color:#4f9e4f;border-color:#4f9e4f}.checkbox-success input[type="checkbox"]:indeterminate+label::after,.checkbox-success input[type="radio"]:indeterminate+label::after{background-color:#fff}.radio{padding-left:20px}.radio label{display:inline-block;vertical-align:middle;position:relative;padding-left:5px}.radio label::before{content:"";display:inline-block;position:absolute;width:17px;height:17px;left:0;margin-left:-20px;border:1px solid #63676a;border-radius:50%;background-color:#313335;-webkit-transition:border 0.15s ease-in-out;transition:border 0.15s ease-in-out}.radio label::after{display:inline-block;position:absolute;content:" ";width:11px;height:11px;left:3px;top:3px;margin-left:-20px;border-radius:50%;background-color:#adadad;-webkit-transform:scale(0,0);-ms-transform:scale(0,0);transform:scale(0,0);-webkit-transition:-webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);-moz-transition:-moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);-o-transition:-o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);transition:transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33)}.radio input[type="radio"]{opacity:0;z-index:1}.radio input[type="radio"]:focus+label::before{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px;outline-color:#568a89}.radio input[type="radio"]:checked+label::after{-webkit-transform:scale(1,1);-ms-transform:scale(1,1);transform:scale(1,1)}.radio input[type="radio"]:disabled+label{opacity:0.65}.radio input[type="radio"]:disabled+label::before{cursor:not-allowed}.radio.radio-inline{margin-top:0}.radio-primary input[type="radio"]+label::after{background-color:#375959}.radio-primary input[type="radio"]:checked+label::before{border-color:#375959}.radio-primary input[type="radio"]:checked+label::after{background-color:#375959}.radio-danger input[type="radio"]+label::after{background-color:#a52521}.radio-danger input[type="radio"]:checked+label::before{border-color:#a52521}.radio-danger input[type="radio"]:checked+label::after{background-color:#a52521}.radio-info input[type="radio"]+label::after{background-color:#316490}.radio-info input[type="radio"]:checked+label::before{border-color:#316490}.radio-info input[type="radio"]:checked+label::after{background-color:#316490}.radio-warning input[type="radio"]+label::after{background-color:#e28a0d}.radio-warning input[type="radio"]:checked+label::before{border-color:#e28a0d}.radio-warning input[type="radio"]:checked+label::after{background-color:#e28a0d}.radio-success input[type="radio"]+label::after{background-color:#4f9e4f}.radio-success input[type="radio"]:checked+label::before{border-color:#4f9e4f}.radio-success input[type="radio"]:checked+label::after{background-color:#4f9e4f}input[type="checkbox"].styled:checked+label:after,input[type="radio"].styled:checked+label:after{font-family:"FontAwesome";content:""}input[type="checkbox"] .styled:checked+label::before,input[type="radio"] .styled:checked+label::before{color:#fff}input[type="checkbox"] .styled:checked+label::after,input[type="radio"] .styled:checked+label::after{color:#fff}html{margin:0;padding:0;height:100%;position:relative}body{margin:0;padding:0;min-height:100%;direction:ltr}body.mobile-view-activated.hidden-menu{overflow-x:hidden}body.modal-open{overflow:hidden !important}a:hover,a:active,a:focus,button,button:active,button:focus,object,embed,input::-moz-focus-inner{outline:0}h1,h3,h4{margin:0;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.page-title{margin:12px 0 28px}.page-title span{font-size:15px;color:#313335;display:inline-block;vertical-align:1px}label{font-weight:normal}*:focus{outline:0 !important}a,input,button{-ms-touch-action:none !important}textarea:focus,select:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{outline:0;outline:thin dotted \9;box-shadow:inset -1px 1px 5px 0 rgba(0,0,0,0.8) !important}.input-sm,.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn,.input-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn,.input-xs,.form-control{border-radius:0px !important;-webkit-border-radius:0px !important;-moz-border-radius:0px !important}.input-xs{height:24px;padding:2px 10px;font-size:11px;line-height:1.5}.btn-xs,.btn-group-xs>.btn{padding:0px 2px;font-size:10px;line-height:1.3}.btn-sm,.btn-group-sm>.btn{padding:5px 8px 4px}.btn-lg,.btn-group-lg>.btn{padding:10px 16px}.no-space{margin:0}.no-space>[class*="col-"]{margin:0 !important;padding-right:0;padding-left:0}h1{letter-spacing:-1px;font-size:22px;margin:10px 0}h1 small{font-size:12px;font-weight:300;letter-spacing:-1px}h2{font-size:20px;margin:20px 0;line-height:normal}h3{display:block;font-size:17px;font-weight:400;margin:20px 0;line-height:normal}h4{line-height:normal;margin:20px 0 10px 0}h5{font-size:14px;font-weight:300;margin-top:0;margin-bottom:10px;line-height:normal}h6{font-size:13px;margin:10px 0;font-weight:bold;line-height:normal}.row-seperator-header{margin:15px 14px 20px;border-bottom:none;display:block;color:#303133;font-size:20px;font-weight:400}.center-canvas,.center-child-canvas>canvas{display:block !important;margin:0 auto !important}.smart-accordion-default.panel-group{margin-bottom:0px}.smart-accordion-default.panel-group .panel+.panel{margin-top:-1px}.smart-accordion-default.panel-group .panel-heading{padding:0px}.smart-accordion-default.panel-group .panel-title a{display:block;padding:10px 15px;text-decoration:none !important}.smart-accordion-default .panel-heading,.panel-group .panel{border-radius:0px;-webkit-border-radius:0px;-moz-border-radius:0px}.smart-accordion-default .panel-default>.panel-heading{background-color:#f3f3f3}.smart-accordion-default .panel-default{border-color:#8d9194}.smart-accordion-default .panel-title>a>:first-child{display:none}.smart-accordion-default .panel-title>a.collapsed>.fa{display:none}.smart-accordion-default .panel-title>a.collapsed>:first-child{display:inline-block}.no-padding .smart-accordion-default>div{border-left:none !important;border-right:none !important}.no-padding .smart-accordion-default>div:first-child{border-top:none !important}.no-padding .smart-accordion-default>div:last-child{border-bottom:none !important}.onoffswitch-container{margin-top:4px;margin-left:7px;display:inline-block}.onoffswitch{position:relative;width:50px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;margin-top:3px;margin-bottom:3px;margin-left:5px;display:inline-block;vertical-align:middle}.onoffswitch-checkbox{display:none}.onoffswitch-label{display:block;overflow:hidden;cursor:pointer;border:1px solid #484c4e;border-radius:50px;border-color:#777b7f #7c8184 #686c6f;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.onoffswitch-inner{width:200%;margin-left:-100%;display:block}.onoffswitch-inner:before,.onoffswitch-inner:after{float:left;width:50%;height:15px;padding:0;line-height:15px;font-size:10px;color:#fff;font-family:Trebuchet, Arial, sans-serif;font-weight:bold;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.onoffswitch-inner:before{content:attr(data-swchon-text);text-shadow:0 -1px 0 #313335;padding-left:7px;background-color:#3276b1;color:#fff;box-shadow:inset 0 2px 6px rgba(0,0,0,0.5),0 1px 2px rgba(0,0,0,0.05);text-align:left}.onoffswitch-inner:after{content:attr(data-swchoff-text);padding-right:7px;text-shadow:0 -1px 0 #fff;background-color:#fff;color:#3c3f41;text-align:right;box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.onoffswitch-switch{width:19px;height:19px;margin:-2px;background:white;border:1px solid #64686b;border-radius:50px;position:absolute;top:0;bottom:0;right:32px;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;background-color:#eaeaea;background-image:-moz-linear-gradient(top, #fff, #adadad);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#adadad));background-image:-webkit-linear-gradient(top, #fff, #adadad);background-image:-o-linear-gradient(top, #fff, #adadad);background-image:linear-gradient(to bottom, #ffffff,#adadad);background-repeat:repeat-x;-webkit-box-shadow:1px 1px 4px 0px rgba(0,0,0,0.3);box-shadow:1px 1px 4px 0px rgba(0,0,0,0.3)}.onoffswitch-checkbox+.onoffswitch-label .onoffswitch-switch:before,.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-switch:before{content:"\f00d";color:#a52521;display:block;text-align:center;line-height:19px;font-size:10px;text-shadow:0 -1px 0 #fff;font-weight:bold;font-family:FontAwesome}.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-switch:before{content:"\f00c";color:#428bca}.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-inner{margin-left:0;display:block}.onoffswitch-checkbox:checked+.onoffswitch-label .onoffswitch-switch{right:0px}.onoffswitch-switch:hover{background-color:#adadad}.onoffswitch-switch:active{background-color:#adadad;box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.onoffswitch-checkbox:disabled+.onoffswitch-label .onoffswitch-inner:after,.onoffswitch-checkbox:checked:disabled+.onoffswitch-label .onoffswitch-inner:before{text-shadow:0 1px 0 #fff;background:#bfbfbf;color:#313335}.onoffswitch-checkbox:checked:disabled+.onoffswitch-label .onoffswitch-switch,.onoffswitch-checkbox:disabled+.onoffswitch-label .onoffswitch-switch{background-color:#eaeaea;background-image:-moz-linear-gradient(top, #bfbfbf, #eaeaea);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#bfbfbf), to(#eaeaea));background-image:-webkit-linear-gradient(top, #bfbfbf, #eaeaea);background-image:-o-linear-gradient(top, #bfbfbf, #eaeaea);background-image:linear-gradient(to bottom, #bfbfbf,#eaeaea);box-shadow:none !important}.onoffswitch-checkbox:disabled+.onoffswitch-label,.onoffswitch-checkbox:checked:disabled+.onoffswitch-label .onoffswitch-label{border-color:#74797c #63676a #525558 !important}.onoffswitch-checkbox:checked+.onoffswitch-label{border-color:#3276b1 #2a6395 #255681}.onoffswitch+span,.onoffswitch-title{display:inline-block;vertical-align:middle;margin-top:-5px}.form-control{box-shadow:none !important;-webkit-box-shadow:none !important;-moz-box-shadow:none !important}.form hr{margin-left:-13px;margin-right:-13px;border-color:rgba(0,0,0,0.1);margin-top:20px;margin-bottom:20px}.form fieldset{display:block;border:none;background:rgba(255,255,255,0.9);position:relative}fieldset{position:relative}.form-actions{display:block;padding:13px 14px 15px;border-top:1px solid rgba(0,0,0,0.1);background:rgba(239,239,239,0.9);margin-top:25px;margin-left:-13px;margin-right:-13px;margin-bottom:-13px;text-align:right}.well .form-actions{margin-left:-19px;margin-right:-19px;margin-bottom:-19px}.well.well-lg .form-actions{margin-left:-24px;margin-right:-24px;margin-bottom:-24px}.well.well-sm .form-actions{margin-left:-9px;margin-right:-9px;margin-bottom:-9px}.popover-content .form-actions{margin:0 -14px -9px;border-radius:0 0 3px 3px;padding:9px 14px}.no-padding .form .form-actions{margin:0;display:block;padding:13px 14px 15px;border-top:1px solid rgba(0,0,0,0.1);background:rgba(248,248,248,0.9);text-align:right;margin-top:25px}.form header,legend{display:block;padding:8px 0;border-bottom:1px dashed rgba(0,0,0,0.2);background:#fff;font-size:16px;font-weight:300;color:#2b2b2b;margin:25px 0px 20px}.no-padding .form header{margin:25px 14px 0}.form header:first-child{margin-top:10px}legend{font-weight:400;margin-top:0px;background:none}.input-group-addon{padding:6px 10px;will-change:background-color, border-color;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-webkit-transition:all ease-out 0.15s;transition:all ease-out 0.15s}.input-group-addon .fa,.input-group-addon .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list .input-group-addon li>i{font-size:14px}.input-group-addon .fa-lg,.input-group-addon .fa-2x{font-size:2em}.input-group-addon .fa-3x,.input-group-addon .fa-4x,.input-group-addon .fa-5x{font-size:30px}input[type="text"]:focus+.input-group-addon,input[type="password"]:focus+.input-group-addon,input[type="email"]:focus+.input-group-addon{border-color:#568a89;color:#568a89}.has-warning input[type="text"],.has-warning input[type="text"]+.input-group-addon{border-color:#e28a0d}.has-warning input[type="text"]+.input-group-addon{background-color:#fbe3c0;color:#2b2b2b}.has-warning input[type="text"]:focus,.has-warning input[type="text"]:focus+.input-group-addon{border-color:#e28a0d}.has-warning input[type="text"]:focus+.input-group-addon{background-color:#e28a0d;color:#fff}.has-error .input-group-addon{border-color:#d9534f !important;background:#d9534f !important;color:#2b2b2b !important}.has-success .input-group-addon{border-color:#4f9e4f !important;background-color:#2b2b2b !important;color:#4f9e4f !important}.form fieldset .form-group:last-child,.form fieldset .form-group:last-child .note,.form .form-group:last-child,.form .form-group:last-child .note{margin-bottom:0}.note{margin-top:6px;padding:0 1px;font-size:11px;line-height:15px;color:#7c8184}.input-icon-right>i,.input-icon-left>i{position:absolute;right:10px;top:10px;font-size:12px;color:#63676a}.input-icon-left>i{right:auto;left:24px}.input-icon-right .form-control{padding-right:27px}.input-icon-left .form-control{padding-left:29px}input[type="text"].ui-autocomplete-loading,input[type="password"].ui-autocomplete-loading,input[type="datetime"].ui-autocomplete-loading,input[type="datetime-local"].ui-autocomplete-loading,input[type="date"].ui-autocomplete-loading,input[type="month"].ui-autocomplete-loading,input[type="time"].ui-autocomplete-loading,input[type="week"].ui-autocomplete-loading,input[type="number"].ui-autocomplete-loading,input[type="email"].ui-autocomplete-loading,input[type="url"].ui-autocomplete-loading,input[type="search"].ui-autocomplete-loading,input[type="tel"].ui-autocomplete-loading,input[type="color"].ui-autocomplete-loading{background-image:url("../img/select2-spinner.gif") !important;background-repeat:no-repeat;background-position:99% 50%;padding-right:27px}.input-group-addon .checkbox,.input-group-addon .radio{min-height:0px;margin-right:0px !important;padding-top:0}.input-group-addon label input[type="checkbox"].checkbox+span,.input-group-addon label input[type="radio"].radiobox+span,.input-group-addon label input[type="radio"].radiobox+span:before,.input-group-addon label input[type="checkbox"].checkbox+span:before{margin-right:0px}.input-group-addon .onoffswitch,.input-group-addon .onoffswitch-label{margin:0}.alert{margin-bottom:10px;margin-top:0px;padding:5px 15px 5px 34px;color:#675100;border-width:0px;border-left-width:3px;padding:10px}.alert .ui-pnotify-title{line-height:12px}.alert .ui-pnotify-text{font-size:10px}.alert .close{top:0px;right:-5px;line-height:20px}.alert-heading{font-weight:600}.alert-danger{border-color:#a52521;color:#2b2b2b;background:#f6d1d0;text-shadow:none}.alert-danger .ui-pnotify-icon{color:#a52521}.alert-warning{border-color:#e28a0d;color:#2b2b2b;background:#fdedd8}.alert-warning .ui-pnotify-icon{color:#e28a0d}.alert-success{border-color:#4f9e4f;color:#2b2b2b;background:#d1e8d1}.alert-success .ui-pnotify-icon{color:#4f9e4f}.alert-info{border-color:#316490;color:#2b2b2b;background:#abc9e2}.alert-info .ui-pnotify-icon{color:#316490}.progress-micro{height:2px !important;line-height:2px !important}.progress-xs{height:7px !important;line-height:7px !important}.progress-sm{height:14px !important;line-height:14px !important}.progress-lg{height:30px !important;line-height:30px !important}.progress .progress-bar{position:absolute;overflow:hidden;line-height:18px}.progress .progressbar-back-text{position:absolute;width:100%;height:100%;font-size:12px;line-height:20px;text-align:center}.progress .progressbar-front-text{display:block;width:100%;font-size:12px;line-height:20px;text-align:center}.progress.right .progress-bar{right:0}.progress.right .progressbar-front-text{position:absolute;right:0}.progress.vertical{width:25px;height:100%;min-height:150px;margin-right:20px;display:inline-block;margin-bottom:0px}.progress.wide-bar{width:40px}.progress.vertical.bottom{position:relative}.progress.vertical.bottom .progressbar-front-text{position:absolute;bottom:0}.progress.vertical .progress-bar{width:100%;height:0;-webkit-transition:height 0.6s ease;transition:height 0.6s ease}.progress.vertical.bottom .progress-bar{position:absolute;bottom:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{position:relative;margin-bottom:20px;overflow:hidden;height:18px;background:#adadad;-webkit-box-shadow:0 1px 0 transparent,0 0 0 1px #aeb1b3 inset;box-shadow:0 1px 0 transparent,0 0 0 1px #aeb1b3 inset;-moz-border-radius:0px;-webkit-border-radius:0px;border-radius:0px}.progress-bar{float:left;width:0;height:100%;font-size:11px;color:#fff;text-align:center;background-color:#428bca;font-weight:bold;text-shadow:0 -1px 0 rgba(0,0,0,0.25);-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 1s ease-in-out;transition:width 1s ease-in-out}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-danger{background-color:#a52521}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-success{background-color:#4f9e4f}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-warning{background-color:#e28a0d}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-bar-info{background-color:#316490}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));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:-moz-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%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0))}.progress-info .bar,.progress .bar-info{background:#316490}.vertical-bars{padding:0;margin:0}.vertical-bars:after{content:"";display:block;height:0;clear:both}.vertical-bars li{padding:14px 0;width:25%;display:block;float:left;text-align:center}.vertical-bars li:first-child{border-left:none}.vertical-bars>li>.progress.vertical:first-child{margin-left:auto}.vertical-bars>li>.progress.vertical{margin:0 auto;float:none}.nav-tabs{border-bottom:none}.nav-tabs>li>a .badge{font-size:11px;padding:3px 5px 3px 5px;opacity:.5;margin-left:5px;min-width:17px;font-weight:normal}.tabs-left .nav-tabs>li>a .badge{margin-right:5px;margin-left:0px}.nav-tabs>li>a .label{display:inline-block;font-size:11px;margin-left:5px;opacity:.5}.nav-tabs>li>a{color:#adadad;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.nav-tabs>li>a:hover{color:#1d1d1d;border-color:transparent transparent #adadad transparent;margin-top:1px;border-top-width:0}.nav-tabs>li.active>a{background-color:#adadad;color:#2b2b2b;border-top-width:0px !important;margin-top:1px !important;font-weight:bold}.tabs-left .nav-tabs>li.active>a{-webkit-box-shadow:-2px 0 0 #428bca;-moz-box-shadow:-2px 0 0 #428bca;box-shadow:-2px 0 0 #428bca;border-top-width:1px !important;border-left:none !important;margin-left:1px !important}.tabs-left .nav-pills>li.active>a{border:none !important;box-shadow:none !important;-webkit-box-shadow:none !important;-moz-box-shadow:none !important}.tabs-right .nav-tabs>li.active>a{-webkit-box-shadow:2px 0 0 #428bca;-moz-box-shadow:2px 0 0 #428bca;box-shadow:2px 0 0 #428bca;border-top-width:1px !important;border-right:none !important;margin-right:1px !important}.tabs-below .nav-tabs>li.active>a{-webkit-box-shadow:0 2px 0 #428bca;-moz-box-shadow:0 2px 0 #428bca;box-shadow:0 2px 0 #428bca;border-bottom-width:0px !important;border-top:none !important;margin-top:0px !important}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #9b9b9b}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li,.tabs-left>.nav-pills>li,.tabs-right>.nav-pills>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a,.tabs-left>.nav-pills>li>a,.tabs-right>.nav-pills>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs,.tabs-left>.nav-pills{float:left;margin-right:19px;border-right:1px solid #9b9b9b}.tabs-left>.nav-pills{border-right:none}.tabs-left>.nav-tabs>li>a{margin-right:-1px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#adadad #949494 #adadad #adadad}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#949494 transparent #949494 #9b9b9b;*border-right-color:#fff}.tabs-left>.tab-content{margin-left:109px}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #9b9b9b}.tabs-right>.nav-tabs>li>a{margin-left:-1px}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#adadad #adadad #adadad #9b9b9b}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#9b9b9b #9b9b9b #9b9b9b transparent;*border-left-color:#fff}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #9b9b9b}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-top-color:#9b9b9b;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #9b9b9b #9b9b9b #9b9b9b}.nav-tabs.bordered{background:#fff;border:1px solid #9b9b9b}.nav-tabs.bordered>:first-child a{border-left-width:0px !important}.nav-tabs.bordered+.tab-content{border:1px solid #9b9b9b;border-top:none}.tabs-pull-right.nav-tabs>li,.tabs-pull-right.nav-pills>li{float:right}.tabs-pull-right.nav-tabs>li:first-child>a,.tabs-pull-right.nav-pills>li:first-child>a{margin-right:1px}.tabs-pull-right.bordered.nav-tabs>li:first-child>a,.tabs-pull-right.bordered.nav-pills>li:first-child>a{border-left-width:1px !important;margin-right:0px;border-right-width:0px}.dropdown-menu-xs{min-width:37px}.dropdown-menu-xs>li>a{padding:3px 10px}.dropdown-menu-xs>li>a:hover i{color:#fff !important}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropdown-submenu:hover>a{background-color:#63676a;color:#1d1d1d}.dropdown-submenu:hover a:after{border-left-color:#5cb85c}.dropdown-submenu>a:after{display:block;content:" ";float:right;width:0;height:0;border-color:transparent;border-style:solid;border-width:5px 0 5px 5px;border-left-color:#2b2b2b;margin-top:5px;margin-right:-10px}.dropdown-submenu>a:hover:after{border-left-color:#adadad}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px}.pagination>li>a,.pagination>li>span{box-shadow:inset 0 -2px 0 rgba(0,0,0,0.05);-moz-box-shadow:inset 0 -2px 0 rgba(0,0,0,0.05);-webkit-box-shadow:inset 0 -2px 0 rgba(0,0,0,0.05)}.btn-default.disabled{color:#adadad}.btn{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;will-change:background-color, border-color;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-transition:all 0.18s ease-in-out;transition:all 0.18s ease-in-out}.btn.btn-ribbon{background-color:#707070;background-image:-moz-linear-gradient(top, #777, #666);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#777), to(#666));background-image:-webkit-linear-gradient(top, #777, #666);background-image:-o-linear-gradient(top, #777, #666);background-image:linear-gradient(to bottom, #777777,#666666);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff777777', endColorstr='#ff666666', GradientType=0);color:white;padding:0 5px;line-height:20px;vertical-align:middle;height:20px;display:block;border:none;float:left;margin:0 8px 0 0;cursor:pointer}.btn.btn-ribbon>i{font-size:111%}.ribbon-button-alignment{padding-top:10px;display:inline-block}.ribbon-button-alignment.pull-right>.btn.btn-ribbon{margin:0 0 0 8px}.panel-purple{border-color:#6e587a}.panel-purple>.panel-heading{color:#fff;background-color:#6e587a;border-color:#6e587a}.panel-greenLight{border-color:#71843f}.panel-greenLight>.panel-heading{color:#fff;background-color:#71843f;border-color:#71843f}.panel-greenDark{border-color:#496949}.panel-greenDark>.panel-heading{color:#fff;background-color:#496949;border-color:#496949}.panel-darken{border-color:#313335}.panel-darken>.panel-heading{color:#fff;background-color:#404040;border-color:#404040}.panel-pink{border-color:#e06fdf}.panel-pink>.panel-heading{color:#fff;background-color:#e06fdf;border-color:#e06fdf}.panel-green{border-color:#5cb85c}.panel-green>.panel-heading{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.panel-blueLight{border-color:#92a2a8}.panel-blueLight>.panel-heading{color:#fff;background-color:#92a2a8;border-color:#92a2a8}.panel-pinkDark{border-color:#a8829f}.panel-pinkDark>.panel-heading{color:#fff;background-color:#a8829f;border-color:#a8829f}.panel-redLight{border-color:#a65858}.panel-redLight>.panel-heading{color:#fff;background-color:#a65858;border-color:#a65858}.panel-red{border-color:#d9534f}.panel-red>.panel-heading{color:#fff;background-color:#d9534f;border-color:#d9534f}.panel-teal{border-color:#568a89}.panel-teal>.panel-heading{color:#fff;background-color:#568a89;border-color:#568a89}.panel-orange{border-color:#e28a0d}.panel-orange>.panel-heading{color:#fff;background-color:#e28a0d;border-color:#e28a0d}.panel-blueDark{border-color:#4c4f53}.panel-blueDark>.panel-heading{color:#fff;background-color:#4c4f53;border-color:#4c4f53}.panel-magenta{border-color:#6e3671}.panel-magenta>.panel-heading{color:#fff;background-color:#6e3671;border-color:#6e3671}.panel-blue{border-color:#428bca}.panel-blue>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-footer>.btn-block{border-radius:0px;-moz-border-radius:0px;-webkit-border-radius:0px;border-bottom:none;border-left:none;border-right:none}.btn-circle{width:30px;height:30px;text-align:center;padding:6px 0;font-size:12px;line-height:18px;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;-webkit-box-shadow:0 1px 6px 0 rgba(0,0,0,0.12),0 1px 6px 0 rgba(0,0,0,0.12);box-shadow:0 1px 6px 0 rgba(0,0,0,0.12),0 1px 6px 0 rgba(0,0,0,0.12)}.btn-circle.btn-sm,.btn-group-sm>.btn-circle.btn{width:22px;height:22px;padding:4px 0;font-size:12px;line-height:14px;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%}.btn-circle.btn-lg,.btn-group-lg>.btn-circle.btn{width:50px;height:50px;padding:10px 15px;font-size:18px;line-height:30px;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%}.btn-circle.btn-xl{width:70px;height:70px;padding:10px 15px;font-size:24px;line-height:50px;border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%}.btn-metro{margin:0 0 20px;padding-top:15px;padding-bottom:15px}.btn-metro>span{display:block;vertical-align:bottom;margin-top:10px;text-transform:uppercase}.btn-metro>span.label{position:absolute;top:0px;right:0px}.btn-label{position:relative;left:-8px;display:inline-block;padding:5px 8px;background:rgba(0,0,0,0.15);border-radius:3px 0 0 3px}.btn-labeled{padding-top:0;padding-bottom:0;padding-left:8px}.btn-link{box-shadow:none;-webkit-box-shadow:none;font-size:13px}.morris-hover.morris-default-style{border-radius:5px;padding:5px;color:#666;background:rgba(29,29,29,0.9);border:solid 2px #375959;font-family:'Oxygen Bold';font-size:10px;text-align:left;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.morris-hover.morris-default-style .morris-hover-row-label{font-weight:bold}.morris-hover.morris-default-style .morris-hover-point{white-space:nowrap}.morris-hover{position:absolute;z-index:903}.fixed-page-footer .morris-hover{z-index:900}.txt-color.txt-color-blue,.txt-color-blue.pf-help-light,.pf-help-light:hover,.txt-color-blue.pf-help,.pf-help:hover,.txt-color.pf-help-default:hover,.dataTable td.pf-help-default.pf-table-link-cell:hover,.dataTable td.pf-table-link-cell.pf-help-light:hover,.dataTable td.pf-table-link-cell.pf-help:hover,.dataTable td.pf-table-action-cell>.pf-help-default.pf-table-action-icon-cell:hover,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-help-light:hover,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-help:hover,.pf-landing .pf-landing-list li>i.pf-help-default:hover,.pf-landing .pf-landing-list li>i.pf-help-light:hover,.pf-landing .pf-landing-list li>i.pf-help:hover,.dataTable td.txt-color-blue.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-blue.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-blue{color:#428bca !important}.txt-color.txt-color-blueLight,.txt-color-blueLight.pf-help-light,.txt-color-blueLight.pf-help,.dataTable td.txt-color-blueLight.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-blueLight.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-blueLight{color:#92a2a8 !important}.txt-color.txt-color-blueDark,.txt-color-blueDark.pf-help-light,.txt-color-blueDark.pf-help,.dataTable td.txt-color-blueDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-blueDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-blueDark{color:#4c4f53 !important}.txt-color.txt-color-grayLightest,.txt-color-grayLightest.pf-help-light,.txt-color-grayLightest.pf-help,.dataTable td.txt-color-grayLightest.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-grayLightest.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-grayLightest{color:#eaeaea !important}.txt-color.txt-color-grayLighter,.txt-color-grayLighter.pf-help-light,.txt-color-grayLighter.pf-help,.dataTable td.txt-color-grayLighter.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-grayLighter.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-grayLighter{color:#adadad !important}.txt-color.txt-color-grayLight,.pf-help-light,.txt-color-grayLight.pf-help,.dataTable td.txt-color-grayLight.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-help-light,.dataTable td.pf-table-action-cell>.txt-color-grayLight.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-help-light,.pf-landing .pf-landing-list li>i.txt-color-grayLight,.pf-landing .pf-landing-list li>i.pf-help-light{color:#63676a !important}.txt-color.txt-color-gray,.txt-color-gray.pf-help-light,.pf-help,.dataTable td.txt-color-gray.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-help,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-gray,.pf-landing .pf-landing-list li>i.pf-help{color:#3c3f41 !important}.txt-color.txt-color-grayDark,.txt-color-grayDark.pf-help-light,.txt-color-grayDark.pf-help,.dataTable td.txt-color-grayDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-grayDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-grayDark{color:#313335 !important}.txt-color.txt-color-greenLight,.txt-color-greenLight.pf-help-light,.txt-color-greenLight.pf-help,.dataTable td.txt-color-greenLight.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-greenLight.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-greenLight{color:#66c84f !important}.txt-color.txt-color-green,.txt-color-green.pf-help-light,.pf-help-light.pf-log-info,.txt-color-green.pf-help,.pf-help.pf-log-info,.dataTable td.txt-color-green.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-log-info,.dataTable td.pf-table-action-cell>.txt-color-green.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-log-info,.txt-color.pf-log-info,.pf-landing .pf-landing-list li>i.pf-log-info,.pf-landing .pf-landing-list li>i.txt-color-green{color:#5cb85c !important}.txt-color.txt-color-greenDark,.txt-color-greenDark.pf-help-light,.txt-color-greenDark.pf-help,.dataTable td.txt-color-greenDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-greenDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-greenDark{color:#4f9e4f !important}.txt-color.txt-color-redLight,.txt-color-redLight.pf-help-light,.txt-color-redLight.pf-help,.dataTable td.txt-color-redLight.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-redLight.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-redLight{color:#a65858 !important}.txt-color.txt-color-red,.txt-color-red.pf-help-light,.pf-help-light.pf-log-error,.txt-color-red.pf-help,.pf-help.pf-log-error,.dataTable td.txt-color-red.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-log-error,.dataTable td.pf-table-action-cell>.txt-color-red.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-log-error,.txt-color.pf-log-error,.pf-landing .pf-landing-list li>i.pf-log-error,.pf-landing .pf-landing-list li>i.txt-color-red{color:#d9534f !important}.txt-color.txt-color-redDarker,.txt-color-redDarker.pf-help-light,.txt-color-redDarker.pf-help,.dataTable td.txt-color-redDarker.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-redDarker.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-redDarker{color:#a52521 !important}.txt-color.txt-color-yellow,.txt-color-yellow.pf-help-light,.txt-color-yellow.pf-help,.dataTable td.txt-color-yellow.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-yellow.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-yellow{color:#e2ce48 !important}.txt-color.txt-color-yellowDark,.txt-color-yellowDark.pf-help-light,.txt-color-yellowDark.pf-help,.dataTable td.txt-color-yellowDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-yellowDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-yellowDark{color:#c8b847 !important}.txt-color.txt-color-orangeLight,.txt-color-orangeLight.pf-help-light,.txt-color-orangeLight.pf-help,.dataTable td.txt-color-orangeLight.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-orangeLight.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-orangeLight{color:#f0ad4e !important}.txt-color.txt-color-orange,.txt-color-orange.pf-help-light,.txt-color-orange.pf-help,.dataTable td.txt-color-orange.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-orange.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell:hover>.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-orange{color:#e28a0d !important}.txt-color.txt-color-orangeDark,.txt-color-orangeDark.pf-help-light,.txt-color-orangeDark.pf-help,.dataTable td.txt-color-orangeDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-orangeDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-orangeDark{color:#c2760c !important}.txt-color.txt-color-pink,.txt-color-pink.pf-help-light,.txt-color-pink.pf-help,.dataTable td.txt-color-pink.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-pink.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-pink{color:#e06fdf !important}.txt-color.txt-color-pinkDark,.txt-color-pinkDark.pf-help-light,.txt-color-pinkDark.pf-help,.dataTable td.txt-color-pinkDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-pinkDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-pinkDark{color:#a8829f !important}.txt-color.txt-color-purple,.txt-color-purple.pf-help-light,.txt-color-purple.pf-help,.dataTable td.txt-color-purple.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-purple.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-purple{color:#6e587a !important}.txt-color.txt-color-darken,.txt-color-darken.pf-help-light,.txt-color-darken.pf-help,.dataTable td.txt-color-darken.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-darken.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-darken{color:#404040 !important}.txt-color.txt-color-lighten,.txt-color-lighten.pf-help-light,.txt-color-lighten.pf-help,.dataTable td.txt-color-lighten.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-lighten.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-lighten{color:#d5e7ec !important}.txt-color.txt-color-white,.txt-color-white.pf-help-light,.txt-color-white.pf-help,.dataTable td.txt-color-white.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-white.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-white{color:#fff !important}.txt-color.txt-color-magenta,.txt-color-magenta.pf-help-light,.txt-color-magenta.pf-help,.dataTable td.txt-color-magenta.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-magenta.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-magenta{color:#6e3671 !important}.txt-color.txt-color-tealLightest,.txt-color-tealLightest.pf-help-light,.txt-color-tealLightest.pf-help,.dataTable td.txt-color-tealLightest.pf-table-link-cell,.dataTable td.pf-table-link-cell:hover,.dataTable td.pf-table-action-cell>.txt-color-tealLightest.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-tealLightest{color:#6caead !important}.txt-color.txt-color-tealLighter,.txt-color-tealLighter.pf-help-light,.txt-color-tealLighter.pf-help,.dataTable td.txt-color-tealLighter.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-tealLighter.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i{color:#568a89 !important}.txt-color.txt-color-teal,.txt-color-teal.pf-help-light,.txt-color-teal.pf-help,.dataTable td.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-teal.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>td.pf-table-action-icon-cell.pf-table-link-cell,.pf-landing .pf-landing-list li>i.txt-color-teal{color:#477372 !important}.txt-color.txt-color-indigoDark,.txt-color-indigoDark.pf-help-light,.txt-color-indigoDark.pf-help,.dataTable td.txt-color-indigoDark.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-indigoDark.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-indigoDark{color:#5c6bc0 !important}.txt-color.txt-color-indigoDarkest,.txt-color-indigoDarkest.pf-help-light,.txt-color-indigoDarkest.pf-help,.dataTable td.txt-color-indigoDarkest.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-indigoDarkest.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-indigoDarkest{color:#313966 !important}.txt-color.txt-color-gold,.txt-color-gold.pf-help-light,.txt-color-gold.pf-help,.dataTable td.txt-color-gold.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-gold.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-gold{color:#cfb53b !important}.txt-color.txt-color-silver,.txt-color-silver.pf-help-light,.txt-color-silver.pf-help,.dataTable td.txt-color-silver.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-silver.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-silver{color:silver !important}.txt-color.txt-color-bronze,.txt-color-bronze.pf-help-light,.txt-color-bronze.pf-help,.dataTable td.txt-color-bronze.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-bronze.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-bronze{color:#8c7853 !important}.txt-color.txt-color-primary,.txt-color-primary.pf-help-light,.txt-color-primary.pf-help,.dataTable td.txt-color-primary.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-primary.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-primary{color:#375959 !important}.txt-color.txt-color-success,.txt-color-success.pf-help-light,.txt-color-success.pf-help,.dataTable td.txt-color-success.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-success.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-success{color:#4f9e4f !important}.txt-color.txt-color-information,.txt-color-information.pf-help-light,.txt-color-information.pf-help,.dataTable td.txt-color-information.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-information.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-information{color:#316490 !important}.txt-color.txt-color-warning,.txt-color-warning.pf-help-light,.pf-help-light.pf-log-warning,.txt-color-warning.pf-help,.pf-help.pf-log-warning,.dataTable td.txt-color-warning.pf-table-link-cell,.dataTable td.pf-table-link-cell.pf-log-warning,.dataTable td.pf-table-action-cell>.txt-color-warning.pf-table-action-icon-cell,.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell.pf-log-warning,.txt-color.pf-log-warning,.pf-landing .pf-landing-list li>i.pf-log-warning,.pf-landing .pf-landing-list li>i.txt-color-warning{color:#e28a0d !important}.txt-color.txt-color-danger,.txt-color-danger.pf-help-light,.txt-color-danger.pf-help,.dataTable td.txt-color-danger.pf-table-link-cell,.dataTable td.pf-table-action-cell>.txt-color-danger.pf-table-action-icon-cell,.pf-landing .pf-landing-list li>i.txt-color-danger{color:#a52521 !important}.bg-color.bg-color-blue{background-color:#428bca !important}.bg-color.bg-color-blueLight{background-color:#92a2a8 !important}.bg-color.bg-color-blueDark{background-color:#4c4f53 !important}.bg-color.bg-color-green{background-color:#5cb85c !important}.bg-color.bg-color-greenLight{background-color:#71843f !important}.bg-color.bg-color-greenDark{background-color:#496949 !important}.bg-color.bg-color-red{background-color:#d9534f !important}.bg-color.bg-color-yellow{background-color:#e2ce48 !important}.bg-color.bg-color-orange{background-color:#e28a0d !important}.bg-color.bg-color-orangeDark{background-color:#c2760c !important}.bg-color.bg-color-pink{background-color:#e06fdf !important}.bg-color.bg-color-pinkDark{background-color:#a8829f !important}.bg-color.bg-color-purple{background-color:#6e587a !important}.bg-color.bg-color-darken{background-color:#404040 !important}.bg-color.bg-color-lighten{background-color:#d5e7ec !important}.bg-color.bg-color-white{background-color:#fff !important}.bg-color.bg-color-gray{background-color:#3c3f41 !important}.bg-color.bg-color-grayDark{background-color:#525252 !important}.bg-color.bg-color-grayDarker{background-color:#2b2b2b !important}.bg-color.bg-color-magenta{background-color:#6e3671 !important}.bg-color.bg-color-tealLighter{background-color:#568a89 !important}.bg-color.bg-color-tealDarker{background-color:#212C30 !important}.bg-color.bg-color-tealDarkest{background-color:#1b2326 !important}.bg-color.bg-color-redLight{background-color:#a65858 !important}.pf-animation-slide-in{-moz-animation-duration:1.2s;-webkit-animation-duration:1.2s;-moz-animation-name:pfSlideIn;-webkit-animation-name:pfSlideIn;position:relative}@-webkit-keyframes pfSlideIn{from{opacity:0;top:-20px}to{opacity:1;top:0px}}@-moz-keyframes pfSlideIn{from{opacity:0;top:-20px}to{opacity:1;top:0px}}@-ms-keyframes pfSlideIn{from{opacity:0;top:-20px}to{opacity:1;top:0px}}@keyframes pfSlideIn{from{opacity:0;top:-20px}to{opacity:1;top:0px}}@-webkit-keyframes pfPulseDanger{0%{fill:#d9534f}50%{fill:#58100d}100%{fill:#d9534f}}@-moz-keyframes pfPulseDanger{0%{fill:#d9534f}50%{fill:#58100d}100%{fill:#d9534f}}@-ms-keyframes pfPulseDanger{0%{fill:#d9534f}50%{fill:#58100d}100%{fill:#d9534f}}@keyframes pfPulseDanger{0%{fill:#d9534f}50%{fill:#58100d}100%{fill:#d9534f}}.pf-animation-pulse-success{-webkit-animation:pulseBackgroundSuccess 1s 1;animation:pulseBackgroundSuccess 1s 1;-webkit-animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38);animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38)}.pf-animation-pulse-success .sorting_1{-webkit-animation:pulseBackgroundSuccessActive 1s 1;animation:pulseBackgroundSuccessActive 1s 1;-webkit-animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38);animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38)}.pf-animation-pulse-warning{-webkit-animation:pulseBackgroundWarning 1s 1;animation:pulseBackgroundWarning 1s 1;-webkit-animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38);animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38)}.pf-animation-pulse-warning .sorting_1{-webkit-animation:pulseBackgroundWarningActive 1s 1;animation:pulseBackgroundWarningActive 1s 1;-webkit-animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38);animation-timing-function:cubic-bezier(0.53, -0.03, 0.68, 0.38)}@-webkit-keyframes pulseBackgroundSuccess{10%{background-color:#4f9e4f;color:#313335}}@-moz-keyframes pulseBackgroundSuccess{10%{background-color:#4f9e4f;color:#313335}}@-ms-keyframes pulseBackgroundSuccess{10%{background-color:#4f9e4f;color:#313335}}@keyframes pulseBackgroundSuccess{10%{background-color:#4f9e4f;color:#313335}}@-webkit-keyframes pulseBackgroundSuccessActive{10%{background-color:#478d47;color:#313335}}@-moz-keyframes pulseBackgroundSuccessActive{10%{background-color:#478d47;color:#313335}}@-ms-keyframes pulseBackgroundSuccessActive{10%{background-color:#478d47;color:#313335}}@keyframes pulseBackgroundSuccessActive{10%{background-color:#478d47;color:#313335}}@-webkit-keyframes pulseBackgroundWarning{10%{background-color:#e28a0d;color:#2b2b2b}}@-moz-keyframes pulseBackgroundWarning{10%{background-color:#e28a0d;color:#2b2b2b}}@-ms-keyframes pulseBackgroundWarning{10%{background-color:#e28a0d;color:#2b2b2b}}@keyframes pulseBackgroundWarning{10%{background-color:#e28a0d;color:#2b2b2b}}@-webkit-keyframes pulseBackgroundWarningActive{10%{background-color:#ca7b0c;color:#2b2b2b}}@-moz-keyframes pulseBackgroundWarningActive{10%{background-color:#ca7b0c;color:#2b2b2b}}@-ms-keyframes pulseBackgroundWarningActive{10%{background-color:#ca7b0c;color:#2b2b2b}}@keyframes pulseBackgroundWarningActive{10%{background-color:#ca7b0c;color:#2b2b2b}}.pf-animate-rotate,.modal-content h2[data-toggle="collapse"]:after,.modal-content h4[data-toggle="collapse"]:after{-webkit-transition:all 0.08s linear;transition:all 0.08s linear}.pf-animate-rotate.right,.modal-content h2.right[data-toggle="collapse"]:after,.modal-content h4.right[data-toggle="collapse"]:after{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.pf-animate-rotate.left,.modal-content h2.left[data-toggle="collapse"]:after,.modal-content h4.left[data-toggle="collapse"]:after{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}body{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.pf-body{overflow:hidden}a,.pf-link{color:#477372;will-change:color;text-decoration:none;cursor:pointer;-webkit-transition:color 0.08s ease-out;transition:color 0.08s ease-out}a:hover,.pf-link:hover{color:#6caead;text-decoration:none}a:focus,.pf-link:focus{color:#477372}em{font-style:italic}em.pf-brand{text-transform:uppercase}.pf-font-capitalize{text-transform:capitalize}.pf-font-line-through{text-decoration:line-through}.no-padding{padding:0 !important}::-webkit-scrollbar{width:16px;height:16px}::-webkit-scrollbar-track{background-color:#2b2b2b;border-left:1px solid #313335;border-radius:2px;-webkit-transition:background-color 0.5s;transition:background-color 0.5s}::-webkit-scrollbar-thumb{height:6px;border:5px solid transparent;background-clip:padding-box;-webkit-border-radius:8px;background-color:#868c90}::-webkit-scrollbar-thumb:hover{background-color:#a1a5a8}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-corner{background-color:transparent}::selection{background:#adadad;color:#1d1d1d}::-moz-selection{background:#adadad;color:#1d1d1d}.pf-help-default,.pf-help-light,.pf-help{cursor:help;-webkit-transition:color 0.08s ease-out;transition:color 0.08s ease-out}.pf-dialog-icon-button,.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text.editable-empty,.pf-sig-table-module .pf-sig-table .fa-plus,.pf-system-route-module .pf-system-route-table td .fa-refresh,.pf-system-route-module .pf-system-route-table td .fa-search-plus{cursor:pointer;margin-top:2px;-webkit-transition:color 0.15s ease-out;transition:color 0.15s ease-out}.pf-dialog-icon-button:not(.collapsed),.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text.editable-empty:not(.collapsed),.pf-sig-table-module .pf-sig-table .fa-plus:not(.collapsed),.pf-system-route-module .pf-system-route-table td .fa-refresh:not(.collapsed),.pf-system-route-module .pf-system-route-table td .fa-search-plus:not(.collapsed),.pf-dialog-icon-button:hover,.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text.editable-empty:hover,.pf-sig-table-module .pf-sig-table .fa-plus:hover,.pf-system-route-module .pf-system-route-table td .fa-refresh:hover,.pf-system-route-module .pf-system-route-table td .fa-search-plus:hover{color:#e28a0d}.pf-module-icon-button{cursor:pointer;-webkit-transition:color 0.15s ease-out;transition:color 0.15s ease-out}.pf-module-icon-button:hover,.pf-module-icon-button.active{color:#e28a0d !important}a.disabled{color:#777;pointer-events:none;cursor:default}.alert{will-change:opacity, transform}.editable-input optgroup[label]{background-color:#3c3f41;color:#63676a}.editable-input optgroup[label] option{background-color:#313335;color:#adadad;font-family:Consolas,monospace,Menlo,Monaco,"Courier New"}select:active,select:hover{outline:none}select:active,select:hover{outline-color:red}.select2-results [class*="col-"]{line-height:22px}.select2 ::-webkit-search-cancel-button{-webkit-appearance:none !important}.select2 .select2-selection__choice__remove{float:left}.select2 .select2-selection--multiple input{box-shadow:none !important}.dataTable th.pf-table-image-cell,.dataTable th.pf-table-image-small-cell{padding-left:0 !important;padding-right:0 !important}.dataTable th.sorting,.dataTable th.sorting_asc,.dataTable th.sorting_desc{padding-right:18px !important}.dataTable td.pf-table-link-cell{cursor:pointer;-webkit-transition:color 0.08s ease-out;transition:color 0.08s ease-out}.dataTable td.pf-table-action-cell{cursor:pointer}.dataTable td.pf-table-action-cell>.pf-table-action-icon-cell{-webkit-transition:color 0.08s ease-out;transition:color 0.08s ease-out}.dataTable td.pf-table-image-cell{padding:0 !important}.dataTable td.pf-table-image-cell img{width:26px;box-sizing:content-box;border-left:1px solid #3c3f41;border-right:1px solid #3c3f41}.dataTable td.pf-table-image-small-cell img{width:24px;border-left:1px solid transparent;border-right:1px solid transparent}.dataTable td.pf-table-button-sm-cell{padding:0}.dataTable td.pf-table-counter-cell{color:#63676a}.dataTable td.pf-table-counter-cell .pf-digit-counter-small{width:20px;display:inline-block;font-size:10px}.dataTable td.pf-table-counter-cell .pf-digit-counter-large{width:26px;display:inline-block;font-size:10px}.dataTable td .pf-table-cell-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataTable td .pf-table-cell-80{width:90px}.dataTable td .pf-table-cell-90{width:100px}.dataTable td .pf-table-cell-100{width:110px}.dataTable td.separator-right,.dataTable th.separator-right{border-right:1px solid #3c3f41}.dataTable td svg.peity,.dataTable th svg.peity{display:block}table.pf-table-fixed{width:100%;table-layout:fixed}table tr.collapsing{-webkit-transition:height 0.01s ease;transition:height 0.01s ease}table tr.collapse.in{display:table-row !important}table td.pf-table-cell-20,table th.pf-table-cell-20{width:20px}table td.pf-table-cell-ellipses-auto,table th.pf-table-cell-ellipses-auto{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-table-tools{height:45px}.pf-table-tools .btn:not(:last-child){margin-right:10px}.pf-table-tools-action{will-change:height, opacity, display;opacity:0;display:none;height:0;visibility:hidden}.pf-loading-overlay{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;background:#2b2b2b;z-index:1060;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.pf-loading-overlay .pf-loading-overlay-wrapper{width:25px;height:25px;margin:auto;text-align:center;position:absolute;top:0;left:0;bottom:0;right:0}.pf-loading-overlay .pf-loading-overlay-wrapper i{padding:3px}.navbar-header-block{width:100%}.navbar-header-block .navbar-nav{width:100%}.navbar-nav li:not(.disabled):hover:before,.navbar-nav li:not(.disabled).active:before{top:-4px;opacity:1}.navbar-nav li:not(.disabled):before{content:'';position:absolute;background-color:#5cb85c;opacity:0;will-change:opacity,top;-webkit-transition:top 0.15s ease-out,opacity 0.15s ease-out;transition:top 0.15s ease-out,opacity 0.15s ease-out;width:100%;height:2px;top:0}.pf-navbar-version-info{cursor:pointer}.pf-site{will-change:transform}.sb-slidebar{will-change:transform}.sb-left .list-group-item{cursor:pointer;-webkit-box-shadow:inset -10px 0px 5px -5px rgba(0,0,0,0.4);box-shadow:inset -10px 0px 5px -5px rgba(0,0,0,0.4)}.sb-right .list-group-item{cursor:pointer;-webkit-box-shadow:inset 10px 0px 5px -5px rgba(0,0,0,0.4);box-shadow:inset 10px 0px 5px -5px rgba(0,0,0,0.4)}.mCSB_container,.mCSB_dragger{will-change:top, left}.pf-timestamp-counter{visibility:hidden}.pf-map-type-private{color:#7986cb}.pf-map-type-corporation{color:#5cb85c}.pf-map-type-alliance{color:#428bca}.pf-map-type-global{color:#568a89}#pf-map-module{margin:20px 10px 0 10px}#pf-map-module #pf-map-tabs .pf-map-type-tab-default{border-top:2px solid transparent}#pf-map-module #pf-map-tabs .pf-map-type-tab-private{border-top:2px solid #7986cb}#pf-map-module #pf-map-tabs .pf-map-type-tab-corporation{border-top:2px solid #5cb85c}#pf-map-module #pf-map-tabs .pf-map-type-tab-alliance{border-top:2px solid #428bca}#pf-map-module #pf-map-tabs .pf-map-type-tab-global{border-top:2px solid #568a89}#pf-map-module #pf-map-tabs .pf-map-tab-icon{margin-right:5px}#pf-map-module #pf-map-tabs .pf-map-tab-shared-icon{margin-left:5px}.pf-map-content-row{margin-top:10px;padding-bottom:40px}.pf-map-content-row .pf-module{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;background:rgba(60,63,65,0.27);padding:10px;width:100%;margin-bottom:10px;will-change:height, transform, opacity;overflow:hidden;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.pf-map-content-row .pf-module:before{content:'';position:absolute;top:0;left:0;border-style:solid;border-width:0 0 8px 8px;border-color:transparent transparent transparent #3c3f41;cursor:pointer}.pf-map-content-row .pf-module .label{margin-bottom:10px}.pf-map-content-row .pf-module .pf-dynamic-area{background:rgba(43,43,43,0.4)}.pf-map-content-row .pf-module .pf-module-head{margin-bottom:10px}.pf-map-content-row .pf-module .pf-module-head .pf-module-handler-drag{display:inline-block;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing;transition:color 0.15s ease-out}.pf-map-content-row .pf-module .pf-module-head .pf-module-handler-drag:before{content:'\22EE\22EE\00A0'}.pf-map-content-row .pf-module .pf-module-head .pf-module-handler-drag:hover{color:#f0ad4e}.pf-map-content-row .pf-module .pf-module-head h5{display:inline-block;line-height:16px;margin-bottom:0}.pf-map-content-row .pf-module .pf-module-head h5 .pf-module-icon-button{margin-left:5px}.pf-map-content-row .pf-module .pf-module-table{font-size:11px;white-space:nowrap}.pf-user-status{color:#a52521}.pf-user-status-corp{color:#5cb85c}.pf-user-status-ally{color:#428bca}.pf-user-status-own{color:#7986cb}.pf-system-effect{display:none;cursor:default;color:#adadad}.pf-system-effect-magnetar{color:#e06fdf;display:inline-block}.pf-system-effect-redgiant{color:#d9534f;display:inline-block}.pf-system-effect-pulsar{color:#428bca;display:inline-block}.pf-system-effect-wolfrayet{color:#e28a0d;display:inline-block}.pf-system-effect-cataclysmic{color:#ffb;display:inline-block}.pf-system-effect-blackhole{color:#000;display:inline-block}.pf-system-info-rally .pf-system-head{background-color:#782d77;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjEuMCIgeTE9IjEuMCIgeDI9IjAuMCIgeTI9IjAuMCI+PHN0b3Agb2Zmc2V0PSIyNSUiIHN0b3AtY29sb3I9IiMzZTI2NGUiLz48c3RvcCBvZmZzZXQ9IjI1JSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzNlMjY0ZSIvPjxzdG9wIG9mZnNldD0iNzUlIiBzdG9wLWNvbG9yPSIjM2UyNjRlIi8+PHN0b3Agb2Zmc2V0PSI3NSUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4wIi8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-moz-linear-gradient(135deg, #3e264e 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,#3e264e 50%,#3e264e 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-image:-webkit-linear-gradient(135deg, #3e264e 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,#3e264e 50%,#3e264e 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-image:linear-gradient(-45deg, #3e264e 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,#3e264e 50%,#3e264e 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));background-size:25px 25px;-webkit-animation:move 3s linear infinite;-moz-animation:move 3s linear infinite;-ms-animation:move 3s linear infinite;animation:move 3s linear infinite}.pf-system-security-0-0{color:#be0000}.pf-system-security-0-1{color:#ab2600}.pf-system-security-0-2{color:#be3900}.pf-system-security-0-3{color:#c24e02}.pf-system-security-0-4{color:#ab5f00}.pf-system-security-0-5{color:#bebe00}.pf-system-security-0-6{color:#73bf26}.pf-system-security-0-7{color:#00bf00}.pf-system-security-0-8{color:#00bf39}.pf-system-security-0-9{color:#39bf99}.pf-system-security-1-0{color:#28c0bf}.pf-system-sec{margin-right:5px;cursor:-moz-grab;cursor:-webkit-grab}.pf-system-sec-highSec{color:#5cb85c}.pf-system-sec-lowSec{color:#e28a0d}.pf-system-sec-nullSec{color:#d9534f}.pf-system-sec-high{color:#d9534f}.pf-system-sec-mid{color:#e28a0d}.pf-system-sec-low{color:#428bca}.pf-system-sec-unknown{color:#7986cb}.pf-system-status-friendly{border-color:#428bca !important;color:#428bca}.pf-system-status-occupied{border-color:#e28a0d !important;color:#e28a0d}.pf-system-status-hostile{border-color:#d9534f !important;color:#d9534f}.pf-system-status-empty{border-color:#5cb85c !important;color:#5cb85c}.pf-system-status-unscanned{border-color:#568a89 !important;color:#568a89}.pf-system-info-status-label{background-color:#63676a;color:#000;will-change:background-color;-webkit-transition:background-color 0.3s ease-out;transition:background-color 0.3s ease-out}.pf-system-info-status-label.pf-system-status-friendly{background-color:#428bca}.pf-system-info-status-label.pf-system-status-occupied{background-color:#e28a0d}.pf-system-info-status-label.pf-system-status-hostile{background-color:#d9534f}.pf-system-info-status-label.pf-system-status-empty{background-color:#5cb85c}.pf-system-info-status-label.pf-system-status-unscanned{background-color:#568a89}.pf-system-effect-dialog-wrapper .table,.pf-jump-info-dialog .table{margin:15px 0}.pf-system-effect-dialog-wrapper .table td,.pf-jump-info-dialog .table td{text-transform:capitalize}.pf-fake-connection{box-sizing:content-box;display:inline-block;width:70px;height:4px;border-top:2px solid #63676a;border-bottom:2px solid #63676a;background-color:#3c3f41;position:relative;font-size:10px;font-family:"Oxygen","Helvetica Neue",Helvetica,Arial,sans-serif}.pf-fake-connection.pf-map-connection-stargate{background-color:#313966;border-color:#63676a}.pf-fake-connection.pf-map-connection-jumpbridge{background-color:#6caead;border-color:#3c3f41;background:repeating-linear-gradient(to right, #6caead, #6caead 10px, #3c3f41 10px, #3c3f41 20px)}.pf-fake-connection.pf-map-connection-wh-eol{border-color:#d747d6}.pf-fake-connection.pf-map-connection-wh-reduced{background-color:#e28a0d}.pf-fake-connection.pf-map-connection-wh-critical{background-color:#a52521}.pf-fake-connection.pf-map-connection-frig{border-style:dashed;border-left:none;border-right:none}.pf-fake-connection.pf-map-connection-frig:after{content:'frig';background-color:#e28a0d;color:#1d1d1d;padding:0px 3px;position:absolute;left:25px;top:-6px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.pf-fake-connection.pf-map-connection-preserve-mass:after{content:'save mass';background-color:#a52521;color:#eaeaea;padding:0px 3px;position:absolute;left:8px;top:-6px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.tooltip-inner{color:#5cb85c;background-color:#3c3f41;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;padding:5px 5px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.modal .tooltip{z-index:1060}.modal .tooltip .tooltip-inner{color:#313335;background-color:#adadad}.tooltip.top .tooltip-arrow{border-top-color:#63676a}.tooltip.right .tooltip-arrow{border-right-color:#63676a}.tooltip.bottom .tooltip-arrow{border-bottom-color:#63676a}.tooltip.left .tooltip-arrow{border-left-color:#63676a}.popover{z-index:1060;max-width:600px}.popover img{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.popover h4{color:#adadad}.popover table{color:#adadad;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;line-height:16px;font-size:11px}.popover table td{padding:0 5px;vertical-align:middle !important}.pf-popover{display:initial}.pf-popover .popover-content{padding:0}.pf-popover h6{white-space:nowrap;margin-right:50px}.pf-popover h6:before,.pf-popover h6:after{content:" ";display:table}.pf-popover h6:after{clear:both}.pf-popover .well{margin-top:7px;margin-bottom:10px}.pf-popover .list-group{margin:0}.pf-popover .list-group .list-group-item{color:#313335}.pf-popover .list-group .list-group-item:hover{color:#1d1d1d}.pf-popover .list-group .list-group-item.disabled{background-color:#3c3f41;color:#63676a;cursor:not-allowed}.pf-popover .list-group .list-group-item img{width:30px;margin:-8px 10px -6px -8px;border-radius:0}.pf-popover .list-group .list-group-item i{margin-right:20px}td.pf-popover-trigger:hover{color:#477372}.pf-notransition{-webkit-transition:none !important;-moz-transition:none !important;-o-transition:none !important;transition:none !important}.pf-dynamic-area{padding:10px;min-height:100px;position:relative;background-color:#313335;overflow:hidden;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.pf-dynamic-area .dl-horizontal{margin-bottom:0}.pf-dynamic-area .dl-horizontal dd{min-width:100px}.pf-dynamic-area .dl-horizontal dd.txt-color,.pf-dynamic-area .dl-horizontal dd.pf-help-light,.pf-dynamic-area .dl-horizontal dd.pf-help,.pf-dynamic-area .dl-horizontal .dataTable td.pf-table-action-cell>dd.pf-table-action-icon-cell,.dataTable .pf-dynamic-area .dl-horizontal td.pf-table-action-cell>dd.pf-table-action-icon-cell{font-weight:bold}.pf-dynamic-area>[class~='alert']:last-of-type{margin-bottom:0}.pf-code-ObjectBrace{color:#782d77;font-weight:bold}.pf-code-ArrayBrace{color:#3e264e;font-weight:bold}.pf-code-PropertyName{color:#1d1d1d;font-weight:bold}.pf-code-String{color:#e28a0d}.pf-code-Number{color:#4f9e4f}.pf-code-Boolean{color:#313966;font-weight:bold}.pf-code-Function{color:#782d77}.pf-code-Null{color:#2b2b2b;font-weight:bold}.pf-code-Comma{color:#1d1d1d;font-weight:bold}code .fa,code .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list code li>i{color:#3c3f41;cursor:pointer}#pf-logo-wrapper{display:block}#pf-head{margin-bottom:0px}#pf-head a{-webkit-transition:color 0.15s ease-out;transition:color 0.15s ease-out;will-change:color}#pf-head a:focus{color:#477372}#pf-head a:focus img{border-color:#3c3f41}#pf-head a:hover{text-decoration:none}#pf-head a:hover .badge{color:#6caead}#pf-head a:hover img{border-color:#568a89}#pf-head i{margin-right:2px}#pf-head .pf-brand-desc{margin:6px 10px 0 90px;width:180px}#pf-head .pf-head-menu{padding:3px 10px;line-height:24px}#pf-head .pf-head-menu .pf-head-menu-logo{width:24px;height:24px;display:inline-block;float:left}#pf-head .pf-head-user-character,#pf-head .pf-head-user-ship{opacity:0;visibility:hidden}#pf-head .pf-head-active-user,#pf-head #pf-head-current-location{display:none}#pf-head .pf-head-active-user .badge,#pf-head #pf-head-current-location .badge{-webkit-transition:color 0.3s ease-out;transition:color 0.3s ease-out}#pf-head .pf-head-user-character-image,#pf-head .pf-head-user-ship-image{display:inline-block;margin-top:-6px;margin-bottom:-6px;width:27px;border:1px solid #3c3f41;margin-right:3px;-webkit-transition:border-color 0.15s ease-out;transition:border-color 0.15s ease-out;will-change:border-color}#pf-head .pf-head-program-status{cursor:pointer}#pf-head .navbar-text{min-width:60px}#pf-head .tooltip .tooltip-inner{color:#adadad}.pf-head{-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.pf-head .badge{background-color:#3c3f41;color:#adadad}.pf-head small{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}#pf-head-character-switch td{border:none}#pf-head-character-switch td:first-child+td{padding:0 5px}#pf-footer{position:absolute;bottom:0;left:0;width:100%;margin:0;background:rgba(60,63,65,0.3)}#pf-footer a{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;color:#375959}#pf-footer a:hover{color:#477372;text-decoration:none}.navbar-fixed-bottom{padding:2px 0}.navbar-fixed-bottom .container-fluid{padding-left:0;padding-right:0}#pf-global-info{position:absolute;left:0;bottom:32px;width:100%;height:32px;margin-bottom:0}.pf-sortable-ghost{opacity:0.7 !important}.pf-sortable-ghost .pf-module-handler-drag{color:#f0ad4e}@-webkit-keyframes move{0%{background-position:0 0}100%{background-position:50px 50px}}@-moz-keyframes move{0%{background-position:0 0}100%{background-position:50px 50px}}@-ms-keyframes move{0%{background-position:0 0}100%{background-position:50px 50px}}@keyframes move{0%{background-position:0 0}100%{background-position:50px 50px}}.pf-animate{visibility:hidden;opacity:0}.pf-color-line{position:fixed;top:0;left:0;width:100%;height:3px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzY2Yzg0ZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzY2Yzg0ZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #66c84f),color-stop(100%, #66c84f));background-image:-moz-linear-gradient(left, #66c84f,#66c84f 100%);background-image:-webkit-linear-gradient(left, #66c84f,#66c84f 100%);background-image:linear-gradient(to right, #66c84f,#66c84f 100%)}.pf-color-line.warning{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UyOGEwZCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UyOGEwZCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #e28a0d),color-stop(100%, #e28a0d));background-image:-moz-linear-gradient(left, #e28a0d,#e28a0d 100%);background-image:-webkit-linear-gradient(left, #e28a0d,#e28a0d 100%);background-image:linear-gradient(to right, #e28a0d,#e28a0d 100%)}.pf-color-line.danger{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2E1MjUyMSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2E1MjUyMSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #a52521),color-stop(100%, #a52521));background-image:-moz-linear-gradient(left, #a52521,#a52521 100%);background-image:-webkit-linear-gradient(left, #a52521,#a52521 100%);background-image:linear-gradient(to right, #a52521,#a52521 100%)}.pf-splash,.pf-splash-warning,.pf-splash-error{position:absolute;z-index:2000;background-color:#1d1d1d;color:#63676a;top:0;bottom:0;left:0;right:0;will-change:opacity}.pf-splash .pf-splash-title,.pf-splash-warning .pf-splash-title,.pf-splash-error .pf-splash-title{position:fixed;left:50%;top:30%;text-align:center;max-width:500px;padding:20px;-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}.pf-splash .pf-splash-debug,.pf-splash-warning .pf-splash-debug,.pf-splash-error .pf-splash-debug{position:absolute;bottom:0;width:100%}.pf-splash .pf-splash-debug .pf-splash-debug-headline,.pf-splash-warning .pf-splash-debug .pf-splash-debug-headline,.pf-splash-error .pf-splash-debug .pf-splash-debug-headline{padding:0 10px}.pf-splash .pf-splash-debug .pf-splash-pre,.pf-splash-warning .pf-splash-debug .pf-splash-pre,.pf-splash-error .pf-splash-debug .pf-splash-pre{margin-bottom:0}@media (max-width: 1200px){.pf-landing #pf-logo-container{margin:5px auto}.pf-landing .pf-brand-desc{display:none}.pf-landing .navbar .navbar-brand{margin-left:10px}}.pf-landing section{min-height:200px;padding:20px 0 40px 0;border-bottom:1px solid #2b2b2b}.pf-landing section h4{font-size:18px;font-family:"Oxygen","Helvetica Neue",Helvetica,Arial,sans-serif;margin:5px 0 10px 0;border-bottom:1px solid #2b2b2b;line-height:34px}.pf-landing .container>.row{margin-bottom:30px}.pf-landing .alert{box-shadow:0 4px 10px rgba(0,0,0,0.4)}.pf-landing a[data-gallery]{position:relative}.pf-landing a[data-gallery]:before{content:'\f002';font-family:'FontAwesome';font-size:20px;line-height:20px;color:#e28a0d;position:absolute;top:9px;height:100%;width:100%;padding-top:calc(50% - 10px);z-index:10;text-align:center;-webkit-transition:transform 0.1s ease-out,opacity 0.1s ease-out;transition:transform 0.1s ease-out,opacity 0.1s ease-out;will-change:transform, opacity;transform:scale(1.3, 1.3);opacity:0}.pf-landing a[data-gallery]:hover img{border-color:#6caead;-webkit-filter:brightness(50%);filter:brightness(50%)}.pf-landing a[data-gallery]:hover:before{-webkit-transition-delay:.1s;transition-delay:.1s;transform:scale(1, 1);opacity:1}.pf-landing a[data-gallery] .pf-landing-image-preview{border-width:1px;border-style:solid;border-color:#1d1d1d;margin:5px 0 15px 0;display:inline-block;will-change:all;-webkit-filter:brightness(100%);filter:brightness(100%);-webkit-transition:all 0.2s ease-out;transition:all 0.2s ease-out;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4)}.pf-landing a[data-gallery] .pf-landing-image-preview.pf-landing-image-preview-small{height:160px}.pf-landing a[data-gallery] .pf-landing-image-preview.pf-landing-image-preview-medium{height:256px}#pf-landing-top{height:355px;border-bottom:1px solid #313335;position:relative}#pf-landing-top:before{content:'';width:100%;height:100%;position:absolute;background:url("../img/pf-bg.jpg") #05050a;background-repeat:no-repeat;background-position:0 0;-webkit-filter:brightness(.9);filter:brightness(.9)}#pf-landing-top #pf-logo-container{-moz-transform:scale3d(0.8, 0.8, 1);-ms-transform:scale3d(0.8, 0.8, 1);-webkit-transform:scale3d(0.8, 0.8, 1);transform:scale3d(0.8, 0.8, 1)}#pf-landing-top #pf-header-container{position:absolute;width:100%;background-position:center center}#pf-landing-top #pf-header-container #pf-header-canvas{position:absolute;visibility:hidden;top:0;left:0}#pf-landing-top #pf-header-container #pf-logo-container{z-index:110}#pf-landing-top #pf-header-container #pf-header-preview-container{position:absolute;left:400px;width:590px;height:350px;top:37px}#pf-landing-top #pf-header-container #pf-header-preview-container .pf-header-preview-element{position:relative;margin-left:12px;margin-top:12px;height:155px;width:180px;padding:7px;opacity:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;background-color:rgba(43,43,43,0.5)}#pf-landing-top #pf-header-container #pf-header-preview-container .pf-header-preview-element:nth-child(n+4){box-shadow:0 4px 10px rgba(0,0,0,0.4)}#pf-landing-top #pf-header-container #pf-header-preview-container .pf-header-preview-element:after{content:'';position:absolute;width:calc(100% - 14px);height:calc(100% - 14px);-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-repeat:no-repeat;background-position:50% 50%;background-color:rgba(29,29,29,0.75)}#pf-landing-top .container{position:relative;margin-top:10px}#pf-header-preview-intel:after{background-image:url("../img/landing/intel.png")}#pf-header-preview-map:after{background-image:url("../img/landing/map.png")}#pf-header-preview-scope:after{background-image:url("../img/landing/scope.png")}#pf-header-preview-signature:after{background-image:url("../img/landing/signature.png")}#pf-header-preview-data:after{background-image:url("../img/landing/data.png")}#pf-header-preview-gameplay:after{background-image:url("../img/landing/gameplay.png")}#pf-landing-login{padding-top:40px;padding-bottom:30px}#pf-landing-login .row{margin-bottom:0}#pf-landing-login .pf-character-selection>div:not(.pf-character-row-animate){-webkit-transition:width 0.2s ease,margin 0.2s ease;transition:width 0.2s ease,margin 0.2s ease}#pf-landing-login .pf-dynamic-area{display:inline-block;margin:10px 5px 20px 5px;padding:10px 10px 5px 10px;min-width:155px;min-height:184px;overflow:visible;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4)}#pf-landing-login .pf-dynamic-area .ribbon-wrapper{z-index:5}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper{opacity:0;width:128px;border:2px solid #63676a;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px;-webkit-transition:border-color 0.2s ease-out,box-shadow 0.2s ease-out;transition:border-color 0.2s ease-out,box-shadow 0.2s ease-out;-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);will-change:border-color, transition;overflow:hidden;cursor:pointer;display:inline-block;background-color:#2b2b2b;box-sizing:content-box}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper:hover{border-color:#4f9e4f}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper:hover .pf-character-name{color:#4f9e4f}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper:hover .pf-character-image{-webkit-filter:grayscale(50%);filter:grayscale(50%)}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper.pf-character-active:after{font-family:FontAwesome;content:"\f111";position:absolute;top:5px;left:5px;height:14px;width:14px;color:#5cb85c;font-size:10px}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-select-image{overflow:hidden;width:128px;height:128px;position:relative}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-select-image .pf-character-info{position:absolute;top:0;left:0;width:0;height:100%;color:#adadad;background:rgba(60,63,65,0.8);overflow:hidden;will-change:width, transition;padding:10px 0}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-select-image .pf-character-info .pf-character-info-text{line-height:25px}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-name{font-size:13px;line-height:30px;border-top:1px solid #313335;color:#adadad;-webkit-transition:color 0.2s ease-out;transition:color 0.2s ease-out}#pf-landing-login .pf-dynamic-area .pf-character-image-wrapper .pf-character-image{-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out;-webkit-filter:grayscale(0%);filter:grayscale(0%)}#pf-landing-login .pf-sso-login-button{position:relative;display:inline-block;width:270px;height:45px;border:none;margin-bottom:10px;background-color:transparent;background-image:url("../img/landing/eve_sso_login_buttons_large_black_hover.png");cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,0.2);-webkit-transition:box-shadow 0.12s ease-out;transition:box-shadow 0.12s ease-out;will-change:box-shadow}#pf-landing-login .pf-sso-login-button:after{content:' ';position:absolute;width:270px;height:45px;left:0;top:0;background-image:url("../img/landing/eve_sso_login_buttons_large_black.png");-webkit-transition:opacity 0.12s ease-in-out;transition:opacity 0.12s ease-in-out;will-change:opacity}#pf-landing-login .pf-sso-login-button:hover{box-shadow:0 4px 5px rgba(0,0,0,0.2)}#pf-landing-login .pf-sso-login-button:hover:after{opacity:0}#pf-landing-login .pf-sso-login-button.disabled{pointer-events:auto}#pf-landing-login #pf-notification-panel{display:none}#pf-header-map{position:relative;margin:0 auto;height:380px;width:600px;pointer-events:none}#pf-header-map .pf-header-svg-layer{position:absolute;top:0;left:0;right:0;bottom:0}#pf-header-map #pf-header-systems{z-index:100}#pf-header-map #pf-header-connectors{z-index:90}#pf-header-map #pf-header-connections{z-index:80}#pf-header-map #pf-header-background{z-index:70}#pf-header-map #pf-header-background .pf-header-system{display:none}#pf-header-map-bg{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none}#pf-header-map-bg img{pointer-events:none}#pf-header-map-bg #pf-map-bg-image{opacity:0;position:absolute;bottom:0;right:0;width:100%;height:100%}#pf-header-map-bg #pf-map-neocom{opacity:0;height:665px;width:21px}#pf-header-map-bg #pf-map-browser{opacity:0;position:absolute;top:110px;left:21px;height:560px;width:515px}#pf-landing-gallery-carousel{background-image:url("../img/pf-header-bg.jpg")}#pf-landing-gallery-carousel .slide-content{border-radius:5px;pointer-events:none}#pf-landing-gallery-carousel h3{width:100%;text-align:left}.pf-landing-pricing-panel{margin-top:20px}.pricing-big{-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4)}.pricing-big .panel-heading{border-color:#3c3f41}.pricing-big .the-price{padding:1px 0;background:#2d3031;text-align:center}.pricing-big .the-price .subscript{font-size:12px;color:#63676a}.pricing-big .price-features{background:#3c3f41;color:#adadad;padding:20px 15px;line-height:22px}.pricing-big .price-features:not(.price-features-fluid){min-height:205px}.pricing-big .price-features .list-unstyled.text-left li,.pricing-big .price-features .text-left.list-inline li{text-indent:-1em;padding-left:1.5em}.pricing-big .price-features .list-unstyled.text-left li .fa,.pricing-big .price-features .text-left.list-inline li .fa,.pricing-big .price-features .list-unstyled.text-left .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list .pricing-big .price-features .list-unstyled.text-left li>i,.pricing-big .price-features .text-left.list-inline .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list .pricing-big .price-features .text-left.list-inline li>i{text-indent:0}.pricing-big table tr td{line-height:1}#pf-landing-admin .pf-landing-admin-login{margin-bottom:0}#pf-landing-about .pf-landing-about-me{width:256px;height:256px;border:none;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4)}.pf-landing-footer{padding:30px 0;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;background-color:#171717}.pf-landing-footer .row{margin-bottom:0 !important}.pf-landing-footer .pf-social-networks>li{display:inline-block;line-height:1}.pf-landing-footer .pf-social-networks>li a{display:inline-block;background:rgba(99,103,106,0.5);line-height:24px;text-align:center;font-size:12px;margin-right:5px;width:28px;height:24px}#pf-static-logo-svg{opacity:0;position:absolute;z-index:105;overflow:visible}#pf-static-logo-svg path{will-change:fill, opacity, transform, translateZ, translateX, translateY;pointer-events:all;-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.logo-ploygon-top-right{fill:#477372;fill-rule:evenodd;stroke:#477372;stroke-width:0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1}.logo-ploygon-bottom-left{fill:#5cb85c;fill-rule:evenodd;stroke:#5cb85c;stroke-width:0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1}.logo-ploygon-bottom-right{fill:#375959;fill-rule:evenodd;stroke:#375959;stroke-width:0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1}.logo-ploygon-top-left{fill:#63676a;fill-opacity:1;fill-rule:evenodd;stroke:#63676a;stroke-width:0px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1}@-webkit-keyframes bounce{0%, 20%, 50%, 80%, 100%{-webkit-transform:translateY(0)}40%{-webkit-transform:translateY(-8px)}60%{-webkit-transform:translateY(-4px)}}@keyframes bounce{0%, 20%, 50%, 80%, 100%{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}#pf-map-tab-element{max-width:2515px;margin:0 auto}.pf-map-tab-content .pf-map-wrapper{position:relative;width:100%;max-width:2515px;height:550px;overflow:auto;padding:5px;background:rgba(43,43,43,0.93);box-shadow:inset -3px 3px 10px 0 rgba(0,0,0,0.3);border-bottom-right-radius:5px;border-bottom-left-radius:5px;border-width:1px;border-style:solid;border-color:#313335}.pf-map-tab-content .pf-map-wrapper:focus{border:1px solid #3c3f41}.pf-map-overlay{position:absolute;display:none;z-index:10000;right:10px;background:rgba(0,0,0,0.25);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.pf-map-overlay.pf-map-overlay-timer{bottom:23px;width:36px;height:36px}.pf-map-overlay.pf-map-overlay-info{top:8px;height:36px;min-height:36px;min-width:36px;color:#2b2b2b;padding:3px;line-height:26px}.pf-map-overlay.pf-map-overlay-info i{margin:0;margin-top:3px;width:0;height:26px;opacity:0;color:#63676a;transform:scale(0);transform-origin:50% 50% 0px;-webkit-transition:color 0.18s ease-in-out;transition:color 0.18s ease-in-out;cursor:help;will-change:all}.pf-map-overlay.pf-map-overlay-info i.fa,.pf-map-overlay.pf-map-overlay-info .pf-landing .pf-landing-list li>i,.pf-landing .pf-landing-list .pf-map-overlay.pf-map-overlay-info li>i{font-size:26px}.pf-map-overlay.pf-map-overlay-info i.glyphicon{margin-top:1px;font-size:24px;padding-left:3px}.pf-map-overlay.pf-map-overlay-info i.active,.pf-map-overlay.pf-map-overlay-info i:hover{color:#c2760c}.pf-map-overlay.pf-map-overlay-local{top:54px;min-height:80px;width:32px;display:block;will-change:width}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content{margin-right:36px;padding:5px 0 5px 5px;overflow:hidden}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-headline{font-size:12px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;white-space:nowrap}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-headline .badge{margin-left:5px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-headline .pf-system-sec{cursor:default}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-local-table{font-size:10px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-local-table td{white-space:nowrap}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .dataTables_paginate,.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .dataTables_empty{white-space:nowrap}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-toolbar .pf-map-overlay-toolbar-icon{vertical-align:0;margin-top:14px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-content .pf-map-overlay-toolbar .pf-map-overlay-toolbar-checkbox{display:inline-block;margin-bottom:0}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-main{position:absolute;top:0;right:0;height:100%;padding:3px;width:32px;cursor:pointer;text-align:center;border-left:1px solid #2b2b2b}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-main .pf-map-overlay-local-trigger{margin-bottom:10px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-main i{font-size:12px}.pf-map-overlay.pf-map-overlay-local .pf-map-overlay-local-jumps{position:absolute;bottom:5px;width:calc(100% - 6px)}.pf-map-overlay.pf-map-overlay-local .badge{font-family:Arial, sans-serif;background-color:#2b2b2b}.pf-grid-small{background:url('data:image/png;base64,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') !important}.pf-map{width:2500px;height:520px;position:relative;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.pf-map .jsplumb-overlay{opacity:1;pointer-events:none;will-change:opacity;-webkit-transition:opacity 0.18s ease-out;transition:opacity 0.18s ease-out}.pf-map .jsplumb-hover.jsplumb-overlay{opacity:0 !important}.pf-map .jsplumb-hover:not(.jsplumb-overlay){-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-delay:.5s;animation-delay:.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-timing-function:linear;animation-timing-function:linear;animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite;-webkit-animation-name:bounce;animation-name:bounce}.pf-map .jsplumb-target-hover,.pf-map .jsplumb-source-hover{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-delay:.5s;animation-delay:.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-timing-function:linear;animation-timing-function:linear;animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite;-webkit-animation-name:bounce;animation-name:bounce;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.3);box-shadow:0 6px 12px rgba(0,0,0,0.3)}.pf-map .pf-system{position:absolute;min-width:60px;height:auto;overflow:hidden;background-color:#313335;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;z-index:100;will-change:top, left, opacity;border-width:2px;border-style:solid;border-color:#63676a;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-webkit-transition:border-color 0.3s ease-out,box-shadow 0.12s ease-out;transition:border-color 0.3s ease-out,box-shadow 0.12s ease-out;-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.pf-map .pf-system:hover{-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.3);box-shadow:0 6px 12px rgba(0,0,0,0.3);-moz-transform:translate3d(0, -2px, 0);-ms-transform:translate3d(0, -2px, 0);-webkit-transform:translate3d(0, -2px, 0);transform:translate3d(0, -2px, 0)}.pf-map .pf-system .pf-system-head{padding:0px 3px 0px 3px;cursor:pointer;font-family:Arial, sans-serif;font-weight:bold}.pf-map .pf-system .pf-system-head .pf-system-head-name{border:none;display:inline-block;min-width:41px;color:#adadad;margin-right:2px}.pf-map .pf-system .pf-system-head .fa-lock{display:none}.pf-map .pf-system .pf-system-head .pf-system-head-expand{margin-left:2px;color:#63676a;display:none}.pf-map .pf-system .pf-system-head .editable-empty{font-style:normal}.pf-map .pf-system .pf-system-body{height:0px;width:100%;overflow:hidden;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab;padding:0 4px;white-space:nowrap;display:none;will-change:width;border-top-width:1px;border-top-style:dashed;border-top-color:#63676a}.pf-map .pf-system .pf-system-body .pf-system-body-item{color:#7c8184;font-size:10px;line-height:16px;height:16px}.pf-map .pf-system .pf-system-body .pf-system-body-item .pf-system-body-right{text-overflow:ellipsis;float:right;color:#f0ad4e;display:none}.pf-map .pf-system .pf-system-body .pf-system-body-item .pf-user-status{font-size:7px;width:10px;vertical-align:middle;height:14px}.pf-map .pf-system .pf-system-body .pf-system-body-item .pf-system-body-item-name{display:inline-block;width:65px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.pf-map .pf-system .tooltip.in{opacity:1}.pf-map .pf-system .tooltip .tooltip-inner{color:#313335;background-color:#adadad;padding:3px 3px}.pf-map .pf-system-active:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target){-webkit-box-shadow:#ffb 0px 0px 8px 0px;box-shadow:#ffb 0px 0px 8px 0px}.pf-map .pf-system-selected:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target),.pf-map .jsPlumb_dragged:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target){-webkit-box-shadow:#58100d 0px 0px 8px 0px;box-shadow:#58100d 0px 0px 8px 0px}.pf-map .pf-system-selected:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target) .pf-system-head,.pf-map .jsPlumb_dragged:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target) .pf-system-head,.pf-map .pf-system-selected:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target) .pf-system-body,.pf-map .jsPlumb_dragged:not(.pf-map-endpoint-source):not(.pf-map-endpoint-target) .pf-system-body{background-color:#58100d}.pf-map .pf-system-locked .pf-system-sec{cursor:default !important}.pf-map .pf-system-locked .pf-system-body{cursor:default !important}.pf-map .pf-system-locked .fa-lock{color:#63676a !important;display:inline-block !important}.pf-map .pf-map-endpoint-source,.pf-map .pf-map-endpoint-target{z-index:90}.pf-map .pf-map-endpoint-source svg,.pf-map .pf-map-endpoint-target svg{overflow:visible}.pf-map .pf-map-endpoint-source svg circle,.pf-map .pf-map-endpoint-target svg circle{-webkit-transition:stroke 0.18s ease-out,fill 0.18s ease-out;transition:stroke 0.18s ease-out,fill 0.18s ease-out}.pf-map .pf-map-endpoint-source svg *,.pf-map .pf-map-endpoint-target svg *{stroke:#63676a;stroke-width:2;fill:#3c3f41;cursor:pointer}.pf-map .pf-map-endpoint-source:hover circle,.pf-map .pf-map-endpoint-target:hover circle{stroke:#e28a0d !important}.pf-map .pf-map-endpoint-source.jsplumb-hover,.pf-map .pf-map-endpoint-target.jsplumb-hover{z-index:95}.pf-map .pf-map-endpoint-source.jsplumb-dragging circle,.pf-map .pf-map-endpoint-target.jsplumb-dragging circle{stroke:#e28a0d}.pf-map .jsplumb-endpoint-drop-allowed circle{stroke:#5cb85c !important;fill:#5cb85c !important}.pf-map .jsplumb-endpoint-drop-forbidden circle{stroke:#a52521 !important;fill:#a52521 !important}.pf-map svg.jsplumb-connector{cursor:pointer;stroke-linecap:round;-webkit-transition:stroke 0.18s ease-out;transition:stroke 0.18s ease-out;will-change:all}.pf-map svg.jsplumb-connector path{-webkit-transition:stroke 0.18s ease-out;transition:stroke 0.18s ease-out}.pf-map svg.jsplumb-connector path:nth-child(2){stroke:#3c3f41}.pf-map svg.jsplumb-connector path:first-child{stroke:#63676a}.pf-map svg.jsplumb-connector.jsplumb-hover{z-index:80}.pf-map svg.jsplumb-connector.jsplumb-hover path:first-child{stroke:#eaeaea}.pf-map svg.jsplumb-connector.jsplumb-dragging{-webkit-transition:opacity 0.18s ease-out;transition:opacity 0.18s ease-out;opacity:0.4;z-index:80}.pf-map svg.pf-map-connection-jumpbridge{z-index:50}.pf-map svg.pf-map-connection-jumpbridge path:first-child{stroke:rgba(255,255,255,0)}.pf-map svg.pf-map-connection-jumpbridge path:nth-child(2){stroke:#568a89}.pf-map svg.pf-map-connection-jumpbridge:hover path:first-child{stroke:rgba(255,255,255,0)}.pf-map svg.pf-map-connection-jumpbridge:hover path:nth-child(2){stroke:#eaeaea}.pf-map svg.pf-map-connection-stargate{z-index:60}.pf-map svg.pf-map-connection-stargate path:first-child{stroke:#63676a}.pf-map svg.pf-map-connection-stargate path:nth-child(2){stroke:#313966}.pf-map svg.pf-map-connection-stargate:hover path:first-child{stroke:#eaeaea}.pf-map svg.pf-map-connection-wh-fresh,.pf-map svg.pf-map-connection-wh-reduced,.pf-map svg.pf-map-connection-wh-critical,.pf-map svg.pf-map-connection-wh-eol{z-index:70}.pf-map svg.pf-map-connection-wh-eol path:first-child{stroke:#d747d6}.pf-map svg.pf-map-connection-wh-eol:hover path:first-child{stroke:#eaeaea}.pf-map svg.pf-map-connection-wh-reduced path:nth-child(2){stroke:#e28a0d}.pf-map svg.pf-map-connection-wh-critical path:nth-child(2){stroke:#a52521}.pf-map svg.pf-map-connection-active{filter:drop-shadow(0px 0px 3px #ffb)}.pf-map .pf-map-connection-overlay{padding:1px 4px;font-size:10px;z-index:1020;background-color:#3c3f41;color:#adadad;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.pf-map .frig{background-color:#f0ad4e;color:#1d1d1d}.pf-map .mass{background-color:#a52521;color:#eaeaea}.pf-map .eol{background-color:#3c3f41;color:#d747d6}.pf-map .pf-map-connection-arrow-overlay{stroke:#313335;fill:#5cb85c}.pf-map .pf-map-connection-diamond-overlay{stroke:#313335;fill:#d9534f;animation-name:pfPulseDanger;animation-duration:4s;animation-iteration-count:infinite}.pf-map .pf-map-connection-small-overlay{filter:blur(0px);-webkit-font-smoothing:antialiased;font-family:Arial, sans-serif;padding:0 2px;font-size:10px;z-index:1020;background-color:#3c3f41;color:#adadad;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.4);box-shadow:0 6px 12px rgba(0,0,0,0.4)}.ui-dialog-content label{min-width:60px}.dropdown-menu{font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;z-index:1020;will-change:opacity, top, left, transform}.dropdown-menu a{cursor:pointer}.dropdown-menu i{width:20px;pointer-events:none}.dropdown-menu .dropdown-menu{border-top-left-radius:0;border-bottom-left-radius:0;clip-path:inset(-12px -12px -12px 0px)}.dropdown-menu[role]>li{position:relative}.dropdown-menu[role]>li:before{content:'';position:absolute;background-color:#5cb85c;opacity:0;will-change:opacity,left;-webkit-transition:left 0.15s ease-out,opacity 0.15s ease-out;transition:left 0.15s ease-out,opacity 0.15s ease-out;width:2px;height:100%;left:0}.dropdown-menu[role]>li:hover:before{left:-4px;opacity:1}.pf-system-tooltip-inner{color:#adadad;padding:2px 4px;min-width:25px;-webkit-transition:color 0.2s ease-out;transition:color 0.2s ease-out}.pf-system-info-module h5{text-transform:capitalize}.pf-system-info-module .pf-system-info-description-area{min-height:123px}.pf-system-info-module .pf-system-info-description-area .editable-container{width:100%}.pf-system-info-module .pf-system-info-description-area .editable-container .editableform{width:100%}.pf-system-info-module .pf-system-info-description-area .editable-container .editableform .form-group{width:100%}.pf-system-info-module .pf-system-info-description-area .editable-container .editableform .form-group .editable-input{width:calc(100% - 75px)}.pf-system-info-module .pf-system-info-description-area .editable-container .editableform .form-group .editable-input textarea{width:100%;max-height:200px;resize:vertical}.pf-system-info-module .pf-system-info-description-area .pf-form-field-char-count{display:block;margin-top:10px}.pf-sig-table-module .pf-sig-table-clear-button{will-change:opacity, transform;display:none}.pf-sig-table-module .pf-sig-table{font-size:10px}.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text{white-space:normal}.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-desc-text.editable-empty{border-bottom:none}.pf-sig-table-module .pf-sig-table .pf-editable-description{background-color:#2b2b2b;max-height:50px}.pf-sig-table-module .pf-sig-table .pf-sig-table-edit-name-input{text-transform:uppercase}.pf-sig-table-module .pf-sig-table .pf-editable-filter{color:#63676a;border:none;font-style:normal}.pf-editable-filter-active{min-width:100px}.pf-system-graph-module .pf-system-graph{width:100%;height:100px}.pf-system-route-module .pf-system-route-table{width:100%;font-size:10px}.pf-system-route-module .pf-system-route-table td{text-transform:capitalize}.pf-system-route-module .pf-system-route-table td>.fa{font-size:10px}.pf-system-killboard-module .pf-system-killboard-graph-kills{width:100%;height:100px;position:relative;margin-bottom:30px}.pf-system-killboard-module .pf-system-killboard-list{padding-bottom:10px;border-bottom:1px solid #2b2b2b}.pf-system-killboard-module .pf-system-killboard-list li{margin-left:0;overflow:visible;min-height:50px;will-change:margin-left;-webkit-transition:margin-left 0.12s cubic-bezier(0.3, 0.8, 0.8, 1.7);transition:margin-left 0.12s cubic-bezier(0.3, 0.8, 0.8, 1.7)}.pf-system-killboard-module .pf-system-killboard-list li h5{white-space:nowrap}.pf-system-killboard-module .pf-system-killboard-list li h3{width:120px;display:inline-block}.pf-system-killboard-module .pf-system-killboard-list li .pf-system-killboard-img-corp{margin-right:10px;width:16px}.pf-system-killboard-module .pf-system-killboard-list li .pf-system-killboard-img-ship{width:50px;margin-right:10px;border:1px solid #2b2b2b;transform:translateZ(1px);will-change:border-color;-moz-border-radius:25px;-webkit-border-radius:25px;border-radius:25px;-webkit-transition:border-color 0.12s ease-out;transition:border-color 0.12s ease-out}.pf-system-killboard-module .pf-system-killboard-list li:before{content:"\f054";font-family:FontAwesome;position:absolute;z-index:10;left:-25px;top:15px;color:#477372;opacity:0;will-change:opacity, left;-webkit-transition:all 0.12s ease-out;transition:all 0.12s ease-out}.pf-system-killboard-module .pf-system-killboard-list li:hover{margin-left:20px}.pf-system-killboard-module .pf-system-killboard-list li:hover .pf-system-killboard-img-ship{border-color:#568a89}.pf-system-killboard-module .pf-system-killboard-list li:hover:before{opacity:1;left:-20px}.pf-connection-info-module .row{display:flex;align-items:stretch;flex-wrap:wrap}.pf-connection-info-module .pf-dynamic-area{display:flex;justify-content:center;align-items:center;margin-bottom:10px;min-height:inherit}.pf-connection-info-module .pf-connection-info-table{width:100%;font-size:10px}.pf-connection-info-module .pf-connection-info-table td>.fa{font-size:10px}input,select{background-color:#313335;color:#adadad;border:1px solid #63676a;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}input:focus,select:focus{border-color:#568a89}input:-webkit-autofill,select:-webkit-autofill{background-color:#313335 !important;-webkit-box-shadow:0 0 0 50px #313335 inset !important;box-shadow:0 0 0 50px #313335 inset !important;-webkit-text-fill-color:#adadad}input:-webkit-autofill:focus,select:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 50px #313335 inset !important;box-shadow:0 0 0 50px #313335 inset !important;-webkit-text-fill-color:#adadad}input::-webkit-file-upload-button,select::-webkit-file-upload-button{background-color:transparent;border:none;color:#63676a;outline:none}input[disabled]::-moz-placeholder,select[disabled]::-moz-placeholder{color:transparent;opacity:1}input[disabled]:-ms-input-placeholder,select[disabled]:-ms-input-placeholder{color:transparent}input[disabled]::-webkit-input-placeholder,select[disabled]::-webkit-input-placeholder{color:transparent}textarea{min-height:32px;max-height:400px;resize:vertical}fieldset[disabled] .form-control{color:#63676a}fieldset[disabled] .form-control::-moz-placeholder{color:transparent;opacity:1}fieldset[disabled] .form-control:-ms-input-placeholder{color:transparent}fieldset[disabled] .form-control::-webkit-input-placeholder{color:transparent}fieldset[disabled] .input-icon-left .fa-stack i:last-child,fieldset[disabled] .input-icon-right .fa-stack i:last-child{color:#3c3f41}.input-icon-left:not(.input-icon-right) .fa-stack:first-child{left:14px}.input-icon-right:not(.input-icon-left) .fa-stack:first-child{right:14px}.input-icon-left.input-icon-right .fa-stack:first-child{left:14px}.input-icon-left.input-icon-right .fa-stack:nth-child(2){right:14px}.input-icon-left .fa-stack,.input-icon-right .fa-stack{position:absolute;top:4px}.input-icon-left .fa-stack i:first-child,.input-icon-right .fa-stack i:first-child{color:#63676a}.input-icon-left .fa-stack i:last-child,.input-icon-right .fa-stack i:last-child{color:#313335}.btn-fake{border:none;text-align:left;cursor:default;opacity:1 !important;color:#63676a !important;background-color:#3c3f41 !important}.pf-form-dropzone{border:2px dashed #2b2b2b;height:100px;background-color:#353739;text-align:center;font-size:20px;line-height:100px;margin:15px 0;color:#2b2b2b;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:color 0.18s ease-out,border-color 0.18s ease-out;transition:color 0.18s ease-out,border-color 0.18s ease-out}.pf-form-dropzone:hover{color:#568a89;border-color:#568a89;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.toggle.btn:active{box-shadow:none}.toggle .toggle-group .btn{padding:0px 5px}.pf-icon{display:inline-block}.pf-icon.disabled{opacity:0.5;color:#63676a}.pf-icon-dotlan{background:url('data:image/png;base64,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');width:17px;height:17px;opacity:0.8;margin:-5px 0px 0 10px}.pf-icon-wormhol-es{background:url('data:image/png;base64,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');width:17px;height:17px;opacity:0.8;margin:-5px 0px 0 10px}.modal-content h2{font-family:"Oxygen","Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:0px;font-size:14px;margin:20px 0;line-height:normal}.modal-content h2.pf-dynamic-area,.modal-content h4.pf-dynamic-area{min-height:0;margin:0 0 10px 0}.modal-content h2.pf-dynamic-area>img,.modal-content h4.pf-dynamic-area>img{margin:-10px 5px -10px -10px;width:35px}.modal-content h2[data-toggle="collapse"],.modal-content h4[data-toggle="collapse"]{cursor:pointer}.modal-content h2[data-toggle="collapse"]:hover:after,.modal-content h4[data-toggle="collapse"]:hover:after{color:#e28a0d !important}.modal-content h2[data-toggle="collapse"]:after,.modal-content h4[data-toggle="collapse"]:after{content:"\f078";font-family:FontAwesome;font-style:normal;font-weight:normal;font-size:13px;padding-right:10px;position:absolute;color:#e28a0d;top:10px;right:6px}.modal-content h2[data-toggle="collapse"].collapsed:after,.modal-content h4[data-toggle="collapse"].collapsed:after{top:13px;right:5px;color:#63676a;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.modal-content .dataTables_wrapper+.alert{margin-top:10px}.modal-content .dataTable,.modal-content .table{font-size:10px;font-family:"Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif}.modal-content hr{margin:5px 0 15px 0;border-color:#63676a}.modal-content .well{margin-bottom:0}.modal-content .well .list-inline{margin-bottom:0}.modal-content .pf-wizard-navigation{margin:0}.modal-content .pf-wizard-navigation li:not(:last-child):before{border-top:1px solid #63676a;content:"";display:block;font-size:0;overflow:hidden;position:relative;top:12px;left:71px;right:1px;width:100%}.modal-content .pf-wizard-navigation li.finished:before{-moz-border-image:-moz-linear-gradient(left, #375959,#375959) 1 1%;-moz-border-image:linear-gradient(to right, #375959,#375959) 1 1%;-o-border-image:linear-gradient(to right, #375959,#375959) 1 1%;-webkit-border-image:-webkit-linear-gradient(left, #375959,#375959) 1 1%;-webkit-border-image:linear-gradient(to right, #375959,#375959) 1 1%;border-image:-moz-linear-gradient(left, #375959,#375959) 1 1%;border-image:-webkit-linear-gradient(left, #375959,#375959) 1 1%;border-image:linear-gradient(to right, #375959,#375959) 1 1%;border-bottom:0}.modal-content .pf-wizard-navigation li.active:before{-moz-border-image:-moz-linear-gradient(left, #4f9e4f,#63676a) 1 1%;-moz-border-image:linear-gradient(to right, #4f9e4f,#63676a) 1 1%;-o-border-image:linear-gradient(to right, #4f9e4f,#63676a) 1 1%;-webkit-border-image:-webkit-linear-gradient(left, #4f9e4f,#63676a) 1 1%;-webkit-border-image:linear-gradient(to right, #4f9e4f,#63676a) 1 1%;border-image:-moz-linear-gradient(left, #4f9e4f,#63676a) 1 1%;border-image:-webkit-linear-gradient(left, #4f9e4f,#63676a) 1 1%;border-image:linear-gradient(to right, #4f9e4f,#63676a) 1 1%;border-bottom:0}.modal-content .pf-wizard-navigation li>h6{color:#63676a;font-size:11px;margin:5px}.modal-content .pf-wizard-navigation li a:hover+h6{color:#adadad}.modal-content .pf-wizard-navigation li.active a:not(.btn-danger)+h6{color:#adadad}#pf-settings-dialog .form-group .btn-sm,#pf-settings-dialog .form-group .btn-group-sm>.btn{padding:4px 7px 3px}#pf-settings-dialog #pf-dialog-captcha-wrapper{margin:0;padding:3px 0}#pf-map-dialog #pf-map-dialog-character-select,#pf-map-dialog #pf-map-dialog-corporation-select,#pf-map-dialog #pf-map-dialog-alliance-select{width:535px}#pf-route-dialog #pf-route-dialog-map-select{width:300px !important}#pf-shortcuts-dialog td kbd:last-of-type+i{display:none}#pf-manual-scrollspy{position:relative;height:700px;overflow:auto}.pf-system-dialog-select{width:270px !important}#pf-task-dialog .pf-task-dialog-status{min-height:inherit}#pf-map-info-logs{margin-bottom:10px}#pf-stats-dialog .pf-dynamic-area{margin-bottom:10px}.pf-jump-info-dialog blockquote{margin-top:15px;margin-bottom:5px}.pf-credits-dialog .pf-credits-logo-background{overflow:visible;background:url("../img/logo_bg.png");background-size:cover;padding:20px;margin-bottom:20px}.pf-credits-dialog #pf-logo-container{width:355px;height:366px;margin:0 auto}.pf-credits-dialog .pf-dynamic-area{min-height:50px}.pf-credits-dialog .dl-horizontal{display:inline-block;width:48%}.pf-credits-dialog .btn{padding:0}.pf-credits-dialog blockquote{font-size:14px}.pf-log-graph{height:100px;width:100%}.timeline{list-style:none;position:relative}.timeline:before{top:0;bottom:0;position:absolute;content:" ";width:1px;left:50%;margin-top:20px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzRmOWU0ZiIvPjxzdG9wIG9mZnNldD0iMjUlIiBzdG9wLWNvbG9yPSIjNjM2NzZhIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4f9e4f),color-stop(25%, #63676a));background-image:-moz-linear-gradient(top, #4f9e4f,#63676a 25%);background-image:-webkit-linear-gradient(top, #4f9e4f,#63676a 25%);background-image:linear-gradient(to bottom, #4f9e4f,#63676a 25%)}.timeline>li{margin-bottom:20px;position:relative}.timeline>li.timeline-first .timeline-title{color:#4f9e4f}.timeline>li.timeline-first .timeline-badge{background-color:#4f9e4f}.timeline>li:before,.timeline>li:after{content:" ";display:table}.timeline>li:after{clear:both}.timeline>li:before,.timeline>li:after{content:" ";display:table}.timeline>li:after{clear:both}.timeline>li>.timeline-panel{width:47%;float:left;border:1px solid #313335;padding:8px;position:relative;background-color:#313335;font-size:11px;-webkit-box-shadow:0 4px 10px rgba(0,0,0,0.4);box-shadow:0 4px 10px rgba(0,0,0,0.4);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.timeline>li>.timeline-panel:before{content:" ";position:absolute;top:10px;right:-8px;display:inline-block;border-top:7px solid transparent;border-left:7px solid #63676a;border-right:0 solid #63676a;border-bottom:7px solid transparent}.timeline>li>.timeline-panel:after{content:" ";position:absolute;top:10px;right:-8px;display:inline-block;border-top:7px solid transparent;border-left:7px solid #63676a;border-right:0 solid #63676a;border-bottom:7px solid transparent}.timeline>li>.timeline-badge{color:#2b2b2b;width:22px;height:22px;line-height:22px;text-align:center;position:absolute;top:7px;left:50%;margin-left:-11px;background-color:#63676a;z-index:100;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%}.timeline>li.timeline-inverted>.timeline-panel{float:right}.timeline>li.timeline-inverted>.timeline-panel:before{border-left-width:0;border-right-width:7px;left:-8px;right:auto}.timeline>li.timeline-inverted>.timeline-panel:after{border-left-width:0;border-right-width:8px;left:-9px;right:auto}.timeline-title{margin-top:0;color:inherit}.timeline-body>hr{display:none}.timeline-body>hr ~ *{display:none}.timeline-body>p,.timeline-body>ul{margin-bottom:0;list-style-type:disc;margin-left:15px}.timeline-body>p+p{margin-top:5px}@media (max-width: 1200px){ul.timeline:before{left:40px}ul.timeline>li>.timeline-panel{width:calc(100% - 62px)}ul.timeline>li>.timeline-badge{left:29px;margin-left:0;top:6px}ul.timeline>li>.timeline-panel{float:right}ul.timeline>li>.timeline-panel:before{border-left-width:0;border-right-width:7px;left:-8px;right:auto}ul.timeline>li>.timeline-panel:after{border-left-width:0;border-right-width:7px;left:-8px;right:auto}}.ribbon-wrapper{width:72px;height:88px;overflow:hidden;position:absolute;top:-3px;right:-3px;pointer-events:none}.ribbon{font:bold 12px "Oxygen Bold","Helvetica Neue",Helvetica,Arial,sans-serif;color:#2b2b2b;text-align:center;text-shadow:rgba(255,255,255,0.2) 0px 1px 0px;position:relative;padding:3px 0;left:-4px;top:16px;width:99px;-webkit-box-shadow:2px 3px 3px rgba(0,0,0,0.2);box-shadow:2px 3px 3px rgba(0,0,0,0.2);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-webkit-transform:rotate(45deg);transform:rotate(45deg)}.ribbon:before,.ribbon:after{content:"";border-left:3px solid transparent;border-right:3px solid transparent;position:absolute;bottom:-3px}.ribbon.ribbon-default{color:#adadad;background-color:#353739;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzJkMzAzMSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzJhMmIyZCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #2d3031),color-stop(100%, #2a2b2d));background-image:-moz-linear-gradient(top, #2d3031,#2a2b2d);background-image:-webkit-linear-gradient(top, #2d3031,#2a2b2d);background-image:linear-gradient(to bottom, #2d3031,#2a2b2d)}.ribbon.ribbon-default:before,.ribbon.ribbon-default:after{border-top:3px solid #000}.ribbon.ribbon-green{background-color:#5cb85c;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzUxYjM1MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzRhOTQ0YSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #51b351),color-stop(100%, #4a944a));background-image:-moz-linear-gradient(top, #51b351,#4a944a);background-image:-webkit-linear-gradient(top, #51b351,#4a944a);background-image:linear-gradient(to bottom, #51b351,#4a944a)}.ribbon.ribbon-green:before,.ribbon.ribbon-green:after{border-top:3px solid #285028}.ribbon.ribbon-orange{background-color:#e28a0d;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Q0ODEwYyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2I0NmQwYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #d4810c),color-stop(100%, #b46d0b));background-image:-moz-linear-gradient(top, #d4810c,#b46d0b);background-image:-webkit-linear-gradient(top, #d4810c,#b46d0b);background-image:linear-gradient(to bottom, #d4810c,#b46d0b)}.ribbon.ribbon-orange:before,.ribbon.ribbon-orange:after{border-top:3px solid #6c4107}.ribbon.ribbon-red{background-color:#d9534f;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2M5MzAyYyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2E4MjgyNCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #c9302c),color-stop(100%, #a82824));background-image:-moz-linear-gradient(top, #c9302c,#a82824);background-image:-webkit-linear-gradient(top, #c9302c,#a82824);background-image:linear-gradient(to bottom, #c9302c,#a82824)}.ribbon.ribbon-red:before,.ribbon.ribbon-red:after{border-top:3px solid #541412}.ribbon.ribbon-blue{background-color:#428bca;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzM3ODRjNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzJkNWM4NSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #3784c5),color-stop(100%, #2d5c85));background-image:-moz-linear-gradient(top, #3784c5,#2d5c85);background-image:-webkit-linear-gradient(top, #3784c5,#2d5c85);background-image:linear-gradient(to bottom, #3784c5,#2d5c85)}.ribbon.ribbon-blue:before,.ribbon.ribbon-blue:after{border-top:3px solid #1a344c}.ribbon:before{left:0}.ribbon:after{right:0}.pf-loading-bars-container{position:relative;z-index:4;margin:0 auto;left:5px;right:19px;width:70px;height:50px;list-style:none}.pf-loading-bars-container .pf-loading-bars-loader{position:absolute;z-index:3;margin:0 auto;left:0;right:0;top:50%;margin-top:-19px;width:56px;height:37px;list-style:none}.pf-loading-bars-container .pf-loading-bars-loader li{background-color:#5cb85c;width:6px;height:6px;float:right;margin-right:3px !important;-webkit-box-shadow:0px 12px 6px rgba(0,0,0,0.2);box-shadow:0px 12px 6px rgba(0,0,0,0.2)}.pf-loading-bars-container .pf-loading-bars-loader li:first-child{-webkit-animation:cssload-loadbars 1.75s cubic-bezier(0.645, 0.045, 0.355, 1) infinite 0s;animation:cssload-loadbars 1.75s cubic-bezier(0.645, 0.045, 0.355, 1) infinite 0s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(2){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -0.35s;animation:cssload-loadbars 1.75s ease-in-out infinite -0.35s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(3){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -0.7s;animation:cssload-loadbars 1.75s ease-in-out infinite -0.7s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(4){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -1.05s;animation:cssload-loadbars 1.75s ease-in-out infinite -1.05s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(5){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -1.4s;animation:cssload-loadbars 1.75s ease-in-out infinite -1.4s}.pf-loading-bars-container .pf-loading-bars-loader li:nth-child(6){-webkit-animation:cssload-loadbars 1.75s ease-in-out infinite -1.75s;animation:cssload-loadbars 1.75s ease-in-out infinite -1.75s}@-webkit-keyframes cssload-loadbars{0%{height:6px;margin-top:16px}33%{height:6px;margin-top:16px}66%{height:31px;margin-top:0px}100%{height:6px;margin-top:16px}}@-moz-keyframes cssload-loadbars{0%{height:6px;margin-top:16px}33%{height:6px;margin-top:16px}66%{height:31px;margin-top:0px}100%{height:6px;margin-top:16px}}@-ms-keyframes cssload-loadbars{0%{height:6px;margin-top:16px}33%{height:6px;margin-top:16px}66%{height:31px;margin-top:0px}100%{height:6px;margin-top:16px}}@keyframes cssload-loadbars{0%{height:6px;margin-top:16px}33%{height:6px;margin-top:16px}66%{height:31px;margin-top:0px}100%{height:6px;margin-top:16px}}.pf-landing-sticky-panel{position:fixed;min-width:100px;border-radius:5px;padding:7px;box-shadow:0 4px 10px rgba(0,0,0,0.4);background-color:rgba(43,43,43,0.7)}.pf-landing-sticky-panel h4{margin:5px 0 10px 0}.pf-landing-sticky-panel ul{margin-bottom:0}.pf-landing-sticky-panel ul li{text-transform:lowercase}#pf-landing-server-panel{top:50px;left:10px}#pf-landing-admin-panel{bottom:10px;right:10px}.youtube{background-position:center;background-repeat:no-repeat;position:relative;display:inline-block;overflow:hidden;transition:all 200ms ease-out;cursor:pointer}.youtube .play{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAERklEQVR4nOWbTWhcVRTHb1IJVoxGtNCNdal2JYJReC6GWuO83PM/59yUS3FRFARdFlwYP1CfiojQWt36sRCUurRIdVFXIn41lAoVdRGrG1M01YpKrWjiYmaSl8ybZJL3cd+YA//NLObd3++eO8x79z5jSq5Gw+8kov0AP8vMR5l1BtBZQM4B8ks75wCdZdYZZj5qLZ4hov2Nht9Z9vhKKSIaB/gI4M4w62KeAO6Mte4lYOq20FxrlqqOibhHmeWbvNC9ZfDX1mLae391aN6limO/gwgvAPJbWeAZuSDingdwXTBw7/0IsyaA/Fkh+KqOkD+YNfHej1QKD+y7iVlOhgLvFqFfNJvNGyuBJ+KDAF8MDd0tgS8y64OlgSdJMsysL4cG7SOHkyQZLhTee7+d2R2rAVy/S+Jd7/32ouBHAP4gNNRGQyTHc/84NhqNywZp5rvjjnnvt21aABFeCQ+RLwAf2hQ8s7sv9OCLk6AHNgQvIrvbfzKCD76g/O6cu7lf/iER/aQGgy448pExZmhdegAPhR9sObFWH1gT3lp7DaA/5bkIgJhZPgsNmz02novj+KqeApj1ubwXWe4kdyeznAgNvTpE/HQmvKqOMeuFogTUVQSRno+iaLRLAJF7uIgL9O4ubgL8aWgB7S44mNX+35YpICUiAvS9sBLkq1WzT+NFffl6AuoiApi6NT37h6sWkBIRZGkQ8YtLgyji6e1mBYTqCEBPG2Naz+0BWQgtoGoRgCzEsd9hAN1X5BfnFZASUfrSAFQNsyZ1FJASUVpHiLinDJG8U2cBZYogkrcNs5waBAGdstbeU9zdqpw0gPwwSAI6VUxHyFlDpOcHUUBBIuYNs14aZAE5RVwyzPr3/0EAEY0TyfGNjBWQvwZ +CTSbehfAH29mrID8bET0+0EUkAd8WYDOmqJ3ecsG30yr9wqRfm6Y+a1BEFDEjHfHvWmY9ck6CygHvBVr8Xhtb4ZE5HZA3y8DvBNA1TjnrmXWf+sioMwZX5V/VHXMGGMMoKdDCxCRvRWBdzKzdHEO+EisilbPyopHYqp6S9UCAsz4iojI7hUDAtyXVQgIDd6KnOoaWNkbI6FaPSuZGyMArsi7MZoloB4zviI/Nhr3X95jltwTRQmoIfgisy5ai+me67OI7fE4nrqjrqfK1t0eby0FPRB6oGVlchL3rgnfrq19RKbVBdhV9IOSwJmfmJi4vi/4ThERitwyCxVAFqydshuCX5awhQ9KtmuIWd8IDZED/nXT77rvVVv6sHRKwjYi91poqP7Dr+Y6JJ1VSZIMA3wkPNy6bX+o8Bcm0sXMdwM8Fxo0A3xORPaWBp6uPXsmbxCRD0NDL0dOANhVCXy6iAjMcjbcrMt3RITKwdMVRdFo+y5yvkL4eWZ+zHt/ZVD4dEVRNGotpst+dZZZH8k86lqn2pIvT/eqrNfn2xuyqYPZ8mv7s8pfn/8Pybm4TIjanscAAAAASUVORK5CYII=") no-repeat center center;background-size:64px 64px;position:absolute;height:100%;width:100%;opacity:.8;filter:alpha(opacity=80);transition:all 0.2s ease-out}.youtube .play:hover{opacity:1;filter:alpha(opacity=100)} diff --git a/public/css/pathfinder.css.br b/public/css/pathfinder.css.br deleted file mode 100644 index 3f36dae9f49d8a84d3683d76d4677871018c591d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54745 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
        ajPgIlE~cHT}eX4@q6exb~UP9H<|{8*o~0 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 diff --git a/public/js/v1.3.0/app.js.map b/public/js/v1.3.0/app.js.map deleted file mode 100644 index 8dabdc54b..000000000 --- a/public/js/v1.3.0/app.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["app.js"],"names":["mainScriptPath","document","body","getAttribute","jsBaseUrl","requirejs","config","baseUrl","paths","layout","conf","dialog","templates","img","login","mappage","setup","admin","notification","jquery","bootstrap","text","mustache","localForage","velocity","velocityUI","slidebars","jsPlumb","farahey","customScrollbar","mousewheel","xEditable","morris","raphael","bootbox","easyPieChart","peityInlineChart","dragToSelect","hoverIntent","fullScreen","select2","validator","lazylinepainter","blueImpGallery","blueImpGalleryHelper","blueImpGalleryBootstrap","bootstrapConfirmation","bootstrapToggle","lazyload","easePack","tweenLite","datatables.loader","datatables.net","datatables.net-buttons","datatables.net-buttons-html","datatables.net-responsive","datatables.net-select","datatables.plugins.render.ellipsis","pnotify","pnotify.buttons","pnotify.confirm","pnotify.nonblock","pnotify.desktop","pnotify.history","pnotify.callbacks","pnotify.reference","shim","deps","exports","require"],"mappings":"AACA,IAAIA,eAAiBC,SAASC,KAAKC,aAAa,eAI5CC,UAAYH,SAASC,KAAKC,aAAa,gBAG3CE,UAAUC,QACNC,QAAS,KAETC,OACIC,OAAQ,SACRC,KAAM,WACNC,OAAQ,gBACRC,UAAW,kBACXC,IAAK,YAGLC,MAAO,cACPC,QAAS,gBACTC,MAAO,cACPC,MAAO,cACPC,aAAc,qBAEdC,OAAQ,uBACRC,UAAW,oBACXC,KAAM,qBACNC,SAAU,mBACVC,YAAa,sBACbC,SAAU,mBACVC,WAAY,sBACZC,UAAW,gBACXC,QAAS,wBACTC,QAAS,kBACTC,gBAAiB,kCACjBC,WAAY,4BACZC,UAAW,6BACXC,OAAQ,iBACRC,QAAS,kBACTC,QAAS,kBACTC,aAAc,8BACdC,iBAAkB,uBAClBC,aAAc,0BACdC,YAAa,kCACbC,WAAY,4BACZC,QAAS,kBACTC,UAAW,oBACXC,gBAAiB,uCACjBC,eAAgB,sBAChBC,qBAAsB,qBACtBC,wBAAyB,8BACzBC,sBAAuB,6BACvBC,gBAAiB,4BACjBC,SAAU,0BAGVC,SAAU,mBACVC,UAAW,oBAGXC,oBAAqB,0BACrBC,iBAAkB,6DAClBC,yBAA0B,yDAC1BC,8BAA+B,oDAC/BC,4BAA6B,+DAC7BC,wBAAyB,uDACzBC,qCAAsC,yCAGtCC,QAAS,sBACTC,kBAAmB,8BACnBC,kBAAmB,8BACnBC,mBAAoB,+BACpBC,kBAAmB,8BACnBC,kBAAmB,8BACnBC,oBAAqB,gCACrBC,oBAAqB,iCAEzBC,MACI9C,WACI+C,MAAO,WAEXvC,SACIuC,MAAO,YAEX3C,UACI2C,MAAO,WAEX1C,YACI0C,MAAO,aAEXzC,WACIyC,MAAO,WAEXtC,iBACIsC,MAAO,SAAU,eAErBhB,qBACIgB,MAAO,WAEXf,kBACIe,MAAO,WAEXd,0BACIc,MAAO,mBAEXb,+BACIa,MAAO,2BAEXZ,6BACIY,MAAO,mBAEXX,yBACIW,MAAO,mBAEXV,sCACIU,MAAO,mBAEXpC,WACIoC,MAAO,cAEXjC,SACIiC,MAAO,SAAU,aACjBC,QAAS,WAEbpC,QACImC,MAAO,SAAU,WACjBC,QAAS,UAEbV,SACIS,MAAQ,WAEZhC,cACIgC,MAAQ,WAEZ/B,kBACI+B,MAAQ,WAEZ9B,cACI8B,MAAQ,WAEZ7B,aACI6B,MAAQ,WAEZ5B,YACI4B,MAAQ,WAEZ3B,SACI2B,MAAQ,UACRC,QAAS,WAEb3B,WACI0B,MAAQ,SAAU,cAEtBzB,iBACIyB,MAAQ,SAAU,cAEtBxB,gBACIwB,MAAQ,WAEZrB,uBACIqB,MAAQ,cAEZpB,iBACIoB,MAAQ,WAEZnB,UACImB,MAAQ,cAQpBE,QAAQ/D,QACJC,QAASH,YAIbC,WAAYL","file":"app.js","sourceRoot":"/js"} \ No newline at end of file diff --git a/public/js/v1.3.0/app/admin.js b/public/js/v1.3.0/app/admin.js deleted file mode 100644 index 47dba3ae2..000000000 --- a/public/js/v1.3.0/app/admin.js +++ /dev/null @@ -1,2 +0,0 @@ -if(function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";function n(e,t){var n=(t=t||ee).createElement("script");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}function r(e){var t=!!e&&"length"in e&&e.length,n=pe.type(e);return"function"!==n&&!pe.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function o(e,t,n){return pe.isFunction(t)?pe.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?pe.grep(e,function(e){return e===t!==n}):"string"!=typeof t?pe.grep(e,function(e){return ae.call(t,e)>-1!==n}):Se.test(t)?pe.filter(t,e,n):(t=pe.filter(t,e),pe.grep(e,function(e){return ae.call(t,e)>-1!==n&&1===e.nodeType}))}function a(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function i(e){var t={};return pe.each(e.match(ke)||[],function(e,n){t[n]=!0}),t}function s(e){return e}function l(e){throw e}function c(e,t,n){var r;try{e&&pe.isFunction(r=e.promise)?r.call(e).done(t).fail(n):e&&pe.isFunction(r=e.then)?r.call(e,t,n):t.call(void 0,e)}catch(e){n.call(void 0,e)}}function u(){ee.removeEventListener("DOMContentLoaded",u),e.removeEventListener("load",u),pe.ready()}function d(){this.expando=pe.expando+d.uid++}function f(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:Ne.test(e)?JSON.parse(e):e)}function p(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Le,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n=f(n)}catch(e){}Pe.set(e,t,n)}else n=void 0;return n}function h(e,t,n,r){var o,a=1,i=20,s=r?function(){return r.cur()}:function(){return pe.css(e,t,"")},l=s(),c=n&&n[3]||(pe.cssNumber[t]?"":"px"),u=(pe.cssNumber[t]||"px"!==c&&+l)&&Be.exec(pe.css(e,t));if(u&&u[3]!==c){c=c||u[3],n=n||[],u=+l||1;do{a=a||".5",u/=a,pe.style(e,t,u+c)}while(a!==(a=s()/l)&&1!==a&&--i)}return n&&(u=+u||+l||0,o=n[1]?u+(n[1]+1)*n[2]:+n[2],r&&(r.unit=c,r.start=u,r.end=o)),o}function m(e){var t,n=e.ownerDocument,r=e.nodeName,o=Ue[r];return o||(t=n.body.appendChild(n.createElement(r)),o=pe.css(t,"display"),t.parentNode.removeChild(t),"none"===o&&(o="block"),Ue[r]=o,o)}function g(e,t){for(var n,r,o=[],a=0,i=e.length;a-1)o&&o.push(a);else if(c=pe.contains(a.ownerDocument,a),i=v(d.appendChild(a),"script"),c&&y(i),n)for(u=0;a=i[u++];)Ve.test(a.type||"")&&n.push(a);return d}function x(){return!0}function w(){return!1}function C(){try{return ee.activeElement}catch(e){}}function S(e,t,n,r,o,a){var i,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)S(e,s,n,r,t[s],a);return e}if(null==r&&null==o?(o=n,r=n=void 0):null==o&&("string"==typeof n?(o=r,r=void 0):(o=r,r=n,n=void 0)),!1===o)o=w;else if(!o)return e;return 1===a&&(i=o,o=function(e){return pe().off(e),i.apply(this,arguments)},o.guid=i.guid||(i.guid=pe.guid++)),e.each(function(){pe.event.add(this,t,o,r,n)})}function T(e,t){return pe.nodeName(e,"table")&&pe.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e:e}function D(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function _(e){var t=tt.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function I(e,t){var n,r,o,a,i,s,l,c;if(1===t.nodeType){if(Re.hasData(e)&&(a=Re.access(e),i=Re.set(t,a),c=a.events)){delete i.handle,i.events={};for(o in c)for(n=0,r=c[o].length;n1&&"string"==typeof h&&!de.checkClone&&et.test(h))return e.each(function(n){var a=e.eq(n);m&&(t[0]=h.call(this,n,a.html())),A(a,t,r,o)});if(f&&(a=b(t,e[0].ownerDocument,!1,e,o),i=a.firstChild,1===a.childNodes.length&&(a=i),i||o)){for(l=(s=pe.map(v(a,"script"),D)).length;d=0&&nw.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[B]=!0,e}function o(e){var t=F.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function a(e,t){for(var n=e.split("|"),r=n.length;r--;)w.attrHandle[n[r]]=t}function i(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Ce(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function l(e){return r(function(t){return t=+t,r(function(n,r){for(var o,a=e([],n.length,t),i=a.length;i--;)n[o=a[i]]&&(n[o]=!(r[o]=n[o]))})})}function c(e){return e&&void 0!==e.getElementsByTagName&&e}function u(){}function d(e){for(var t=0,n=e.length,r="";t1?function(t,n,r){for(var o=e.length;o--;)if(!e[o](t,n,r))return!1;return!0}:e[0]}function h(e,n,r){for(var o=0,a=n.length;o-1&&(r[c]=!(i[c]=d))}}else b=m(b===i?b.splice(g,b.length):b),a?a(null,i,b,l):G.apply(i,b)})}function v(e){for(var t,n,r,o=e.length,a=w.relative[e[0].type],i=a||w.relative[" "],s=a?1:0,l=f(function(e){return e===t},i,!0),c=f(function(e){return Z(t,e)>-1},i,!0),u=[function(e,n,r){var o=!a&&(r||n!==I)||((t=n).nodeType?l(e,n,r):c(e,n,r));return t=null,o}];s1&&p(u),s>1&&d(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(ae,"$1"),n,s0,a=e.length>0,i=function(r,i,s,l,c){var u,d,f,p=0,h="0",g=r&&[],v=[],y=I,b=r||a&&w.find.TAG("*",c),x=H+=null==y?1:Math.random()||.1,C=b.length;for(c&&(I=i===F||i||c);h!==C&&null!=(u=b[h]);h++){if(a&&u){for(d=0,i||u.ownerDocument===F||(O(u),s=!R);f=e[d++];)if(f(u,i||F,s)){l.push(u);break}c&&(H=x)}o&&((u=!f&&u)&&p--,r&&g.push(u))}if(p+=h,o&&h!==p){for(d=0;f=n[d++];)f(g,v,i,s);if(r){if(p>0)for(;h--;)g[h]||v[h]||(v[h]=Y.call(l));v=m(v)}G.apply(l,v),c&&!r&&v.length>0&&p+n.length>1&&t.uniqueSort(l)}return c&&(H=x,I=y),g};return o?r(i):i}var b,x,w,C,S,T,D,_,I,k,A,O,F,E,R,P,N,L,j,B="sizzle"+1*new Date,M=e.document,H=0,$=0,U=n(),W=n(),q=n(),V=function(e,t){return e===t&&(A=!0),0},z={}.hasOwnProperty,X=[],Y=X.pop,K=X.push,G=X.push,Q=X.slice,Z=function(e,t){for(var n=0,r=e.length;n+~]|"+ee+")"+ee+"*"),le=new RegExp("="+ee+"*([^\\]'\"]*?)"+ee+"*\\]","g"),ce=new RegExp(re),ue=new RegExp("^"+te+"$"),de={ID:new RegExp("^#("+te+")"),CLASS:new RegExp("^\\.("+te+")"),TAG:new RegExp("^("+te+"|[*])"),ATTR:new RegExp("^"+ne),PSEUDO:new RegExp("^"+re),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ee+"*(even|odd|(([+-]|)(\\d*)n|)"+ee+"*(?:([+-]|)"+ee+"*(\\d+)|))"+ee+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+ee+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ee+"*((?:-\\d)?\\d*)"+ee+"*\\)|)(?=[^-]|$)","i")},fe=/^(?:input|select|textarea|button)$/i,pe=/^h\d$/i,he=/^[^{]+\{\s*\[native \w/,me=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ge=/[+~]/,ve=new RegExp("\\\\([\\da-f]{1,6}"+ee+"?|("+ee+")|.)","ig"),ye=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},be=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,xe=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},we=function(){O()},Ce=f(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{G.apply(X=Q.call(M.childNodes),M.childNodes),X[M.childNodes.length].nodeType}catch(e){G={apply:X.length?function(e,t){K.apply(e,Q.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}x=t.support={},S=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},O=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:M;return r!==F&&9===r.nodeType&&r.documentElement?(F=r,E=F.documentElement,R=!S(F),M!==F&&(n=F.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",we,!1):n.attachEvent&&n.attachEvent("onunload",we)),x.attributes=o(function(e){return e.className="i",!e.getAttribute("className")}),x.getElementsByTagName=o(function(e){return e.appendChild(F.createComment("")),!e.getElementsByTagName("*").length}),x.getElementsByClassName=he.test(F.getElementsByClassName),x.getById=o(function(e){return E.appendChild(e).id=B,!F.getElementsByName||!F.getElementsByName(B).length}),x.getById?(w.filter.ID=function(e){var t=e.replace(ve,ye);return function(e){return e.getAttribute("id")===t}},w.find.ID=function(e,t){if(void 0!==t.getElementById&&R){var n=t.getElementById(e);return n?[n]:[]}}):(w.filter.ID=function(e){var t=e.replace(ve,ye);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},w.find.ID=function(e,t){if(void 0!==t.getElementById&&R){var n,r,o,a=t.getElementById(e);if(a){if((n=a.getAttributeNode("id"))&&n.value===e)return[a];for(o=t.getElementsByName(e),r=0;a=o[r++];)if((n=a.getAttributeNode("id"))&&n.value===e)return[a]}return[]}}),w.find.TAG=x.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):x.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],o=0,a=t.getElementsByTagName(e);if("*"===e){for(;n=a[o++];)1===n.nodeType&&r.push(n);return r}return a},w.find.CLASS=x.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&R)return t.getElementsByClassName(e)},N=[],P=[],(x.qsa=he.test(F.querySelectorAll))&&(o(function(e){E.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&P.push("[*^$]="+ee+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||P.push("\\["+ee+"*(?:value|"+J+")"),e.querySelectorAll("[id~="+B+"-]").length||P.push("~="),e.querySelectorAll(":checked").length||P.push(":checked"),e.querySelectorAll("a#"+B+"+*").length||P.push(".#.+[+~]")}),o(function(e){e.innerHTML="";var t=F.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&P.push("name"+ee+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&P.push(":enabled",":disabled"),E.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&P.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),P.push(",.*:")})),(x.matchesSelector=he.test(L=E.matches||E.webkitMatchesSelector||E.mozMatchesSelector||E.oMatchesSelector||E.msMatchesSelector))&&o(function(e){x.disconnectedMatch=L.call(e,"*"),L.call(e,"[s!='']:x"),N.push("!=",re)}),P=P.length&&new RegExp(P.join("|")),N=N.length&&new RegExp(N.join("|")),t=he.test(E.compareDocumentPosition),j=t||he.test(E.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},V=t?function(e,t){if(e===t)return A=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!x.sortDetached&&t.compareDocumentPosition(e)===n?e===F||e.ownerDocument===M&&j(M,e)?-1:t===F||t.ownerDocument===M&&j(M,t)?1:k?Z(k,e)-Z(k,t):0:4&n?-1:1)}:function(e,t){if(e===t)return A=!0,0;var n,r=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(!o||!a)return e===F?-1:t===F?1:o?-1:a?1:k?Z(k,e)-Z(k,t):0;if(o===a)return i(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)l.unshift(n);for(;s[r]===l[r];)r++;return r?i(s[r],l[r]):s[r]===M?-1:l[r]===M?1:0},F):F},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==F&&O(e),n=n.replace(le,"='$1']"),x.matchesSelector&&R&&!q[n+" "]&&(!N||!N.test(n))&&(!P||!P.test(n)))try{var r=L.call(e,n);if(r||x.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return t(n,F,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==F&&O(e),j(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==F&&O(e);var n=w.attrHandle[t.toLowerCase()],r=n&&z.call(w.attrHandle,t.toLowerCase())?n(e,t,!R):void 0;return void 0!==r?r:x.attributes||!R?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(be,xe)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,o=0;if(A=!x.detectDuplicates,k=!x.sortStable&&e.slice(0),e.sort(V),A){for(;t=e[o++];)t===e[o]&&(r=n.push(o));for(;r--;)e.splice(n[r],1)}return k=null,e},C=t.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=C(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=C(t);return n},(w=t.selectors={cacheLength:50,createPseudo:r,match:de,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(ve,ye),e[3]=(e[3]||e[4]||e[5]||"").replace(ve,ye),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return de.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&ce.test(n)&&(t=T(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(ve,ye).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=U[e+" "];return t||(t=new RegExp("(^|"+ee+")"+e+"("+ee+"|$)"))&&U(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(o){var a=t.attr(o,e);return null==a?"!="===n:!n||(a+="","="===n?a===r:"!="===n?a!==r:"^="===n?r&&0===a.indexOf(r):"*="===n?r&&a.indexOf(r)>-1:"$="===n?r&&a.slice(-r.length)===r:"~="===n?(" "+a.replace(oe," ")+" ").indexOf(r)>-1:"|="===n&&(a===r||a.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,o){var a="nth"!==e.slice(0,3),i="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===o?function(e){return!!e.parentNode}:function(t,n,l){var c,u,d,f,p,h,m=a!==i?"nextSibling":"previousSibling",g=t.parentNode,v=s&&t.nodeName.toLowerCase(),y=!l&&!s,b=!1;if(g){if(a){for(;m;){for(f=t;f=f[m];)if(s?f.nodeName.toLowerCase()===v:1===f.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[i?g.firstChild:g.lastChild],i&&y){for(b=(p=(c=(u=(d=(f=g)[B]||(f[B]={}))[f.uniqueID]||(d[f.uniqueID]={}))[e]||[])[0]===H&&c[1])&&c[2],f=p&&g.childNodes[p];f=++p&&f&&f[m]||(b=p=0)||h.pop();)if(1===f.nodeType&&++b&&f===t){u[e]=[H,p,b];break}}else if(y&&(f=t,d=f[B]||(f[B]={}),u=d[f.uniqueID]||(d[f.uniqueID]={}),c=u[e]||[],p=c[0]===H&&c[1],b=p),!1===b)for(;(f=++p&&f&&f[m]||(b=p=0)||h.pop())&&((s?f.nodeName.toLowerCase()!==v:1!==f.nodeType)||!++b||(y&&(d=f[B]||(f[B]={}),u=d[f.uniqueID]||(d[f.uniqueID]={}),u[e]=[H,b]),f!==t)););return(b-=o)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,n){var o,a=w.pseudos[e]||w.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return a[B]?a(n):a.length>1?(o=[e,e,"",n],w.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,o=a(e,n),i=o.length;i--;)r=Z(e,o[i]),e[r]=!(t[r]=o[i])}):function(e){return a(e,0,o)}):a}},pseudos:{not:r(function(e){var t=[],n=[],o=D(e.replace(ae,"$1"));return o[B]?r(function(e,t,n,r){for(var a,i=o(e,null,r,[]),s=e.length;s--;)(a=i[s])&&(e[s]=!(t[s]=a))}):function(e,r,a){return t[0]=e,o(t,null,a,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(ve,ye),function(t){return(t.textContent||t.innerText||C(t)).indexOf(e)>-1}}),lang:r(function(e){return ue.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(ve,ye).toLowerCase(),function(t){var n;do{if(n=R?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===E},focus:function(e){return e===F.activeElement&&(!F.hasFocus||F.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:s(!1),disabled:s(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!w.pseudos.empty(e)},header:function(e){return pe.test(e.nodeName)},input:function(e){return fe.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:l(function(){return[0]}),last:l(function(e,t){return[t-1]}),eq:l(function(e,t,n){return[n<0?n+t:n]}),even:l(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:l(function(e,t,n){for(var r=n<0?n+t:n;++r2&&"ID"===(i=a[0]).type&&9===t.nodeType&&R&&w.relative[a[1].type]){if(!(t=(w.find.ID(i.matches[0].replace(ve,ye),t)||[])[0]))return n;u&&(t=t.parentNode),e=e.slice(a.shift().value.length)}for(o=de.needsContext.test(e)?0:a.length;o--&&(i=a[o],!w.relative[s=i.type]);)if((l=w.find[s])&&(r=l(i.matches[0].replace(ve,ye),ge.test(a[0].type)&&c(t.parentNode)||t))){if(a.splice(o,1),!(e=r.length&&d(a)))return G.apply(n,r),n;break}}return(u||D(e,f))(r,t,!R,n,!t||ge.test(e)&&c(t.parentNode)||t),n},x.sortStable=B.split("").sort(V).join("")===B,x.detectDuplicates=!!A,O(),x.sortDetached=o(function(e){return 1&e.compareDocumentPosition(F.createElement("fieldset"))}),o(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||a("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),x.attributes&&o(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||a("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),o(function(e){return null==e.getAttribute("disabled")})||a(J,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);pe.find=ye,pe.expr=ye.selectors,pe.expr[":"]=pe.expr.pseudos,pe.uniqueSort=pe.unique=ye.uniqueSort,pe.text=ye.getText,pe.isXMLDoc=ye.isXML,pe.contains=ye.contains,pe.escapeSelector=ye.escape;var be=function(e,t,n){for(var r=[],o=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(o&&pe(e).is(n))break;r.push(e)}return r},xe=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},we=pe.expr.match.needsContext,Ce=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,Se=/^.[^:#\[\.,]*$/;pe.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?pe.find.matchesSelector(r,e)?[r]:[]:pe.find.matches(e,pe.grep(t,function(e){return 1===e.nodeType}))},pe.fn.extend({find:function(e){var t,n,r=this.length,o=this;if("string"!=typeof e)return this.pushStack(pe(e).filter(function(){for(t=0;t1?pe.uniqueSort(n):n},filter:function(e){return this.pushStack(o(this,e||[],!1))},not:function(e){return this.pushStack(o(this,e||[],!0))},is:function(e){return!!o(this,"string"==typeof e&&we.test(e)?pe(e):e||[],!1).length}});var Te,De=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(pe.fn.init=function(e,t,n){var r,o;if(!e)return this;if(n=n||Te,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:De.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof pe?t[0]:t,pe.merge(this,pe.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:ee,!0)),Ce.test(r[1])&&pe.isPlainObject(t))for(r in t)pe.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(o=ee.getElementById(r[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):pe.isFunction(e)?void 0!==n.ready?n.ready(e):e(pe):pe.makeArray(e,this)}).prototype=pe.fn,Te=pe(ee);var _e=/^(?:parents|prev(?:Until|All))/,Ie={children:!0,contents:!0,next:!0,prev:!0};pe.fn.extend({has:function(e){var t=pe(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&pe.find.matchesSelector(n,e))){a.push(n);break}return this.pushStack(a.length>1?pe.uniqueSort(a):a)},index:function(e){return e?"string"==typeof e?ae.call(pe(e),this[0]):ae.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(pe.uniqueSort(pe.merge(this.get(),pe(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),pe.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return be(e,"parentNode")},parentsUntil:function(e,t,n){return be(e,"parentNode",n)},next:function(e){return a(e,"nextSibling")},prev:function(e){return a(e,"previousSibling")},nextAll:function(e){return be(e,"nextSibling")},prevAll:function(e){return be(e,"previousSibling")},nextUntil:function(e,t,n){return be(e,"nextSibling",n)},prevUntil:function(e,t,n){return be(e,"previousSibling",n)},siblings:function(e){return xe((e.parentNode||{}).firstChild,e)},children:function(e){return xe(e.firstChild)},contents:function(e){return e.contentDocument||pe.merge([],e.childNodes)}},function(e,t){pe.fn[e]=function(n,r){var o=pe.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(o=pe.filter(r,o)),this.length>1&&(Ie[e]||pe.uniqueSort(o),_e.test(e)&&o.reverse()),this.pushStack(o)}});var ke=/[^\x20\t\r\n\f]+/g;pe.Callbacks=function(e){e="string"==typeof e?i(e):pe.extend({},e);var t,n,r,o,a=[],s=[],l=-1,c=function(){for(o=e.once,r=t=!0;s.length;l=-1)for(n=s.shift();++l-1;)a.splice(n,1),n<=l&&l--}),this},has:function(e){return e?pe.inArray(e,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return o=s=[],a=n="",this},disabled:function(){return!a},lock:function(){return o=s=[],n||t||(a=n=""),this},locked:function(){return!!o},fireWith:function(e,n){return o||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||c()),this},fire:function(){return u.fireWith(this,arguments),this},fired:function(){return!!r}};return u},pe.extend({Deferred:function(t){var n=[["notify","progress",pe.Callbacks("memory"),pe.Callbacks("memory"),2],["resolve","done",pe.Callbacks("once memory"),pe.Callbacks("once memory"),0,"resolved"],["reject","fail",pe.Callbacks("once memory"),pe.Callbacks("once memory"),1,"rejected"]],r="pending",o={state:function(){return r},always:function(){return a.done(arguments).fail(arguments),this},catch:function(e){return o.then(null,e)},pipe:function(){var e=arguments;return pe.Deferred(function(t){pe.each(n,function(n,r){var o=pe.isFunction(e[r[4]])&&e[r[4]];a[r[1]](function(){var e=o&&o.apply(this,arguments);e&&pe.isFunction(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,o?[e]:arguments)})}),e=null}).promise()},then:function(t,r,o){function a(t,n,r,o){return function(){var c=this,u=arguments,d=function(){var e,d;if(!(t=i&&(r!==l&&(c=void 0,u=[e]),n.rejectWith(c,u))}};t?f():(pe.Deferred.getStackHook&&(f.stackTrace=pe.Deferred.getStackHook()),e.setTimeout(f))}}var i=0;return pe.Deferred(function(e){n[0][3].add(a(0,e,pe.isFunction(o)?o:s,e.notifyWith)),n[1][3].add(a(0,e,pe.isFunction(t)?t:s)),n[2][3].add(a(0,e,pe.isFunction(r)?r:l))}).promise()},promise:function(e){return null!=e?pe.extend(e,o):o}},a={};return pe.each(n,function(e,t){var i=t[2],s=t[5];o[t[1]]=i.add,s&&i.add(function(){r=s},n[3-e][2].disable,n[0][2].lock),i.add(t[3].fire),a[t[0]]=function(){return a[t[0]+"With"](this===a?void 0:this,arguments),this},a[t[0]+"With"]=i.fireWith}),o.promise(a),t&&t.call(a,a),a},when:function(e){var t=arguments.length,n=t,r=Array(n),o=ne.call(arguments),a=pe.Deferred(),i=function(e){return function(n){r[e]=this,o[e]=arguments.length>1?ne.call(arguments):n,--t||a.resolveWith(r,o)}};if(t<=1&&(c(e,a.done(i(n)).resolve,a.reject),"pending"===a.state()||pe.isFunction(o[n]&&o[n].then)))return a.then();for(;n--;)c(o[n],i(n),a.reject);return a.promise()}});var Ae=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;pe.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&Ae.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},pe.readyException=function(t){e.setTimeout(function(){throw t})};var Oe=pe.Deferred();pe.fn.ready=function(e){return Oe.then(e).catch(function(e){pe.readyException(e)}),this},pe.extend({isReady:!1,readyWait:1,holdReady:function(e){e?pe.readyWait++:pe.ready(!0)},ready:function(e){(!0===e?--pe.readyWait:pe.isReady)||(pe.isReady=!0,!0!==e&&--pe.readyWait>0||Oe.resolveWith(ee,[pe]))}}),pe.ready.then=Oe.then,"complete"===ee.readyState||"loading"!==ee.readyState&&!ee.documentElement.doScroll?e.setTimeout(pe.ready):(ee.addEventListener("DOMContentLoaded",u),e.addEventListener("load",u));var Fe=function(e,t,n,r,o,a,i){var s=0,l=e.length,c=null==n;if("object"===pe.type(n)){o=!0;for(s in n)Fe(e,t,s,n[s],!0,a,i)}else if(void 0!==r&&(o=!0,pe.isFunction(r)||(i=!0),c&&(i?(t.call(e,r),t=null):(c=t,t=function(e,t,n){return c.call(pe(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each(function(){Pe.remove(this,e)})}}),pe.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Re.get(e,t),n&&(!r||pe.isArray(n)?r=Re.access(e,t,pe.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=pe.queue(e,t),r=n.length,o=n.shift(),a=pe._queueHooks(e,t);"inprogress"===o&&(o=n.shift(),r--),o&&("fx"===t&&n.unshift("inprogress"),delete a.stop,o.call(e,function(){pe.dequeue(e,t)},a)),!r&&a&&a.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Re.get(e,n)||Re.access(e,n,{empty:pe.Callbacks("once memory").add(function(){Re.remove(e,[t+"queue",n])})})}}),pe.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,Ve=/^$|\/(?:java|ecma)script/i,ze={option:[1,""],thead:[1,"
      ","
      "],col:[2,"","
      "],tr:[2,"","
      "],td:[3,"","
      "],_default:[0,"",""]};ze.optgroup=ze.option,ze.tbody=ze.tfoot=ze.colgroup=ze.caption=ze.thead,ze.th=ze.td;var Xe=/<|&#?\w+;/;!function(){var e=ee.createDocumentFragment().appendChild(ee.createElement("div")),t=ee.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),de.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",de.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var Ye=ee.documentElement,Ke=/^key/,Ge=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Qe=/^([^.]*)(?:\.(.+)|)/;pe.event={global:{},add:function(e,t,n,r,o){var a,i,s,l,c,u,d,f,p,h,m,g=Re.get(e);if(g)for(n.handler&&(a=n,n=a.handler,o=a.selector),o&&pe.find.matchesSelector(Ye,o),n.guid||(n.guid=pe.guid++),(l=g.events)||(l=g.events={}),(i=g.handle)||(i=g.handle=function(t){return void 0!==pe&&pe.event.triggered!==t.type?pe.event.dispatch.apply(e,arguments):void 0}),c=(t=(t||"").match(ke)||[""]).length;c--;)s=Qe.exec(t[c])||[],p=m=s[1],h=(s[2]||"").split(".").sort(),p&&(d=pe.event.special[p]||{},p=(o?d.delegateType:d.bindType)||p,d=pe.event.special[p]||{},u=pe.extend({type:p,origType:m,data:r,handler:n,guid:n.guid,selector:o,needsContext:o&&pe.expr.match.needsContext.test(o),namespace:h.join(".")},a),(f=l[p])||(f=l[p]=[],f.delegateCount=0,d.setup&&!1!==d.setup.call(e,r,h,i)||e.addEventListener&&e.addEventListener(p,i)),d.add&&(d.add.call(e,u),u.handler.guid||(u.handler.guid=n.guid)),o?f.splice(f.delegateCount++,0,u):f.push(u),pe.event.global[p]=!0)},remove:function(e,t,n,r,o){var a,i,s,l,c,u,d,f,p,h,m,g=Re.hasData(e)&&Re.get(e);if(g&&(l=g.events)){for(c=(t=(t||"").match(ke)||[""]).length;c--;)if(s=Qe.exec(t[c])||[],p=m=s[1],h=(s[2]||"").split(".").sort(),p){for(d=pe.event.special[p]||{},f=l[p=(r?d.delegateType:d.bindType)||p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=a=f.length;a--;)u=f[a],!o&&m!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(f.splice(a,1),u.selector&&f.delegateCount--,d.remove&&d.remove.call(e,u));i&&!f.length&&(d.teardown&&!1!==d.teardown.call(e,h,g.handle)||pe.removeEvent(e,p,g.handle),delete l[p])}else for(p in l)pe.event.remove(e,p+t[c],n,r,!0);pe.isEmptyObject(l)&&Re.remove(e,"handle events")}},dispatch:function(e){var t,n,r,o,a,i,s=pe.event.fix(e),l=new Array(arguments.length),c=(Re.get(this,"events")||{})[s.type]||[],u=pe.event.special[s.type]||{};for(l[0]=s,t=1;t=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==e.type||!0!==c.disabled)){for(a=[],i={},n=0;n-1:pe.find(o,this,null,[c]).length),i[o]&&a.push(r);a.length&&s.push({elem:c,handlers:a})}return c=this,l\x20\t\r\n\f]*)[^>]*)\/>/gi,Je=/\s*$/g;pe.extend({htmlPrefilter:function(e){return e.replace(Ze,"<$1>")},clone:function(e,t,n){var r,o,a,i,s=e.cloneNode(!0),l=pe.contains(e.ownerDocument,e);if(!(de.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||pe.isXMLDoc(e)))for(i=v(s),a=v(e),r=0,o=a.length;r0&&y(i,!l&&v(e,"script")),s},cleanData:function(e){for(var t,n,r,o=pe.event.special,a=0;void 0!==(n=e[a]);a++)if(Ee(n)){if(t=n[Re.expando]){if(t.events)for(r in t.events)o[r]?pe.event.remove(n,r):pe.removeEvent(n,r,t.handle);n[Re.expando]=void 0}n[Pe.expando]&&(n[Pe.expando]=void 0)}}}),pe.fn.extend({detach:function(e){return O(this,e,!0)},remove:function(e){return O(this,e)},text:function(e){return Fe(this,function(e){return void 0===e?pe.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return A(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||T(this,e).appendChild(e)})},prepend:function(){return A(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=T(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return A(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return A(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(pe.cleanData(v(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return pe.clone(this,e,t)})},html:function(e){return Fe(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Je.test(e)&&!ze[(qe.exec(e)||["",""])[1].toLowerCase()]){e=pe.htmlPrefilter(e);try{for(;n1)}}),pe.Tween=j,j.prototype={constructor:j,init:function(e,t,n,r,o,a){this.elem=e,this.prop=n,this.easing=o||pe.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=a||(pe.cssNumber[n]?"":"px")},cur:function(){var e=j.propHooks[this.prop];return e&&e.get?e.get(this):j.propHooks._default.get(this)},run:function(e){var t,n=j.propHooks[this.prop];return this.options.duration?this.pos=t=pe.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):j.propHooks._default.set(this),this}},j.prototype.init.prototype=j.prototype,j.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=pe.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){pe.fx.step[e.prop]?pe.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[pe.cssProps[e.prop]]&&!pe.cssHooks[e.prop]?e.elem[e.prop]=e.now:pe.style(e.elem,e.prop,e.now+e.unit)}}},j.propHooks.scrollTop=j.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},pe.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},pe.fx=j.prototype.init,pe.fx.step={};var dt,ft,pt=/^(?:toggle|show|hide)$/,ht=/queueHooks$/;pe.Animation=pe.extend(W,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return h(n.elem,e,Be.exec(t),n),n}]},tweener:function(e,t){pe.isFunction(e)?(t=e,e=["*"]):e=e.match(ke);for(var n,r=0,o=e.length;r1)},removeAttr:function(e){return this.each(function(){pe.removeAttr(this,e)})}}),pe.extend({attr:function(e,t,n){var r,o,a=e.nodeType;if(3!==a&&8!==a&&2!==a)return void 0===e.getAttribute?pe.prop(e,t,n):(1===a&&pe.isXMLDoc(e)||(o=pe.attrHooks[t.toLowerCase()]||(pe.expr.match.bool.test(t)?mt:void 0)),void 0!==n?null===n?void pe.removeAttr(e,t):o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:(e.setAttribute(t,n+""),n):o&&"get"in o&&null!==(r=o.get(e,t))?r:null==(r=pe.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!de.radioValue&&"radio"===t&&pe.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,o=t&&t.match(ke);if(o&&1===e.nodeType)for(;n=o[r++];)e.removeAttribute(n)}}),mt={set:function(e,t,n){return!1===t?pe.removeAttr(e,n):e.setAttribute(n,n),n}},pe.each(pe.expr.match.bool.source.match(/\w+/g),function(e,t){var n=gt[t]||pe.find.attr;gt[t]=function(e,t,r){var o,a,i=t.toLowerCase();return r||(a=gt[i],gt[i]=o,o=null!=n(e,t,r)?i:null,gt[i]=a),o}});var vt=/^(?:input|select|textarea|button)$/i,yt=/^(?:a|area)$/i;pe.fn.extend({prop:function(e,t){return Fe(this,pe.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[pe.propFix[e]||e]})}}),pe.extend({prop:function(e,t,n){var r,o,a=e.nodeType;if(3!==a&&8!==a&&2!==a)return 1===a&&pe.isXMLDoc(e)||(t=pe.propFix[t]||t,o=pe.propHooks[t]),void 0!==n?o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:e[t]=n:o&&"get"in o&&null!==(r=o.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=pe.find.attr(e,"tabindex");return t?parseInt(t,10):vt.test(e.nodeName)||yt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),de.optSelected||(pe.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),pe.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){pe.propFix[this.toLowerCase()]=this}),pe.fn.extend({addClass:function(e){var t,n,r,o,a,i,s,l=0;if(pe.isFunction(e))return this.each(function(t){pe(this).addClass(e.call(this,t,V(this)))});if("string"==typeof e&&e)for(t=e.match(ke)||[];n=this[l++];)if(o=V(n),r=1===n.nodeType&&" "+q(o)+" "){for(i=0;a=t[i++];)r.indexOf(" "+a+" ")<0&&(r+=a+" ");o!==(s=q(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,o,a,i,s,l=0;if(pe.isFunction(e))return this.each(function(t){pe(this).removeClass(e.call(this,t,V(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(ke)||[];n=this[l++];)if(o=V(n),r=1===n.nodeType&&" "+q(o)+" "){for(i=0;a=t[i++];)for(;r.indexOf(" "+a+" ")>-1;)r=r.replace(" "+a+" "," ");o!==(s=q(r))&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):pe.isFunction(e)?this.each(function(n){pe(this).toggleClass(e.call(this,n,V(this),t),t)}):this.each(function(){var t,r,o,a;if("string"===n)for(r=0,o=pe(this),a=e.match(ke)||[];t=a[r++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&"boolean"!==n||((t=V(this))&&Re.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Re.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+q(V(n))+" ").indexOf(t)>-1)return!0;return!1}});var bt=/\r/g;pe.fn.extend({val:function(e){var t,n,r,o=this[0];return arguments.length?(r=pe.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(null==(o=r?e.call(this,n,pe(this).val()):e)?o="":"number"==typeof o?o+="":pe.isArray(o)&&(o=pe.map(o,function(e){return null==e?"":e+""})),(t=pe.valHooks[this.type]||pe.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,o,"value")||(this.value=o))})):o?(t=pe.valHooks[o.type]||pe.valHooks[o.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(o,"value"))?n:"string"==typeof(n=o.value)?n.replace(bt,""):null==n?"":n:void 0}}),pe.extend({valHooks:{option:{get:function(e){var t=pe.find.attr(e,"value");return null!=t?t:q(pe.text(e))}},select:{get:function(e){var t,n,r,o=e.options,a=e.selectedIndex,i="select-one"===e.type,s=i?null:[],l=i?a+1:o.length;for(r=a<0?l:i?a:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),a}}}}),pe.each(["radio","checkbox"],function(){pe.valHooks[this]={set:function(e,t){if(pe.isArray(t))return e.checked=pe.inArray(pe(e).val(),t)>-1}},de.checkOn||(pe.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var xt=/^(?:focusinfocus|focusoutblur)$/;pe.extend(pe.event,{trigger:function(t,n,r,o){var a,i,s,l,c,u,d,f=[r||ee],p=le.call(t,"type")?t.type:t,h=le.call(t,"namespace")?t.namespace.split("."):[];if(i=s=r=r||ee,3!==r.nodeType&&8!==r.nodeType&&!xt.test(p+pe.event.triggered)&&(p.indexOf(".")>-1&&(h=p.split("."),p=h.shift(),h.sort()),c=p.indexOf(":")<0&&"on"+p,t=t[pe.expando]?t:new pe.Event(p,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:pe.makeArray(n,[t]),d=pe.event.special[p]||{},o||!d.trigger||!1!==d.trigger.apply(r,n))){if(!o&&!d.noBubble&&!pe.isWindow(r)){for(l=d.delegateType||p,xt.test(l+p)||(i=i.parentNode);i;i=i.parentNode)f.push(i),s=i;s===(r.ownerDocument||ee)&&f.push(s.defaultView||s.parentWindow||e)}for(a=0;(i=f[a++])&&!t.isPropagationStopped();)t.type=a>1?l:d.bindType||p,(u=(Re.get(i,"events")||{})[t.type]&&Re.get(i,"handle"))&&u.apply(i,n),(u=c&&i[c])&&u.apply&&Ee(i)&&(t.result=u.apply(i,n),!1===t.result&&t.preventDefault());return t.type=p,o||t.isDefaultPrevented()||d._default&&!1!==d._default.apply(f.pop(),n)||!Ee(r)||c&&pe.isFunction(r[p])&&!pe.isWindow(r)&&((s=r[c])&&(r[c]=null),pe.event.triggered=p,r[p](),pe.event.triggered=void 0,s&&(r[c]=s)),t.result}},simulate:function(e,t,n){var r=pe.extend(new pe.Event,n,{type:e,isSimulated:!0});pe.event.trigger(r,null,t)}}),pe.fn.extend({trigger:function(e,t){return this.each(function(){pe.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return pe.event.trigger(e,t,n,!0)}}),pe.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){pe.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),pe.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),de.focusin="onfocusin"in e,de.focusin||pe.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){pe.event.simulate(t,e.target,pe.event.fix(e))};pe.event.special[t]={setup:function(){var r=this.ownerDocument||this,o=Re.access(r,t);o||r.addEventListener(e,n,!0),Re.access(r,t,(o||0)+1)},teardown:function(){var r=this.ownerDocument||this,o=Re.access(r,t)-1;o?Re.access(r,t,o):(r.removeEventListener(e,n,!0),Re.remove(r,t))}}});var wt=e.location,Ct=pe.now(),St=/\?/;pe.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(e){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||pe.error("Invalid XML: "+t),n};var Tt=/\[\]$/,Dt=/\r?\n/g,_t=/^(?:submit|button|image|reset|file)$/i,It=/^(?:input|select|textarea|keygen)/i;pe.param=function(e,t){var n,r=[],o=function(e,t){var n=pe.isFunction(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(pe.isArray(e)||e.jquery&&!pe.isPlainObject(e))pe.each(e,function(){o(this.name,this.value)});else for(n in e)z(n,e[n],t,o);return r.join("&")},pe.fn.extend({serialize:function(){return pe.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=pe.prop(this,"elements");return e?pe.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!pe(this).is(":disabled")&&It.test(this.nodeName)&&!_t.test(e)&&(this.checked||!We.test(e))}).map(function(e,t){var n=pe(this).val();return null==n?null:pe.isArray(n)?pe.map(n,function(e){return{name:t.name,value:e.replace(Dt,"\r\n")}}):{name:t.name,value:n.replace(Dt,"\r\n")}}).get()}});var kt=/%20/g,At=/#.*$/,Ot=/([?&])_=[^&]*/,Ft=/^(.*?):[ \t]*([^\r\n]*)$/gm,Et=/^(?:GET|HEAD)$/,Rt=/^\/\//,Pt={},Nt={},Lt="*/".concat("*"),jt=ee.createElement("a");jt.href=wt.href,pe.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:wt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(wt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Lt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":pe.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?K(K(e,pe.ajaxSettings),t):K(pe.ajaxSettings,e)},ajaxPrefilter:X(Pt),ajaxTransport:X(Nt),ajax:function(t,n){function r(t,n,r,s){var c,f,p,x,w,C=n;u||(u=!0,l&&e.clearTimeout(l),o=void 0,i=s||"",S.readyState=t>0?4:0,c=t>=200&&t<300||304===t,r&&(x=G(h,S,r)),x=Q(h,x,S,c),c?(h.ifModified&&((w=S.getResponseHeader("Last-Modified"))&&(pe.lastModified[a]=w),(w=S.getResponseHeader("etag"))&&(pe.etag[a]=w)),204===t||"HEAD"===h.type?C="nocontent":304===t?C="notmodified":(C=x.state,f=x.data,p=x.error,c=!p)):(p=C,!t&&C||(C="error",t<0&&(t=0))),S.status=t,S.statusText=(n||C)+"",c?v.resolveWith(m,[f,C,S]):v.rejectWith(m,[S,C,p]),S.statusCode(b),b=void 0,d&&g.trigger(c?"ajaxSuccess":"ajaxError",[S,h,c?f:p]),y.fireWith(m,[S,C]),d&&(g.trigger("ajaxComplete",[S,h]),--pe.active||pe.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var o,a,i,s,l,c,u,d,f,p,h=pe.ajaxSetup({},n),m=h.context||h,g=h.context&&(m.nodeType||m.jquery)?pe(m):pe.event,v=pe.Deferred(),y=pe.Callbacks("once memory"),b=h.statusCode||{},x={},w={},C="canceled",S={readyState:0,getResponseHeader:function(e){var t;if(u){if(!s)for(s={};t=Ft.exec(i);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return u?i:null},setRequestHeader:function(e,t){return null==u&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,x[e]=t),this},overrideMimeType:function(e){return null==u&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(u)S.always(e[S.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||C;return o&&o.abort(t),r(0,t),this}};if(v.promise(S),h.url=((t||h.url||wt.href)+"").replace(Rt,wt.protocol+"//"),h.type=n.method||n.type||h.method||h.type,h.dataTypes=(h.dataType||"*").toLowerCase().match(ke)||[""],null==h.crossDomain){c=ee.createElement("a");try{c.href=h.url,c.href=c.href,h.crossDomain=jt.protocol+"//"+jt.host!=c.protocol+"//"+c.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&"string"!=typeof h.data&&(h.data=pe.param(h.data,h.traditional)),Y(Pt,h,n,S),u)return S;(d=pe.event&&h.global)&&0==pe.active++&&pe.event.trigger("ajaxStart"),h.type=h.type.toUpperCase(),h.hasContent=!Et.test(h.type),a=h.url.replace(At,""),h.hasContent?h.data&&h.processData&&0===(h.contentType||"").indexOf("application/x-www-form-urlencoded")&&(h.data=h.data.replace(kt,"+")):(p=h.url.slice(a.length),h.data&&(a+=(St.test(a)?"&":"?")+h.data,delete h.data),!1===h.cache&&(a=a.replace(Ot,"$1"),p=(St.test(a)?"&":"?")+"_="+Ct+++p),h.url=a+p),h.ifModified&&(pe.lastModified[a]&&S.setRequestHeader("If-Modified-Since",pe.lastModified[a]),pe.etag[a]&&S.setRequestHeader("If-None-Match",pe.etag[a])),(h.data&&h.hasContent&&!1!==h.contentType||n.contentType)&&S.setRequestHeader("Content-Type",h.contentType),S.setRequestHeader("Accept",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+("*"!==h.dataTypes[0]?", "+Lt+"; q=0.01":""):h.accepts["*"]);for(f in h.headers)S.setRequestHeader(f,h.headers[f]);if(h.beforeSend&&(!1===h.beforeSend.call(m,S,h)||u))return S.abort();if(C="abort",y.add(h.complete),S.done(h.success),S.fail(h.error),o=Y(Nt,h,n,S)){if(S.readyState=1,d&&g.trigger("ajaxSend",[S,h]),u)return S;h.async&&h.timeout>0&&(l=e.setTimeout(function(){S.abort("timeout")},h.timeout));try{u=!1,o.send(x,r)}catch(e){if(u)throw e;r(-1,e)}}else r(-1,"No Transport");return S},getJSON:function(e,t,n){return pe.get(e,t,n,"json")},getScript:function(e,t){return pe.get(e,void 0,t,"script")}}),pe.each(["get","post"],function(e,t){pe[t]=function(e,n,r,o){return pe.isFunction(n)&&(o=o||r,r=n,n=void 0),pe.ajax(pe.extend({url:e,type:t,dataType:o,data:n,success:r},pe.isPlainObject(e)&&e))}}),pe._evalUrl=function(e){return pe.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},pe.fn.extend({wrapAll:function(e){var t;return this[0]&&(pe.isFunction(e)&&(e=e.call(this[0])),t=pe(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return pe.isFunction(e)?this.each(function(t){pe(this).wrapInner(e.call(this,t))}):this.each(function(){var t=pe(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=pe.isFunction(e);return this.each(function(n){pe(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){pe(this).replaceWith(this.childNodes)}),this}}),pe.expr.pseudos.hidden=function(e){return!pe.expr.pseudos.visible(e)},pe.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},pe.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},Mt=pe.ajaxSettings.xhr();de.cors=!!Mt&&"withCredentials"in Mt,de.ajax=Mt=!!Mt,pe.ajaxTransport(function(t){var n,r;if(de.cors||Mt&&!t.crossDomain)return{send:function(o,a){var i,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(i in t.xhrFields)s[i]=t.xhrFields[i];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||o["X-Requested-With"]||(o["X-Requested-With"]="XMLHttpRequest");for(i in o)s.setRequestHeader(i,o[i]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?a(0,"error"):a(s.status,s.statusText):a(Bt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}}),pe.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),pe.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return pe.globalEval(e),e}}}),pe.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),pe.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,o){t=pe("