/* Some definitions are grouped together to allow modification
 * of attributes for related classes in a single location
 */

/* The following is for debugging templates and style sheets */
__td{border: solid thin red} 
__p{border:solid thin blue}


/********************/
/* Font definitions */
/********************/

  BODY
, A.dirfile		/* filenames in directory view */
, A.dirfolder
{ _font-family: Baskerville, Times, "Times New Roman", serif;
 _font-family: monospace;
}

  .main
, .banner
, .dirrow1
, .dirrow2
, .__modes		/* mode switches */
, .__modes-sel
, .__modes-dis
, BUTTON
, .varlink		/* 'variables' switches */
, .var-sel
, .treelink		/* tree' switches */
, .tree-sel
, .lxrdesc
, SELECT
, .cvsweb
, .cvsattic
, TD.identline
, TD.searchline
{ _font-family: Helvetica, "Gill Sans", Helvetica, Arial, sans
}

  PRE
, .filecontent
{ font-family: monospace
}


/*****************/
/* global styles */
/*****************/

  BODY
{ color: #000000
; background-color: white
}

  .error
{ text-align: center
; color: red
}

/* general link behavior */
  A
{ text-decoration: none
}
  A:hover
{ text-decoration: underline
}
  A:visited
{
}

/* side cells of tables */
  TD.leftmost
{ text-align: left
}
  TD.rightmost
{ text-align: right
}

  .compact
{ padding: 0
; margin: 0
}

  .fatal
{ color: red
; margin: 2.5cm
; margin-top: 4cm
; padding: 1cm
; border-width: thick
; border-style: solid
; border-color: red
; background-color: #FFFFDD
}

  .warning
{ color: maroon
; __margin: 0.5cm
; __padding: 0.5cm
; border-width: medium
; border-style: solid
; border-color: orange
; background-color: #FFEEEE
}

  .fatal .headline
, .warning .headline
{ text-align: center
; text-transform: uppercase
; padding-bottom: 0.3cm
; margin: 0
}

.indexstate
{}

  P.indexstate.error
{ border: thick solid red
}

  P.indexstate.warning
{ border: thin solid red
}


/***********************/
/* headers and footers */
/***********************/
  .header
, .footer
{ text-align: center
; border: none
; width: 100%
}
  .header TD
, .footer TD
{ padding: 0
}

  .header .leftmost
, .footer .rightmost
{ width: 1%
; white-space: nowrap
}

  .header.compact TD.treelink
{ width: 30%
}

  .main
{ color: #000066
; font-size: 124pt
; font-weight: bold
}

  H1.main
{ font-size: 18pt
; color: black
}

  H2.main
{ font-size: 14pt
}

/* banner - displayed file/folder path */
  .banner
{ font-size: 14pt
; __color: #339966
; text-align: center
; vertical-align: text-top;
}
a.banner {
    padding: 0 0.1em;
}

/* Attic view switch */
  .cvsattic
	/* definition similar to cvsweb */
{ border-width: medium
; border-style: outset
; border-color: #aaaaaa
; background-color: #eeeeee
}

  .footer P
, .footer ADDRESS
{ padding: 0
; margin: 0
}

  TD.rightmost.compact
{ width: 24%
}

  .rightmost.compact FORM
{ display: inline-block
}

  .rightmost.compact BUTTON
{ width: 9em
/* ; display: inline-block */
}


/**********************/
/* menus, "variables" */
/**********************/
  .modes
, .varlink
, SPAN.modes-sel
, SPAN.modes-dis
, SPAN.var-sel
{ _font-size: 10pt
}

 .varlink
, __.modes 
, __A.modes
, A.varlink
, __A.modes:visited
, A.varlink:visited
, .modes BUTTON
, SELECT
, OPTION.varlink
{ 
    color: blue
}

  A.modes
, A.varlink
{ __text-decoration: none
}
  A.modes:hover
, A.varlink:hover 
{ __background-color: #ddffcc
; __text-decoration: none
}

