body
{
  font-family: cantarell, sans-serif;
}
.synopsis, .classsynopsis
{
  /* tango:aluminium 1/2 */
  background: #eeeeec;
  background: rgba(238, 238, 236, 0.5);
  border: solid 1px rgb(238, 238, 236);
  padding: 0.5em;
}
.programlisting
{
  /* tango:sky blue 0/1 */
  /* fallback for no rgba support */
  background: #e6f3ff;
  border: solid 1px #729fcf;
  background: rgba(114, 159, 207, 0.1);
  border: solid 1px rgba(114, 159, 207, 0.2);
  padding: 0.5em;
}
.variablelist
{
  padding: 4px;
  margin-left: 3em;
}
.variablelist td:first-child
{
  vertical-align: top;
}

@media screen {
  sup a.footnote
  {
    position: relative;
    top: 0em ! important;
  }
  /* this is needed so that the local anchors are displayed below the naviagtion */
  div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
  {
    display: inline-block;
    position: relative;
    top:-5em;
  }
  /* this seems to be a bug in the xsl style sheets when generating indexes */
  div.index div.index
  {
    top: 0em;
  }
  /* make space for the fixed navigation bar and add space at the bottom so that
   * link targets appear somewhat close to top
   */
  body
  {
    padding-top: 5em;
    padding-bottom: 500px;
    max-width: 60em;
  }
  p
  {
    max-width: 60em;
  }
  /* style and size the navigation bar */
  table.navigation#top
  {
    position: fixed;
    background: #e2e2e2;
    border-bottom: solid 1px #babdb6;
    margin-top: 0;
    margin-bottom: 0;
    top: 0;
    left: 0;
    height: 3em;
    z-index: 10;
  }
  .navigation a, .navigation a:visited
  {
    /* tango:sky blue 3 */
    color: #204a87;
  }
  .navigation a:hover
  {
    /* tango:sky blue 2 */
    color: #3465a4;
  }
  td.shortcuts
  {
    /* tango:sky blue 2 */
    color: #3465a4;
    font-size: 80%;
    white-space: nowrap;
  }
  td.shortcuts .dim
  {
    color: #babdb6;
  }
}
@media screen and (min-width: 60em) {
  /* screen larger than 60em */
  body { margin: auto; }
}
@media screen and (max-width: 60em) {
  /* screen less than 60em */
  #nav_hierarchy { display: none; }
  #nav_interfaces { display: none; }
  #nav_prerequisites { display: none; }
  #nav_derived_interfaces { display: none; }
  #nav_implementations { display: none; }
  #nav_child_properties { display: none; }
  #nav_style_properties { display: none; }
  #nav_index { display: none; }
  #nav_glossary { display: none; }
  .gallery_image { display: none; }
  .property_flags { display: none; }
  .signal_flags { display: none; }
  .parameter_annotations { display: none; }
  .enum_member_annotations { display: none; }
  .struct_member_annotations { display: none; }
  .union_member_annotations { display: none; }
  /* now that a column is hidden, optimize space */
  col.parameters_name { width: auto; }
  col.parameters_description { width: auto; }
  col.struct_members_name { width: auto; }
  col.struct_members_description { width: auto; }
  col.enum_members_name { width: auto; }
  col.enum_members_description { width: auto; }
  col.union_members_name { width: auto; }
  col.union_members_description { width: auto; }
}
@media print {
  table.navigation {
    visibility: collapse;
    display: none;
  }
  div.titlepage table.navigation {
    visibility: visible;
    display: table;
    background: #e2e2e2;
    border: solid 1px #babdb6;
    margin-top: 0;
    margin-bottom: 0;
    top: 0;
    left: 0;
    height: 3em;
  }
}

.navigation .title
{
  font-size: 120%;
}

div.gallery-float
{
  float: left;
  padding: 10px;
}
div.gallery-float img
{
  border-style: none;
}
div.gallery-spacer
{
  clear: both;
}

a, a:visited
{
  text-decoration: none;
  /* tango:sky blue 2 */
  color: #3465a4;
}
a:hover
{
  text-decoration: underline;
  /* tango:sky blue 1 */
  color: #729fcf;
}

div.informaltable table
{
  border-collapse: separate;
  border-spacing: 20px 3px;
  border: none;
}

div.informaltable table td, div.informaltable table th
{
  vertical-align: top;
}

.function_type,
.variable_type,
.property_type,
.signal_type,
.parameter_name,
.struct_member_name,
.union_member_name,
.define_keyword,
.datatype_keyword,
.typedef_keyword
{
  text-align: right;
}

/* dim non-primary columns */
.c_punctuation,
.function_type,
.variable_type,
.property_type,
.signal_type,
.define_keyword,
.datatype_keyword,
.typedef_keyword,
.property_flags,
.signal_flags,
.parameter_annotations,
.enum_member_annotations,
.struct_member_annotations,
.union_member_annotations
{
  color: #888a85;
}

