/*
 *
 */

/*
 * Colors that we will try to uniformly use
dark_grey=999999
light_grey=f0f0f0
red=a3001d
alt_red=b31b1b
cream=dfd9bd
alt_grey=7c7669
alt_white=f0eee4
purple=551a8b

light-green=007000

given_blue=e5ecf9 -> f0f0f0
given_dark_blue=3366CC -> 999999
 */
.project-section:after {
    content:".";
    display:block;
    height:0;
    clear:both;
    visibility:hidden
}

.project-section,.project-subpart {
    zoom:1
}

@media screen,projection,print {
    html,body {
        height:100%;
        margin:0;
        padding:0
    }
    
    body {
        font-family:Helvetica,Arial,sans-serif;
        font-size:small;
        color:#000;
        background-color:#fff;
        margin:1px 8px
    }
    
    a,a:link {
        color:#00c
    }
    
    a:active {
        color:red
    }
    
    a:visited {
        color:#00a;
    }
    
    p {
        padding:1em 0 0 0;
        margin:0;
        line-height:125%
    }
    
    img {
        border:none;
        padding:0;
        margin:0
    }
    
    a img {
        border:1px solid;
        padding:1px
    }
    
    code,pre {
        font-family:monospace;
        color:#a3001d
    }
    
    code {
        font-size:10pt
    }
    
    pre {
        font-size:9pt;
        background-color:#f0f0f0;
        border:2px solid #999999;
        line-height:125%;
        margin:1em 0 0 0;
        padding:.99em;
        overflow:auto;
        word-wrap:break-word
    }
    
    form {
        margin:1em 0 0 0;
        padding:0
    }
    
    blockquote {
        text-align:justify;
        margin:.5em 40px 0 20px;
        padding:0 20px;
        font-style:italic;
    }
    
    hr {
        border:2px solid;
        border-color:#999999;
        margin:1em 0
    }
    
    h1,h2,h3,h4 {
        margin-bottom:0
    }
    
    h1 {
        font-size:160%
    }
    
    h2 {
        font-size:140%
    }
    
    h3 {
        font-size:120%
    }
    
    h4 {
        font-size:110%
    }
    
    #project-pagecontent h1 {
        font-size:130%;
        font-weight:bold;
        margin:2em 0 0 -10px;
        padding:1px 3px;
        position:relative;
        border-top:2px solid #999999;
        background-color:#f0f0f0;
    }
    
    #project-pagecontent h2 {
        font-size:130%;
        font-weight:bold;
        margin:1.5em 0 0 0
    }
    
    #project-pagecontent h3 {
        font-size:110%;
        margin:.7em 0 0 0;
        position:relative;
        top:.4em
    }
    
    #project-pagecontent h4 {
        font-size:100%;
        font-weight:bold;
        margin:.6em 0 0 0;
        position:relative;
        top:.4em;
        z-index:5
    }
    
    #project-pagecontent h5 {
        font-size:100%;
        font-weight:normal;
        font-style:italic;
        text-decoration:underline;
        margin:.4em 0 0 0;
        position:relative;
        top:.4em;
        z-index:5
    }
    
    #project-pagecontent h1.page_title,#project-pagecontent h2.page_title {
        line-height:130%;
        font-size:170%;
        margin:0 0 0 -10px;
        padding:.8em 0 0;
        border:none;
        background:none
    }

    #project-pagecontent h2.deprecated {
        line-height:130%;
        font-size:130%;
        font-style:italic;
        color:white;
        margin:1.5em 0 0 0;
        background-color:#933;
        border-color:#a03;
        border-top:3px solid;
        border-bottom:3px solid;
    }
    
    ol,ul {
        padding:0;
        margin:.5em 0 0 15px;
        line-height:125%
    }
    
    li ol,li ul {
        padding:0;
        margin:0 0 0 10px
    }
    
    li {
        margin:.3em 0 0 1.5em;
        padding:0
    }

    dl {
        margin:0;
        padding:0;
        line-height:125%
    }
    
    dt {
        font-weight:bold;
        margin:.75em 0 0 0;
        padding:0
    }
    
    dd {
        margin:.4em 0 0 2em;
        padding:0;
        font-weight:normal
    }
    
    li pre {
        margin:.5em 0 .6em 0
    }
    
    li p,dd p {
        padding:.5em 0 .6em 0;
        margin:0
    }
    
    ol.alpha {
        list-style:lower-alpha
    }
    
    ol.alphacap {
        list-style:upper-alpha
    }
    
    ol.roman {
        list-style:lower-roman
    }
    
    ol.romancap {
        list-style:upper-roman
    }
    
    ol.termslist {
        list-style-type:decimal
    }
    
    ol.termslist>li>ol {
        list-style-type:lower-alpha
    }
    
    ol.termslist>li>ol>li>ol {
        list-style-type:lower-roman
    }
    
    .tablelist {
        margin:0 0 1em 0
    }
    
    .listhead li {
        font-weight:bold
    }
    
    .listhead li *,.listhead li li {
        font-weight:normal
    }
    
    .code li {
        font-family:monospace;
        font-size:10pt
    }
    
    .code li p,.code li li {
        font-family:Arial,Helvetica,sans-serif
    }
    
    li p.note,li p.warning,li p.caution {
        margin:.8em 0 0 0;
        padding:.2em .5em .2em .9em
    }
    
    ol.toc,div.toc ol {
        margin:1em 0 0 0;
        padding:0;
        list-style:none
    }
    
    ol.toc li,div.toc ol li {
        font-weight:bold;
        margin:.5em 0 0 1.5em;
        padding:0
    }
    
    ol.toc li ol,div.toc ol li ol {
        margin:0;
        padding:0
    }
    
    ol.toc li ol li,div.toc ol li ol li {
        padding:0;
        margin:.1em 0 0 1em;
        font-weight:normal;
        list-style:none
    }
    
    table ol.toc {
        margin-left:0
    }
    
    table {
        border-collapse:collapse;
        line-height:125%
    }
    
    th,td {
        text-align:left;
        vertical-align:top
    }
    
    table {
        margin:1em 0 0 1px;
        border:1px solid;
        border-color:#999999;
        border-spacing:0;
        border-collapse:collapse;
        clear:right
    }
    
    th {
        font-weight:bold;
        text-align:left;
        padding:6px 12px;
        border:1px solid #999999;
        background-color:#ECF1EF;
    }
    
    td {
        padding:6px 12px;
        border:1px solid #999999;
        background-color:#ffffff;
        text-align:left;
        vertical-align:top
    }
    
    td h1,td h2,td h3,td h4,td h5 {
        margin-left:0
    }
    
    td ul,td ol {
        margin:0 0 1em 15px;
        padding:0
    }
    
    td p,td dl {
        margin:0 0 1em 0;
        padding:0
    }
    
    td *+p {
        margin:1em 0 0 0;
        padding:0
    }
    
    tr.alt td,td.alt {
        background:#f5f5f5
    }
    
    table.columns {
        border:none;
        margin:1em 0 0
    }
    
    table.columns td {
        border:none;
        padding:0 3em 0 0
    }
    
    table.columns td p {
        margin:1em 0 0 0;
        padding:0
    }
    
    .required td {
        font-weight:bold;
    }

    .normal td {
        ;
    }

    .deprecated td {
        background:#999999;
    }

    .hidden td {
        display:none
    }

    .iconlist {
        margin-left:0
    }
    
    .iconlist li {
        padding:0 0 0 50px;
        margin:0 0 30px 0;
        list-style:none
    }
    
    .topmargin {
        margin-top:1em !important
    }
    
    .nomargin {
        margin:0 !important
    }
    
    .nopadding {
        padding:0 !important
    }
    
    .noborder {
        border:none !important
    }
    
    .border {
        border:1px solid gray;
        padding:1px
    }
    
    .normalsize {
        font-size:100% !important
    }
    
    .nolist li {
        margin-left:0;
        list-style:none
    }
    
    .noindent {
        margin-left:0
    }
    
    .doublespace,.doublespace li {
        margin-top:1em
    }
    
    ul.doublespace,ol.doublespace {
        margin-top:0;
        padding-top:0
    }
    
    .terms,.termsbox {
        margin:1em 0 0 0;
        padding:.5em;
        background-color:#efefef
    }
    
    .terms form,.termsbox form {
        margin:0;
        padding:0
    }
    
    .terms table,.termsbox table,.terms td,.termsbox td {
        border:none;
        background-color:transparent
    }
    
    div.row {
        float:left;
        clear:left;
        position:relative;
        margin:1em 0 0;
        padding:0
    }
    
    .left {
        float:left;
        margin:0 1em 0 0;
        padding:0
    }
    
    div.special {
        border:1px solid;
        padding:0 .9em .9em;
        margin:1em 0 0 0;
        background-color:#f0f0f0;
        border-color:#999999;
    }
    
    p.note,p.caution,p.warning,p.deprecated {
        margin:1em 0 0 0;
        padding:.2em .5em .2em .9em;
        background-color:#efefef;
        border-top:2px solid;
        border-bottom:1px solid
    }

    p.note {
        border-color:#999999;
    }
    
    p.caution {
        border-color:#fc3
    }
    
    p.warning {
        border-color:#a03
    }

    p.deprecated {
        border-color:#a03;
        color:#000;
        font-weight:bold
    }
    
    p.warning b,p.warning em,p.warning strong {
        color:#a03;
        font-weight:bold
    }
    
    p.caption {
        padding:1px 0 0;
        margin:0
    }
    
    div.linkbox {
        margin:1em 25px 1em 0;
        padding:.5em 0
    }
    
    div.linkbox a {
        font-size:100%;
        font-weight:bold;
        border:1px solid;
        margin:0;
        padding:.5em;
        background-color:#f0f0f0;
        border-color:#999999;
    }
    
    .promo {
        margin:1em 1em 0 0;
        padding:0 1em 1em;
        border:1px solid #999999;
    }
    
    .new {
        font-size:78%;
        font-weight:bold;
        color:red;
        text-decoration:none
    }
    
    .subscribe {
        float:right
    }
    
    .subscribe a,.subscribe a:visited {
        text-decoration:none;
        color:#bb4900
    }
    
    .subscribe a .linktext {
        text-decoration:underline
    }
    
    .subscribe img {
        width:15px;
        height:15px;
        vertical-align:middle;
        padding-bottom:2px
    }
    
    p#date,p.date {
        text-align:left;
        margin:0;
        padding:1em;
        font-style:italic;
        font-size:x-small
    }
    
    p.backtotop {
        float:right;
        margin:.5em 0 0 4em;
        position:relative;
        padding:0;
        font-size:x-small;
        font-style:italic;
        z-index:99;
    }
    
    div.sidebox {
        width:22em;
        margin:1em 0 0 20px;
        padding:0 0 1em 1em;
        border-left:2px dotted silver;
        float:right;
        clear:right;
        position:relative;
        background-color:#fff;
        position:relative;
        z-index:100
    }
    
    div.sidebox h2 {
        font-size:110%;
        font-weight:bold;
        margin:0 5px 0 -5px;
        padding:.1em 3px .1em 5px;
        background-color:#f0f0f0;
        border-color:#999999;
    }
    
    .hidden,.hidden *,#skipto,#skipto *,#skipto a,#skipto a:hover,#skipto a:visited {
        position:relative;
        top:-9999px;
        left:-9999px;
        height:0;
        width:0;
        overflow:hidden;
        z-index:4444
    }
    
    #skipto,#skipto *,#skipto a,#skipto a:hover,#skipto a:visited {
        _position:relative
    }
    
    #skipto a:focus {
        position:fixed;
        top:5px;
        left:5px;
        height:auto;
        width:auto;
        background-color:#fff;
        border:2px solid #00C;
        font-weight:bold;
        padding:5px
    }
    
    #project-container {
        margin:0;
        padding:0;
        max-width:1160px;
        position:relative;
        min-height:100%;
        height:auto !important;
        _height:100%
    }
    
    #project-pagecontent {
        padding-left:24px;
        border-left:3px solid #f0f0f0
    }
    
    #deprecatewarn {
        background:#ff8;
        margin-bottom:-20px;
        text-align:center;
        padding:3px 1px 3px 1px
    }
    
    img.globeicon {
        border:medium none;
        vertical-align:bottom;
        padding:0;
        margin-right:1px;
        margin-top:2px
    }
    
    #langwarn {
        text-align:right;
        font-size:80%;
        margin-bottom:-13px;
        color:#666
    }
    
    .moreright {
        margin:2px 0 2px 0;
        text-align:right
    }
    
    #project-header {
        padding:0px 0 0 0;
        margin:9px 0 12px;
    }
    
    #project-header #logo {
        margin:0;
        padding-top:5px;
        position:absolute
    }

    #project-header h1 {
        margin:0;
        padding-top:10px;
        position:relative;
        text-align:center;
        display:inline;
    }
    
    #project-header h1 a {
        text-decoration: none;
    }

    #project-header a img {
        border:none;
        padding:0;
        margin:0
    }
    
    #project-content {
        margin-top:3px;
        padding:3px;
    }
    
    #project-topnav {
        font-size:1em;
        margin:0;
        padding:.1em 0;
        width:100%;
        white-space:nowrap;
        word-wrap:normal;
        background-color:#f0f0f0;
        border-top:2px solid #999999;
        border-bottom:2px solid #999999;
    }
    
    #project-topnav h1 {
        font-size:1.5em;
        line-height:1.3em;
        font-weight:bold;
        background-color:transparent;
        border:0;
        margin:0;
        padding:0 0 0 26px;
        float:left
    }
    
    #project-topnav h1.msie {
        padding-left:0
    }
    
    #project-topnav h1.mozilla {
        padding-left:1px
    }
    
    #project-topnav h1.default {
        padding-left:2px
    }
    
    #project-topnav img {
        padding:.3em .3em .3em .5em;
        float:left;
        cursor:pointer
    }
    
    #project-topnav ul {
        line-height:1em;
        text-align:right;
        list-style:none;
        margin:0;
        padding:.47em 0
    }
    
    #project-topnav ul li {
        float:none;
        display:inline;
        margin:0;
        padding:0
    }
    
    #project-topnav li a {
        padding:0 .8em
    }
    
    a.selected,.selected a,a.selected:visited,.selected a:visited {
        color:#000;
        text-decoration:none
    }
    
    #project-topnav a.selected,#project-topnav a.selected:visited {
        font-weight:bold
    }
    
    #project-list {
        clear:left;
        padding:.5em 0 .25em 0 !important
    }

    #project-list * {
        zoom:1
    }

    #project-list.hidden {
        display:none
    }

    #project-list ul {
        padding:.6em 0 0;
        margin:0;
        line-height:120%;
        background-color: #f0f0f0;
        border-bottom: 2px solid #999999;
    }
    
    #project-list ul ul {
        padding:0 .8em;
        margin:0
    }
    
    #project-list ul * {
        vertical-align:middle;
        border:none;
    }

    #project-list h2 {
        font-size: 120%;
        font-weight: bold;
        margin: 0em 0 0 0px; 
        padding: 1px 3px;
        position: relative;
        border-top: 2px solid #999999;
        background-color: #f0f0f0;
    }

    #project-list h3 {
        font-size: 110%;
        font-weight: bold;
        margin: .25em 0 0 -5px; 
        padding: 1px 3px;
        position: relative;
        background-color: #f0f0f0;
    }

    #project-list h3 a {
        text-decoration: none;
    }

    #project-list li a {
        padding-right:4px;
        _padding-right:0;
        list-style-type:disc;
    }

    #project-toc {
        clear:left;
        padding:.5em 0 140px 0 !important
    }
    
    #project-toc * {
        zoom:1
    }
    
    #project-toc ul,#project-toc ol {
        padding:.6em 0 0;
        margin:0;
        line-height:120%
    }
    
    #project-toc ul ul,#project-toc ol ol {
        padding:0;
        margin:0
    }
    
    #project-toc ul *,#project-toc ol *,.treelist * {
        vertical-align:middle
    }
    
    #project-toc li a {
        padding-right:4px;
        _padding-right:0;
    }
    
    #project-toc ul li,#project-toc ol li,#project-toc .treelist li {
        list-style:none;
        padding:.2em 0 .2em 2px;
        margin:0
    }
    
    #project-toc ul li li,#project-toc ol li li,#project-toc .treelist li li {
        padding:.2em 0 .2em 15px
    }
    
    #project-toc ul h1,#project-toc ol h1,#project-toc ul h2,#project-toc ol h2 {
        font-weight:bold;
        font-size:100%;
        margin:0;
        padding:.2em 0;
        border:none;
        background:#fff
    }
    
    #project-toc ul .selected,#project-toc ol .selected,.treelist .selected {
        background-color:#f0f0f0;
        color:#000;
        text-decoration:none;
        z-index:2;
        position:relative
    }
    
    #project-toc ul div.tlw-title,#project-toc ol div.tlw-title,#project-toc .treelist div.tlw-title {
        position:relative;
        margin:0 0 0 -15px;
        padding:.2em 0 .2em 15px
    }
    
    .treelist .tlw-hidden {
        display:none
    }
    
    .treelist div.tlw-title {
        position:relative;
        margin-left:-15px;
        padding-left:15px
    }
    
    .treelist div.tlw-title a.tlw-control {
        position:absolute;
        left:3px;
        top:50%;
        padding:0;
        margin:-5px 0 0;
        height:inherit;
        overflow:hidden;
        background-color:transparent
    }
    
    #project-toc ul div.tlw-title img.tlw-control,#project-toc ol div.tlw-title img.tlw-control,.treelist div.tlw-title img.tlw-control {
        position:relative;
        height:inherit;
        width:9px;
        margin:0 !important;
        padding:0;
        border:none
    }

    #project-toc h1,#project-toc h2 {
        font-weight:bold;
        font-size:100%;
        margin:0;
        padding:0;
        border:none;
        background:#fff
    }
    
    #project-toc div.line {
        border-top:2px solid #999999;
        height:1px;
        margin:.5em 0em 0 0;
        padding:0
    }
    
    #project-toc.hidden {
        display:none
    }
    
    #project-toc.visible * {
        zoom:1
    }
    
    #project-pagecontent.expanded {
        margin-left:0;
        width:auto
    }
    
    #navtoggle {
        position:absolute;
        top:0;
        left:-8px
    }
    
    #toggleimgdiv {
        width:10px;
        position:absolute;
        top:0;
        cursor:pointer;
        display:block;
        z-index:99
    }
    
    #toggleimgdiv img {
        margin:9px auto;
        position:relative;
        visibility:hidden;
        top:56%;
        height:12px;
        width:4px
    }
    
    #toggleimgdiv.hover img {
        visibility:
    }
    
    #toggleimgdiv.hover {
        border-right:1px solid #f0f0f0;
        border-left:1px solid #f0f0f0;
    }
    
    #navtoggle a {
        position:absolute
    }
    
    #navhidearrow {
        display:block
    }
    
    #navshowarrow {
        display:none
    }
    
    #navtoggle.show #toggleimgdiv {
        
    }
    
    #navtoggle.show #navhidearrow {
        display:none
    }
    
    #navtoggle.show #navshowarrow {
        display:block
    }
    
    #project-footer {
        clear:both;
        margin:0;
        color:#666
    }
    
    #project-footer .text {
        text-align:center;
        padding:30px 0;
        margin:0 0 0 0
    }
    
    #project-footer .notice {
        padding:0 0 8px 0
    }
    
    #search {
        margin:12px 0 0 170px
    }
    
    #search table,#search table td {
        border:none;
        padding:0;
        margin:0;
        clear:none
    }
    
    #search form {
        margin:0
    }
    
    .greytext {
        color:#aaa;
        font-size:small;
        height:14px
    }
    
    div.search-control {
        display:none;
        margin-top:3px;
        padding:3px
    }
    
    .str {
        color:#080
    }
    
    .kwd {
        color:#008
    }
    
    .com {
        color:#800
    }
    
    .typ {
        color:#606
    }
    
    .lit {
        color:#066
    }
    
    .pun {
        color:#660
    }
    
    .pln {
        color:#000
    }
    
    .tag {
        color:#008
    }
    
    .atn {
        color:#606
    }
    
    .atv {
        color:#080
    }
    
    .page-170 .project-subpart,.project-subpart .page-170 .project-subpart,.project-subpart .project-subpart .page-170 .project-subpart {
        display:block;
        margin:0 0 0 171px;
        width:auto;
        float:none
    }
    
    .project-subpart .project-subpart .page-170 .sub-first,.project-subpart .page-170 .sub-first,.page-170 .sub-first {
        display:block;
        margin:0;
        width:171px;
        float:left
    }
    
}