/* currently selected mode/variable */
  SPAN.modes-sel
{ __font-style: italic
; font-weight: bold
}
  SPAN.var-sel
{ font-style: italic
; font-weight: bold
; background-color: #cceeff
}

/* disabled mode */
  SPAN.modes-dis
{ font-style: italic
; text-decoration: line-through
; color: #cccccc
}

  FORM.modes
, FORM.modes-sel
, FORM.modes-dis
, FORM.vars
{ margin: 1px
; padding: 1px
}
  SELECT
{ background-color: white
}
  OPTION.var-sel
{ color: black
; font-weight: bold
; font-style: italic
}


/****************/
/* tabular data */
/****************/

/* used fordirectory listing and indexing performance statistics */
/** table header/footer **/
  .dirheader
, .dirfooter
{ background-color: #aaddff
; color: #000000
}
/* Just for fun, so that table cannot be mistaken for directory*/
  .perfheader
, .perffooter
{ background-color: #ffddaa
}

/** table content area **/
  .dircontent
, .perfcontent
{ width: 100%
; border: none
; border-spacing: 0
; cellpadding: 1
}

  .dirheader TH
, .dirfooter TH
, .perfheader TH
, .perffooter TH
{ _border-right: 1pt solid white
; _border-left: none
; _border-top: none
; text-align: center
; padding: 0.3em;
}

.dirheader TH,
.perfheader TH
{
    border-top: 1px solid blue;
    border-bottom: 1px solid blue;
}
TH.diricon {
    border-left: 1px solid blue;
}
TH.dirdesc {
    border-right: 1px solid blue;
}

  .dirfooter TH
, .perffooter TH
{ _border-top: 1pt solid blue
}

/* "odd" lines (three at once) */
.dirrow1,
.perfrow1 
{ 
    background-color: white;
    __font-size: 90%;
}
/* "even" lines (three at once) */
.dirrow2,
.perfrow2 
{ 
    background-color: #f6f6f6;
    __font-size: 90%;
}
.dirtime {
    font-size: 90%;
}

  .dirrow1 TD
, .dirrow2 TD
, .perfrow1 TD
, .perfrow2 TD
{   border-right: thin solid #999999;
    padding-left: 5px;
    padding-right: 5px;
}

/** individual cell formatting for directory listing **/

A.dirfile,
A.dirfolder { 
    font-size: 100% 
}
A.dirfile { 
    _color: black
}

  .diricon
, .dirname
, .dirsize
, .dirtime
, .dirindex
, .dirindexinvalid
{ width: 1%
; white-space: nowrap
}

.diricon IMG
{ _border: none;
}

  TD.dirname
{ text-align: left
; padding: 0 5pt
}

  TD.dirsize
{ text-align: right
; padding: 0 5pt
}

TD.dirtime,
TD.dirindex,
TD.dirindexinvalid 
{
    text-align: right;
    padding: 0 5pt;
}

TD.dirindexinvalid {
    background-color: #ffccdd;
    text-align: center;
}

TD.dirdesc {
    color: #666666;
    text-align: left;
    padding-left: 5pt;
    padding-right: 3pt;
    _font-size: 90%;
}
TD.dirdesc P {
    padding: 0;
    margin: 0;
}

/* description extracted from README(.txt) file */

.lxrdesc {
    color: #666666;
    font-style: italic
}

/** individual cell formatting for performance data **/

  .perfcomment
{ padding: 0
; text-align: center
; font-size: 10pt
}
/* indexed version */
  TD.perfversion
{ padding: 0 1em 0 0
}

/* indexation date */
  TD.perfdate
{ padding: 0 1em
; text-align: center
}

/* durations */
  TD.perfpurge
, TD.perffreetext
, TD.perfdefn
, TD.perfrefs
{ text-align: right
; padding: 0 1em
}
/* total durations */
  TD.perftotal
