/* CSS for nmap.org and related sites */

/* Common sizing fixes */
*, *:before, *:after {
box-sizing: border-box;
}
body,div,ul.tap,.tap>li,img,table,thead,th,tbody,tr,td {
margin: 0px;
padding: 0px;
}

body {
background-color: #2a0d45; /* Nmap Purple */
min-width: 300px;
width: auto !important;
width: 300px;
}

a:link, a:visited {
text-decoration: none;
}
a:hover, a:active {
text-decoration: underline;
}

@media print {
a:link, a:visited { text-decoration: underline; }
}

.purple, .purple a, .purple a:visited {
color: white;
}

/* wrapper: keep body centered, not too wide, show purple on sides */
div#nwrapper {
padding: 7px;
max-width: 974px; /* 960 + 7*2 */
margin-left: auto;
margin-right: auto;
}

/* grid layout */
div#nst-grid,
div#grid {
display: grid;
width: 100%;
grid-template: "logo logo" 90px
               "side main" auto
               / 9rem minmax(0, 1fr);
}
header#nst-logo,
header#logo {
grid-area: logo;
justify-self: left;
}
nav#nst-sidebar,
nav#sidebar {
grid-area: side;
padding-right: 0.5rem;
}
main#nst-content,
main#content {
grid-area: main;
background-color: white;
padding: 0.5rem;
}

/* sidebar style */
nav#nst-sidebar ul,
nav#sidebar ul {
font-weight: bold;
list-style: none;
padding-left: 0px;
}
nav#nst-sidebar ul ul,
nav#sidebar ul ul {
font-weight: normal;
list-style: disc inside;
margin-bottom: 1rem;
}
.nst-search {
display: flex;
gap: 0.2em;
width: 100%;
}
.nst-search-q {
flex: 1;
width: 0px;
}
.nst-search-button {
width: 1.8em;
}

/* SVG top left curve */
main#nst-content::before,
main#content::before {
display: block;
content: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEgMSI+PHBhdGggZD0iTTEsMEExLDEgMCwwLDAgMCwxTDAsMFoiIGZpbGw9IiMyYTBkNDUiLz48L3N2Zz4K");
position: relative;
left: -0.5rem;
top: -0.5rem;
height: 1.5rem;
width: 1.5rem;
margin-bottom: -1.5rem;
margin-right: -1.5rem;
}
main#nst-content img,
main#content img {
max-width: 100%;
height: auto;
}

/* As the screen narrows, */
/* Hide header screenshots */
@media screen and (max-width: 980px) {
 #nmap-header > .header-img {
 display: none;
 }
}
/* Hide the "nmap banner" image carousel */
@media screen and (max-width: 700px) {
 #nmap_bnr {
 display: none;
 }
}
/* Hide the sidebar, readjusting grid layout */
@media screen and (max-width: 600px) {
 nav#nst-sidebar,
 nav#sidebar {
 display: none;
 }
header#nst-logo, header#logo {
justify-self: center;
}
 main#nst-content,
 main#content {
 grid-column: 1/-1;
 }
}

.center {
margin-left: auto;
margin-right: auto;
text-align: center;
}
pre {
overflow-x: auto;
}
.purpleheader {
font-size: large;
padding: 0;
color: white;
background: #2A0D45;
font-family: sans-serif;
font-weight: bold;
font-size: 140%;
text-align: center;
text-shadow: -1px -1px #444;
clear: both;
border-radius: 7px;
}

/* Makes a purple box with big bold text */
.pbbox  { 
border: 1px solid #2A0D45;
background: #F5F1F9;
font-size: larger;
font-weight: bold;
padding: 1rem;
margin: 1rem auto;
clear: both; 
}
