input[type="button"],
input[type="submit"]
{
  min-width: 70px;
}

input[type="file"]
{
  font-size: .9em;
}

div.input_caption
{
  margin-bottom: 2px;
}

/* ----- */

div.panel_caption
{
  display: block;
  position: relative;
  padding: 8px;
  font-size: 1.1em;
  letter-spacing: 2px;
  text-align: center;
}

div.row_box_caption
{
  margin: 8px 0 0 12px;
}

div.record_row_box
{
  display: flex;
  flex-direction: column;
  margin-bottom: 12px;
}

div.record_row
{
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-end;
  margin: 8px;
  padding: 4px 0;
}

div.record_row_box div.record_row
{
  margin: 4px 8px;
  padding: 0;
}

div.record_row > div
{
  flex: 1 1 auto;
  align-items: flex-end;
  text-align: left;
  margin: 4px 4px 0 4px;
}

div.record_row > div div.input_caption
{
  margin-top: 8px;
}

div.record_row > div input[type="text"],
div.record_row > div input[type="date"],
div.record_row > div input[type="password"],
div.record_row > div input[type="file"],
div.record_row > div textarea
{
  width: 100%;
}

div.record_row > div input[type="file"]
{
  max-width: 220px;
}

/* ---*/

.record_table
{
  display: table;
  width: 100%;
  margin-bottom: 12px;
  border-collapse: separate;
  border-spacing: 8px 8px;
  border: 1px solid gray;
}

.record_table div.rt_row
{
  display: table-row;
}

.record_table div.rt_row > div
{
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border: 1px none gray;
}

.record_table div.rt_row > div input[type="text"],
.record_table div.rt_row > div textarea

{
  width: 100%;
}

.record_table div.rt_row > div textarea

{
  resize: vertical;
}

/* -- */

div.image_input
{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
}


div.image_input > div
{
  text-align: center;
}

div.image_input div#image
{
  flex: 0 1 200px;
  margin: 8px;
}

div.image_input div#image img
{
  width: 100%;
}

div.image_input div#input
{
  flex: 1 1 auto;
  margin: 0 8px;
}

div.image_input div#input div#shadow_box
{
  margin-top: 8px;
}

div.image_input div#input div#title
{
  width: 100%;
  text-align: left;
}

/* -- */

.bgc1 { background: #d2deca } /* green */
.bgc2 { background: #cadbdc } /* blue */
.bgc3 { background: #acb3bd } /* gray */
.bgc4 { background: #bdaeac } /* brown */
.bgc5 { background: #feffe5 } /* yellow */
.bgc6 { background: #ffecec } /* pink */

/* ---*/

.center_box
{
  display: block;
  position: relative;
  min-width: 200px;
  max-width: 98%;
  margin: 20px auto 1em auto;
  text-align: left;
}

.border_box
{
  display: block;
  position: relative;
  min-width: 200px;
  max-width: 98%;
  margin: 20px auto 1em auto;
  padding: 20px;
  padding-top: 10px;
  text-align: center;
  border: 1px solid black;
  border-radius: 8px;
  background: #cccccc;
}

/* ---*/

div.bottom_buttons
{
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  margin: 20px 0 10px 0;
}

div.bottom_buttons > div
{
  display: flex;
  flex: 0 1 auto;
  justify-content: center;
  flex-wrap: wrap;
  margin: 6px 0;
}

div.bottom_buttons input
{
  margin: 0 6px;
}

/* ----- */

input.styled_button,
input.browse_img
{
  width: auto;
  min-width: 70px;
  max-width: initial;
  margin: 12px;
  padding: 4px;
  background: inherit;
  letter-spacing: 1px;
  cursor: pointer;
  border-style: none;
  border-top: 1px dotted gray;
  border-bottom: 1px dotted gray;

}

.styled_button:hover
{
  box-shadow: 0px 0px 4px 1px rgba(100,100,100,0.3);
}

input.browse_img
{
  width: 100%;
  max-width: initial;
}

/* ----- */

div.list_buttons
{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 12px 0px;
}

div.list_buttons div.list_buttons_stack
{
  display: flex;
  align-items: center;
  margin-left: auto;
  text-align: left;
}

div.list_buttons div.list_buttons_stack div.lbs_item
{
  margin-left: 8px;
}

/* ---*/

div.list_plain,
div.list_display
{
  display: table;
  position: relative;
  width: 100%;
  border-collapse: collapse;
  border: 1px solid black;
}

div.list_plain div.list_display_header,
div.list_display div.list_display_header
{
  display: table-header-group;
  height: 2em;
  text-align: center;
  letter-spacing: 0.1em;
  background: #564438;
  color: white;
}

div.list_plain div.list_display_header > div,
div.list_display div.list_display_header > div
{
  position: relative;
  display: table-cell;
  vertical-align: middle;
}

div.list_plain div.list_display_header > div > img,
div.list_display div.list_display_header > div > img
{
  position: absolute;
  height: 14px;
  margin-top: 2px;
  right: 8px;
  cursor: pointer;
}

div.list_plain > div.list_row,
div.list_display a
{
  display: table-row;
  text-decoration: none;
}

div.list_plain div.list_row:nth-child(even),
div.list_display a:nth-child(even)
{
  background: #C4BDB5;
}

div.list_plain div.list_row:nth-child(odd),
div.list_display a:nth-child(odd)
{
  background: #BC9874;
}

div.list_display a:link { color: black; }
div.list_display a:hover { color: black; }
div.list_display a:visited { color: black; }
div.list_display a:active { color: black; }

div.list_plain div.list_row:hover,
div.list_display a:hover
{
  background: #777777;
  color: white;
}

div.list_plain div.list_row > div,
div.list_display a > div
{
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  padding: 4px;
  border: 1px solid black;
}

div.cell_box
{
  display: flex;
  align-items: center;
}

/* 

div#nav_box
{
  display: flex;
  flex-direction: column;
  align-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 8px;
}

div#nav_caption
{
  display: flex;
  justify-content: space-between;
  position: relative;
  width: 100%;
}

div#nav_caption > input.prev_next
{
  display: block;
  flex: 0 1 40px;
  min-width: 0;
  align-self: center;
  font-weight: bold;
}

div#nav_caption > input.prev_btn,
div#nav_caption > input.next_btn
{
  display: block;
  flex: 0 1 40px;
  min-width: 0;
  align-self: center;
  border-style: none;
  cursor: pointer;
}

div#nav_caption > input.prev_btn
{
  background: url(/images/previous_03.png) center/contain no-repeat;
}

div#nav_caption > input.next_btn
{
  background: url(/images/next_03.png) center/contain no-repeat;
}

div#nav_caption div#page_caption
{
  flex: 0 1 auto;
  min-width: 40%;
  align-self: center;
  text-align: center;
  font-size: 1.2em;
  letter-spacing: .1em;
  text-align: center;
}

div#nav_caption div#page_caption span#page_sub_caption
{
  font-size: .9em;
  font-variant: small-caps;
  letter-spacing: .4em;
}
*/

div.top_buttons
{
  display: flex;
  justify-content: center;
  margin-top: 8px;

}

div.top_buttons input
{
}

/* ----- */

.form_msg
{
  width: 100%;
  margin: 8px 0px;
  text-align: center;
  font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
  color: #841B2D;
  font-variant: small-caps;
  font-size: 1.2em;
  letter-spacing: 1px;
}

F