/*
======================================================================
MDITA CSS Stylesheet - SiberSafe Communicator and Web Preview

(c) 2007, SiberLogic, Inc

Revision 1.0
Rob Hanna
======================================================================*/

/*
 * Copyright (c) 2006 Pixware. 
 *
 * This file is part of the XMLmind XML Editor project.
 * For conditions of distribution and use, see the accompanying legal.txt file.
 *
 * Styles for DITA topic elements. 
 */

@import "common.imp";

/* ---------------------------------------------------------------------------
  Topic elements
--------------------------------------------------------------------------- */

/* topic ------------------------------------------------------------------ */

dita {
    display: block;
}

element-reference,
conceptmodule,
variabletable,
jobaid-concept, 
jobaid-procedure, 
overview-topic, 
procedure-example, 
proceduremodule, 
referenceitem, 
referencemodule, 
referenceunit, 
termgroup, 
terminologymodule, 
whatsnewmodule, 
workflowmodule, 
concept,
task,
reference,
topic {
    display: block;
}

/* Vertical margins for nested topics or topics contained in a dita. */
* > element-reference,
* > glossentry,
* > conceptmodule, 
* > jobaid-concept, 
* > jobaid-procedure, 
* > overview-topic, 
* > procedure-example, 
* > proceduremodule, 
* > referenceitem, 
* > referencemodule, 
* > referenceunit, 
* > termgroup, 
* > terminologymodule, 
* > whatsnewmodule, 
* > workflowmodule, 
* > concept,
* > task,
* > reference,
* > topic {
    margin: 1.33ex 0;
}

title {
    display: block;
    font-family: verdana, arial, sans-serif;
    color: blue;
    font-weight: bold;
    margin: 1.33ex 0;
}

element-reference > title,
conceptmodule > title, 
jobaid-concept > title, 
jobaid-procedure > title, 
overview-topic > title, 
procedure-example > title, 
proceduremodule > title, 
referenceitem > title, 
referencemodule > title, 
referenceunit > title, 
termgroup > title, 
terminologymodule > title, 
whatsnewmodule > title, 
workflowmodule > title, 
concept > title,
task > title,
reference > title,
topic > title { 
    font-size: 1.5em;
    margin: 0.83ex 0;
    border-width: 1px;
    border-style: solid;
    border-top-color: transparent;
    border-left-color: transparent;
    border-right-color: transparent;
}

section > title { 
    font-size: 1.3em;
    margin: 1ex 0;
}

body > section > title,
topic > title {
    color: #6090B0;
    border-bottom-color: #6090B0;
}

titlealts {
    display: none;
    /*Vertical margins set in searchtitle, navtitle*/
}