.function_type a,
.function_type a:visited,
.function_type a:hover,
.property_type a,
.property_type a:visited,
.property_type a:hover,
.signal_type a,
.signal_type a:visited,
.signal_type a:hover,
.signal_flags a,
.signal_flags a:visited,
.signal_flags a:hover
{
 color: #729fcf;
}

div.table table
{
  border-collapse: collapse;
  border-spacing: 0px;
  /* tango:aluminium 3 */
  border: solid 1px #babdb6;
}

div.table table td, div.table table th
{
  /* tango:aluminium 3 */
  border: solid 1px #babdb6;
  padding: 3px;
  vertical-align: top;
}

div.table table th
{
  /* tango:aluminium 2 */
  background-color: #d3d7cf;
}

h4
{
  color: #555753;
}

hr
{
  /* tango:aluminium 1 */
  color: #d3d7cf;
  background: #d3d7cf;
  border: none 0px;
  height: 1px;
  clear: both;
  margin: 2.0em 0em 2.0em 0em;
}

dl.toc dt
{
  padding-bottom: 0.25em;
}

dl.toc > dd > dl > dt
{
  padding-top: 0.25em;
  padding-bottom: 0.25em;
}

dl.toc > dt
{
  padding-top: 1em;
  padding-bottom: 0.5em;
  font-weight: bold;
}

.parameter
{
  font-style: normal;
}

.footer
{
  padding-top: 3.5em;
  /* tango:aluminium 3 */
  color: #babdb6;
  text-align: center;
  font-size: 80%;
}

.informalfigure,
.figure
{
  margin: 1em;
}

.informalexample,
.example
{
  margin-top: 1em;
  margin-bottom: 1em;
}

.warning
{
  /* tango:orange 0/1 */
  background: #ffeed9;
  background: rgba(252, 175, 62, 0.1);
  border-color: #ffb04f;
  border-color: rgba(252, 175, 62, 0.2);
}
.note
{
  /* tango:chameleon 0/0.5 */
  background: #d8ffb2;
  background: rgba(138, 226, 52, 0.1);
  border-color: #abf562;
  border-color: rgba(138, 226, 52, 0.2);
}
div.blockquote
{
  border-color: #eeeeec;
}
.note, .warning, div.blockquote
{
  padding: 0.5em;
  border-width: 1px;
  border-style: solid;
  margin: 2em;
}
.note p, .warning p
{
  margin: 0;
}

div.warning h3.title,
div.note h3.title
{
  display: none;
}

p + div.section
{
  margin-top: 1em;
}

div.refnamediv,
div.refsynopsisdiv,
div.refsect1,
div.refsect2,
div.toc,
div.section
{
  margin-bottom: 1em;
}

/* blob links */
h2 .extralinks, h3 .extralinks
{
  float: right;
  /* tango:aluminium 3 */
  color: #babdb6;
  font-size: 80%;
  font-weight: normal;
}

.lineart
{
  color: #d3d7cf;
  font-weight: normal;
}

.annotation
{
  /* tango:aluminium 5 */
  color: #555753;
  font-weight: normal;
}

.structfield
{
  font-style: normal;
  font-weight: normal;
}

/* code listings */

.listing_code .programlisting .cbracket   { color: #a40000; } /* tango: scarlet red 3 */
.listing_code .programlisting .comment    { color: #a1a39d; } /* tango: aluminium 4 */
.listing_code .programlisting .function   { color: #000000; font-weight: bold; }
.listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */
.listing_code .programlisting .keyword    { color: #4e9a06; } /* tango: chameleon 3  */
.listing_code .programlisting .linenum    { color: #babdb6; } /* tango: aluminium 3 */
.listing_code .programlisting .normal     { color: #000000; }
.listing_code .programlisting .number     { color: #75507b; } /* tango: plum 2 */
.listing_code .programlisting .preproc    { color: #204a87; } /* tango: sky blue 3  */
.listing_code .programlisting .string     { color: #c17d11; } /* tango: chocolate 2 */
.listing_code .programlisting .type       { color: #000000; }
.listing_code .programlisting .type a     { color: #11326b; } /* tango: sky blue 4 */
.listing_code .programlisting .symbol     { color: #ce5c00; } /* tango: orange 3 */

.listing_frame {
  /* tango:sky blue 1 */
  border: solid 1px #729fcf;
  border: solid 1px rgba(114, 159, 207, 0.2);
  padding: 0px;
}

.listing_lines, .listing_code {
  margin-top: 0px;
  margin-bottom: 0px;
  padding: 0.5em;
}
.listing_lines {
  /* this just adds visual clutter and
     takes precious room from small screens */
  display: none;
}
.listing_lines {
  /* tango:sky blue 0.5 */
  background: #a6c5e3;
  background: rgba(114, 159, 207, 0.2);
  /* tango:aluminium 6 */
  color: #2e3436;
}
.listing_code {
  /* tango:sky blue 0 */
  background: #e6f3ff;
  background: rgba(114, 159, 207, 0.1);
}
.listing_code .programlisting {
  /* override from previous */
  border: none 0px;
  padding: 0px;
  background: none;
}
.listing_lines pre, .listing_code pre {
  margin: 0px;
}

