@import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic&subset=latin);

body {
	/* scale:95%; */
	font-family: Lato, Helvetica Neue, Arial, Helvetica, sans-serif;
	font-size: 2.5vw;
	background-color: #0077be;
}

*{
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

.grid {
	text-align: left;
	display: grid;
	grid-template-columns: 25% 75%;
	grid-template-areas: "sidebar2 header"
                       "docs main"
                       "notes main"
                       "footer footer";
}

@media (max-width: 1000px) {
	.grid{
		grid-template-columns: 50% 50%;
		grid-template-areas: "header header"
                         "docs notes"
                         "main main"
                         "footer footer";
	}
}

#header {
	grid-area: header;
	position: sticky;
	top:0;
	background-color: #0077be;
	color: white;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 8px;
	padding-bottom: 8px;
}

.sidebar {
	grid-area: sidebar;
	background: #0077be;
	float: left;
	position: sticky;
	top:0;

}

.nobr {
	white-space: nowrap;
}

#docs, #notes {
	background-color: #F7F7F7;
	padding: 10pt 20pt 10pt 20pt;
}
#docs { grid-area: docs; }
#notes { grid-area: notes; }

.etc2-logo {
	height: 3vw;
	min-height: 50px;
	margin-right: auto;
	margin-left: 80px;
}

.eso-logo {
	height: 4vw;
	min-height: 50px;
	border: 1px solid #dddddd;
	margin-right: 80px;
	margin-left: 8px;
}

.eso-header-text {
	color: white;
	font-size: 3vw;
	font-weight: bold;
	display: table-cell;
	vertical-align: middle;
}


#footer {
	grid-area: footer;
	background: #0077be;
	min-width: 100%;
	height: 5px;
	float: left;
}

.main {
	grid-area: main;
	background-color:white;
	text-align: center;
	padding: 10pt;
	justify-content: center;
	align-items: center;
}

#indexTable {
	background-color: #0077be;
	padding: 0;
	margin: 0;
	width: 100%;
	max-width: 1000px;
	font-size:calc(14px + 0.25vw);
	margin: 0 auto;
}

#indexTable td {
	vertical-align: middle;
	text-align: center;
	background-color: white;
}

#indexTable td a {
    text-decoration: none;
    color: #0077be;
    font-weight: bold;
    display: inline-block;  /* Ensures that the element can have margins and width */
    margin: 4px;
    width: 8.5em;
}

/* Specific styles for .harps and .nirps with tighter margin control */
#indexTable td a.harps,
#indexTable td a.nirps {
    width: 4.25em;
    margin: 1px; /* Only applies to the specific elements, not affecting the whole cell */
}

#indexTable a:link,
#indexTable a:visited {
	background-color: #0077be;
	color: white;
	border: 2px solid white;
	padding: 4px 4px;
	text-decoration: none;
	display: inline-block;
}

#indexTable a:hover,
#indexTable a:active {
	background-color: white;
	color: black;
	border: 2px solid #0077be;
	padding: 4px 4px;
	text-decoration: none;
	display: inline-block;
}

.col1 {
	background-color: #bed2eb !important;
	font-weight: bold;
	padding: 2px;
}

.col2 {
	background-color: white;
	color: black;
	font-weight: bold;
	padding: 2px;
}

.outerIndexTable, .notesTable {
	width: 100%;
}

.notesTable td:first-child {
	width: 55%;
}

.notesTable td:last-child {
	width: 45%;
}

.hdr-text {
	font-weight: bold;
	font-size:calc(16px + 0.25vw);
}

.contentRow {
	font-size:calc(12px + 0.25vw);
	vertical-align: middle;
	padding: 5px 0px 0px 0px;
}

.docsAndTools, .newsAndNotes{
	vertical-align: top;
}

.icon {
	height: 2.5vw;
	min-height: 30px;
	padding-bottom: 5px;
}

.icontable {
	height: 2.5vw;
	min-height: 30px;
	padding-bottom: 0px;
}

.red {
	color: red;
	font-weight: bold;
}

.framed {
	border: 2px solid red;
	border-radius: 5px;
	padding: 5px;
	width: fit-content;
}

.small {
	font-size: 85%;
}

ul {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 0;
	margin-left: 10px;
	padding-left: 10px;
}

.smallExpandingSelect {
	min-width: 90px;
	max-width: 90px;
	font-size: 90%;
	border-width: 2px;
	border-radius: 2px;
	background-color: white;
}