@media print {
    body {
        font-size:9pt
    }
    
    #project-toc,#navtoggle {
        display:none
    }

    #project-list {
        display:none
    }
    
    #search,#docs {
        visibility:hidden
    }
    
    #logo {
        margin:0;
        padding:0;
        position:static;
        display:block
    }
    
    #project-topnav {
        display:block;
        clear:both
    }
    
    #project-pagecontent {
        width:6.75in;
        margin:0;
        float:left;
        border:none;
        padding:0 0 0 20px !important
    }
    
    pre {
        overflow:visible;
        text-wrap:unrestricted;
        white-space:-moz-pre-wrap;
        white-space:-pre-wrap;
        white-space:-o-pre-wrap;
        white-space:pre-wrap;
        word-wrap:break-word
    }
    
    .backtotop,#date,#trail {
        visibility:hidden
    }
    
    h1,h2,h3,h4,h5,h6 {
        page-break-after:avoid
    }
    
    table,img {
        page-break-inside:avoid
    }
    
    .hidden,.hidden *,#skipto,#skipto * {
        display:none
    }
}

p.authornote {
    font-weight:bold;
    color:orangered;
    font-style:italic
}

.menuDiv {
    border:2px solid #c3d9ff;
    padding:0;
    width:175px;
    background:#fff;
    overflow:hidden
}