, TD.perfelapsed
{ text-align: right
; font-style: italic
; font-weight: bold
; padding: 0 1em
}

/* estimates */
  TABLE.perfestimate
{ border: thin solid
; border-collapse: separate
; border-spacing: 3px
; margin-left: auto
; margin-right: auto
}
  .perfestimate TH
{ font-weight: normal
; border: solid 1pt
; padding: 2pt 1em
}
  .perfestimate TD
{ border: solid 1pt
; padding: 2pt 1em
; text-align: right
}


/*************/
/* file view */
/*************/

/* most recent addition to file */
  .annot-cur
{ background-color: #ffcc88
}
/* alternating annotation background */
  .annot0
{ background-color: white
}
  .annot1
{ background-color: #ffeedd
}

/* the line number */
  .fline
{ background-color: silver
}

/* link - the line number */
  A.fline
{ text-decoration: none
}
  a.fline:target
{ background-color: yellow
}

/* link to other site (http, ftp and mailto) */
  A.offshore
{ text-decoration: underline
}

/* link to the include file */
  A.include
{ color: #E65C00
}

/* link - identifier search */
  .fid
{ color: #007ACC
}

/* general file font etc. */
  pre.filecontent {
}

/* Syntactic highlighting*/
/* comments */
  [class|=comment]
{ color: #808080
; font-style: italic
}

/* plain ol'doc (in Perl) */
  .comment-d
{
  font-style: normal
}
/* strings */
  [class|=string]
{ color: #BB0000
}
/* OS command (in Perl) */
  .string-x
{
  color: #BB5500
}
/* reserved words */
  .reserved
{ color: green
; font-weight: bold
}
/* extras */
  [class|=extra]
{ color: purple
; font-style: italic
}

/* -------- Our theme -------- */

.filecontent {
    display: flex;
    justify-content: flex-end;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
}
.filecontent-num { 
    overflow: visible;
}
.filecontent-src {
    overflow: visible;
}

