/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements.  See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License.  You may obtain a copy of the License at
*
*     http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

*{margin:0;padding:0;}
.clear{clear:both;height:0;}
.hidden{display:none;}
button{border:none;}
table{border-collapse:collapse;}
table tr th,table tr td{padding:4px 15px;}
table tr td{text-align:left;}
table tr .inputCell{text-align:center;}
.firstRow td{border-top-width:1px;}
fieldset{border:none;}
fieldset ol{padding-top:.1em;}
fieldset ol li{margin:1em 0;}
.nameValueContainer{margin:15px 1em .3em 0;}
label,div.textLabel{display:inline;margin:15px 1em .3em 0;}
p{margin-bottom:10px;}
pre{white-space:pre-wrap;margin:.5em 2em;}
blockquote{margin:.5em 2em;}
.textLabel{display:block;}
.captcha{border-width:1px;padding:5px;}
.inputNoLabel{margin:0 0 .3em 0;}
.textInput{border-width:1px;padding:.1em 0 .1em .2em;width:17em;margin:0 .2em 0 0;}
.textInput.wide{width:504px;}
textarea.textInput,textarea.msg,textarea.wikiEdit{width:504px;height:3.9em;padding:.3em 0 0 .3em;margin:.3em 0;border-width:1px;}
textarea.textInput2{width:504px;height:12em;padding:.3em 0 0 .3em;margin:.3em 0;border:solid 1px;}
textarea.msg{height:24em;}
select{border-width:1px;margin:0 .2em 0 0;}
.welcome{margin:0 0 10px 0;}
.pageTitle,.sectionTitle{margin:10px 0 10px 0;}
#bg{padding:17px;}
#container{width:985px;}
#headCurves{height:7px;margin-left:9px;}
#masthead{width:985px;}
#masthead .topLeft,#masthead .topRight,#masthead .bottomLeft,#masthead .bottomRight{height:8px;}
#masthead .topLeft,#masthead .bottomLeft{margin-right:8px;}
#masthead .topRight,#masthead .bottomRight{margin-top:-8px;margin-left:8px;}
#masthead .contentmast{padding-left:10px;padding-right:10px;height:42px;}
#masthead #logo{float:left;width:300px;height:42px;}
#masthead .controls{float:right;text-align:right;margin-top:.5%;}
#masthead .controls form{display:inline;}
#masthead .controls .welcome{margin:6px 4px 7px 0;float:left;clear:none;}
#masthead .controls .links{margin:6px 9px 7px 0;float:left;clear:none;}
#masthead .controls input{margin:6px 6px 7px 2px;padding:2px 4px;}
#masthead .goButton{background-image:url(../images/go.gif?2011060812);width:29px;height:22px;margin-bottom:10px;}
#breadcrumbs{margin:0 8px;padding:0 5px 1px 9px;width:956px;}
#breadcrumbs a:link,#breadcrumbs a:hover,#breadcrumbs a:visited,#breadcrumbs span{padding:3px 4px;line-height:1.5em;}
#main{float:left;width:969px;margin:0 8px;}
#sideColumn{position:relative;float:left;width:201px;}
#sideColumnShow{position:relative;float:left;padding-right:8px;background-image:url(../images/arrow_left.gif);background-color:#d8d8e8;background-position:100% 100px;background-repeat:no-repeat;}
#sideColumnShow:hover{cursor:w-resize;}
#sideColumnHide{float:left;padding-right:8px;background-image:url(../images/arrow.gif);background-color:#e2e2ea;background-position:100% 100px;background-repeat:no-repeat;}
#sideColumnHide:hover{cursor:e-resize;}.hAccordion{border-bottom-width:4px;height:150px;}
.hAccordion a:link,.hAccordion a:hover,.hAccordion a:visited{display:block;float:left;position:relative;width:40px;height:150px;}
.hAccordion a.selected{display:block;float:left;position:relative;width:40px;height:150px;}
#nav2 .vAccordion{border-style:solid;border-width:1px;border-bottom:none;margin:1px 0 4px;}
#nav2 .tab{border-bottom-style:solid;border-bottom-width:1px;float:left;clear:both;width:100%;}
#nav2 .vAccordion .tab{border-top:none;border-right:none;border-left:none;padding:0;}
#nav2 .vAccordion .bucket{border-bottom-style:solid;border-bottom-width:1px;padding:10px 0;float:left;clear:both;width:100%;}
#nav2 .vAccordion .bucket ul{float:left;clear:both;padding:0 10px 10px 10px;}
#nav2 .vAccordion .bucket ul li{float:left;clear:both;width:100%;}
#nav2 .vAccordion .expCol{float:right;}
#nav2 .tab .title{float:left;margin:4px 0 3px 4px;}
#nav2 .tab a{float:right;margin:4px 4px 3px;color:white;}
#nav2 .vAccordion .tab .title{margin-top:0;}
#nav2{float:left;width:200px;}
.cloud{padding:12px 8px 10px 8px;width:184px;border-bottom-style:solid;border-bottom-width:1px;}
.cloud a:link,.cloud a:hover,.cloud a:visited{line-height:1.6em;}
.cloud h5,.cloud h6{display:inline;}
.cloudFull{padding:12px;margin-top:10px;word-spacing:15px;}
#main .content{float:left;width:759px;overflow:hidden;position:relative;}
.siteButtonContainer{float:left;height:55px;}
.pageButtonContainer{float:left;height:55px;padding:0 27px 0 10px;}
.formButtonContainer{float:left;margin:20px 30px 0 0;}
.formButtonContainer .formButtonContainer{position:relative;height:21px;margin:0;display:inline;}
.formButtonEnding{display:inline;float:right;position:absolute;width:18px;height:32px;}
a.siteButton,a.pageButton,button.siteButton,button.pageButton,button.formButton{display:block;position:relative;top:-32px;border:0;padding:0 18px 2px 36px;height:32px;line-height:1.8em;}
button.formButton{display:inline;position:relative;height:21px;padding:0 0 2px 18px;top:0;}
.functionButtonContainer{display:inline;padding:3px 3px 2px 0;height:20px;vertical-align:baseline;}
button.functionButton{height:20px;padding:4px 10px 4px 15px;}
.pageButtonContainer a,.pageButtonContainer button{padding:0 0 2px 16px;line-height:2em;}
.siteButtonEnding,.pageButtonEnding{display:inline;position:absolute;width:18px;height:32px;}
.siteButtonReflection,.pageButtonReflection{float:left;position:relative;height:23px;top:32px;}
.siteButtonReflectionEnding,.pageButtonReflectionEnding{position:absolute;display:inline;margin-top:32px;width:18px;height:23px;}
.movie .separator{vertical-align:top;}
.movie dl dt,.movie dl dd{float:left;margin:.4em 0;}
.movie dl dt{clear:left;margin-right:.4em;}
.blockList{display:block;margin:0 0 11px 0;border-bottom-style:solid;border-bottom-width:1px;}
.blockList .info dl dt,.blockList .info dl dd{float:left;margin:.1em 0;}
.blockList .info dl dt{clear:left;padding-right:5px;}
.blockList .info p{margin:.5em 0;}
.blockList .projectLogo,.blockList .personImage{float:left;display:block;margin-bottom:11px;border-width:1px;}
.blockList .info{float:left;display:block;margin:0 20px 11px 20px;width:400px;}
.mailingLists{padding:8px 0;margin-top:5px;border-top:1px solid #BDBEC0;}
.mailingLists .blockList .info{float:none;width:auto;margin-left:5px;}
.projectHome{margin:0 20px 0 20px;}
.projectHome .blockList .info{width:350px;}
.projectHome .blockList ul{clear:left;}
.projectHome .blockList .actionList li{float:left;width:auto;margin-right:25px;}
.projectHome .blockList dl dd{width:250px;}
.blockList .people.info{width:600px;margin-right:10px;}
.blockList .actionList{margin-top:10px;}
.blockList .actionList li{float:left;width:32%;}
.callOut{margin:0 0 0 3px;position:relative;top:.2em;}
.icon{margin:0 3px 0 0;position:relative;top:.2em;}
.blockList .links{float:left;margin-bottom:11px;}ul,ol{list-style:none;}
#main .content .website ul{list-style:disc outside;}
#main .content .website ol{list-style:decimal outside;}
#main .content .website ol>li,#main .content .website ul>li{margin-left:1.6em;}
#main .content .website ul li li{list-style:circle;}
#main .content .website ul li li li{list-style:square;}
.postMessage ol{list-style-position:inside;}
.postMessage ul{list-style-type:inherit;list-style-position:inside;}
ul.hList,ul.hList li,ol.hList,ol.hList li{float:left;}
ul.hList li,ol.hList li{margin:10px 15px 0 0;}
ol.decimal{list-style-type:decimal;}
ol.lowerRoman{list-style-type:lower-roman;}
ol.upperRoman{list-style-type:upper-roman;}
ol.lowerAlpha{list-style-type:lower-alpha;}
ol.upperAlpha{list-style-type:upper-alpha;}
.discussions{margin-bottom:30px;}
.discussions ol{margin:10px 0 0;border-collapse:collapse;}
.discussions div{height:1em;padding:.4em 0 0 5px;vertical-align:middle;}
.discussions .title{padding:.3em 0 0 5px;}
.discussions a:link,.discussions a:hover,.discussions a:visited{padding-left:5px;}
.discussions .count,.discussions .title{float:left;}
.discussions img{position:relative;top:1px;}
.discussions .date{text-align:right;padding-right:10px;}
.discussions .description{clear:both;text-align:left;padding:.3em 0 .3em 40px;}
.discussions li{clear:right;}
.miniMenuContainer{float:left;padding:5px 20px 21px 20px;width:728px;}
.miniMenu{float:left;border-top-width:4px;margin:10px 20px 10px 0;width:30%;}
.feedIcon{float:right;clear:none;margin-right:5px;width:16px;height:2.4em;line-height:2.4em;}
.miniMenu .header,.content .header{clear:none;height:2.4em;line-height:2.4em;padding-left:10px;vertical-align:bottom;overflow:hidden;}
.miniMenu .title{float:left;padding:.4em 10px .3em 10px;}
.miniMenu p{clear:both;margin:.8em 10px;}
.miniMenu cite{float:left;padding-top:.6em;}
.miniMenu .footer{float:left;width:100%;height:1.1em;border-top-width:1px;}
.miniMenu .footer a{display:block;padding:5px;}
.miniMenu p{height:5em;}
.miniMenu ul{float:left;margin:0;padding:.8em 0 0 18px;width:200px;height:4.5em;}
.miniMenu li{float:left;margin:0;padding:0;width:100px;}
.threeColumns,.twoColumns{margin:.6em 0;}
.threeColumns .column,.twoColumns .column{float:left;margin:0 .5%;}
.download-column{margin:20px 0 20px 20px;width:100%;}
.threeColumns .column{width:32%;}
.twoColumns .column{width:49%;}
.threeColumns.pageTitle .column{margin-left:0;}
p.description{margin:20px 0 20px 0;}
.pagination{border-top-width:1px;border-bottom-width:1px;}
.pagination .column{padding:.6em 0 .3em 0;}
.pagination .controls{float:right;border-right-width:1px;border-left-width:1px;}
.pagination .controls input,.pagination button{vertical-align:middle;}
.pagination input{border-width:1px;width:2.5em;height:16px;margin:-2px 0 0 0;}
.pagination .controls input{margin:-2px 5px 0 9px;}
.pagination button{margin:-2px 0 0 4px;}
.pagination .back,.pagination .forward{margin:-2px 0 0 8px;width:25px;height:18px;}
.iconLegend{float:left;vertical-align:bottom;}
.iconLegend dt{float:left;}.iconLegend dd{float:left;line-height:1em;}
.content .home .twoColumns{margin-top:0;}
.content .home .column{min-height:200px;width:335px;padding-right:15px;}
.content .home h2.pageTitle{margin-bottom:10px;}
.home #whatIs{margin-bottom:24px;}
ul.fancyList{font-size:1.3em;padding-left:22px;}
ul.fancyList li{margin-bottom:4px;color:#888;}
ul.fancyList strong{font-weight:normal;color:black;}
ul.bullet{list-style:circle;padding-left:22px;}
p.welcome{font-size:1.3em;color:black;}
ul.fancyList.welcome li{color:black;font-size:1.3em;}
ul.fancyList.welcome strong{color:black;font-weight:bold;}
ul.project{color:black;font-size:1.0em;list-style:disc;margin:25px;}
ul.project li{padding-left:5px;}
.content .home h1{font-size:2em;font-style:italic;font-weight:bold;text-transform:uppercase;color:#E86F00;}
.content .home h1 span{text-transform:none;color:black;font-size:.8em;}
fieldset{margin:15px 0 10px;}
fieldset fieldset{margin:0;}
fieldset.features{width:484px;margin-top:20px;padding:0 10px 0 10px;border:1px solid #848889;}
.hList.mailingLists{position:relative;top:-1.7em;left:5em;}
.features input,.features label,.features select{vertical-align:middle;}
#footer{clear:left;margin:0 8px;border-top-width:4px;padding:11px 0 0 15px;height:1.1em;line-height:1.1em;}
#footerCurves{height:12px;}
.openSolarisLogo{position:relative;top:-20px;left:775px;width:135px;height:22px;}
.finePrint{display:block;padding:5px 24px 0 0;}
h3.subSection{margin:10px 0 10px 0;}
.secondaryTitle{margin:0 0 0 10px;}
form fieldset ol{margin:0;padding:0;}
form fieldset ol li{list-style:none;padding:5px;margin:0;}
.backToPrevious{margin:10px 0 10px 0;}
.share{float:right;margin:0 7px 0 0;}
.advancedSearch{text-align:right;margin:10px 5px 5px 0;}
.requiredFieldRow{margin:10px 0 0 0;}
.subSectionTitle{margin:10px 0 10px 0;}
.properties dl dt,.properties dl dd{float:left;margin:.3em 0;}
.properties dl dt{clear:left;padding-right:5px;}
.properties dl dd{line-height:1em;}
.complexLabel{margin:15px 1em .3em 0;}
.textInput.narrow{width:100px;}
.checkBoxRow{float:left;margin:15px 0 .3em 0;}
.hLabel{float:left;line-height:1.7em;width:10em;}
.hInput{float:left;line-height:1.7em;}
.nameValuePairs{margin:0;width:45em;}
.pairName{float:left;}
.pairValue{float:left;}
.alignText{line-height:1.3em;vertical-align:text-top;}
.tablePaginationTop{border-top:1px solid #CCC;margin:.6em 0 0 0;}
.tablePaginationBottom{border-bottom:1px solid #CCC;}
.tablePaginationTop .columnLeft,.tablePaginationBottom .columnLeft{width:40%;float:left;padding:.5em 0 .5em 0;margin:0 0 0 .2em;}
.tablePaginationTop .columnRight,.tablePaginationBottom .columnRight{width:59%;float:left;padding:.5em 0 .5em 0;margin:0 .2em 0 0;}
.tablePaginationTop .controls,.tablePaginationBottom .controls{float:right;border-right-width:1px;border-left-width:1px;}
.tableActionRowTop{border-top:1px solid #CCC;padding:5px 0 7px 2px;}
.tableActionRowBottom{border-bottom:1px solid #CCC;padding:5px 0 7px 2px;}
ul.actions,ul.actions li{float:left;margin:0;padding:0;}
ul.actions li{margin:0 15px 0 0;list-style-position:outside;}
.tableHorizontalLineTop{border-top:1px solid #CCC;padding:10px 0 0 0;}
.tableHorizontalLineBottom{border-bottom:1px solid #CCC;padding:0 0 10px 0;}
table.dataDisplay{border-top:1px solid #CCC;border-bottom:1px solid #CCC;}
table.dataDisplay tr th{padding:10px 5px 10px 5px;}
table.dataDisplay tr td{padding:5px;vertical-align:top;}
.numeric{text-align:center;}
.inlineMenu{margin:0 3px 0 0;top:.2em;}
.separator{padding:0 3px 0 3px;}
#monthTable{border-collapse:collapse;}
#monthTable td{padding:.3em;text-align:center;font-weight:normal;font-size:.7em;}
#monthTable td.first{text-align:left;font-weight:normal;}
.listNavigation{margin:10px 0 10px 0;}
.listNavigationMonth{margin:0 0 0 -3px;}
.listNavigationYear{margin:20px 0 8px 0;}
.forumPostsContainer{width:700px;margin-left:auto;margin-right:auto;}
.postOutsideContainer{margin:0 0 4px 0;}
.postContentContainer{float:left;}
.postAuthor{border:1px solid #CCC;width:80px;vertical-align:top;padding:5px 0 5px 8px;}
.postHeader{border-top:1px solid #CCC;border-right:1px solid #CCC;border-bottom:1px solid #CCC;padding:5px 5px 5px 8px;}
.postMessage{border-right:1px solid #CCC;border-bottom:1px solid #CCC;padding:5px 5px 5px 8px;}
.postActionRow{padding:10px 5px 5px 0;}
.postActionRow ul,.postActionRow li{float:left;}
.postActionRow li{margin:0 15px 0 0;}
.postTopicAction{float:right;margin:5px 0 0 0;}
.postTopicHeader{float:left;}
.postReplyContainer{margin:0 0 20px 0;float:left;}
.quickReference{padding:10px;width:600px;margin:40px 0 10px 0;}
ul li.refList{margin:0 0 5px 20px;}
p.ref{margin:10px 0 10px 0;}
.scmTopNav{float:right;}
.scmTopNav ul li{padding:0 0 10px 0;right:0;}
.scmRevBlock{float:left;display:block;margin:0 0 10px 5px;width:600px;}
.scmRevBlockItem{margin:4px 0 0 19px;}
.scmRevBlockView{margin:4px 0 5px 0;}
.scmNavBlock{padding:5px;margin:10px 0 10px 0;}
.scmRevDate{margin:0 0 10px 0;padding:0 0 5px 5px;border-bottom:1px solid #CCC;}
.filesDocsActions{padding:4px 0 0 5px;float:left;}
.loadingWFormBtn{position:relative;left:20px;top:-5px;}
.loadingWFuncBtn{float:left;margin:-6px 0 0 5px;}
#main .change-list .content{width:100%;overflow:auto;}
.vAccLabel{float:left;clear:both;margin:10px 0 5px 10px;}
.vAccForm{display:inline;float:left;margin:0 0 5px 10px;}
.vAccPullDown{border-width:1px;margin:5px 5px 0 0;}
.vAccError{color:#d40807;font-weight:normal;}
.vAccTextField{display:inline;float:left;width:10em;height:1.2em;padding:.3em .3em .3em .3em;border-width:1px;margin:5px 5px 0 0;font-size:1em;}
.vAccGoButton{display:inline;float:left;background-image:url(../images/goButtonWiki.png?2011060812);width:36px;height:30px;margin-bottom:0;}
.wikiMainHeader{border:1px solid #1279C6;background-color:#E3EDF7;width:100%;height:2em;padding:3px;}
.wikiMainBody{min-height:35em;border:1px solid #1279C6;background-color:#FFF;width:100%;margin:10px 0 0 0;}
.wikiPreviewBody{min-height:15em;border:1px solid #1279C6;background-color:#FFF;width:100%;margin:10px 0 0 0;}
textarea.wikiEdit{width:100%;height:40em;border:1px solid #1279C6;margin:10px 0 0 0;}
.projectMembershipList{float:left;display:block;margin:0 0 10px 20px;width:600px;}
.tabLinks{margin:10px 0 20px 0;}
#userProfilePrivacy fieldset fieldset{margin-left:30px;}
.blockListTop{margin:0 0 10px 0;border-bottom:1px solid #CCC;}
.column.will-paginate{padding:4px 0 4px;margin:0;}
.will-paginate{padding:0;margin:3px 0 3px 0;}
.will-paginate table{width:70%;}
.will-paginate td{font-size:.9em;text-align:center;vertical-align:bottom;padding:0;margin:0;}
.will-paginate strong.bold{font-size:.8em;line-height:1.8em;}
.will-paginate td a.zeroCount{background-color:#CCC;}
.will-paginate a{padding:2px 5px 2px 5px;margin:2px;border:1px solid #aad;text-decoration:none;color:#1279C6;}
.will-paginate a:hover,.will-paginate a:active{border:1px solid #1279C6;color:#000;}
.will-paginate span.current{padding:2px 5px 2px 5px;margin:2px;border:1px solid #1279C6;font-weight:bold;background-color:#1279C6;color:#FFF;font-size:1.0em;}
.will-paginate span.disabled{padding:2px 5px 2px 5px;margin:2px;border:1px solid #ccc;color:#999;}
.popupMenuContainer{position:absolute;top:0;left:0;display:none;}
.popupMenuShadow{height:100px;position:relative;left:0;top:0;}
/*.popupMenuShadow{background-color:#333;filter:alpha(opacity=25);opacity:.25;}*/
.popupMenuShadow{background-color:#333;opacity:.25;}
.popupMenu,.popupMenu ul{margin:0;padding:0;}
.popupMenu{position:relative;top:0;left:0;border-width:1px;padding:5px 8px;}
.popupMenu .title{float:left;text-align:left;width:80%;}
.popupMenu .header{text-align:right;}
.popupMenu.modal .header{border-bottom-width:1px;margin-bottom:10px;}
.popupMenu .closeButton{width:15px;margin-bottom:-15px;}
.popupMenu.inline .footer{text-align:right;}
.popupMenu.modal .footer{text-align:center;}
.popupMenu.inline .functionButtonContainer{float:none;clear:both;}
.popupMenu.inline .upArrow{width:7px;height:7px;position:relative;top:-12px;margin-bottom:-12px;}
.popupMenu.inline .downArrow{width:7px;height:7px;position:relative;top:12px;margin-top:-7px;}
.popupMenu.inline p{width:245px;}
.popupMenu .textInput{margin-bottom:10px;width:265px;height:345px;float:left;overflow:auto;}
.popupMenu ul{margin:0 .5em;}
.popupMenu ul li{padding:0;}
.popupContainer{position:absolute;left:478px;top:395px;width:400px;}
.popupTL{width:420px;height:170px;padding:10px 10px 0 35px;}
.popupTL .popupContents{width:358px;height:138px;}
.popupContents.discussions{clear:both;}
.popupContents .half{width:175px;clear:none;float:left;}
.popupContents.discussions div{width:auto;min-width:150px;height:auto;margin:0 1em 5px 0;}
.popupContents.discussions .title{clear:right;}
.popupContents.discussions div div{margin:0;}
.popupContents.discussions img{float:left;width:60px;height:40px;}
.popupContents.discussions .externalSites img{float:none;width:16px;height:16px;border:0;}
.popupContents.discussions .externalSites a{padding:0 3px 0 0;}
.popupContents.discussions .externalSites .separator{padding:0 3px 0 0;}
.popupContents.discussions div .separator{vertical-align:top;}
table.admin{margin:10px 0;}
table.admin thead th{padding-left:10px;}
table.admin td{border-bottom-style:solid;border-bottom-width:1px;padding:8px 10px;}
table.admin tr td .threeColumns,table.admin tr td .column{padding:0;margin:0;}
table.admin tr td .column label{padding:0;margin:0;line-height:1.7em;}
table.admin .column .textInput,table.admin .column select{width:200px;}
table.admin tr td .expCol{margin-left:5px;position:relative;top:1px;}
.tabSet{margin:20px 0 15px 0;border-bottom-width:1px;}
.tabSet .tabs{position:relative;height:20px;}
.tabSet a.tab:link,.tabSet a.tab:hover,.tabSet a.tab:active,.tabSet a.tab:visited{display:block;float:left;position:relative;margin:0 5px;padding-top:4px;height:16px;text-align:center;}
.tabSet a.tab{padding:0 10px;}
.tabSet a.tab .end{position:absolute;height:20px;width:4px;top:0;right:-4px;}
.siteNews{padding-bottom:10px;}
ul.siteNewsItems li{padding-bottom:.75em;}
.siteNewsItemLink{margin-left:.2em;}
.bmHeading{text-transform:uppercase;margin:20px 0 10px 10px;color:#E86F00;}
.bmTitle{text-transform:uppercase;margin:10px 0 10px 10px;color:#666;}
.bmMessage{margin:40px 0 10px 100px;width:420px;height:150px;border:1px solid #C9C9C9;background-color:white;}
.bmMessage p{margin:20px 0 0 50px;color:#666;font-weight:bold;}
.bmButton{margin:20px 0 0 100px;}
.bmIcon{margin:10px 0 0 10px;float:left;}
#mainWindow{width:25%;height:35%;visibility:visible;position:fixed;right:0;bottom:0;z-index:1000;background-color:white;border:1px solid;}
#imHeader{height:20%;clear:both;background-color:#999;}
#imButtons{float:left;display:inline;}
#imPresense{float:right;display:inline;}
#imBody{width:100%;height:80%;}
#chatTabs{width:70%;height:80%;}
#buddyListCP{border:1px solid #999;border-top:none;width:30%;height:100%;float:right;}
#inputPane{border-top:1px solid #999;width:70%;height:20%;}
.controls input,.controls select{margin:.3em 0;}
body{font-size:.7em;}
a:link,a:hover,a:visited{text-decoration:none;}
a.selected{font-weight:bold;}
strong.bold{font-weight:bold;}
.nameValueContainer .name{font-weight:bold;}
label{font-weight:bold;}
h1.pageTitle,.pageTitle,.pageTitle legend{font-style:italic;text-transform:uppercase;font-size:1.4em;font-weight:bold;}
.sectionTitle{font-style:italic;text-transform:uppercase;font-size:1.3em;font-weight:bold;color:#000;}
h1.movieTitle{font-size:1.7em;font-weight:bold;}
h1.welcome{font-size:1.2em;font-weight:bold;text-transform:uppercase;}
h2.cta{display:none;}
.home #whatIs{font-size:1.3em;line-height:1.5em;text-align:justify;margin-bottom:20px;}
em.icon{font-style:normal;font-size:1.2em;}
#container,textarea{font-family:Arial,Helvetica,sans-serif;}
textarea{font-size:12px;}
#breadcrumbs{text-align:left;text-transform:lowercase;}
#breadcrumbs a:link,#breadcrumbs a:hover,#breadcrumbs a:visited,#breadcrumbs span{text-decoration:none;}
.cloud{text-align:justify;}
.cloud h6 a:link,.cloud h6 a:hover,.cloud h6 a:visited{font-size:1.5em;}
.cloud h5 a:link,.cloud h5 a:hover,.cloud h5 a:visited{font-size:1.7em;}
#nav2 .tab .title{font-weight:bold;text-transform:uppercase;}
#nav2 .vAccordion .tab{font-size:1em;}
#nav2 .vAccordion .expCol{font-weight:bold;}
#nav2 .bucket{text-align:left;}
#main .content{text-align:left;}
a.siteButton,.pageButtonContainer a,.pageButtonContainer button,.formButtonContainer button,button.functionButton{text-align:center;text-transform:uppercase;}
a.siteButton,button.siteButton{font-size:1.6em;}
a.pageButton,button.pageButton{font-size:1.2em;}
button.formButton{font-size:1.1em;}
button.functionButton{font-size:.7em;font-weight:bold;}
.discussions div{text-transform:capitalize;}
.iconLegend dd{font-style:italic;}
.blockList .projectTitle{font-size:1.3em;font-weight:bold;}
.blockList .username{font-size:.9em;font-weight:bold;}
.blockList .info dl dt{font-weight:bold;}
.blockList .links{font-size:1em;font-weight:bold;}
.miniMenu cite{font-size:.9em;font-style:normal;}
.miniMenu cite a{font-size:1em;font-weight:bold;}
.miniMenu .header,.content .header{font-size:.8em;font-style:italic;font-weight:bold;text-align:left;text-transform:uppercase;}
.miniMenu .title{font-size:.9em;font-weight:bold;text-align:left;}
.miniMenu ul{text-align:left;}
.miniMenu .footer{text-align:right;}
.miniMenu li,.miniMenu li,.miniMenu li{font-size:.8em;}
.miniMenu li a:link,.miniMenu li a:hover,.miniMenu li a:visited{font-size:1em;}
#footer{text-align:left;}
.finePrint{font-size:.9em;text-align:right;}
.popupMenuContainer{font-family:Arial,Helvetica,sans-serif;font-weight:bold;}
.popupContainer{font-family:Arial,Helvetica,sans-serif;}
.popupContents.discussions,.popupContents.discussions a{font-size:11px;}
.popupContents.discussions div .separator{font-size:11px;}
h2.pageTitle{font-style:italic;text-transform:uppercase;font-size:1.4em;font-weight:bold;}
h3.subSection{font-style:italic;text-transform:uppercase;font-size:1.3em;font-weight:bold;}
a.inlineLinkSearch{font-size:1em;font-weight:normal;}
.nameValuePairs .pairName dl dt{font-weight:bold;line-height:1.6em;vertical-align:text-top;}
.nameValuePairs .pairValue dl dt{line-height:1.6em;vertical-align:top;}
.med{font-size:.8em;}
.subSectionTitle strong{font-style:italic;text-transform:uppercase;font-size:1.2em;font-weight:bold;color:#000;}
a.inlineLinkMed{font-size:.8em;}
.scmPath{font-style:italic;font-size:1.2em;font-weight:bold;}
a.scmPath:link,a.scmPath:hover,a.scmPath:visited{text-decoration:none;font-size:1.1em;}
.scmRevDate{font-style:italic;font-size:1.2em;color:#333;}
.linkMed{font-size:1.1em;}
.properties dl dt{font-weight:bold;}
table.dataDisplay a:link,table.dataDisplay a:hover,table.dataDisplay a:visited{font-size:1em;}
table.forumPost a:link,table.forumPost a:hover,table.forumPost a:visited{font-size:1em;}
table.dataDisplay.sm .mailChronoDate{font-style:italic;font-size:1.1em;color:#333;}
table#monthTable td{font-size:1em;}
.rs,a.rs{font-size:1em;}
.vAccTextLabel{font-size:1em;font-weight:normal;}
.bullet{font-size:1.1em;}
table.admin tr.subheader{font-weight:bold;}
table.admin tr td .expCol{font-size:.9em;font-weight:bold;}
.tabSet{font-weight:bold;}
.siteNewsItemSubject{font-size:1.25em;font-weight:bold;}
.siteNewsItemBody{font-size:1.1em;}
a:link,a:hover,a:visited{color:#107EC0;text-decoration:underline;}
a.selected{color:#000;cursor:text;}
.pageTitle{color:#E86F00;}
fieldset ol{color:#000;}
.secondaryTitle{color:#C9C9C9;}
.description,.movie dl,.movie .separator,.popupContainer .separator{color:#666;}
/* commented out the folloing line as the graphic is no longer existing */
/* .captcha,select,.textInput,.msg{background-color:#FFF;background-image:url(../images/formElementDropShadow.png?2011060812);background-position:top left;background-repeat:no-repeat;border-color:#848889;border-style:solid;} */
input.focused,textarea.focused,option:hover{background-color:#DBEBF9;}
em.icon{color:#E86F00;}
button{background:none;cursor:pointer;}
table tr td label,span label{color:#000;}
.firstRow td{border-top-color:#CCC;border-top-style:solid;}
.rowColor{background-color:#FFF;}
.altRowColor{background-color:#F1F1F1;}
ul.fancyList{list-style-image:url(data:image/png;base64,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);}
#bg{background-color:#E3EDF7;}
#headCurves,#masthead .topLeft,#masthead .topRight,#masthead .bottomLeft,#masthead .bottomRight,#masthead .contentmast,#masthead #logo{background-image:url(../images/mastheadSprites.png?2011060812);}
#headCurves{background-position:0 0;}
#masthead .topLeft,#masthead .topRight,#masthead .bottomLeft,#masthead .bottomRight{background-position:0 -20px;}
#masthead .topRight{background-position:100% -20px;}
#masthead .bottomLeft{background-position:0 -28px;}
#masthead .bottomRight{background-position:100% -28px;}
#masthead .contentmast{background-color:#DADADA;background-position:100% -42px;background-repeat:repeat-x;}
.separator{color:#E86F00;}
#masthead #logo{background-repeat:no-repeat;background-position:0 -100px;}
#masthead .controls input{background-color:#F3F3F3;}
#breadcrumbs{background-color:#1279C6;color:#FFF;}
#breadcrumbs a,#breadcrumbs span{color:#FFF;}
#breadcrumbs .current{background-image:url(data:image/gif;base64,R0lGODlhCAAEALMJANLT19PR1tLT2NLS2tPS2tTR2NPS19TT2dPS2P%2F%2F%2FwAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAAkALAAAAAAIAAQAAAQT8IRByAgnIVMOEklYGAgQnt8ZAQA7);background-position:top;background-repeat:no-repeat;color:#B0DAFF;}
#sideColumn{background-color:#1279C6;}
#sideColumn .vAccordion{background-color:#FFF;background-position:right bottom;background-repeat:no-repeat;border-bottom-color:#1279C6;border-bottom-style:solid;}
.hAccordion{background-image:url(../images/tabs.gif.png?2011060812);}
.hAccordion #hTab_0{background-position:200px 100%;}
.hAccordion #hTab_1{background-position:160px 100%;}
.hAccordion #hTab_2{background-position:120px 100%;}
.hAccordion #hTab_3{background-position:80px 100%;}
.hAccordion #hTab_4{background-position:40px 100%;}
.hAccordion #hTab_0.selected{background-position:200px 100%;}
.hAccordion #hTab_1.selected{background-position:160px 100%;}
.hAccordion #hTab_2.selected{background-position:120px 100%;}
.hAccordion #hTab_3.selected{background-position:80px 100%;}
.hAccordion #hTab_4.selected{background-position:40px 100%;}
#main{background-color:#FFF;}
#nav2{background-color:#1279C6;}
.cloud{background-color:#1279C6;background-image:url(../images/cloudBG.gif.png?2011060812);background-position:bottom;background-repeat:repeat-x;border-bottom-color:#FFF;}
.cloud a:link,.cloud a:hover,.cloud a:visited{color:#B0DAFF;}
.cloud h6 a:link,.cloud h6 a:hover,.cloud h6 a:visited{color:#FFF;}
.cloud h5 a:link,.cloud h5 a:hover,.cloud h5 a:visited{color:#FFF;}
.cloudFull{background-color:#f0f0f0;}
.cloudFull a:link,.cloudFull a:hover,.cloudFull a:visited{color:#666;}
#nav2 .vAccordion{border-color:#1279C6;border-top-color:#FFF;}
#nav2 .tab{color:#FFF;border-bottom-color:#4797d4;background-color:#1279C6;}
#nav2 .vAccordion .tab{border-bottom-color:#FFF;cursor:pointer;}
#nav2 .vAccordion .expCol{color:#FFF;}
#nav2 .bucket{color:#FFF;border-bottom-color:#FFF;background-color:#1279C6;}
#nav2 .bucket a{color:#B0DAFF;}
#main .content{background-color:#FFF;}
a.pageButton,.pageButtonEnding,.pageButtonReflection,.pageButtonReflectionEnding,.siteButtonReflectionEnding,.siteButtonReflection,.siteButtonEnding,a.siteButton,button.siteButton,button.pageButton,button.formButton{background:url(../images/buttonSprites.gif.png?2011060812) no-repeat;}
a.siteButton,a.pageButton,button.siteButton,button.pageButton,button.formButton{color:#FFF;cursor:pointer;}
button.formButton{background:url(../images/formButton.gif?2011060812) no-repeat;}
.functionButton{color:#59636d;background:url(../images/functionButton.gif.png?2011060812) no-repeat;}
.siteButtonEnding,.pageButtonEnding{background-position:0 -100px;cursor:pointer;}
.formButtonEnding{background:url(../images/formButtonEnding.gif?2011060812) no-repeat;cursor:pointer;}
.functionButtonContainer{background:url(../images/functionButtonEnding.gif.png?2011060812) right no-repeat;cursor:pointer;}
.siteButtonReflection,.pageButtonReflection{background-position:0 -60px;}
.siteButtonReflectionEnding,.pageButtonReflectionEnding{background-position:0 -160px;}
.projectLogo{border-color:#999;}
.blockList{border-bottom-color:#BDBEC0;}
.discussions li{background-color:#F1F1F1;}
.discussions .description{background-color:#FFF;}
.miniMenuContainer{background-color:#FFF;}
.miniMenu{border-top-color:#1279C6;border-top-style:solid;}
.miniMenu .header,.content .header{color:#1A3C69;background-color:#FFF;background-image:url(../images/miniMenuHeader.gif?2011060812);background-position:bottom;background-repeat:repeat-x;}
.feedIcon{background-image:url(../images/feedIcon.gif?2011060812);background-position:center;background-repeat:no-repeat;}
.miniMenu{color:#666;}
.miniMenu cite a{color:#000;}
.miniMenu .footer{border-top-color:#DAD8E5;border-top-style:solid;}
.miniMenu ul{color:#1279C6;}
.blockList .info{color:#666;}
.pagination{border-top-color:#CCC;border-top-style:solid;border-bottom-color:#CCC;border-bottom-style:solid;}
.pagination input{border-color:#BDBEC0;border-style:solid;}
.pagination .back,.pagination .forward{cursor:pointer;}
.pagination .back{background-image:url(../images/back.gif?2011060812);}
.pagination .forward{background-image:url(../images/forward.gif?2011060812);}
#footer{background:#FFF url(../images/footer.gif.png?2011060812) repeat-x bottom center;border-top-color:#1279C6;border-top-style:solid;}
#footerCurves{background:url(../images/footerCurves.gif.png?2011060812) no-repeat top center;}
.openSolarisLogo{background:url(../images/opensolaris_logo.gif?2011060812) no-repeat;}
.finePrint{color:#1A3C69;}
.popupMenu,.popupMenu ul{list-style:none;}
.popupMenu{border-color:#3368AE;border-style:solid;background-color:#FFF;}
.popupMenu.inline,.popupMenu.modal{background-color:#EFEFEF;}
.popupMenu.modal .header{border-bottom-color:#666;border-bottom-style:solid;}
.popupMenu.inline .upArrow{background:url(data:image/gif;base64,R0lGODlhBwAHAJECAEN1tO%2Fv7%2F%2F%2F%2FwAAACH5BAEAAAIALAAAAAAHAAcAAAIMlI%2BpBwnRzAtQTAoLADs%3D);}
.popupMenu.inline .downArrow{background:url(data:image/gif;base64,R0lGODlhBwAHALMIAOvr65ejs%2BLi4r%2B%2Fv8rKytbW1kN1tO%2Fv7%2F%2F%2F%2FwAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAAgALAAAAAAHAAcAAAQY0Jw5TZA1jCHNRgRhhAhSnGeJCKxaAmoEADs%3D);}
.popupMenu p,.popupContents.discussions div{color:#666;}
.popupMenu .textInput{background-color:#F7F7F7;}
.popupTL{background:url(../images/captionTL.png?2011060812) top left no-repeat;}
.popupContents.discussions div strong{color:#000;}
.separator{color:#E86F00;}
h2.pageTitle{color:#E86F00;}
h3.subSection{color:#000;}
.scmNavBlock{background-color:#E3EDF7;border:1px solid #d2dce6;}
.scmReadme{background-color:#E3EDF7;border:1px solid #d2dce6;}
table.admin td{border-bottom-color:#ccc;}
table.admin tr td.bucket{background:#f4f4f4;}
table.admin tr td .threeColumns{background-color:#306;}
table.admin tr td .expCol{color:#1279C6;}
table.admin tr{border-top:1px solid #ccc;border-bottom:1px solid #ccc;}
div.change{border-top:1px solid #ccc;}
div.change-list{border-bottom:1px solid #ccc;}
.tabSet a.tab,.tabSet a.tab.selected,.tabSet a.tab .end,.tabSet a.tab.selected .end{background-image:url(../images/tabSprites.gif.png?2011060812);}
.tabSet{border-bottom-color:#999;border-bottom-style:solid;}
.tabSet a.tab:link,.tabSet a.tab:hover,.tabSet a.tab:active,.tabSet a.tab:visited{color:#000;}
.tabSet a.tab:link.selected,.tabSet a.tab:hover.selected,.tabSet a.tab:active.selected,.tabSet a.tab:visited.selected{color:#E86F00;}
.tabSet a.tab,.tabSet a.tab.selected,.tabSet a.tab .end,.tabSet a.tab.selected .end{background-position:top left;background-repeat:no-repeat;}
.tabSet a.tab{background-position:0 0;}
.tabSet a.tab.selected{background-position:0 -40px;}
.tabSet a.tab .end{background-position:0 -80px;}
.tabSet a.tab.selected .end{background-position:0 -120px;}
  .vAccordion .hover{background:#1590eb!important;}
.projectLogo img{border:0;}
#masthead #logo{cursor:pointer;}
#masthead .controls input{padding:0;}
.contextMenuBody{padding:6px 0;}
:focus{outline-style:none;}
a.personImage{display:block;margin:2px;float:left;}
a.personImage:hover{border:0;}
a.personImage img{border:0;}
.vAccGoButton{background-image:url(../images/go.png?2011060812);width:40px;height:30px;margin-bottom:3px;}
.blockList .people.info{width:580px;}
td.postMessage p{font-size:12px;}
#contextMenuShadow{position:absolute;z-index:199;}
.popupMenuContainer{z-index:200;}
img.contextMenuAnchor{vertical-align:bottom;}
.content
 .home div.steps{margin-left:105px;}
.quiet{color:#666;font-weight:normal;}
dl.standard dt{font-weight:bold;width:80px;}
dl.extended-terms dt{font-weight:bold;width:120px;}
.contentPadding{margin:10px 20px 20px 20px;}
.unique,.unique_below{background:url(../images/okIcon_small.png?2011060812) no-repeat;}
.duplicate,.duplicate_below{background:url(../images/errorIcon_small.png?2011060812) no-repeat;}
.loading{background:url(../images/file_icons/spinner.gif?2011060812) no-repeat;}
.unique,.duplicate,.loading{padding:2px 0 2px 24px;font-weight:bold;}
.duplicate_below,.unique_below{padding:2px 0 2px 24px;font-weight:bold;display:block;}
.homePageList{border-bottom:0;}
.homePageList li{margin:0;padding:8px 0 8px 0;border-bottom:1px solid #ddd;}
.homePageList .listImage{float:left;margin:2px;}
.homePageList div.listContent{float:left;padding-left:5px;width:285px;}
.homePageList a.titleLink{font-size:1.3em;display:block;margin-bottom:3px;}
.mailing-list{padding-bottom:10px;}
.mailing-list .subject{margin-top:6px;}
.mailing-list .email{font-size:1.3em;}
.searchResults em{background:#EDCC52;}
ul.jqueryFileTree li .name-col{float:left;width:200px;overflow:hidden;}
ul.jqueryFileTree li .rev-col{float:right;width:50px;overflow:hidden;}
ul.jqueryFileTree li .mod-col{float:right;width:80px;overflow:hidden;}
ul.jqueryFileTree li .log-col{float:right;width:150px;overflow:hidden;}
ul.jqueryFileTree li .author-col{float:right;width:80px;overflow:hidden;}
.centeredInfo{width:80%;background:#E3EDF8;border:1px solid #b3bDe8;text-align:center;margin:20px auto 10px auto;padding:15px;font-size:1.3em;line-height:1.5em;font-weight:bold;}
ul.bulletList{list-style-type:disc;list-style-position:inside;}
table.logEntry{width:100%;border-top:1px solid #ccc;}
table.logEntry td{padding:3px;}
table.logEntry td.label{font-weight:bold;width:15%;text-align:left;vertical-align:top;padding-right:8px;}
table.odd{background:#f0f0f0;}
.plusline{color:green;}
.minusline{color:red;}
.atline{color:purple;}
pre.scm{background-color:#eee;overflow:auto;font-size:1.4em;}
#scmTree{min-height:100px;margin:15px 0 30px 0;padding-bottom:20px;border-bottom:1px solid #ccc;}
.scmReadme{margin-top:2em;}
.scmReadme pre{font-size:1.25em;width:80%;padding:1em;}
.scmNavBlock pre{font-size:1.25em;}
table.fileListing td{white-space:nowrap;}
img{border:0;}
#tour_carousel .metadata{font-size:10px;color:#aaa;}
.tagMatches{margin:10px 10px 10px 0;display:block;}
.tagMatches span{color:white;background:#064CA2;padding:2px 5px;cursor:pointer;margin:5px 5px;margin-bottom:2px;}
table.admin{width:100%;word-wrap:break-word;}
table.admin thead tr{background:#f3f3f3 url(../images/adminTableHeaderBG.gif?2011060812) repeat-x;border-top:1px solid #bbb9ba;border-bottom:1px solid #bbb9ba;height:22px;}
table.admin thead th{padding:0 10px;}
.ift tr.ift-form-row{background-color:#F7EECB;}
.tDnD_whileDrag td{background:yellow;}
.ac_results{padding:0;border:1px solid WindowFrame;background-color:Window;overflow-y:auto;overflow-x:hidden;max-height:300px;}
.ac_results ul{width:100%;list-style-position:outside;list-style:none;padding:0;margin:0;}
.ac_results iframe{display:none;display:block;position:absolute;top:0;left:0;z-index:-1;width:3000px;height:3000px;}
.ac_results li{margin:0;padding:2px 5px;cursor:pointer;display:block;width:100%;font:normal .85em/.85em Verdana,Arial,sans-serif;overflow:hidden;}
.ac_results img{margin-right:6px;display:block;float:left;border:1px solid #888;}
/*.ac_loading{background:Window url(../images/activity.gif?2011060812) right center no-repeat;}*/
.ac_over{background-color:Highlight;color:HighlightText;}
#live-search{width:180px;}
#jq-ui-autocomplete-parent>div{position:absolute;clear:left;}
.jq-ui-autocomplete{z-index:10010;position:absolute;overflow:hidden;background-color:#fff;border:1px solid #aaa;margin:0;list-style:none;font:normal .85em/.85em Verdana,Arial,sans-serif;color:#333;max-height:404px;}
.jq-ui-autocomplete li{display:block;height:34px;padding:0 5px 0 5px;overflow:hidden;width:170px;}
.jq-ui-autocomplete span.type,.ac_results span.type{color:#888;line-height:18px;}
.jq-ui-autocomplete div.ival,.ac_results div.ival{margin-top:5px;display:block;float:left;width:125px;color:black;}
.jq-ui-autocomplete img{margin-top:6px;display:block;float:right;border:1px solid #888;}
.jq-ui-autocomplete .active{background-color:#B0DAFF;}
.error{background:url(../images/error_bg.gif?2011060812) repeat-x;color:#d40807;font-weight:bold;margin:0 0 4px 0;padding:15px;}
.errorExplanation{background:url(../images/error_bg.gif?2011060812) repeat-x #edf2f5;margin:15px 0 15px 0;min-height:75px;padding:5px 20px 15px 20px;}
.errorExplanation h2{color:#d40807;font-size:16px;}
.errorExplanation ul li{margin:0 0 0 15px;padding:0 0 0 5px;}
.notice{background:url(../images/error_bg.gif?2011060812) repeat-x;color:#555;font-weight:bold;margin:0 0 4px 0;padding:15px;}
.fieldWithErrors input,.fieldWithErrors select,.fieldWithErrors textarea{border:2px solid #d40807;}
.not-implemented-notice{position:absolute;background:red;padding:2px!important;color:white;font-size:12px;font-family:arial;margin-top:-2px;z-index:1000;font-weight:bold;}
.jqiwarning .jqi{background-color:blue;}
.jqifade{background-color:#000;}
div.jqi{position:absolute;background-color:#eee;padding:2px;width:300px;}
div.jqi .jqiclose{float:right;margin:-35px -10px 0 0;cursor:pointer;display:none;}
div.jqi .jqicontainer{background-color:#1279C6;padding:5px;color:#fff;font-weight:bold;}
div.jqi .jqimessage{padding:20px;font-family:arial;font-weight:bold;color:white;text-align:center;}
div.jqi .jqibuttons{text-align:center;padding:5px 0 0 0;}
div.jqi button{padding:3px 10px 3px 10px;margin:0 10px;background:#eee;border:1px solid #fff;}
#carousel_container .next,#carousel_container .prev{float:left;height:99px;background:#fff;font-size:.9em;border:1px solid #eee;}
#carousel_container .next:hover,#carousel_container .prev:hover{border:1px solid #1279C6;background:#eef;}
#carousel_list{float:left;}
#carousel_list li{float:left;}
#carousel_list a{display:block;margin:0 2px 0 2px;border:1px solid #aaa;}
#carousel_list a:hover{border:1px solid #1279C6;}
#tour_carousel_title{text-align:center;color:#888;font-size:1.6em;height:24px;margin-top:6px;}
.jqmWindow{font-family:Arial,Helvetica,sans-serif;display:none;position:fixed;left:50%;background-color:#EFEFEF;color:#333;border:1px solid #3368AE;text-align:left;padding:4px 12px;}
.jqmWindow .jqmHeader{font-weight:bold;text-align:left;color:black;padding-bottom:2px;border-bottom:1px solid #666;position:relative;}
.jqmWindow .jqmHeader .jqmClose{position:absolute;top:2px;right:0;cursor:pointer;}
.jqmWindow .jqmTarget{padding:10px 0;}
.jqmOverlay{background-color:#000;}
.jqmFooter{text-align:right;margin-top:5px;}
/* * iframe.jqm{position:absolute;top:0;left:0;z-index:-1;width:expression(this.parentNode.offsetWidth+'px');height:expression(this.parentNode.offsetHeight+'px');}*/
#jqm_large_overlay{top:13%;margin-left:-300px;width:600px;}
#jqm_dialog{top:20%;margin-left:-125px;width:250px;}
h2.scmTitle,h3.scmTitle{text-transform:none;}
.postOutsideContainer:target .rowColor,.postOutsideContainer:target .altRowColor{background-color:#FFFFF1;}
table.tablesorter{font-family:arial;background-color:#39F;margin:10px 0 15px;font-size:10pt;width:100%;text-align:left;}
table.tablesorter thead tr th,table.tablesorter tfoot tr th{background-color:#e6EEEE;border:1px solid #FFF;font-size:10pt;padding:4px;}
table.tablesorter thead tr .header{background-image:url(../images/bg.gif);background-color:#e6EEEE;background-repeat:no-repeat;background-position:center right;border:1px solid #FFF;cursor:pointer;}
table.tablesorter tbody td{color:#3D3D3D;padding:4px;background-color:#FFF;vertical-align:top;}
table.tablesorter tbody tr.odd td{background-color:#F0F0F6;}
table.tablesorter thead tr .headerSortUp{background-image:url(../images/asc.gif);}
table.tablesorter thead tr .headerSortDown{background-image:url(../images/desc.gif);}
table.tablesorter thead tr .headerSortDown,table.tablesorter thead tr .headerSortUp{background-color:#8dbdd8;}

/* next file */

html, body { height: 100%; margin: 0; padding: 0; }
body { font: .9em sans-serif; background: #FFF; }

p { line-height: 150%; margin: 0; padding: .75em 0 0 0; }
a { color: #06338B; margin: 0; padding: 0; }
ul { margin: .75em 15px 0 5px; padding: 0; }
li { line-height: 115%; }
h1, h2, h3 { font-family: sans-serif; font-weight: normal; }
h1 { font-size: 1.75em; font-weight: bold; padding: .15em 5px .15em 5px; margin: 0; background-color: #DBEDF8; border-top: 1px solid #86C2E6; border-bottom: 1px solid #86C2E6; color: #036; }
h2 { font-size: 1.45em; color: #333; margin: .75em 0 .5em 0; border-bottom: 1px solid #AAA; }
h2 a { text-decoration: none; color: #008; }
h3 { font-size: 1.25em; color: #444; margin: .75em 0 0 0; font-weight: bold; font-style: italic;}

img { border: none; }
form { margin: 0; padding: 0; }
th, td { margin: 0; padding: 0; text-align: left; vertical-align: top; }
dt { font-weight: bold; }
hr { display: none; }
del { text-decoration: line-through; }
label { display: block; float: left; }
fieldset { border: 1px solid #ccc; border-color: #ccc #999 #999 #ccc; margin-bottom: 3px; width: 100%; }
th { background: #EEE; color: #000; }

.nonscreen { width: 0; height: 0; margin: 0 0 0 0 ; padding: 0 0 0 0; display: none; overflow: hidden; }

/*--------------------------- Header ---------------------------*/

#nonfooter { min-height: 100%; position: relative; border: none;}
#header { width: 100%; min-width: 750px; height: 125px; background: url(/branding/images/header.png) no-repeat #86C2E6; }
#positioner { float: left; }
#positioner a { margin: 0; padding: 0; float: left; width: 175px; height: 125px; background: url(/branding/images/bannerlogo.png) no-repeat; display: block; }
#positioner h1 { margin: 29px 0 0 175px; padding: 10px 0 10px 15px; border: none; border-left: 1px solid #EDF4FD; color: white; font: italic 1.4em sans-serif; text-shadow: #6EB6E1 2px 2px; background: none; text-transform: none; }

#headertools { position: absolute; top: 12px; right: 10px; height: 110px; z-index: 10; font-size: .9em; width: 700px; }
#headertools #tools-main { float: right; }
#headertools span { color: #FFF; float: left; min-height: 17px; padding: 2px 0 0 0; }
#headertools a { color: #FFF; margin: 0; padding: 0; text-decoration: underline; }
#headertools #language-projects { float: left; padding: 2px 0 0 0; }
#headertools #language-projects a { padding: 0 0 2px 24px; margin: 0 20px 0 0; background: url(/branding/images/language-projects.png) no-repeat left 0; }
#headertools a.user-icon { float: left; height: 18px; width: 16px; margin: 0; padding: 0 6px 0 0; background: url(/branding/images/user.png) no-repeat 0 1px; }
#headertools a.expand, #headertools a.contract { background-repeat: no-repeat; padding: 4px 16px 6px 4px; margin: 0 0 0 2px; }
#headertools a.expand { background-image: url(/branding/images/login-button.png); background-position: right 1px; -moz-border-radius: 3px; -khtml-border-radius: 3px; -webkit-border-radius: 3px;  }
#headertools a.expand:hover, #headertools a.contract:hover { background-color: #06C; text-decoration: none; }
#headertools a.contract { background: url(/branding/images/login-button.png) #06C right -51px no-repeat; text-decoration: none; -moz-border-radius-topleft: 3px; -khtml-border-radius-topleft: 3px; -webkit-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -khtml-border-radius-topright: 3px; -webkit-border-radius-topright: 3px; padding-bottom: 10px; }
#headertools input { padding: 3px; border: 1px solid #06338B; -moz-border-radius: 3px; -khtml-border-radius: 3px; -webkit-border-radius: 3px; color: #444; }
#headertools input.submit { background: #ECF2FD; float: left; padding: 2px; }

#headertools #login-expand {width: 428px; margin: -38px 0 0 0;; float: right; visibility: hidden; clear: both; padding: 5px 0 5px 5px; background-color: #06C; -moz-border-radius: 3px; -khtml-border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius-topright: 0; -khtml-border-radius-topright: 0; -webkit-border-radius-topright: 0; }
#headertools #login-expand div { float: left; width: 104px; }
#headertools #login-expand div label { color: #CBDEFA; margin: 0; padding: 0 0 3px 1px; font-size: .9em; }
#headertools #login-expand div input { margin: 0; width: 90px; }
#headertools #login-expand div input.submit { width: auto; margin: 18px 5px 0 0; }
#headertools #login-expand #login-expand1 { width: 70px; margin: 0 0 0 0; float: left; }
#headertools #login-expand #login-expand2 { width: 130px; margin: 0 0 0 0; padding:20px 0 0 20px; float: left; border-style: none;}
#headertools #login-expand #login-expand2 #rememberMe { width: 10px; margin: 0 5px 0 0; float: left; border-style: none; }
#headertools #login-expand #login-expand2 #rememberMeLabel { width: auto; color: #CBDEFA; margin: 0; padding: 0 0 3px 1px; font-size: .8em; }
#headertools #search { position: absolute; right: 5px; top: 80px; }
#headertools #search a { margin: 0 4px 0 0; padding: 0 4px 0 4px; width: 16px; height: 20px; background: url(/branding/images/search.png) no-repeat 4px 3px; display: block; float: left; }
#headertools #search input { width: 179px; margin: 0 7px 0 0; }
#headertools #search input.submit { margin: 0; width: auto; float: none; }

/*--------------------------- Top Menu / Navigation ---------------------------*/

#subheader { margin: 0 0 13px 0; width: 100%; min-width: 750px; height: 25px; background: url(/branding/images/header.png) no-repeat left -125px #CFE7F5; }
/*#navigation { height: 25px; float: right; }*/
.navigation { font-size: .8em; }
.navigation ul { margin: 0 8px 0 0; padding: 0; }
.navigation li { margin: 0; padding: 0; list-style: none; display: inline; }
.navigation span { float: left; display: block; background: url(/branding/images/tab.png) no-repeat right top #F0F5FE; padding: 7px 8px 5px 2px; }
.navigation a { margin: 0 7px 0 0; padding: 0 0 0 5px; float: left; outline: none; background: url(/branding/images/tab.png) no-repeat left top #F0F5FE; cursor: pointer; text-decoration: none; font-family: sans-serif; }
.navigation a:hover { background: url(/branding/images/tab.png) no-repeat left -50px #FAFCFF; }
.navigation a:hover span { background: url(/branding/images/tab.png) right -50px #FAFCFF; }
.navigation li.th a { float: left; background: url(/branding/images/tab.png) no-repeat left -100px #FFF; }
.navigation li.th a span { background: url(/branding/images/tab.png) no-repeat right -100px #FFF; }

/*--------------------------- Breadcrumbs ---------------------------*/

#breadcrumbs { margin: 0 0 0 15px; font-size: .9em; color: #AAA; }
#breadcrumbs a { color: #AAB; }

/*--------------------------- Content (informational body) Layout ---------------------------*/

/*#content { width: 100%; padding: 10px 0 160px 0; clear: both; display: block; font-size: 1em; background:#FFF; }*/
#main { width: 100%; margin: 0; table-layout: auto;}
#bodycol { margin: 0; padding: 0 13px 0 0; height: auto; }
#bodycol li { margin: 10px 0 10px 30px; }
#bodycol dd { line-height: 150%; margin: 20px 0 20px 30px; }

/*--------------------------- NavColumn Layout ---------------------------*/

#navcol { width: 210px; border: none;}
#navcolumn { width: 210px; margin: 0 23px 0 -2px; font-size: .9em; float: left; }
.navgroup { margin: 0; padding: 0 0 10px 0; }
.navgroup, .navgroup div.body { background: url(/branding/images/dl-bg.png) right bottom no-repeat #F8F8F8; }
.navgroup div.body a, .navgroup dd ul li a, .navgroup dd div div a, #searchbox dd div a { display: block; color: #039; text-decoration: none; width: 85%; padding: 1px 5% 1px 10%; }
.navgroup div.body a:hover, .navgroup dd ul li a:hover, .navgroup dd div div a:hover, #searchbox dd div a:hover { border: 1px solid #86C2E6; background: #DBEDF8; border-left: none; padding: 0 5% 0 10%; width: 84.5%; }
.navgroup, .navgroup dt, .navgroup dd, .navgroup ul, .navgroup li { margin: 0; padding: 0; }
.navgroup ul li { line-height: 150%; display: block; list-style-type: none; margin: 0; padding: 0; }
.navgroup dd { border: none; }
.navgroup dt, .navgroup div.label, #rightcol .www h3 { font-weight: bold; background: url(/branding/images/dt-bg.png) left bottom repeat-x #DCE9FC; color: #039; padding: 5px 0 5px 15px; margin: 0 0 10px 0; font-size: 1.15em; }
.navgroup dt a, .navgroup div.label a, #rightcol .www h3 a { text-decoration: none; }
.navgroup div.body { padding: 0; }
.navgroup dd div { margin: 0; padding: 0; }
.navgroup > dd div.body { background: none; }
#searchbox select, #searchbox input { margin: 0 -15px 5px 10%; }
#searchbox select { width: 135px; }

/*---------------------------  CommunityCol --------------------------- */

#communitycol { font-size: .8em; width: 185px; padding: 0; margin: 0 15px 0 0; }
#rightcol { margin: 0 13px 0 0; }
#rightcol .www h3 { background-color: #DCE9FC; border-bottom: 1px solid #9BC0F5; color: #039; padding: 5px 0 5px 5px; margin: 0 -15px 0 0; font-size: 1.2em; font-family: sans-serif; }
#rightcol .www h3 a { text-decoration: none; color: #039; }
#rightcol .www ul li { margin: 0 0 5px 10px; line-height: 150%; }

/*--------------------------- Campaign ---------------------------*/

div.campaign { width: 250px; min-height: 100px; float: right; background: url(/branding/images/campaign-bg.png) 10px bottom no-repeat #FFF; padding: 0 0 10px 0; }
div.campaign h2 { margin: 0; padding: 50px 75px 10px 20px; font-size: 1.25em; font-weight: normal; color: #06338B; border: none; background: url(/branding/images/campaign-bg.png) 10px top no-repeat #FFF; }
div.campaign p { line-height: 140%; font-size: .8em; padding: 0 65px 20px 20px; margin: 0; }

/*--------------------------- Footer ---------------------------*/

#footer { width: 100%; min-width: 750px; height: 130px; margin: -135px 0 0 0; padding: 5px 0 0 0; background: url(/branding/images/footer-bg.png) 0 top repeat-x #FFFFFF; text-align: center; position: relative; clear: both; display: block; font-size: .8em; }
#footer a { color: #888; }
#footer a:hover { color: #069; }
#footer ul { padding: 0 0 10px 0; margin: 15px 0 7px 0; }
#footer li { list-style: none; display: inline; margin: 0 20px 0 0; padding: 0; }
#footer img { border: none; }
#oraclelogo { float: left; padding: 10px 0 40px 15px; }
#kenailogo { float: right; padding: 10px 15px 40px 15px; }
#smallprint { margin: auto; display: inline; }
#smallprint p { margin: 0 auto 8px auto; padding: 0; display: block; width: 65%; }

/*--------------------------- Custom Stylings ---------------------------*/

.bigboldleft { font-weight: bold; text-align: left; vertical-align: top; }
.blue { background: #369; color: #FFF; padding: 2px; }
.blueboldcenter { color: #00F; font-weight: bold; text-align: center; }
.boldcenter { font-weight: bold; text-align: center; }
.darkbluebold,.darkblueleft { background: #00315A; color: #FFF; font-weight: bold; text-align: left; }
.darkblueleftmiddle { background: #00315A; color: #FFF; text-align: left; vertical-align: middle; }
.fontredochre { color: #C30; text-align: left; }
.fontwhite { color: #FFF; }
.fontwhitesmall { color: #FFF; font-weight: bold; text-align: left; }
.green { color: #060; }
.liteblue { background: #9CF; font-weight: bold; }
.liteblue-back { background: #ECF2FD; padding: 5px; text-align: center; }
.purple { color: #339; }
.red { color: #F00; }
.helplink { cursor: pointer; }
.indent { margin-left: .25in; }
.indenttable th .strut { width: 16em; }
.infomessage p { line-height: 100%; margin-bottom: 0; padding-bottom: 0; }
.it_nav { background: #009; color: #FFF; font-weight: bold; }
.leftpadding-medium,.additembox-expanded { padding-left: 14px; }
.legend th,.bars th { background: #FFF; padding-left: 1em; text-align: right; }
.messagechild { padding-left: 34px; }
.metricchart { margin: 6px auto; text-align: center; }
.metricchart img { border: 1px solid #ddd; }

.alt1 { text-align: center; vertical-align: top; }
.alt2 { background: #00315A; color:#FFF; text-align:left; }
.alt3, .graybold { background: #CCC; font-weight: bold; }
.alt4 { background: #9CF; font-weight: bold; }
.alt5 { color: #333; font-weight: bold; padding: 3pt; text-align: left; white-space: normal; }
.alt6 { background: #F0F0F0; font-weight: bold; text-align:left; }
.alt7 { background: #FFF; font-weight: bold; text-align: left; }
.alt8 { background: #FFF; font-weight: bold; text-align: left; vertical-align: top; }
.alt8b { background: #F0F0F0; font-weight: bold; text-align: left; vertical-align: top; }
.alt9 { background: #FFF; text-align: left; vertical-align: top; }
.alt9b { background: #F0F0F0; text-align: left; vertical-align: top; }
.alt10 { font-size: 85%; text-align: left; }
.alt12 { color: #00F; font-weight: bold; text-align: center; }

.band1 { background: #663; color: #FFF; }
.band10 { background: #699; color: #fff; }
.band11 { background: #CC9; }
.band12 { background: #CCF; }
.band13 { background: #366; color: #FFF; }
.band14 { background: #996; color: #FFF; }
.band15 { background: #99C; }
.band16 { background: #FCC; }
.band2 { background: #66C; color: #FFF; }
.band3 { background: #C99; }
.band4 { background: #CFF; }
.band5 { background: #336; color:#FFF; }
.band6 { background:#966; color: #FFF; }
.band7 { background: #9CC; }
.band8 { background: #FFC; }
.band9 { background: #633; color:#FFF; }
.bars th { width: 12em; }
.btntop { vertical-align: top; }

/*--------------------------- Formerly tigris.css ---------------------------*/

#broadcastmsg { background: 3px 6px #ecf4fe; border: 1px solid #aaa; border-left: 1px solid #999; border-right: 1px solid #999; margin: .75em 0; } 
#helpbox { margin-bottom: 1em; padding: 6px 11px 1em 6px; } 
#helpbox p { padding: 4px 0 4px 0; } 
#issuezilla.application .blue { color: #036; text-align: left; } 
#projectperformance { padding: 10px; } 
#report-export { float: right; margin-left: 3em; } 
#report-links { float: right; margin: 0 5px 2px; } 
#report-sequence { margin-bottom: 1em; } 
#report-sequence table { background: #ccc; border-spacing: 0; width: 100%; } 
#report-sequence table td,#report-sequence table th { width: 33%; } 
#report-sequence table th { background: #cef; font-weight: 700; } 
#report-sequence td,#report-sequence th { border: 1px solid #ccc; border-bottom: 1px solid #666; border-right: 1px solid #666; padding: 4px 5px; } 
.\3031centmidd { background: #00315A; color: #FFF; text-align: center; } 
.a td, .a { background: #f9f9f9; } 
.a:hover td, .a:hover, .b:hover td, .b:hover, .hilight { background: #E0E9F9; } 
.additembox { background: #efefef; padding: 5px 3px; } 
.hide { display: none; } 
.axial td th { text-align: left; } 
.b td, .b { background: #ededef; } 
.calendarbody { margin: 17px; } 
.calendarday { background: #fff; } 
.calendardays,calendarperiod { border: 1px solid #999; } 
.calendarmonths { background: #9bf; border: 1px solid #ccf; border-color: #ccf #69c #69c #ccf; } 
.calendartoday { background: #ee9; border: 1px solid #999; border-color: #999 #777 #69c #aaa; } 
.calendartoday, .calendarmonths { padding: 0 2px 0 3px; } 
.calendarweeklabel { background: #aaa; padding-bottom: 7px; text-align: center; } 
.center, .textcenter, .alt15 { text-align: center; } 
.colbar { background: #eee; border: 1px solid #999; border-color: #aaa #eee #eee #aaa; margin: 1px 2px 2px; padding: 2px; min-height: 18px; } 
.courtesylinks { margin-top: 1em; padding-top: 1em; } 
.currentperiod,#today { background: #ee9; } 
.cvsdiffadd { background: #bfffbf; } 
.cvsdiffchanges1, .cvsdiffchanges2 { background: #ff7; } 
.cvsdiffremove { background: #ffbaaa; } 
.dashboardchart { background: #ddd; margin: 2px 2px 0; padding: 5px; text-align: center; } 
.expandwidget,#additemlink { margin-top: 2px; padding-left: 3px; padding-top: 2px; } 
.docinfo, .dirinfo { margin: .67em 0; min-height: 32px; padding: .33em 0 .67em 42px; } 
.collapsewidget { background: #efefef; } 
.effort { margin-left: 50px; } 
.effortbar1 { background: #79f; } 
.effortbar1, .effortbar2 { position: absolute; } 
.errormessage { background: #fff5f1; } 
.fieldset, .tabset, .tabset .tabset { padding: .67em; }
.floatleft, .reportlet-a { float: left; } 
.floatright { float: right; } 
.othermonthday, .othermonthday a { background: #ddd; color: #888; } 
.periodax { background: #9cc; } 
.periodax, .periodbx, .currentperiod { border-bottom: 1px solid #eee; } 
.periodax, .periodbx, .currentperiod, .othermonthday, .othermonthday a, .calendarday { padding-bottom: 7px; } 
.periodbx { background: #ac9; } 
.printbreak { border-top: 2px #000 solid; margin-top: 20px; } 
.removedbox { float: left; margin-right: 10px; } 
.report-title, .reportlet-title { background: #ccccc1; font-weight: 700; text-align: center; } 
.reportlet { clear: both; min-width: 615px; width: 100%; } 
.reportlet-a, .reportlet-b { border: 1px solid #998; min-width: 300px; width: 49%; } 
.reportlet-b { float: right; position: relative; } 
.reportlet-footer { margin: 0; padding-bottom: 3px; text-align: center; } 
.reportlet-single { border: 1px solid #998; min-width: 600px; width: 100%; } 
.reportletchart { margin: 3px auto; text-align: center; } 
.right, .axial th, .axial th .strut, .periodax, .periodbx, .currentperiod, .calendarday, .alt14 { text-align: right; } 
.rollupactivity td { background: #ddd; } 
.select-medium { margin: 3px 0; min-width: 13em; } 
.selectiongroup { padding-left: 1.5em; } 
.small { font-size: 85%; } 
.smaller { font-size: 75%; } 
.spaced { line-height: 160%; } 
.spaced13 { line-height: 140%; } 
.statusnotstarted, .statusontrack, .statuscaution, .statusslip, .statusended { height: 10px; white-space: nowrap; width: 50px; } 
.strut15 { width: 15em; } 
.subp1em { text-indent: 1em; } 
.subp2em { text-indent: 2em; } 
.subp3em { text-indent: 3em; } 
.subp4em { text-indent: 4em; } 
.superscript { font-size: 75%; line-height: 110%; vertical-align: super; } 
.tablef0 { background: #F0F0F0; } 
.tasknav { margin-bottom: 1.33em; } 
.th-heading { padding: 2px 2px 7px; } 
.tier2 { margin-left: 1.5em; } 
.tier3 { margin-left: 3em; } 
.tier4 { margin-left: 4.5em; } 
.tier5 { margin-left: 6em; } 
.tier6 { margin-left: 7.5em; } 
.tier7 { margin-left: 9em; } 
.tier8 { margin-left: 10.5em; } 
.tier9 { margin-left: 12em; } 
.tier10 { margin-left: 13.5em; } 
.tip { color: #333; font-size: smaller; font-style: italic; font-weight: 400; margin-bottom: 4px; margin-top: 3px; } 
.tiptexttoggle { background: #C0CFDB; border: none; border-bottom: 1px solid #89C; border-right: 1px solid #89C; color: #444; margin: -3px 1px 0; padding: 2px 5px; } 
body .grid td { border-left: 1px solid #ccc; border-top: 1px solid #ccc; } 
body .mtb { margin-top: 2em; text-indent: 0; } 
body .stb { margin-top: 1em; text-indent: 0; } 
div.a,div.b { margin: 2px 0; padding: 3px; } 
div.strut13,table.axial th,table.axial th .strut { width: 13em; } 
div.strut14 { width: 14em; } 
div.strut7 { width: 7em; } 
div.strut8 { width: 8em; } 
p.attrdesc, .tier1 { margin-left: 0; } 
table td.statusalert, .statusalert { background: #f30; } 
table td.statuscaution, .statuscaution { background: #fc6; } 
table td.statusended, .statusended { background: #ccc; } 
table td.statusnotstarted, .statusnotstarted { background: #cca; } 
table td.statusontrack, .statusontrack { background: #6c6; } 
td.sequence-known,td.sequence-previous { background: #ace; color: #333; } 
td.sequence-unknown,td.sequence-next { background: inherit; color: #333; } 
.functnbar, .functnbar2, .effortbar2 { background: #aaa; } 
.functnbar, .functnbar2, .functnbar3, .functnbar4 { margin: .4em 2px .5em; padding: 4px 1em 5px; } 
.cumulative td, .subtotal,table td.c, .c { background: #bbb; } 

#footer {
   clear:left;
   margin:0 0 0 0;
   border-top-width:4px;
   padding:0 0 0 0;
   height: 100px;
   line-height:1.1em;
}
