/* This file was added as a quick fix for */
/* USER-3023 - used by release notes and documentation projects */

/***************************************************/
/* common boxes, containers, widgets, utilities    */

.llwidget {
  position: relative;
}

.llwidget h2 {
  margin-top: 0px;
  color: #3b3a38;
  font-size: 1.5em;
}

ul.unstyled {
  padding-left: 0px;
}

/***************************************************/
/* bootstrap accordion and collapse tweaks         */

/* .accordion{
    margin-bottom: 0px;
}

.accordion-body.in { overflow:auto; }

.collapse.in{
    overflow: visible;
} */

/***************************************************/
/* analysis report                                 */

.node circle {
  cursor: pointer;
  fill: #fff;
  stroke: steelblue;
  stroke-width: 1.5px;
}

.node text {
  font-size: 12px;
}

path.link {
  fill: none;
  stroke: #ccc;
  stroke-width: 1.5px;
}

g.subjects-graph-legend {
  cursor: default;
}

g.subjects-graph-legend circle {
  cursor: pointer;
}

g.subjects-graph-legend text {
  font-size: 12px;
}

div.d3-tooltip {
  background-color: rgb(38, 38, 38);
  border-radius: 3px;
  color: var(--white);
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 11px;
  padding: 8px;
  position: absolute;
  pointer-events: none;
  text-align: center;
}

div.hint {
  font-size: 12px;
  right: 0;
  color: #999;
  text-align: right;
}

ol.carousel-indicators {
  list-style-type: none;
}

ul.screenshot_list li {
  display: inline;
  list-style-type: none;
  background: url(./images/loading.gif) no-repeat center center;
}

img.screenshot {
  margin-right: 10px;
  margin-bottom: 10px;
  width: 160px;
  height: 120px;
  border: 1px solid lightgray;
}

/* larger modal for screenshots (screenshot is 640x480) */
.modal-screenshot {
  width: 670px;
  margin-left: -335px;
  height: 590px;
}
@media (max-width: 600px) {
  .modal-huge {
    width: 580px;
    margin-left: -290px;
  }
}
.modal-screenshot > .modal-body {
  max-height: 570px;
}

/* no extra margin at bottom of screenshot */
.modal-screenshot > .modal-body > .carousel {
  margin-bottom: 0px;
}

.modal-screenshot h3 {
  color: #3b3a38;
  font-size: 1.5em;
}

div.search-in-page {
  padding-bottom: 10px;
}

.search-match {
  background-color: rgb(255, 255, 224) !important;
}

ul.network_connections {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
}
ul.network_connections li.incoming:before {
  content: '\F177';
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
}
ul.network_connections li.outgoing:before {
  content: '\F178';
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
}

ul.remark li {
  margin-left: 5px;
}

a.anchor {
  display: block;
  position: relative;
  top: -47px; /* the size of the fixed header */
  visibility: hidden;
}

.options-well {
  margin-top: 5px;
}

/* work-around lack of conditional ng-style in angular < 1.1.5 */
.auto-visibility {
  visibility: auto;
}
.hidden-visibility {
  visibility: hidden;
}

.lltable-break {
  table-layout: fixed;
  /* same as .break-word */
  word-wrap: break-word;
  white-space: normal;
}

.call-graph-node {
  font-weight: normal !important;
}

.call-graph-func-name {
  font-weight: bold;
}

/***************************************************/
/* Dashboard                                       */

/* general dashboard structure */

.dashboard-top {
  margin-bottom: 6px;
}

.dashboard-body > .span6 {
  margin: 0px;
  width: 50%;
}

.dashboard-body .dashboard-column {
  margin-left: 0px;
  margin-right: 10px;
}

.dashboard-body .dashboard-last-column .dashboard-column {
  margin-right: 0px;
}

.dashboard-column-item {
  margin-bottom: 8px;
}

/*we don't want tick lines on some of the graphs:
 * hide them, except for the 0 line */

.infections-multibar line.tick.tick.tick,
.traffic-graph line.tick.tick.tick,
.metric-graph line.tick.tick.tick {
  opacity: 0;
}

.infections-multibar line.tick.tick.tick.zero,
.traffic-graph line.tick.tick.tick.zero,
.metric-graph line.tick.tick.tick.zero {
  opacity: 1;
}

/* Malware graph widget */

/*Invisible border so layout does not change on hover*/
.malware-top10 li {
  border: 1px solid #fff;
  border-radius: 5px;
}

.malware-top10 li:hover {
  border-color: #ddd;
  background-color: #f5f5f5;
}

.ll-heading {
  color: #91ae3a;
}

.tooltip h4 {
  font-size: 15px;
}

/*for QA-style titles, currently in use for unsupported browser page*/
h3.qa-question {
  font-weight: normal;
}

/*override style of nvd3 tooltips,
 copying from bootstrap css for
 tooltip and tooltip-inner styles*/
.nvtooltip.xy-tooltip {
  position: absolute;
  z-index: 1030;
  display: block;
  padding: 5px;
  font-size: 11px;
  visibility: visible;
  opacity: 0.8;
  filter: alpha(opacity=80);
  max-width: 200px;
  min-width: 200px;
  padding: 3px 8px;
  color: var(--immutable-white);
  text-align: center;
  text-decoration: none;
  background-color: var(--immutable-black);
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}

.nvtooltip h4 {
  font-size: 15px;
}

.nvtooltip.xy-tooltip table {
  background-color: transparent;
}

/*traffic graph hack: hide last x-axis label that is out of bounds*/
.traffic-graph g.nv-x.nv-axis > g > g > g:last-of-type > text {
  display: none;
}