.fline { 
    color: #aaa; 
    background-color: transparent;
    padding: 0em .3em;
    padding-right: .5em;
    margin-right:  1em;
    border-right: 1px solid #ccc;
}
a.fline   { text-decoration: none }
a.fline:target { 
    color: white;
    background-color: red;
    border-radius: 3px;
}
.comment  { color: green;   font-style: normal }
.reserved { color: black    }
.fid      { color: #007ACC  }
.fid      { color: #0050e0  }


/*************************/
/* ident. search results */
/* and free-text search  */
/*************************/

  TABLE.identdef
, TABLE.identref
, TABLE.searchref
{ border: thin solid #999
; border-spacing: 0
; border-collapse: collapse
}

  .searchref TH
, .identref TH
, .identdef TH
{
; text-align: center
; background-color: #aaddff
; padding: 0.2em 1em
}

  .identdef TD
, .identref TD
, .searchref TD
{
    border: thin solid #ccc;
    padding: .1em .5em
}

  TD.identfile
, TD.searchfile
, TD.searchfilevoid
{
  white-space: nowrap
}

  TD.identfile
, TD.searchfile
{ __border-top: thin solid black
; __border-bottom: none
}

  TD.searchfilevoid
{ border-top: none
; border-bottom: none
}
  .identfile A
, .searchfile A
{ __color: gray
}

  A.identline
, A.searchline
{ text-align: right
; min-width: 2.5em
; margin: 0 1pt
; display: inline-block
; border: none
; font-size: 80%
}

  .identapprox:before
{ color: red
; content: "⁕"		/* for Unicode (UTF-8) */
						/* incorrect display under 8-bit character sets */
/*; content: "±" 	    /* for ISO-8859-1 */
/*; content: "÷" 	    /* other suggestion for ISO-8859-1 */
}

  TR.identline
, TR.searchline
{ text-align: left
}

  TD.identinvalid
, TD.searchinvalid
{ background-color: #ffccdd
}

/* Improve readability on colored background */
  TD[class~=searchfile][class~=searchinvalid] A
{ color: black
}

/*  PRE.searchtext
{ font-family: FreeMono, monospace
}*/

  PRE.searchtext SPAN.searchtext
{ color: red
; font-weight: bold
}

/* link to "member of" */
.search-member
{ color: #669966
}

/* link to the file with reference */
.search-ref {
}

/* identifier searched (in header) */
  .identident
, .searchident
{ /*font-size: 18pt
; font-weight: bold
; */
    color: #FF9494;
    color: #DE66FF
}


/*************/
/* diff view */
/*************/

/* reference to the file (in header) */
.diff-fref {
}

/* marks like '!!', '<<' etc. */
.diff-mark
{ background-color: red
; color: white
; font-weight: bold
}

/* background of differing lines */
  .diff-left
{ background-color: #ffccdd
}
  .diff-both
{ background-color: #ffffaa
}
  .diff-right
{ background-color: #ddffdd
}


/***************/
/* config view */
/***************/

  TABLE.conf_section
{ border: none
; width: 100%
; text-align: center
}
  .conf_prev
{ text-align: left
}
  .conf_next
{ text-align: right
}

  TABLE.config
{ border: thin solid black
; border-spacing: 0
; border-collapse: collapse
; width: 100%
}

  .config TH
{ border: 1pt solid black
; text-align: center
; background-color: gray
; color: white
}

  .config TD
{ border: thin solid gray
}

  TD.conf_parm
{ padding: 0pt 2pt
}

  TD.conf_type
{ text-align: center
}

  TD.conf_val
{ overflow: auto
; padding: 0pt 5pt
}

  .conf_force
{ color: red
; background-color: silver
}


/*************/
/* NCBI      */
/*************/

header {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between ;
    align-items: stretch;
}

header .nav-menu,
header .nav-mode {
    background-color: #eeeeee;
}
header div {
    padding: 0.4em;
}
header .nav-menu {
    padding-right: 2em;
}
header .nav-title .main {
    margin: 0.5em 0;
}
header .nav-title .banner {
    margin: 0 0;
}
header .nav-mode {
    padding-left: 2em;
    text-align: right;
}

footer {
    margin-top:    1.5em;
    margin-bottom: 1em;
}

footer .version {
    margin-top: .2em;
    font-size: 80%;
}


/*************/
/* SVN       */
/*************/

/* ---- File content ---- */

.src-wrapper { 
    width: 100%;
}

.src-numbers { 
    float: left;
    padding-right: 5px;
    border-right: 1px solid #eee;
}
.src-numbers a {
    color: #bbb;
    text-decoration: none;
    padding: 5px;
}
.src-numbers a:hover {
    color: white;
    background-color: #ccc;
    border-radius: 5px;
}
.src-content {
    float: left; 
    width: 1px;
    padding-left: 10px;
}


/**
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    contenteditable attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that are clearfixed.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}
.clearfix:after {
    clear: both;
}


/* ---- SVN ---- */

.svn-button {
    padding: 3px;
    text-decoration: none;
    font: 0.6em "Bitstream Vera Sans", sans-serif;
    font-weight: bold;
    background: #f2f1ef;
    border: 1px solid #908f8d;
    border-radius: 3px;
    box-shadow:
      inset 0 1px #fff,
      inset 0 -1px #d9d8d7,
      inset 0 2px 2px #fff,
      inset 0 -3px 2px #d9d8d7,
      inset 0 4px 6px #fff,
      inset 0 -4px 6px #d9d8d7,
      inset 0 7px 10px #fff,
      inset 0 -7px 10px #d9d8d7,
      0 0 3px rgba(144,143,141,0.75);
}
.svn-button:hover { 
    background-color: #fff; 
    text-decoration: none;
}

.svn-external    { font-size: 100%; color: red; }
.svn-info-block  { padding-left: 3em; }
.svn-info-entry  { padding-left: 3em; font-weight: normal; }
.svn-branch-name { font-weight: bold; }