searchtitle,
navtitle,
example,
related-links {
    display: block;
    margin-left: 16ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

searchtitle:before,
navtitle:before,
example:before,
related-links:before {
    display: marker;
    font-weight: bold;
    color: #333333;
}

searchtitle:before {
    content: "searchtitle";
}

navtitle:before {
    content: "navtitle";
}

example:before {
    content: "example";
}

related-links:before {
    content: "related-links";
}

@media XMLmind-XML-Editor {
    searchtitle:before,
    navtitle:before,
    example:before,
    related-links:before {
        content: element-name(); /*Support for specialization*/
        marker-offset: fill; /*Nicer*/
    }
}

element-body,
procedurebody,
flowbody, 
proceduremodulebody, 
referencemodulebody, 
referenceunitbody, 
varbody, 
modulebody,
conbody,
taskbody,
refbody,
body {
    display: block;
    /*Vertical margins set in child elements*/
}

prerequisites,
applies-to,
purpose,
flowchart,
section {
    display: block;
    margin: 1.33ex 0;
}

/* ---------------------------------------------------------------------------
  Body elements
--------------------------------------------------------------------------- */

/* topic ------------------------------------------------------------------ */

/*
 * Simple lists
 */

sl {
    display: block;
    margin-left: 2ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

sli {
    display: block;
}

/*
 * Ordered and unordered lists
 */

subitem,
li-item,
li {
  margin-left: 20pt;
  display: block;
  margin-bottom: 2pt;
  margin-top: 6pt;
}

ol-list,
ol {
  display: block;
  margin-top: 6pt;
  margin-bottom: 6pt;
}

ul-list > li-item:before,
ul > li:before    {
  display: marker;
  content: disc;
  color: #004080;
  padding-top: .6ex; 
}

ol-list > li-item:before,
ol > li:before    {
  display: marker;
  content: counter(n, decimal);
  padding-top: .6ex; 
}

sublist,
ul-list,
ul { 
    display: block;
    margin-left: 3ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

ul-list > li-item,
ul > li {
    display: block;
    margin-left: 2.5ex;
}

ul-list > li-item sublist > subitem:before,
ul > li ul > li:before {
    display: block;
    display: marker;
    content: square;
}

ol-list > li-item sublist > subitem:before,
ol > li ol > li:before {
  display: block;
  display: marker;
  content: counter(n, lower-alpha);
  padding-top: .6ex; 
}

ul > li ul > li ul > li:before {
    display: marker;
    content: icon(diamond);
}

ul > li ul > li ul > li ul > li:before {
    display: marker;
    content: circle;
}

li-item > sublist:before {
    display: block;
    content: " ";
}

/*
 * Definition lists
 */

dl {
    display: block;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
    margin-left: 2ex;
}

dlhead,
dlentry {
    display: block;
}

dthd,
dt {
    display: block;
    font-weight: bold; 
}

ddhd,
dd {
    display: block;
    margin-left: 4ex;
}

@media XMLmind-XML-Editor {
    dl:contains-element(dlhead) {
        display: table;
        border: 1 solid #E0E0E0;
    }

    dl:contains-element(dlhead) > dlhead,
    dl:contains-element(dlhead) > dlentry {
        display: table-row;
    }

    dl:contains-element(dlhead) > dlhead > dthd,
    dl:contains-element(dlhead) > dlhead > ddhd,
    dl:contains-element(dlhead) > dlentry > dt,
    dl:contains-element(dlhead) > dlentry > dd {
        display: table-cell;
        margin-left: 0;
        border: 1 solid #E0E0E0;
        padding: 2px;
    }

    dl:contains-element(dlhead) > dlhead > dthd,
    dl:contains-element(dlhead) > dlhead > ddhd {
        background-color: #E0E0E0;
    }
}

/*
 * Figures
 */

fig {
    display: block;
    margin: 1.33ex 0;
}

figgroup {
    display: block;
    margin: 1.33ex 0;
}

desc {
    display: inline;
}

desc:before {
    display: inline;
    content: " [";
    color: #333333;
}

desc:after {
    display: inline;
    content: "]";
    color: #333333;
}

fig > desc,
object > desc,
table > desc,
linklist > desc {
    display: block;
    margin: 1.33ex 0;
}

/*
 * Images
 */

image {
    display: inline;
}

fig > image,
body > image,
conbody > image,
imagemap > image,
image[placement=break] {
    display: block;
    margin: 1.33ex 0;
}

fig > image[align=right],
body > image[align=right],
conbody > image[align=right],
imagemap > image[align=right],
image[placement=break][align=right] {
    text-align: right;
    margin-left: auto;
}

fig > image[align=center],
body > image[align=center],
conbody > image[align=center],
imagemap > image[align=center],
image[placement=break][align=center] {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

@media XMLmind-XML-Editor {
    image:before {
        display: inline;
        content: image-viewport(attribute, href, data-type, anyURI);
    }

    image[width]:before {
        content: image-viewport(attribute, href, data-type, anyURI,
                                content-width, xpath("concat(@width,'max')"));
    }

    image[height]:before {
        content: image-viewport(attribute, href, data-type, anyURI,
                               content-height, xpath("concat(@height,'max')"));
    }

    image[width][height]:before {
        content: image-viewport(attribute, href, data-type, anyURI,
                               content-width, xpath("concat(@width,'max')"),
                               content-height, xpath("concat(@height,'max')"));
    }
}

alt {
    display: inline; /*alt element of an image*/
}

alt:before {
    display: inline;
    content: " [";
    color: #333333;
}

alt:after {
    display: inline;
    content: "]";
    color: #333333;
}

fig > image > alt,
body > image > alt,
conbody > image > alt,
imagemap > image > alt,
image[placement=break] > alt {
    display: block;
    margin-top: 2px;
}

/*
 * Objects
 */

object {
    display: block;
    margin: 1.33ex 0;
}

param {
    display: block;
    margin: 1.33ex 0;
}

@media XMLmind-XML-Editor {
    object,
    param {
        collapsible: yes;
        not-collapsible-head: 1;
        border: 1 solid #E0E0E0;
        padding: 1;
        margin: 8 4;
    }

    object:before,
    param:before {
        display: inline;
        content: division(content(paragraph(content(collapser(collapsed-icon, 
                                                              icon(pop-right), 
                                                              expanded-icon,
                                                              icon(pop-down)), 
                                                    " ",
                                                    element-name(), "  ", 
                                                    add-attribute-button(
                                                     check-has-attributes, yes,
                                                     color, navy)),
                                   background-color, #E0E0E0,
                                   padding-left, 4),
                         attributes(margin-top, 2,
                                    margin-bottom, 2,
                                    margin-left, 2,
                                    margin-right, 2)));  
    }

    object::attribute,
    param::attribute {
        attribute-content-left: attribute-name();
        attribute-content-middle: value-editor(attribute, attribute());
        attribute-content-right: 
            remove-attribute-button(attribute, attribute(),
                                    check-required, yes,
                                    color, navy);
        show-attribute: when-added;
    }

    param::attribute(name),
    param::attribute(value) {
        show-attribute: always;
    }
}

/*
 * Block elements
 */

para,
p {
    display: block;
    margin: 1.33ex 0;
}

lines {
    display: block;
    white-space: pre;
    margin: 1.33ex 0;
}

command,
guiresponse,
cliresponse,
pre {
    display: block;
    white-space: pre;
    font-family: monospace;
    background-color: #FFFFE0; 
    border: 1px solid gray; 
    padding: 2px; 
    margin: 1.33ex 0;
}

guiresponse {
    color: #8B008B;
}

cliresponse {
    color: #006400;
}

attention,
precaution,
note {
    display: block;
    margin-left: 6ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
    padding: 1.0ex;
    border: 1px solid gray;
}

note:before {
    display: marker;
    content: "note";
    font-weight: bold;
    color: #333333;
}

attention:before {
    content: "Attention! ";
    font-weight: bold;
    color: #333333;
}

precaution[othertype=Caution]:before {
    content: url(icons/Caution-Warning.png) " CAUTION: ";
    font-weight: bold;
    color: #9932CC;
}

precaution[othertype=Warning]:before {
    content: url(icons/Caution-Warning.png) " Warning: ";
    font-weight: bold;
}

precaution[othertype=Danger]:before {
    content: url(icons/Danger.png) " DANGER! ";
    font-weight: bold;
    color: #8B0000;
}

precaution[othertype=Caution_Static]:before {
    content: url(icons/Static.png) " CAUTION - STATIC SHOCK HAZARD: ";
    font-weight: bold;
    color: #9932CC;
}

precaution[othertype=Danger_Shock]:before {
    content: url(icons/Shock.png) " DANGER! ELECTROCUTION HAZARD: ";
    font-weight: bold;
    color: #8B0000;
}


@media XMLmind-XML-Editor {
    note:before {
        content: element-name();
        marker-offset: fill;
    }
}

note[type]:before {
    content: attr(type);
}

note[type=other][othertype]:before {
    content: attr(othertype);
}

@media XMLmind-XML-Editor {
    note:before {
        content: element-name();
        marker-offset: fill;
    }

    note[type=other][othertype]:before {
        content: xpath("substring(@othertype,1,14)");
    }
}

precaution > *:first-child,
attention > *:first-child,
note > *:first-child {
    margin-top: 0; 
    margin-bottom: 0; 
}

lq {
    display: block;
    margin: 1.33ex 0;
}

q {
    display: inline;
}

q:before,
lq:before {
    display: inline;
    content: open-quote;
    color: #333333;
}

q:after,
lq:after {
    display: inline;
    content: close-quote;
    color: #333333;
}

/*
 * Inline elements
 */

citation,
domainitemmention,
cite {
    display: inline;
    font-style: italic;
}

annotation,
ph {
    display: inline;
}

xref {
    display: inline;
    color: navy;
    text-decoration: underline;
}

glossary-term {
    display: inline;
    color: green;
    text-decoration: underline;
}

semantic-term {
    display: inline;
    color: purple;
    text-decoration: underline;
}

glossary-term:after,
semantic-term:after,
xref:after {
    display: inline;
    content: "[" attr(href) "]";
    text-decoration: none;
    color: #333333;
    font-family: monospace;
    font-size: small;
}

@media XMLmind-XML-Editor {
    glossary-term:after,
    semantic-term:after,
    xref:after {
        content: icon(left-link) attr(href);
    }
}

/* ---------------------------------------------------------------------------
  Table elements
--------------------------------------------------------------------------- */

/* topic ------------------------------------------------------------------ */

/*
 * Simple table
 *
 * Specialization of simpletables is supported: suffice to modify
 * property element having dita.simpleTableEdit.tableSpecification as its name 
 * in the DITA configuration. This property is used by both 
 * com.xmlmind.xmleditapp.dita.SimpleTableSupport (cell renderer) and 
 * com.xmlmind.xmleditapp.dita.SimpleTableEdit (table editor).
 */

@media XMLmind-XML-Editor {
    /*
     * Support for the relcolwidth and keycol attributes of simpletable.
     * Not really important. Just nice to have it.
     */
    @extension 
    "com.xmlmind.xmleditapp.dita.SimpleTableSupport dita.simpleTableEdit.tableSpecification";
}

simpletable {
    display: table; 
    border: 1 outset gray;
    margin: 1.33ex 0; 
}

sthead {
    display: table-row;
    font-weight: bold;
    background-color: #E0E0E0;
}

strow {
    display: table-row; 
    background-color: inherit; /*e.g. from read-only simpletable*/
}

stentry {
    display: table-cell; 
    background-color: inherit;
    border: 1 inset gray;
    padding: 2px; 
}

stentry > *:first-child {
    margin-top: 0; 
    margin-bottom: 0; 
}

/*
 * CALS table (but simplified: no spanspec, tfoot, entrytbl, 
 * no colspec inside thead)
 *
 * SPECIALIZATION OF TABLE ``STRUCTURE'' NOT SUPPORTED:
 * The extension used to properly style CALS tables uses element names.
 */

@media XMLmind-XML-Editor {
    /*
     * "black" is the color used to draw a border around the table and its
     * cells based on values of attributes such as frame, rowsep and colsep.
     *
     * "rgb(238,238,224)" (a very light gray) is the color used to draw 
     * a border around each cell whether the cell actually has borders or not.
     * Remove this parameter if this ``cell footprint'' disturbs you.
     *
     * For more information about CALS table support, see 
     * XMLmind XML Editor - Configuration and Deployment.
     */
    @extension 
    "com.xmlmind.xmleditapp.docbook.table.TableSupport black rgb(238,238,224)";
}

table {
    display: block;
    margin: 1.33ex 0; 
}
          
table > title {
    font-weight: normal;
    font-style: italic; 
    text-align: center; 
    /* keep margin because tgroup has no margin */
}

colspec {
    display: table-column;
    collapsed: yes;
}

tgroup {
    display: table; 
    border-style: solid;
    border-width: 1;
}
    
thead {
    display: table-row-group;
    font-weight: bold; 
    background-color: #E0E0E0;
}
       
tbody {
    display: table-row-group;
    background-color: inherit; /*e.g. from read-only tgroup*/
}

row {
    display: table-row; 
    background-color: inherit; /*e.g. from read-only tbody*/
}
          
entry {
    display: table-cell; 
    background-color: inherit; /*e.g. from read-only row*/
    border-style: solid;
    border-width: 1;
    padding: 2px; 
}

entry > *:first-child {
    margin-top: 0; 
    margin-bottom: 0; 
}

/* ---------------------------------------------------------------------------
  Typographic elements
--------------------------------------------------------------------------- */

/* hi-d ------------------------------------------------------------------- */

b {
    display: inline;
    font-weight: bold;
}

i {
    display: inline;
    font-style: italic;
}

u {
    display: inline;
     text-decoration: underline;
}

xml_element,
tt {
    display: inline;
    font-family: monospace;
}

sup,
sub {
    display: inline-block;
    white-space: nowrap;
    font-size: small;
}

sup {
    vertical-align: super;
}

sub {
    vertical-align: sub;
}

/* ---------------------------------------------------------------------------
  Software elements
--------------------------------------------------------------------------- */

/* pr-d ------------------------------------------------------------------- */

codeblock,
codeph {
    font-family: monospace;
}

codeph {
    display: inline;
}

codeblock {
    display: block;
    white-space: pre;
    margin: 1.33ex 0;
    padding: 2px;
}

option {
    display: inline;
    font-weight: bold;
}

apiname,
parmname {
    display: inline;
    font-family: monospace;
}

parmname {
    font-style: italic;
}

parml {
    display: block;
    margin-left: 2ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

plentry {
    display: block;
}

pt {
    display: block;
    font-weight: bold; 
}

pd {
    display: block;
    margin-left: 4ex;
}

/*
 * Syntax diagram elements
 */

syntaxdiagram > title,
synblk > title,
groupseq > title,
groupchoice > title,
groupcomp > title,
fragment > title {
    margin-top: 0;
    margin-bottom: 0;
}

syntaxdiagram {
    display: block;
    margin-left: 16ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

synblk,
groupseq,
groupchoice,
groupcomp,
fragment,
synnote,
fragref,
synnoteref {
    display: block;
    margin-left: 16ex;
}

syntaxdiagram:before,
synblk:before,
groupseq:before,
groupchoice:before,
groupcomp:before,
fragment:before,
synnote:before,
fragref:before,
synnoteref:before {
    display: marker;
    font-weight: bold;
    color: #333333;
}

syntaxdiagram:before {
    content: "syntaxdiagram";
}

synblk:before {
    content: "synblk";
}

groupseq:before {
    content: "groupseq";
}

groupchoice:before {
    content: "groupchoice";
}

groupcomp:before {
    content: "groupcomp";
}

fragment:before {
    content: "fragment";
}

synnote:before {
    content: "synnote";
}

fragref:before {
    content: "fragref";
}

synnoteref:before {
    content: "synnoteref";
}

fragref {
    color: navy;
    text-decoration: underline;
}

fragref:after,
synnoteref {
    content: "[" attr(href) "]";
    text-decoration: none;
    font-family: monospace;
    font-size: small;
    color: #333333;
}

@media XMLmind-XML-Editor {
    syntaxdiagram:before,
    synblk:before,
    groupseq:before,
    groupchoice:before,
    groupcomp:before,
    fragment:before,
    synnote:before,
    fragref:before,
    synnoteref:before {
        content: element-name();
        marker-offset: fill;
    }

    fragref:after {
        display: inline;
    }

    fragref:after,
    synnoteref {
        content: icon(left-link) attr(href);
    }

    synnoteref:after {
        /* Inherits from xref: would mean link displayed twice */
        content: "";
    }
}

repsep {
    display: block;
}

repsep:before {
    content: "(";
    color: #333333;
}

repsep:after {
    content: ")";
    color: #333333;
}

synph,
oper,
sep,
delim,
var,
kwd {
    display: inline;
}

oper:before,
sep:before,
delim:before,
var:before,
kwd:before {
    display: inline;
    content: " ";
}

oper:first-child:before,
sep:first-child:before,
delim:first-child:before,
var:first-child:before,
kwd:first-child:before {
    content: "";
}

kwd {
    font-weight: bold;
}

var {
    font-style: italic;
}

oper {
    color: rgb(96,0,96);
}

sep {
    color: rgb(96,96,0);
}

delim {
    color: rgb(0,96,96);
}

/* ---------------------------------------------------------------------------
  Software elements
--------------------------------------------------------------------------- */

/* sw-d ------------------------------------------------------------------- */

msgnum,
msgblock,
msgph {
    font-family: monospace;
    background-color: #E0E0E0;
}

msgph {
    display: inline;
}

msgblock {
    display: block;
    white-space: pre;
    margin: 1.33ex 0;
    padding: 2px;
}

msgnum {
    display: inline;
    font-weight: bold;
}

userinput,
systemoutput,
filepath,
varname,
cmdname {
    display: inline;
    font-family: monospace;
}

cmdname {
    font-weight: bold;
}

varname {
    font-style: italic;
}

userinput {
    background-color: rgb(192,255,192);
}

systemoutput {
    background-color: rgb(255,255,192);
}

/* ---------------------------------------------------------------------------
  User interface elements
--------------------------------------------------------------------------- */

/* ui-d ------------------------------------------------------------------- */

uicontrol,
wintitle {
    display: inline;
    font-weight: bold;
}

menucascade {
    display: inline;
}

menucascade > uicontrol:before {
    content: " \279C  ";
    color: #333333;
}

menucascade > uicontrol:first-child:before {
    content: "";
}

shortcut {
    display: inline;
    text-decoration: underline;
}

screen {
    display: block;
    white-space: pre;
    font-family: monospace;
    background-color: #E0E0E0; 
    border: 2px ridge gray; 
    padding: 5px; 
    margin: 1.33ex 0;
}

/* ---------------------------------------------------------------------------
  Utility elements
--------------------------------------------------------------------------- */

/* ut-d ------------------------------------------------------------------- */

imagemap {
    display: block;
    margin: 1.33ex 0;
    border: 1px solid #C0C0C0; 
    padding: 5px; 
}

area {
    display: block;
    margin-left: 20px;
}

area:before {
    display: marker;
    content: square;
}

shape,
coords {
    display: inline;
}

shape:before,
coords:before {
    display: inline;
    font-weight: bold;
    color: #333333;
}

shape:before {
    content: "shape ";
}

coords:before {
    content: "coords ";
}

@media XMLmind-XML-Editor {
    shape:before,
    coords:before {
        content: element-name() " ";
    }
}

shape:after,
coords:after {
    display: inline;
    content: " ";
}

/* ---------------------------------------------------------------------------
  Miscellaneous elements
--------------------------------------------------------------------------- */

/* topic ------------------------------------------------------------------ */

draft-comment {
    display: block;
    margin-left: 16ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

draft-comment:before {
    display: marker;
    content: "draft-comment";
    font-weight: bold;
    color: #333333;
}

fn {
    font-size: small;
    display: block;
    margin-left: 8ex;
    margin-right: 8ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

fn:before {
    display: marker;
    content: "fn";
    font-weight: bold;
    color: #333333;
}

fn[callout]:before {
    content: attr(callout);
}

fn,
fn:before {
    border-width: 1px;
    border-style: solid;
    border-top-color: gray;
    border-bottom-color: transparent;
    border-left-color: transparent;
    border-right-color: transparent;
    padding: 2px; 
}

@media XMLmind-XML-Editor {
    draft-comment:before {
        content: element-name();
        marker-offset: fill;
    }

    fn:before {
        content: xpath("concat(index-of-node(//fn,.),'.')");
    }
}

tm {
    display: inline;
}

tm:after {
    display: inline;
    content: "[" attr(tmtype) "]";
    color: #333333;
    font-size: small;
}

/* ---------------------------------------------------------------------------
  Related links elements
--------------------------------------------------------------------------- */

/* topic ------------------------------------------------------------------ */

linklist,
linkpool {
    display: block;
    margin-left: 2ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

linklist > link:before {
    display: marker;
    content: circle;
}

linkpool > link:before {
    display: marker;
    content: square;
}

linkinfo {
    display: block;
    margin-left: 16ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

linkinfo:before {
    display: marker;
    content: "linkinfo";
    font-weight: bold;
    color: #333333;
}

@media XMLmind-XML-Editor {
    linkinfo:before {
        content: element-name();
        marker-offset: fill;
    }
}

linktext {
    display: inline;
}

link {
    display: block;
}

link:after {
    content: "[" attr(href) "]";
    color: #333333;
    font-family: monospace;
    font-size: small;
}

@media XMLmind-XML-Editor {
    link:after {
        content: icon(left-link) attr(href);
    }
}

/* ---------------------------------------------------------------------------
  Specialization elements
--------------------------------------------------------------------------- */

/* topic ------------------------------------------------------------------ */

boolean,
state {
    display: inline;
    color: #333333;
}

boolean:before,
state:before {
    display: inline;
    color: #333333;
    font-weight: bold;
}

boolean:before {
    content: "boolean ";
}

state:before {
    content: "state ";
}

@media XMLmind-XML-Editor {
    boolean {
        content: "state=" attr(state);
    }

    state {
        content: "name=" attr(name) " value=" attr(value);
    }

    boolean:before, 
    state:before {
        content: element-name() " ";
    }
}

itemgroup {
    display: block;
    margin: 1.33ex 0;
}

required-cleanup {
    display: block;
    border-width: 2px;
    border-style: solid;
    border-top-color: transparent;
    border-bottom-color: transparent;
    border-left-color: red;
    border-right-color: transparent;
    padding: 5px; 
    margin: 1.33ex 0;
}

term {
    display: inline;
    font-style: italic;
}

/*
 * no-topic-nesting does not need to be styled.
 */

/* ---------------------------------------------------------------------------
  Concept elements
--------------------------------------------------------------------------- */

/* concept ---------------------------------------------------------------- */

conbody > section > title,
concept > title {
    color: rgb(139,0,0);
    border-bottom-color: rgb(139,0,0);
}

/* ---------------------------------------------------------------------------
  Task elements
--------------------------------------------------------------------------- */

/* task ------------------------------------------------------------------- */

task > title { 
    color: rgb(0,100,0);
    border-bottom-color: rgb(0,100,0);
}

referenceunitbody,
modulebody,
procedureunit,
flowchart,
varbody,
purpose,
return,
applies-to,
prerequisites,
prereq,
context,
result,
postreq {
    display: block;
    margin-left: 16ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

cmdsyntax,
info,
tutorialinfo,
stepxmp,
stepresult {
    display: block;
    margin-left: 4ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}


modulebody:before,
procedureunit:before,
prerequisites:before,
applies-to:before,
flowchart:before,
purpose:before,
return:before,
cmdsyntax:before,
prereq:before,
context:before,
result:before,
postreq:before {
    display: marker;
    font-weight: bold;
    font-size: 1.2em;
    margin: 1.0ex 0;
    color: #333333;
}

procedureunit:before {
   content: "Procedure";
}

flowchart:before {
   content: "Flowchart";
}

purpose:before {
    content: "Purpose";
}

return:before {
    content: "Return To";
}

prerequisites:before {
    content: "Prerequisites";
}

applies-to:before {
    content: "Applies To";
}

result:before {
    content: "result";
}

postreq:before {
    content: "postreq";
}

@media XMLmind-XML-Editor {
    flowchart:before,
    purpose:before,
    return:before,
    prereq:before,
    context:before,
    result:before,
    postreq:before {
        content: element-name();
        marker-offset: fill;
    }
}

choices,
substeps,
steps-unordered,
steps {
    display: block;
    margin-left: 2ex;
    margin-top: 1.33ex;
    margin-bottom: 1.33ex;
}

procedurestep,
step {
    display: block;
}

steps-unordered > step {
    margin-left: 20px;
}

steps-unordered > step:before {
    display: marker;
    content: url(icons/step_marker.gif);
}

procedureunit > procedurestep,
steps > step {
    margin-left: 6ex;
}

procedureunit > procedurestep:before,
steps > step:before {
    display: marker;
    content: counter(n, decimal) " " url(icons/step_marker.gif);
}

substep {
    display: block;
    margin-left: 6ex;
}

substep:before {
    display: marker;
    content: counter(n, lower-alpha) " " url(icons/step_marker.gif);
}

choice {
    display: block;
    margin-left: 20px;
}

choice:before {
    display: marker;
    content: url(icons/choice_marker.gif);
}

cmd {
    display: block;
    font-weight: bold;
    /* Mandatory first element of a step or a substep: 
       no need to add vertical margins. */
}

choicetable {
    display: table;
    border: 1 solid #D0FFD0;
    margin: 1.33ex 0;
}

chhead,
chrow {
    display: table-row;
}

choptionhd,
chdeschd,
choption,
chdesc {
    display: table-cell;
    border: 1 solid #D0FFD0;
    padding: 2px;
}

choptionhd,
chdeschd {
    background-color: #D0FFC0;
}

chdeschd,
chdesc {
    width: 66%;
}

/* ---------------------------------------------------------------------------
  Reference elements
--------------------------------------------------------------------------- */

/* reference -------------------------------------------------------------- */

refbody > section > title,
reference > title { 
    color: rgb(85,26,139);
    border-bottom-color: rgb(85,26,139);
}

refsyn {
    display: block;
    margin: 1.33ex 0;
    background-color: #F0E0FF;
    padding: 2px;
}

properties {
    display: table;
    border: 1 solid #F0D0FF;
    margin: 1.33ex 0;
}

prophead,
property {
    display: table-row;
}

proptypehd,
propvaluehd,
propdeschd,
proptype,
propvalue,
propdesc {
    display: table-cell;
    margin-left: 0;
    border: 1 solid #F0D0FF;
    padding: 2px;
}

proptypehd,
propvaluehd,
propdeschd {
    background-color: #F0E0FF;
}

propdeschd,
propdesc {
    width: 50%;
}

@media XMLmind-XML-Editor {
    proptypehd,
    proptype {
        start-column: 0;
    }

    propvaluehd,
    propvalue {
        start-column: 1;
    }

    propdeschd,
    propdesc {
        start-column: 2;
    }
}

/* ---------------------------------------------------------------------------
  Display attributes
--------------------------------------------------------------------------- */

*[scale="50"] {
    font-size: 50%;
}

*[scale="60"] {
    font-size: 60%;
}

*[scale="70"] {
    font-size: 70%;
}

*[scale="80"] {
    font-size: 80%;
}

*[scale="90"] {
    font-size: 90%;
}

*[scale="100"] {
    font-size: 100%;
}

*[scale="110"] {
    font-size: 110%;
}

*[scale="120"] {
    font-size: 120%;
}

*[scale="140"] {
    font-size: 140%;
}

*[scale="160"] {
    font-size: 160%;
}

*[scale="180"] {
    font-size: 180%;
}

*[scale="200"] {
    font-size: 200%;
}

*[frame] {
    border: 1px solid black;
    padding: 2px;
}

*[frame=none] {
    border-width: 0;
}

*[frame=top] {
    border-left-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
}

*[frame=bottom] {
    border-top-color: transparent;
    border-left-color: transparent;
    border-right-color: transparent;
}

*[frame=topbot] {
    border-left-color: transparent;
    border-right-color: transparent;
}

*[frame=sides] {
    border-top-color: transparent;
    border-bottom-color: transparent;
}

/* ---------------------------------------------------------------------------
  Miscellaneous
--------------------------------------------------------------------------- */

*::comment,
*::processing-instruction {
    display: none;
}

proceduremodulebody + jobaid-concept:before,
proceduremodulebody + jobaid-procedure:before,
procedure-example + jobaid-concept:before,
procedure-example + jobaid-procedure:before,
variabletable + jobaid-concept:before,
variabletable + jobaid-procedure:before {
    font-size: 1.2em;
    margin: 1ex 0;
    font-weight: bold;
    color: #333333;
    display: block;
    content: "Module Job Aids";
}

referencemodule > referenceunit > title,
terminologymodule > termgroup > title,
proceduremodule > procedure-example > title,
proceduremodule > jobaid-procedure > title,
proceduremodule > jobaid-concept > title {
    font-size: 1.2em;
    margin: 1ex 0;
    font-weight: bold;
    display: block;
    border-style: none;
    color: #333333;
}

referencemodule > referenceunit > referenceitem > title {
    font-size: 1.0em;
    margin: 1ex 0;
    font-weight: bold;
    font-style: italic;
    display: block;
    border-style: none;
    color: #333333;
}

procedure-example > purpose:before {
    content: "Introduction";
}

variabletable > title {
    font-size: 1.2em;
    margin: 1ex 0;
    font-weight: bold;
    display: block;
    color: #333333;
}

sublist:before {
   content: "SUBLIST ELEMENT NOT PERMITTED OUTSIDE OF OL-LIST OR UL-LIST";
}

glossdef,
glossterm,
glossentry {
   display: block;
   margin-left: 8ex;
}

glossterm {
   margin: 1.33ex 0;
   font-weight: bold;
}

li-item > sublist {
   display: block;
}

li-item > sublist:before {
   content: "";
}

target {
   display: none;
}

target:before {
   content: "Target: " attr(keyref);
}

fact,
topicalias {
   display: none;
}

/* ---------------------------------------------------------------------------
  SiberSafe elements
--------------------------------------------------------------------------- */


*[cluster][cluster-permissions="write"]:before {
  content: "[cluster path = " attr(cluster);
  color: navy;
}

*[cluster][cluster-permissions="write"]:after {
  content: " cluster]";
  color: navy;
}

*[cluster][cluster-permissions="read"]:before {
  content: "[cluster path = " attr(cluster);
  color: red;
}

*[cluster][cluster-permissions="read"]:after {
  content: " cluster]";
  color: red;
}

annotation:before {
  content: "[Annotation] ";
  font-style: normal;
  font-size: 12px;
  font-weight: bold;
  color: #006868;
}

annotation {
  display: inline;
  font-style: normal;
  font-size: 12px;
  font-weight: normal;
  color: #006868;
}

annotation-text {
  display: inline;
}

annotation:after {
  content: attr(user) ", " attr(time);
  font-style: italic;
  font-size: 12px;
  font-weight: normal;
  color: #006868;
}

editor-comment:before {
  content: "[Comment] ";
  font-style: italic;
  font-size: 11px;
  font-weight: bold;
  margin-left: 25px;
  color: #000000;
}

editor-comment {
  display: inline;
  font-style: italic;
  font-size: 11px;
  font-weight: normal;
  color: #000000;
}

editor-comment[accepted="no"]:after {
  content: "\A" attr(time) ", not accepted";
  font-style: italic;
  font-size: 11px;
  font-weight: normal;
  color: #000000;
  text-decoration: underline;
}

editor-comment:after {
  content: "\A" attr(time) ", accepted";
  font-style: italic;
  font-size: 11px;
  font-weight: normal;
  color: #000000;
  text-decoration: underline;
}

indexterm {
  display: inline;
  color: #C0C0C0;
}

indexterm:before {
  content: "[";
}

indexterm:after {
  content: "] ";
}

indexterm > indexterm:before, 
indexterm > indexterm > indexterm:before {
  content: "::";
}

text-entity {
  display: inline;
  color: #2F4F4F;
}

text-entity:before {
  content: "[";
}

text-entity:after {
  content: "]";
}



/* ---------------------------------------------------------------------------
  When printing
--------------------------------------------------------------------------- */

@media print {
    * {
        background-color: transparent; 
        line-height: 1.2; 
    }

    colspec {
        display: none; 
    }
}

