body {
  padding: 0%;
  margin: 0%;
  font: 1.1rem 'Source Sans Pro', Tahoma, sans-serif; color:#333;
}

.container {
  display: grid;
  height: 100dvh;
  grid-template-areas:
    'flogo header'
    'sidebar content'
    'footer footer';
  grid-template-columns: 1fr 3fr;
  grid-auto-columns: minmax(350px, auto);
  grid-template-rows: 50px 1fr 30px;
  margin: 0%;
}

.code {
  display: grid;
  grid-template-columns: 45px 1fr;
  grid-auto-columns: minmax(40px, auto);
  grid-auto-rows: minmax(30px, auto);
  padding-top: 20px;
}

.codecells {
  padding: 10px;
}

.codehead {
  grid-column-start: 1;
  grid-column-end: 3;
  border: solid 1px darkgray;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  background: rgb(236, 236, 236);
}

.coderows {
  border: solid 1px darkgray;
  border-top: none;
  border-right: none;
  border-bottom-left-radius: 5px;
  background: rgb(236, 236, 236);
  padding: 5px;
}

.codetext {
  border: solid 1px darkgray;
  border-top: none;
  border-bottom-right-radius: 5px;
  padding: 5px;
}

.item {
  font-family: 'Source Sans Pro', Tahoma, sans-serif;
  padding-top: 5px;
  padding-bottom: 5px;
}

.flogo {
  grid-area: flogo;
  background-color: #001166;
  display: flex;
  cursor: pointer;
  align-items: center;
  flex-direction: row;
  flex-grow: 1;
}

.header {
  grid-area: header;
  background-color: #001166;
  display: flex;
  align-content: center;
  font: 18px 'Source Sans Pro', Tahoma, sans-serif;
}

.sidebar {
  grid-area: sidebar;
  min-height: 200px;
  padding: 10px;
  overflow: auto;
  background-color: #f8f9ff;
  border: #ddd solid 1px;
  margin: 1px;
  font: 1rem 'Source Sans Pro', Tahoma, sans-serif;
  display: flex;
}

.content {
  grid-area: content;
  display: flex;
}

.pages {
  border: none;
  flex-grow: 1;
}

.footer {
  grid-area: footer;
  background-color: #99a;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 15px 'Source Sans Pro', Tahoma, sans-serif;
  color: #fff;
}
a.footer:link		{text-decoration:none; color:#fff;}
a.footer:visited	{text-decoration:none; color:#fff;}
a.footer:active		{text-decoration:none; color:#ddf;}
a.footer:hover		{text-decoration:none; color:#ddf;}

ul,
#sidebarTree {
  list-style-type: none;
}

li,
#sidebarTree {
	margin: 5px 0;
}

#sidebarTree {
  margin: 0px;
  padding: 0px;
  overflow: auto;
  /* white-space: nowrap;*/
  cursor: pointer;
}

.menu {color:#333;}
a.menu:link		{text-decoration:none; color:#333;}
a.menu:visited	{text-decoration:none; color:#333;}
a.menu:active	{text-decoration:none; color:#333;}
a.menu:hover	{text-decoration:none; color:#333;}

.nocaret {
  cursor: pointer;
  border-radius: 3px;
}

.caret {
  cursor: pointer;
  border-radius: 3px;
  padding-right: 5px;
  white-space: nowrap;
  /* user-select: none; */
  /* Prevent text selection */
}

.caret::before {
  /*  content: "\25B6";*/
  content: "\25B8";
  color: grey;
  display: inline-block;
  margin-right: 5px;
  /*margin-left: -18px;*/
}

.caret-down::before {
  transform: rotate(90deg);
}

.nested {
  display: none;
}

.active {
  display: block;
}

.logo {
  max-height: 50px;
  width: auto;
}

.d1 {
  font-weight: bold;
  font-size: larger;
  display: flex;
  align-items: center;
  padding-top: 4px;
  padding-left: 5px;
}

.d2 {
  font-size: large;
  display: flex;
  align-items: center;
  padding-top: 4px;
  padding-left: 15px;
}

.d3 {
  font-size: large;
  display: flex;
  align-items: center;
  padding-left: 10px;
}

table {
  border-collapse: collapse;
  table-layout: fixed;
}

th {
  padding: 5px;
  border: lightgray solid 1px;
}

td {
  padding: 15px;
  border: lightgray solid 1px;
  vertical-align: top;
}

.cul {
  list-style-type: disc;
  margin: 5px;
  padding-left: 20px;
}

.cul li {
  margin-top: 2px;
  margin-bottom: 2px;
}

.eng {
  color: lightgray;
}

.wrn {
  width: auto;
  border: solid 1px #ccccaa;
  border-radius: 5px;
  background: #ffffdd;
  padding: 15px;
  font-size: 0.85rem;
}

.inf {
  width: auto;
  border: solid 1px darkgray;
  border-radius: 5px;
  background: rgb(236, 236, 236);
  padding: 10px;
  font-size: 0.85rem;
}

.wframe {
  width: auto;
  border: solid 1px darkgray;
  border-radius: 2px;
  background: rgb(255, 255, 255);
  padding: 5px;
  padding-left: 15px;
  font-size: 0.85rem;
  tab-size: 4;
}

.tip {
  width: auto;
  border: solid 1px rgb(61, 117, 35);
  border-radius: 2px;
  background: rgb(220, 255, 209);
  padding: 15px;
  font-size: 0.85rem;
}

.a {
  color: #0052CC;
  text-decoration: none;
}

.a:hover {
  text-decoration: underline;
  cursor: pointer;
}

.ibody {
  font-family: sans-serif;
  font-size: 0.9rem;
  padding: 20px;
}

.spinf::before {
  font-size: 1.35rem;
  content: "\1f6c8 ";
  color: #3366cc;
}

.spwrn::before {
  font-size: 1.35rem;
  content: "\26A0";
  color: #cc6633;
}

.sptip::before {
  font-size: 1.35rem;
  content: "\2611";
  color: green;
}

.cap {
  font-size: large;
}

.cap1 {
  font-size: medium;
}

.bcomment {
  color: rgb(47, 126, 37);
}
