

@import url(entitag3.css);    /*  iso-entities as empty element-tags  */

/* new: @namespace ... url(http://xmlns.TeXML.org/TeXML)    */
/* new: @namespace ... url(http://xmlns.TeXML.org/Entitags) */

@namespace TeXML url(http://www.unterstein.net/ML/TeXML); 
@namespace xhtml url(http://www.w3.org/1999/xhtml);

/*  ***********************
 *  CSS-2 formats for TeXML
 *  to display the contents
 */
TeXML {
    display: block;
    background: white none;
    padding: 100pt 60pt 100pt 60pt;
    font: 10pt/14pt georgia, "bitstream vera serif", serif;
    }

/*  ***************************
 *  don't display TeX internals
 *  but the other general styles
 */
TeX, TeXSL,
*[type="tex"],
*[role="tex"],
*[mode="tex"],
cmd[name="special"] {
    display: none;
    }
*[TeXML|type="tex"],
*[TeXML|role="tex"],
*[TeXML|mode="tex"] {
    display: none;
    }
cmd, opt, arg, grp, act {
    display: inline;
    }
env {
    display: block;
    margin: 14pt 28pt 14pt 28pt;
    }
act:after {
    content: attr(as);
    }
x, par {
    display: block;
    text-indent: 1.5em;
    }
x[wrap] {
    text-indent: 0pt;
    }
x[wrap="par"]   {
    text-indent: 1.5em;
    }


/*  ***************************
 *  overall structure
 */
cmd[name="documentclass"],
cmd[name="usepackage"] {
    display: none;
    }
x[wrap="doc"],
env[name="document"] {
    display: block;
    text-indent: 0pt;
    margin: 0pt; padding: 0pt;
    counter-reset: section 0
                   subsection 0
                   subsubsection 0
                   paragraph 0
                   subparagraph 0
                   footnote 0;
    }

cmd[name="title"] {
    display: block;
    text-align: center;
    font-size: 20.74pt;
    line-height: 25pt;
    margin-top: 0pt;
    margin-bottom: 29.89pt;
    }
cmd[name="date"],
cmd[name="author"] {
    display: block;
    text-align: center;
    line-height: 16pt;
    margin-top: 17.28pt;
    margin-bottom: 17.28pt;
    }
cmd[name="today"]:after {
    content: "yyyy-mm-dd";  /*  yet to do  */
    }
cmd[name="maketitle"] {
    display: block;
    height: 24.88pt;
    }


/*  ****************************
 *  chapters, sections, headings
 */
cmd[name="chapter"],
cmd[name="chapter*"] {
    display: block;
    font: bold 17.28pt/22pt georgia, "bitstream vera serif", serif;
    margin: 20.74pt 0pt 20.74pt 0pt;
    }
cmd[name="section"],
cmd[name="section*"] {
    display: block;
    font: bold 14.40pt/18pt georgia, "bitstream vera serif", serif;
    margin: 17.28pt 0pt 17.28pt 0pt;
    }
cmd[name="section"]:before {
    content: counter(section) "  ";
    counter-increment: section 1;
    counter-reset: subsection 0;
    }
cmd[name="subsection"],
cmd[name="subsection*"] {
    display: block;
    font: bold 12pt/14pt georgia, "bitstream vera serif", serif;
    margin: 14.40pt 0pt 14.40pt 0pt;
    }
cmd[name="subsection"]:before {
    content: counter(section) "." counter(subsection) "  ";
    counter-increment: subsection 1;
    counter-reset: subsubsection 0;
    }
cmd[name="subsubsection"],
cmd[name="subsubsection*"] {
    display: block;
    font: bold 10pt/12pt georgia, "bitstream vera serif", serif;
    margin: 12pt 0pt 12pt 0pt;
    }
cmd[name="paragraph"],
cmd[name="paragraph*"] {
    display: inline;
    font-weight: bold;
    }
cmd[name="subparagraph"],
cmd[name="subparagraph*"] {
    display: inline;
    font-weight: bold;
    }

cmd[name="chapter"]+par,        cmd[name="chapter"]+x,
cmd[name="chapter*"]+par,       cmd[name="chapter*"]+x,
cmd[name="section"]+par,        cmd[name="section"]+x,
cmd[name="section*"]+par,       cmd[name="section*"]+x,
cmd[name="subsection"]+par,     cmd[name="subsection"]+x,
cmd[name="subsection*"]+par,    cmd[name="subsection*"]+x,
cmd[name="subsubsection"]+par,  cmd[name="subsubsection"]+x,
cmd[name="subsubsection*"]+par, cmd[name="subsubsection*"]+x,
env+par, env+x {
    text-indent: 0pt;
    }

/*  ****************************
 *  "hand made" table of content
 */
cmd[name="contentsline"],
cmd[name="tableofcontents"] {
    display: block;
    }
cmd[name="addcontentsline"] {
    visibility: hidden; height: 0pt;
    }
x[wrap="toc"]:before {
    display: block;
    font: bold 14.40pt/18pt georgia, "bitstream vera serif", serif;
    margin-top: 17.28pt;
    margin-bottom: 17.28pt;
    text-indent: 0pt;
    content: "Inhalt";
    }
cmd[args="\00007Bchapter\00007D"] {
    display: block;
    font-weight: bold;
    margin-top: 4pt;
    }
cmd[args="\00007Bsection\00007D"] {
    display: block;
    font-weight: bold;
    margin-left: 28pt;
    }
cmd[args="\00007Bsubsection\00007D"] {
    display: block;
    font-weight: normal;
    margin-left: 42pt;
    }
cmd[args="\00007Bsubsubsection\00007D"] {
    display: block;
    font-style: italic;
    font-weight: normal;
    margin-left: 56pt;
    }
cmd[args="\00007Bchapter\00007D"]:before,
cmd[args="\00007Bsection\00007D"]:before,
cmd[args="\00007Bsubsection\00007D"]:before,
cmd[args="\00007Bsubsubsection\00007D"]:before {
    font-style: normal;
    font-weight: bold;
	font-family: verdana, tahoma, 'bitstream vera sans', sans-serif;
	content: '\00203A\A0\A0'; 
    }


/*  *****************************************
 *  whitespace, linebreak, rules, plain chars
 */
cmd[name="par"]:after,
cmd[name="endgraf"]:after {
    display: block;
    content: "\A\A";
    }
cmd[name="\\"],     /*  FIXME: name-value not a NMTOKEN  */
cmd[name="newline"] {
    display: block;
    }
cmd[name="space"] { padding-right: 0.3em; }
cmd[name="quad"]  { padding-right: 1em; }
cmd[name="qquad"] { padding-right: 2em; }

cmd[name="hrule"] {
	/*
    display: block;
    border-top: 1pt solid black;
	*/
	display: block; height: 1px; border: 0; 
	color: black; background-color: black;
    }
cmd[name="phantom"] {
    visibility: hidden;
    }
cmd[name="strut"] {
    width: 0pt;
    height: 1em;  /*  FIXME: should be lineheight */
    }
cmd[name="\00002C"],    /*  FIXME: name-value not a NMTOKEN  */
cmd[name="thinspace"] {
    padding-right: 0.16667em;
    }
cmd[name="indent"]:before {  /*  FIXME: indent doesn't work  */
    text-indent: 1.5em;
    content: " ";
    }
cmd[name="noindent"] {
    text-indent: 0pt;
    }
cmd[name="smallskip"] {
    display: block;
    visibility: hidden;
    height: 3.5pt;     /*  TeX:  3pt plus 1pt minus 1pt  */
    }
cmd[name="medskip"] {
    display: block;
    visibility: hidden;
    height: 7pt;       /*  TeX:  6pt plus 2pt minus 2pt  */
    }
cmd[name="bigskip"] {
    display: block;
    visibility: hidden;
    height: 14pt;      /*  TeX: 12pt plus 4pt minus 4pt  */
    }


*[name="aa"]:after { content: "\0000E5" /* "å" */ ; }
*[name="AA"]:after { content: "\0000C5" /* "Å" */ ; }
*[name="ae"]:after { content: "\0000E6" /* "æ" */ ; }
*[name="AE"]:after { content: "\0000C6" /* "Æ" */ ; }
*[name="l"]:after  { content: "\000142" /* "l" */ ; }
*[name="L"]:after  { content: "\000141" /* "L" */ ; }
*[name="lq"]:after { content: "\002018" /* "‘" */ ; }
*[name="rq"]:after { content: "\002019" /* "’" */ ; }
*[name="ng"]:after { content: "\00014B" /* "?" */ ; }
*[name="NG"]:after { content: "\00014A" /* "?" */ ; }
*[name="oe"]:after { content: "\000152" /* "œ" */ ; }
*[name="OE"]:after { content: "\000153" /* "Œ" */ ; }
*[name="o"]:after  { content: "\0000F8" /* "ø" */ ; }
*[name="O"]:after  { content: "\0000D8" /* "Ø" */ ; }
*[name="P"]:after  { content: "\0000B6" /* "¶" */ ; }
*[name="S"]:after  { content: "\0000A7" /* "§" */ ; }
*[name="th"]:after { content: "\0000FE" /* "þ" */ ; }
*[name="TH"]:after { content: "\0000DE" /* "Þ" */ ; }
*[name="slash"]:after     { content: "\00002F" /* "/" */ ; }
*[name="backslash"]:after { content: "\00005C" /* "\\" */ ; }
*[name="ss"]:after   { content: "\0000DF" /* "ß" */ ; }
*[name="dag"]:after  { content: "\002020" /* "†" */ ; }
*[name="ddag"]:after { content: "\002021" /* "‡" */ ; }
*[name="dots"]:after { content: "\002026" /* "…" */ ; }
*[name="\000023"]:after { content: "\000023" /* "#" */ ; }  /*  FIXME: name-value not a NMTOKEN  */
*[name="\000024"]:after { content: "\000024" /* "$" */ ; }  /*  FIXME: name-value not a NMTOKEN  */
*[name="\000025"]:after { content: "\000025" /* "%" */ ; }  /*  FIXME: name-value not a NMTOKEN  */
*[name="\000026"]:after { content: "\000026" /* "&" */ ; }  /*  FIXME: name-value not a NMTOKEN  */
*[name="\00005F"]:after { content: "\00005F" /* "_" */ ; }  /*  FIXME: name-value not a NMTOKEN  */
*[name="\00007B"]:after { content: "\00007B" /* "{" */ ; }  /*  FIXME: name-value not a NMTOKEN  */
*[name="\00007D"]:after { content: "\00007D" /* "}" */ ; }  /*  FIXME: name-value not a NMTOKEN  */

cmd[name="TeX"]:after      { content: "TeX"; }
cmd[name="LaTeX"]:after    { content: "LaTeX"; }
grp[name="TeX"]:before     { content: "TeX"; }
grp[name="LaTeX"]:before   { content: "LaTeX"; }
*[name="copyright"]:after  { content: "\0000A9" /* "©" */ ; }
*[name="pounds"]:after     { content: "\0000A3" /* "£" */ ; }

*[name="textbullet"]:after { content: "\002022" /* "•" */ ; }
*[name="textdegree"]:after { content: "\0000B0" /* "°" */ ; }
*[name="textendash"]:after { content: "\002013" /* "–" */ ; }
*[name="textemdash"]:after { content: "\002014" /* "—" */ ; }
*[name="textperiodcentered"]:after { content: "\0000B7" /* "·" */ ; }
*[name="textdagger"]:after         { content: "\002020" /* "†" */ ; }
*[name="textdaggerdbl"]:after      { content: "\002021" /* "‡" */ ; }
*[name="textsection"]:after        { content: "\0000A7" /* "§" */ ; }
*[name="textparagraph"]:after      { content: "\0000B6" /* "¶" */ ; }
*[name="texteuro"]:after           { content: "\0020AC" /* "€" */ ; }

*[name="textquotedbl"]:after      { content: "\000022" /* """ */ ; }
*[name="textquotesingle"]:after   { content: "\000027" /* "'" */ ; }
*[name="textquoteleft"]:after     { content: "\002018" /* "‘" */ ; }
*[name="textquoteright"]:after    { content: "\002019" /* "’" */ ; }
*[name="textquotedblleft"]:after  { content: "\00201C" /* "“" */ ; }
*[name="textquotedblright"]:after { content: "\00201D" /* "”" */ ; }
*[name="quotesinglbase"]:after    { content: "\00201A" /* "‚" */ ; }
*[name="quotedblbase"]:after      { content: "\00201E" /* "„" */ ; }
*[name="guilsinglleft"]:after     { content: "\002039" /* "‹" */ ; }
*[name="guilsinglright"]:after    { content: "\00203A" /* "›" */ ; }
*[name="guillemotleft"]:after     { content: "\0000AB" /* "«" */ ; }
*[name="guillemotright"]:after    { content: "\0000BB" /* "»" */ ; }


/*  ****************************
 *  textstyles and fonts
 */
*[name~="rm"],
*[name~="rmfamily"],
cmd[name="textrm"] { font-family: georgia, "bitstream vera serif", serif; }
*[name~="sf"],
*[name~="sffamily"],
cmd[name="textsf"] { font-family: verdana, tahoma, "bitstream vera sans", sans-serif; }
*[name~="tt"],
*[name~="ttfamily"],
cmd[name="texttt"] { font-family: "courier new", courier, "free monospaced", "bitstream vera sans mono", monospace; }

*[name~="mdseries"],
cmd[name="textmd"] { font-weight: normal; }
*[name~="bf"],
*[name~="bfseries"],
cmd[name="textbf"] { font-weight: bold; }

*[name~="upshape"],
cmd[name="textup"] { font-style: normal; }
*[name~="it"],
*[name~="itshape"],
cmd[name="textit"] { font-style: italic; padding-right: 1pt; }
*[name~="sl"],
*[name~="slshape"],
cmd[name="textsl"] { font-style: oblique; padding-right: 1pt; }
*[name~="sc"],
*[name~="scshape"],
cmd[name="textsc"] { font-variant: small-caps; letter-spacing: 0.05em; }

*[name~="em"],
*[name~="emph"] { font-style: italic;  padding-right: 1pt; }

*[name~="emph"] > *[name~="emph"],
*[name~="itshape"] > *[name~="emph"] { font-style: normal; }

cmd[name="textsuperscript"] {
    font-size: 7pt;
    vertical-align: super;
    }


env[name="rmfamily"],
env[name="sffamily"],
env[name="ttfamily"],
env[name="mdseries"],
env[name="bfseries"],
env[name="upshape"],
env[name="itshape"],
env[name="slshape"],
env[name="scshape"],
env[name="emph"] {
    margin: 0pt;
    }

cmd[name="verb"],
cmd[name="verb*"],
env[name="verbatim"],
env[name="verbatim*"] {
    color: gray;
    white-space: pre;
    font: bold 10pt/14pt monospace;
    }

/*  ***************************
 *  sizes for 10pt documents
 */
*[name~="tiny"]         { font-size: 5pt; }
*[name~="scriptsize"]   { font-size: 7pt; }
*[name~="footnotesize"] { font-size: 8pt; }
*[name~="small"]        { font-size: 9pt; }
*[name~="normalsize"]   { font-size: 10pt; }
*[name~="large"]        { font-size: 12pt; }
*[name~="Large"]        { font-size: 14.40pt; }
*[name~="LARGE"]        { font-size: 17.28pt; }
*[name~="huge"]         { font-size: 20.74pt; }
*[name~="Huge"]         { font-size: 24.88pt; }

env[name="tiny"],
env[name="scriptsize"],
env[name="footnotesize"],
env[name="small"],
env[name="normalsize"],
env[name="large"],
env[name="Large"],
env[name="LARGE"],
env[name="huge"],
env[name="Huge"]        { margin: 0pt; }


/*  *******************************
 *  some (hidden-)list environments
 */
env[name="list"],
env[name="trivlist"],
env[name="itemize"],
env[name="enumerate"],
env[name="description"],
env[name="thebibliography"] {
    display: block;
    padding: 1px;
    counter-reset: enumi 0;
    }
env[name="enumerate"] cmd[name="item"]::before,
env[name="enumerate"] grp[name="item"]::before{
    content: counter(enumi, decimal) ".\A0\A0";
    counter-increment: enumi;
    }
env[name="description"] cmd[name="item"] opt {
    display: block;
    font-weight: bold;
    margin-top: 7pt;
    margin-left: -10pt;
    }
env[name="description"] cmd[name="item"] arg {
    display: block;
    }
cmd[name="bibitem"] {
    display: list-item;
    list-style: decimal outside;
    margin-top: 7pt;
    }
cmd[name="bibitem"]:before {
    /* content: "[" counter(enumi) "]"; */
    /* counter-increment: enumi;        */
    }


/*  ****************************************************
 *  item as <grp name="item" bg="" eg=""> content </grp>
 *  <cmd name="item"><arg bg="" eg=""> content </arg></cmd>
 */
env[name="list"] cmd[name="item"] {
    display: list-item;
    list-style: none inside;
    margin-top: 2.5pt;
    margin-bottom: 2.5pt;
    }
env[name="list"] cmd[name="item"]:first-line {
    margin-left: -8pt;
    }
env[name="list"] cmd[name="item"] + opt:after {
    content: "  ";
    }
env[name="itemize"] cmd[name="item"],
env[name="itemize"] grp[name="item"] {
    display: list-item;
    list-style: square outside;
    margin-top: 2.5pt;
    margin-bottom: 2.5pt;
    }
env[name="enumerate"] cmd[name="item"],
env[name="enumerate"] grp[name="item"] {
    display: list-item;
    list-style: decimal outside;
    margin-top: 2.5pt;
    margin-bottom: 2.5pt;
    }



env[name="abstract"] {
    font-size: 9pt;
    }
env[name="abstract"]:before {
    display: block;
    font-weight: bold;
    text-align: center;
    margin-bottom: 7pt;
    content: "Zusammenfassung";
    }
env[name="center"],
cmd[name="centerline"],
grp[name="centering"] {
    display: block;
    text-align: center;
    }
env[name="quote"],
env[name="verse"] {
    text-indent: 0pt;
    }
env[name="quote"] x,
env[name="verse"] x {
    text-indent: 0pt;
    margin-top: 7pt;
    margin-bottom: 7pt;
    }
env[name="quotation"],
env[name="quotation"] x {
    text-indent: 1.5em;
    }
env[name="flushleft"]  { text-align: left; }
env[name="flushright"] { text-align: right; }
*[name~="raggedright"] { display: block; text-align: left; }
*[name~="raggedleft"]  { display: block; text-align: right; }
cmd[name="leftline"]   { display: block; text-align: left; }
cmd[name="rightline"]  { display: block; text-align: right; }

/*  ************************
 *  footnote, marginpar &c
 */
cmd[name="footnote"],
cmd[name="footnotemark"],
cmd[name="footnotetext"],
cmd[name="marginpar"] {
    display: inline;
    }
cmd[name="footnote"]:before {
    content: "[fn:[" counter(footnote) "] ";
    counter-increment: footnote;
    }
cmd[name="footnotemark"]:before,
cmd[name="footnotetext"]:before {
    content: "[fn:" attr(args) " ";
    }
cmd[name="marginpar"]:before {
    content: "[mp:|";
    }
cmd[name="footnote"]:after,
cmd[name="footnotemark"]:after,
cmd[name="footnotetext"]:after,
cmd[name="marginpar"]:after {
    content: "] ";
    }

/*  ************************
 *  xhtml:table, tabular &c
 */
cmd[name="caption"]    { display: block; } 
xhtml|table,
env[name="tabular"]    { display: table; margin: 5pt; border-collapse: collapse; }
xhtml|table xhtml|thead,
env[name="tabular"] thead { display: table-header-group; }
xhtml|table xhtml|tbody,
env[name="tabular"] tbody { display: table-row-group; }
xhtml|table xhtml|tfoot,
env[name="tabular"] tfoot { display: table-footer-group; }
xhtml|table xhtml|tr,
env[name="tabular"] tr { display: table-row; }
xhtml|table xhtml|td, xhtml|table xhtml|th,
env[name="tabular"] xhtml|td,
env[name="tabular"] xhtml|th {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    padding: 5pt;
    border: 1pt solid black;
    }
xhtml|table xhtml|th,
env[name="tabular"] xhtml|th {
    text-align: left;
    }
xhtml|table xhtml|caption,
env[name="tabular"] xhtml|caption { display: table-caption; }
env[name="tabular"] cmd[name="\\"],
env[name="tabular"] cmd[name="cline"],
env[name="tabular"] cmd[name="vline"],
env[name="tabular"] cmd[name="hline"] {
    display: none;
    }


/*  ************************
 *  EOF
 *  ************************  */