#menuDiv-lang-dropdown {
    width:115px !important
}

#menuIcon-lang-dropdown {
    margin-top:2px
}

.menuDiv .menuItem {
    color:#00f;
    padding:3px;
    text-decoration:none;
    background:#fff
}

.menuDiv .menuItem:hover {
    background:#f0f0f0;
    cursor:hand
}

.menuDiv .menuCategory,.menuDiv .categoryTitle {
    margin-top:4px
}

.menuDiv .menuSeparator {
    border:1px dotted #c3d9ff;
    margin:0
}

img.menuIcon.off {
    background:no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 -42px;
    width:14px;
    height:14px;
    margin-left:2px;
    vertical-align:bottom
}

img.menuIcon.on {
    background:no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 -28px;
    width:14px;
    height:14px;
    margin-left:2px;
    vertical-align:bottom
}

img.menuIcon.down {
    background:no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 0;
    width:14px;
    height:14px;
    margin-left:2px;
    vertical-align:bottom
}

#project-pagecontent h1 {
  line-height: 130%;
  font-size: 170%;
  margin: 0 0 0 -10px;
  padding: .8em 0 0;
  border: none;
  background: none;
}

#project-pagecontent h2 {
  font-size: 130%;
  font-weight: bold;
  margin: 2em 0 0 -10px; 
  padding: 1px 3px;
  position: relative;
  border-top: 2px solid #999999;
  background-color: #f0f0f0;
}

#project-pagecontent h3 {
  font-size: 130%;
  font-weight: bold;
  margin: 1.5em 0 0 0;
  top: 0em;
}

#project-pagecontent h4 {
  font-size: 110%;
  margin: .7em 0 0 0;
  position: relative;
  top: .4em;
}
	
#project-pagecontent h5 {
  font-size: 100%;
  font-weight: bold;
  margin: .6em 0 0 0;
  position: relative;
  top: .4em;
  z-index: 5;
}
	
#project-pagecontent h6 {
  font-size: 100%;
  font-weight: normal;
  font-style: italic;
  text-decoration: underline;
  margin: .4em 0 0 0;
  position: relative;
  top: .4em;
  z-index: 5;
}

