.clearfix, .card, li.source, li.route-address, .sidebar-inner div.title {
  zoom: 1; }
  .clearfix:before, .card:before, li.source:before, li.route-address:before, .sidebar-inner div.title:before, .clearfix:after, .card:after, li.source:after, li.route-address:after, .sidebar-inner div.title:after {
    content: "\0020";
    display: block;
    height: 0;
    overflow: hidden; }
  .clearfix:after, .card:after, li.source:after, li.route-address:after, .sidebar-inner div.title:after {
    clear: both; }

html {
  height: 100%; }

body {
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: 'Lato', sans-serif;
  overflow: hidden; }

.alt-font, .nav-header, .modal .modal-header h3, .nav-tabs li {
  font-family: 'Roboto', sans-serif; }

.card, li.source, li.route-address {
  background-color: white;
  border-radius: 2px;
  box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.3); }

#map_canvas {
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 0;
  background-image: url("../img/backdrop.png");
  background-position: center; }

#map_overlay {
  position: absolute;
  z-index: 100;
  color: white;
  right: 8px;
  bottom: 20px;
  color: white;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5);
  font-size: 28px; }

#csv_data {
  width: 300px;
  height: 150px;
  max-width: 300px;
  max-height: 150px;
  opacity: 0.8;
  border-radius: 4px;
  padding: 12px;
  border-color: rgba(0, 0, 0, 0.6);
  font-size: 16px;
  line-height: 18px;
  font-family: 'Lato', sans-serif; }

#button_go {
  position: absolute;
  right: 5px;
  bottom: 10px; }

.btn {
  border-radius: 0 !important;
  text-shadow: none; }

.btn:not(:active) {
  box-shadow: none; }

.nav-header {
  font-size: 145%;
  font-weight: 300;
  color: #666;
  margin: 8px 0 16px; }

.nav-header .btn-group {
  float: right;
  margin-top: -3px; }