/***************************************************/
/* Settings                                        */

.capitalized {
  text-transform: capitalize;
}

tr.appliance-child {
  background-color: #f9f9f9;
}

.log-content {
  white-space: pre;
}

table.appliance-status-group-table {
  margin-bottom: 0px;
  border-bottom: 0px;
  border-radius: 0px !important;
}

table.table-bordered.appliance-status-group-table
  tbody:first-child
  tr:first-child
  > th:first-child {
  -moz-border-radius: 0px !important;
  -webkit-border-radius: 0px !important;
  border-top-left-radius: 0px !important;
  border-top-right-radius: 0px !important;
}

/* can't make :first-child work with border radius... */
table.appliance-status-first-group-table {
  margin-bottom: 0px;
  border-bottom: 0px;
  border-top-left-radius: 4px !important;
  border-top-right-radius: 4px !important;
  border-bottom-left-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}

/* can't make :last-child work with border radius... */
table.appliance-status-last-group-table {
  border-bottom-left-radius: 4px !important;
  border-bottom-right-radius: 4px !important;
  border-top-left-radius: 0px !important;
  border-top-right-radius: 0px !important;
  border-bottom: 1px solid var(--border-color) ddd;
}

/*g.nv-x.nv-axis text:not(.nv-axislabel):last()*/

/***************************************************/
/* Intelligence                                    */

.reports-total {
  padding-top: 137px; /* (svg height - text height) / 2 */
  height: 213px; /* padding + height: 500px as svg height */
}

svg.analytic-chart {
  display: block;
  margin: auto;
  height: 400px;
  width: 600px;
}

svg.analytic-chart * .nvd3.nv-pie .nv-pie-title {
  font-size: 24px;
  fill: lightgray;
}

/*
.multi-bar-time-chart svg.analytic-chart {
  display: block;
  margin: auto;
  height: 400px;
  width: 600px
}
*/

.intelligence-facets,
.intelligence-facets label {
  font-size: normal;
}

.intelligence-facets strong {
  padding-bottom: 3px; /* to center vertically with the radio labels */
}

.intelligence-facets * small {
  font-size: small;
}

li.list-expander,
li.list-shrinker {
  list-style-type: none;
}

/***************************************************/
/* print-related css                               */

/*hide the page's URL (unless we are printing)*/
div#page_url {
  display: none;
}
qrcode {
  display: none;
}

#print_header {
  display: none;
}

@media print {
  @page {
    margin: 0.5cm;
  }

  @page: first {
    margin-top: 0cm;
  }

  * {
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    filter: none !important;
    -ms-filter: none !important;
  }

  body {
    font: 11pt Lato !important;
  }

  h2,
  h3 {
    page-break-after: avoid;
    color: #3b3a38 !important;
  }

  img {
    max-width: 100% !important;
  }

  ul,
  img {
    page-break-inside: avoid;
  }

  a {
    font-weight: bolder;
    text-decoration: none;
  }

  a[href^='http']:after {
    content: ' <' attr(href) '> ';
  }

  a[href^='#']:after a[href^='tel']:after,
  a[href^='mailto']:after {
    content: '';
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  pre {
    border: none !important;
    padding: 0px !important;
    margin: 0px !important;
  }

  thead {
    display: table-header-group;
    font-size: 12pt !important;
  }

  .label,
  .badge {
    border: 1px solid black !important;
    color: #3b3a38 !important;
  }

  div#page_url {
    padding: 10px !important;
    display: block !important;
    border: 1px solid #bbb;
    border-radius: 3px;
    font-style: italic;
    margin: 5px;
  }
  div#page_url:before {
    content: 'Permalink: ';
  }

  qrcode {
    display: block !important;
    float: right;
    padding: 5px;
  }

  /*do not print boilerplate*/
  section#above-header,
  div#nav-container,
  div#footer-container {
    display: none !important;
  }

  /*apply to all top level divs!*/
  div.inner {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
  }

  div#content {
    padding: 0 !important;
  }

  /* hide search forms */
  form.form-search {
    display: none;
  }

  /* hide comments button */
  button.btn-comments {
    display: none;
  }

  div.accordion-group {
    border-style: none;
  }
  div.expand-on-print > div.accordion-body {
    display: block;
    height: auto !important;
  }

  div.report-actions {
    display: none;
  }

  /* hide content box's border */
  div.llbox {
    border-style: none;
  }

  span.accordion-toggle > a {
    display: none;
  }

  div.accordion-heading {
    font-size: 15pt;
  }

  div.accordion-heading a {
    /* @ll-base-color */
    color: rgb(122, 154, 1) !important;
  }
}

/****************************************
* If a table is inside of a table with borders, it also gets borders
* Adding .reset-border to the inner table will remove the extra borders
****************************************/
.table-bordered table.reset-border th,
.table-bordered table.reset-border td {
  border-left: 0;
}

/****************************************
* Creates a table with no borders, even if inside .table-bordered
****************************************/
.table.no-border,
.table.no-border th,
.table.no-border td,
.table-bordered table.no-border,
.table-bordered table.no-border th,
.table-bordered table.no-border td {
  border: 0;
}

/*
ng-cloak styles are injected by Angular, but there are some pages where Angular
does not run but our angular templates show. (404 pages for example)
*/
[ng\:cloak],
[ng-cloak],
[data-ng-cloak],
[x-ng-cloak],
.ng-cloak,
.x-ng-cloak,
.ng-hide:not(.ng-hide-animate) {
  display: none !important;
}
