html {
    scroll-behavior: auto;
}

details > :not(summary) {
    word-break: break-all;
}

a:hover > .fas, a.fas:hover {
    text-decoration: none;
}

.no-cssgrid details {
    word-break: break-all
}

.banner__container--text {
    max-width: 1300px;
}

.hero__subtitle.center {
    max-width: 28em;
    margin: 0 auto;
}

.hidden {
    display: none;
}

/*******************************
 * GOOGLE GEOCHART WRAPPER DIVS
 *******************************/

#phishing_map_container {
    position: relative;
    width:100%;
}

#map_canvas {
    background-position: bottom right;
    background-repeat: no-repeat;
}

.legend_title_box {
    display: none;
    width: 25%;
    position: absolute;
    left: 20px;
    bottom: 20px;
    z-index: 10;
}

.takedown_legend_box {
    left: 40px;
}

/* Hide the min/max values for chart legend */
/* Which is autogenered without an ID/Class */
svg>g>g>g>text {
    display: none;
}

/* Ensure leaflet elements are shown below the page header (z-index: 1000) */
.leaflet-bottom, .leaflet-top {
    z-index: 900 !important;
}

/*******************************
 * SITE REPORT
 *******************************/

/* Fluid-width input */
#site_report_query span {
    display: block;
    overflow:hidden;
    padding-left: 0;
    padding-right: 4px;
}

/*
.site_report_table table {
    font-size: 0.9em;
}
*/

.site_report_table table th, .site_report_table table td {
    padding: 0.75em 0.5em;
}

.site_report_table .section_title {
    margin-left: 0;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px dotted #ddd;
}

.section_subtitle {
    margin-left: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.site_report_table.closed .section_content {
    display: none;
}

.site_report_table .section_title h2::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: '\f151';
    margin-right: 0.5em;
}

.site_report_table.closed .section_title h2::before {
    content: '\f150';
}

.section_title h2 {
    margin: 0.5em 0;
}

.section_title h2 small {
    margin-left: 0.5em;
    font-size: 0.625em;
}

.section_title a, .section_subtitle a {
    margin: 0.25em 0.5em;
}

.section_title .section_links, .section_subtitle .section_links {
    visibility: hidden;
}

.section_title:hover .section_links, .section_subtitle:hover .section_links {
    visibility: visible;
}

.section_content h3 {
    margin: 0.5em 0;
}

.section_content {
    margin: 0 0.5em;
}

.section_content p {
    margin-top: 0.5em;
}

.section_content table {
    margin-top: 0;
    margin-bottom: 1em;
}

.date {
    white-space: nowrap;
}

.badge {
    border-radius: 5px;
    padding: 3px;
}

.fa-question-circle {
    font-size: 1.25em;
}

td.hb_unsafe {
    background: #ffe0e0;
}

.bigsummary {
    font-size: 14px;
}

p.note {
    font-size: 10px;
    color: #444;
    margin-left: 1em;
    border-top: 1px solid #ddd;
    padding-top: 0.25em;
}

/* POODLE SSL v3 vulnerability styles */
td.poodle_unsafe,
td.poodle_possible,
td.poodle_sslv3_only {
    background: #ffe0e0;
}

.site_report_share {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin: 2em;
}

.site_report_share a, .site_report_share a:visited, .site_report_share a:active {
    color: #232F2F;
    font-weight: normal;
}

.site_report_share > .loading-spinner {
    margin-right: auto;
}

.webbug_graphs {
    display: flex;
    justify-content: space-evenly;
}

.webbug_graph_legend {
    display: inline-block;
    vertical-align: top;
}

.webbug_graph_legend li > span {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: middle;
    border-radius: 0.5em;
    margin-right: 0.5em;
}

@media (max-width: 800px) {
    .webbug_graphs {
        flex-direction: column;
        align-items: center;
    }
}

.technology_table td {
    min-width: 30%;
}

.technology_list, .webbug_graph_legend ul {
    margin-left: 0;
}

.technology_list li, .webbug_graph_legend li {
    list-style-type: none;
}

.site_report_icon {
    color: #232F2F;
    font-size: 1.75em;
    padding: 0 0.5em;
}

.table--multi {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 0.5em;
    align-items: flex-start;
}

@media (max-width: 800px) {
    .table--multi {
        grid-template-columns: auto;
        grid-gap: 0;
    }

    .table--multi table:not(:last-of-type) tr {
        border-bottom: 1px solid #eee;
    }
}

@media (min-width: 701px) {
    .table-technology tbody td { width: 33%; }
    .table-ipdel tbody td:nth-of-type(1), .table-ipdel tbody td:nth-of-type(4) { width: 30%; }
    .table-ipdel tbody td:nth-of-type(2), .table-ipdel tbody td:nth-of-type(3) { width: 20%; }
    .table-netblock thead th:nth-of-type(6) { white-space: nowrap; }
    .table-netblock tbody td:nth-of-type(6) { width: 1%; }
}

@media (max-width: 700px) {
    .table-webbugs tbody td:nth-of-type(1)::before { content: 'Company'; }
    .table-webbugs tbody td:nth-of-type(2)::before { content: 'Primary Category'; }
    .table-webbugs tbody td:nth-of-type(3)::before { content: 'Tracker'; }
    .table-webbugs tbody td:nth-of-type(4)::before { content: 'Popular Sites with this Tracker'; }

    .table-technology tbody td:nth-of-type(1)::before { content: 'Technology'; }
    .table-technology tbody td:nth-of-type(2)::before { content: 'Description'; }
    .table-technology tbody td:nth-of-type(3)::before { content: 'Popular sites using this technology'; }

    .table-ipdel tbody td:nth-of-type(1)::before { content: 'IP range'; }
    .table-ipdel tbody td:nth-of-type(2)::before { content: 'Country'; }
    .table-ipdel tbody td:nth-of-type(3)::before { content: 'Name'; }
    .table-ipdel tbody td:nth-of-type(4)::before { content: 'Description'; }

    .table-ct tbody td:nth-of-type(1)::before { content: 'Source'; }
    .table-ct tbody td:nth-of-type(2)::before { content: 'Log'; }
    .table-ct tbody td:nth-of-type(3)::before { content: 'Timestamp'; }
    .table-ct tbody td:nth-of-type(4)::before { content: 'Signature Verification'; }

    .table-netblock tbody td:nth-of-type(1)::before { content: 'Rank'; }
    .table-netblock tbody td:nth-of-type(2)::before { content: 'Site'; }
    .table-netblock tbody td:nth-of-type(3)::before { content: 'First Seen'; }
    .table-netblock tbody td:nth-of-type(6)::before { content: 'Site Report / Search DNS'; }

    .table-lastreboot tbody td:nth-of-type(1)::before { content: 'Plotted Value'; }
    .table-lastreboot tbody td:nth-of-type(2)::before { content: 'No. samples'; }
    .table-lastreboot tbody td:nth-of-type(3)::before { content: 'Max'; }
    .table-lastreboot tbody td:nth-of-type(4)::before { content: 'Latest'; }
}

#ip_geolocation_map {
    height: 600px;
}