.nav-header .btn-group .btn {
  padding: 2px 8px;
  color: #666; }

a.dropdown-toggle {
  outline: none; }

.dropdown-menu {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.2);
  border: none; }
  .dropdown-menu.align-right {
    right: 2px;
    left: auto; }
  .dropdown-menu > li > a:hover {
    color: #333;
    background-color: #a8e2ff; }

.dropdown-context-menu > a, .user-dropdown > li > a {
  background: transparent !important; }

.user-dropdown > li {
  margin: 0 -5px; }
  .user-dropdown > li i:before {
    font-size: 18px;
    line-height: 12px; }
  .user-dropdown > li > a {
    color: rgba(255, 255, 255, 0.7); }
    .user-dropdown > li > a:hover {
      color: white; }

.nav-pills > li > a {
  border-radius: 0; }

.nav-pills .dropdown-menu {
  border-radius: 0;
  margin-top: -2px;
  border-color: #999999;
  padding: 1px; }

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus, .dropdown-submenu:hover > a, .dropdown-submenu:focus > a {
  background-image: none; }

.dropdown-menu > li a i {
  margin-right: 4px; }

select, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input {
  border-radius: 0; }

span.cm-logo-color-red {
  color: #d07373;
  font-weight: 500; }

@media (min-width: 768px) {
  .modal {
    width:         346px;
    margin-left:   -173px;
    border-radius: 0;
  }
}

.modal .modal-header h3 {
  font-weight: 300;
  text-transform: uppercase;
  font-size: 22px; }

.modal .modal-body form {
  margin: 0 0 4px; }

.modal .modal-footer .modal-footer-status {
  float: left;
  line-height: 30px;
  display: none; }

.modal .modal-footer .modal-footer-status .modal-footer-status-icon {
  float: left;
  margin-right: 5px;
  width: 30px;
  height: 30px; }

.modal-footer-status-icon .status-icon:before {
  margin: 0;
  padding: 0;
  width: 30px; }

.modal-footer-status-inner {
  color: #006dcc; }

.modal-footer-status-inner.status-idle {
  color: #5783da; }

.modal-footer-status-inner.status-error {
  color: #e71212; }

div.well {
  border-radius: 0;
  margin-bottom: 10px;
  border: none;
  box-shadow: inset 0 3px 0px rgba(0, 0, 0, 0.05);
  background-image: url("../img/white_plaster.png"); }

div.well.nav-list-well {
  padding: 8px 0; }

.nav-list .divider {
  height: 0;
  border-color: rgba(0, 0, 0, 0.2);
  border-width: 2px; }

.nav-list > li > a, .nav-list .nav-header {
  text-shadow: none;
  text-transform: uppercase; }

.nav-list > li > a.btn {
  margin: 0; }

.nav-tabs {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  background: rgba(0, 0, 0, 0.15); }
  .nav-tabs li {
    text-transform: uppercase;
    margin-bottom: 0 !important;
    padding-top: 2px; }
  .nav-tabs li > a, .nav-tabs li > a:hover {
    border-radius: 0;
    border: none !important;
    background: transparent !important; }
  .nav-tabs li > a {
    border-bottom: 2px solid transparent !important; }
  .nav-tabs li > a:hover {
    border-bottom: 2px solid rgba(0, 0, 0, 0.1) !important; }
  .nav-tabs li.active > a, .nav-tabs li.active > a:hover {
    border-bottom: 2px solid rgba(0, 0, 0, 0.3) !important; }
  .nav-tabs a {
    color: #b32525; }
  .nav-tabs a:hover {
    color: #a82525; }

#cm-sidebar {
  -webkit-transition: left 0.4s;
  width: 275px;
  position: absolute;
  top: 0;
  left: -275px;
  background-color: #ffffff;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding-box;
  background-clip: padding-box;
  outline: none;
  -webkit-box-shadow: 2px 0 0 rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 2px 0 0 rgba(0, 0, 0, 0.3);
  box-shadow: 2px 0 0 rgba(0, 0, 0, 0.3);
  z-index: 50;
  height: 100%; }

#cm-sidebar.enabled {
  left: 0; }

.sidebar-inner {
  height: 100%;
  padding: 0 10px;
  background-image: url("../img/square.png"); }
  .sidebar-inner .sidebar-main {
    margin: 0 -10px;
    padding: 0 10px;
    background-color: white;
    box-shadow: 0 -3px 0 rgba(0, 0, 0, 0.2); }
  .sidebar-inner div.line {
    height: 0;
    margin: 0 -10px 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.3); }
  .sidebar-inner .tab-content {
    margin: -10px; }

.sidebar-inner > .wide, .sidebar-main > .wide {
  margin: 0 -10px;
  padding: 0 10px; }
  .sidebar-inner > .wide.nav-tabs, .sidebar-main > .wide.nav-tabs {
    margin: 0 -10px 10px -10px; }

.sidebar-inner div.title {
  display: block;
  background-color: #aaa;
  background-image: url("../img/random_grey_variations.png");
  margin: 0 -10px;
  padding: 10px;
  color: white; }
  .sidebar-inner div.title h2 {
    float: left;
    font-weight: 300;
    font-size: 24px;
    text-transform: uppercase;
    margin: 0; }
    .sidebar-inner div.title h2 sub.version {
      bottom: 0;
      font-size: 0.4em;
      font-weight: 600;
      letter-spacing: 0.2em;
      left: 0.3em;
      color: rgba(255, 255, 255, 0.7); }
  .sidebar-inner div.title ul.user-dropdown {
    float: right;
    margin: 3px; }

div.input-wrap {
  margin: 0 5px; }

input#search-locate {
  margin: 0 -15px;
  width: 100%;
  border: 0;
  padding: 10px 15px; }

.upload-modern {
  position: relative; }

.dropzone {
  color: #aaa;
  background-color: white;
  border: 1px solid #aaa;
  padding: 20px 0;
  text-align: center;
  margin: 0;
  -webkit-transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; }

.dropzone-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10; }

.dropzone .placeholder {
  font-size: 24px;
  line-height: 20px; }

.dropzone .placeholder i {
  line-height: 20px; }

.dropzone.has-files {
  border-color: #74b2e8; }

.dropzone.dragover {
  border-color: #006dcc; }

.dropzone.dragover, .dropzone.has-files {
  color: #006dcc; }

.dropzone.upload-finished {
  border-color: #aaa; }

.dropzone.dragover {
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2); }

.dropzone.has-files {
  background-color: white; }

ul.file-list {
  margin: -20px 0px;
  padding: 0;
  list-style: none; }

li.file {
  color: #006dcc;
  margin: 11px 10px 10px;
  padding: 1px;
  font-size: 16px;
  position: relative;
  line-height: 31px;
  height: 40px;
  -webkit-transition: color 0.2s; }

li.file.error {
  color: #e71212; }

li.file.success {
  /*color: #2a933b;*/ }

li.file i.file-icon {
  display: block;
  padding: 4px;
  font-size: 19px;
  margin-right: 6px;
  float: left; }

li.file i.file-icon:before {
  text-decoration: inherit;
  font-style: normal;
  font-weight: normal;
  font-family: 'contactmap';
  content: '\1f4c4';
  width: 16px;
  text-align: center; }

li.file div.file-name, li.file div.additional-info {
  padding: 4px;
  display: block;
  font-size: 15px;
  position: absolute;
  width: 76.3%;
  left: 10%;
  text-align: left; }

li.file div.additional-info {
  top: 16px;
  opacity: 0;
  -webkit-transition: top 0.2s, opacity 0.2s;
  font-size: 80%;
  font-weight: bold; }

li.file.error div.additional-info, li.file.success div.additional-info {
  top: 8px;
  opacity: 1; }

li.file span.file-basename, li.file span.file-extension {
  margin-top: 0;
  -webkit-transition: margin-top 0.2s, opacity 0.2s;
  float: left; }

li.file.error span.file-basename, li.file.error span.file-extension,
li.file.success span.file-basename, li.file.success span.file-extension {
  margin-top: -8px;
  opacity: 0.7; }

li.file span.file-extension {
  opacity: 0.7; }

li.file span.file-size {
  margin-left: 10px;
  color: #888;
  float: right;
  font-size: 80%; }

button.remove {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  float: right;
  font-size: 18px;
  color: #000000;
  text-shadow: 0 1px 0 #ffffff;
  opacity: 0.2; }

button.remove:hover {
  opacity: 0.4; }

li.file button.remove {
  color: #900;
  opacity: 0.35;
  z-index: 11;
  right: 2px;
  top: 10px;
  position: absolute; }

li.file button.remove:hover {
  opacity: 0.7; }

.modal-footer-buttons {
  margin-right: -5px;
  float: right; }

.modal-footer-buttons .btn {
  margin-right: 5px; }

.modal-header .close {
  margin-top: 6px; }

.modal-body {
  overflow: hidden; }

.clearfix:after, .card:after, li.source:after, li.route-address:after, .sidebar-inner div.title:after {
  display: table;
  clear: both;
  content: ""; }

label.checkbox.newline {
  display: block;
  margin-top: 10px; }

.form-inline label.checkbox input[type="checkbox"] {
  margin-right: 6px;
  height: 1em; }

li.source {
  margin: 8px 0;
  padding: 4px;
  position: relative; }
  li.source canvas.chart {
    float: left;
    margin: -3px;
    margin-right: 8px;
    display: none; }
    html.supports-canvas li.source canvas.chart {
      display: block; }

li.source canvas.loader {
  position: absolute;
  top: 3px;
  right: 3px; }

li.source > a {
  display: block;
  text-decoration: none;
  margin: 0;
  padding: 4px;
  text-transform: none;
  text-shadow: none !important; }

li.source:hover {
  background-color: #d5e5ea; }

li.source.active {
  background-color: #0088cc; }
  li.source.active > a {
    color: white; }

li.source span.name {
  display: block;
  line-height: 30px;
  width: 70%;
  overflow: hidden;
  height: 30px;
  font-size: 110%; }

span.label {
  border-radius: 0; }

li.source i.icon.source-icon {
  float: left;
  font-size: 14px;
  line-height: 36px;
  margin: 0 8px 0 4px; }

li.source i.icon.source-icon:before {
  text-decoration: inherit;
  font-style: normal;
  font-weight: normal;
  font-family: 'contactmap';
  content: '\1f4c4';
  width: 16px;
  text-align: center; }

i.icon-left {
  margin: 0 4px 0 -4px; }

div.item-title {
  font-weight: 600; }

ul.contacts, ul.route {
  list-style-type: none;
  margin: 0; }

ul.item-options, ul.source-actions {
  float: right;
  margin: 0;
  padding: 0;
  list-style-type: none; }
  ul.item-options li a, ul.source-actions li a {
    color: #0088cc; }
  ul.item-options li a:hover, ul.source-actions li a:hover {
    opacity: 0.8; }
  .source.active ul.item-options > li > a, .source.active ul.source-actions > li > a {
    color: white; }

ul.contacts > li, ul#routeplannerlist > li, ul#locatorlist > li, li.route-address {
  margin: 6px 0 6px 20px; }
  ul.contacts > li.eventi-reorder-ghost ul.item-options, ul.contacts > li.eventi-reorder-ghost ul.source-actions, ul#routeplannerlist > li.eventi-reorder-ghost ul.item-options, ul#routeplannerlist > li.eventi-reorder-ghost ul.source-actions, ul#locatorlist > li.eventi-reorder-ghost ul.item-options, ul#locatorlist > li.eventi-reorder-ghost ul.source-actions, li.route-address.eventi-reorder-ghost ul.item-options, li.route-address.eventi-reorder-ghost ul.source-actions {
    margin-right: 2px; }
  ul.contacts > li.eventi-reorder-target-object, ul#routeplannerlist > li.eventi-reorder-target-object, ul#locatorlist > li.eventi-reorder-target-object, li.route-address.eventi-reorder-target-object {
    box-shadow: none !important; }
  ul.contacts > li .reorder-handle, ul#routeplannerlist > li .reorder-handle, ul#locatorlist > li .reorder-handle, li.route-address .reorder-handle {
    cursor: row-resize; }

i.item-icon {
  margin: 0 4px 0 -24px;
  float: left; }

li.totals {
  padding: 7px 20px 8px 45px; }

ul#locatorlist > li {
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  border-bottom: 1px solid rgba(0, 0, 0, 0.4);
  padding-bottom: 12px;
  margin: 12px 0; }
  html.locating ul#locatorlist > li:not(.locating) {
    opacity: 0.4; }
  ul#locatorlist > li:not(.dragdrop) {
    position: relative; }
  ul#locatorlist > li div.dragdrop {
    display: none;
    cursor: pointer;
    position: absolute;
    width: 12px;
    height: 12px;
    right: 10px;
    top: 10px; }
    html.locate-dragdrop-enabled ul#locatorlist > li div.dragdrop, ul#locatorlist > li div.dragdrop.locate {
      display: block; }
    ul#locatorlist > li div.dragdrop:not(.locate) {
      opacity: 0;
      -webkit-transition: opacity 0.15s; }
    ul#locatorlist > li div.dragdrop i {
      display: block;
      width: 24px;
      margin: -12px;
      color: #c43030;
      font-size: 24px;
      line-height: 24px;
      text-align: center; }
      ul#locatorlist > li div.dragdrop i:before {
        content: '\e82a';
        font-family: "contactmap";
        font-style: normal;
        font-weight: normal;
        display: block; }
    ul#locatorlist > li div.dragdrop.dragging {
      pointer-events: none; }
  ul:hover ul#locatorlist > li div.dragdrop:not(.placed) {
    opacity: 0.15; }
  ul ul#locatorlist > li:hover div.dragdrop:not(.placed) {
    opacity: 0.4; }
    ul ul#locatorlist > li:hover div.dragdrop:not(.placed):hover {
      opacity: 0.9; }
  ul#locatorlist > li.dragdrop div.dragdrop.dragging {
    opacity: 1 !important; }

html.targeting * {
  cursor: none !important; }

li div.address {
  font-size: 90%; }

a.force-hover-cursor:hover {
  cursor: pointer; }

li.address-actions {
  border-bottom: 1px solid; }

li.contact div.name {
  font-weight: bold; }

div.address, li.address {
  color: #555; }

li.address {
  border-top: 1px solid; }

li.address-actions, li.address {
  padding: 6px 0 12px;
  border-color: #ccc; }

div.source-props {
  position: absolute;
  top: 7px;
  right: 5px;
  float: right; }

li.source.active div.source-props {
  box-shadow: none; }

ul.source-actions {
  margin-right: -7px; }
  .loading ul.source-actions {
    display: none; }

i.icon.danger {
  color: #c94646; }

a:hover i.icon.danger {
  color: #a51c1c; }

ul#routeplannerlist > li {
  margin: 8px 0 8px -20px;
  padding: 7px 5px 8px 25px; }
  ul#routeplannerlist > li li.route-address:hover {
    cursor: pointer;
    background-color: white; }

ul.route.ri-scrolls > li.route-trajectory {
  margin-right: 12px; }

li.route-trajectory {
  margin: -5px !important;
  line-height: 24px;
  color: chocolate; }

li.route-trajectory span.distance {
  display: block;
  width: 35%;
  float: left; }

li.route-trajectory span.duration {
  display: block;
  float: left; }

span.duration {
  color: cadetblue; }

li canvas.activity {
  float: left;
  display: block;
  margin: 0 1px 0 -25px; }

ul.contacts > li.inner-list, ul.route > li.inner-list, li.inner-list {
  margin: 0; }

li.inner-list ul {
  list-style-type: none; }

ul.nav-list li.inner-list {
  margin: 0 -15px; }

ul.nav-list li.inner-list > ul {
  margin: 0 15px 0 35px; }
  ul.nav-list li.inner-list > ul.wide {
    margin: 0 15px; }

.content-adjust-height {
  overflow: auto; }

.gm-style-iw h3 {
  font-size: 18px;
  line-height: 1em;
  margin: 0 0 0.2em 0; }
.gm-style-iw + div {
  top: 13px !important; }

#nprogress .bar {
  background: #a7d6f1;
  position: fixed;
  z-index: 100;
  width: 276px;
  height: 3px; }
