/* Copyright 1994-2006, Actuate Software Corp., All rights reserved. */

@CHARSET "ISO-8859-1";

/* Border around dialog */
.dialogBorder
{
	border-style: outset;
	border-width: 1px;
	border-color: #CCCCCC;
	background-color: gray;
}

/* Title bar background area */
.dialogTitleBar
{
	height: 20px;
	background-color: #4E6DA4;
	cursor: move;	
}

.dTitleBar
{
	padding-left: 7px;
	padding-right: 7px;
	padding-top: 2px;
	padding-bottom: 2px;
	position: relative;
}

/* Title text */
.dialogTitleText
{
	font-size: 11px; 
	font-weight: bold; 
	font-family: tahoma, verdana, arial, sans-serif;
	color: white;
}

.dTitleText
{
	vertical-align: middle; 
	white-space: nowrap;
	cursor: move;
}

.dTitleTextContainer
{
	float: left; 
	position: relative;
	height: 100%;	
	width: 1px;
}

/* Close button - width should match those of .dialogCloseBtnContainer */
.dialogCloseBtn
{
	background-image: url("../images/Close.gif");
	width: 14px;
	height: 14px;
	background-color: gray;
	cursor: pointer;	 
}

.dCloseBtn
{
	vertical-align: middle; 
	background-repeat: no-repeat;
	background-position: center right; 
}

/* Close button container - width should match those of .dialogCloseBtn */
.dialogCloseBtnContainer
{		
	width: 14px;
}

.dCloseBtnContainer
{
	height: 100%;
	float: right;
	position: relative;
}

/* Background of dialog below title bar */
.dialogBackground
{
	background-color: #ECE9D8;
	margin-bottom: 1px;
}

.dBackground
{
	margin-left: 10px;
	margin-right: 10px;
	padding-top: 4px;
}

/* Border style of content area for individual dialog content */
.dialogContentContainer
{
}

/* Area from bottom of dialog content container to bottom border */
.dialogBtnBarContainer
{
	position: relative;
	text-align: center;
	padding-top: 4px; /* distance from bottom of content area to top of divider bar*/
	overflow: hidden;
}

/* Top divider line between dialog content area and button area */
.dBtnBarDividerTop
{
	height: 1px;
	background-color: gray;
	overflow: hidden;
}

/* Bottom divider line between dialog content area and button area */
.dBtnBarDividerBottom
{
	height: 1px;
	background-color: #fefefe;
	overflow: hidden;	
}


/* Area that contains OK and CANCEL buttons - from bottom of divider bar to top of outer border */
.dialogBtnBar
{	
	height: 36px;
	text-align: right;
}

/* Area holding both OK and CANCEL buttons */
.dialogBtnBarButtonContainer
{
	margin-left: auto; 
	margin-right: 0px; 
	margin-top: 6px; 
	margin-bottom: 7px;
	width: 166px; 
	height:24px;
}

/* Space between OK and CANCEL */
.dialogBtnBarDivider
{
	width: 6px;
	height: 1px;
	float: left;
}

.dialogBtnBarButtonEnabled
{
	float: left;
	cursor: pointer;
	height: 24px;
	width: 80px;
	overflow: hidden;
	color: black; /* Font color */ 
	/*background-color: #9C9C9C;
	background-repeat: repeat-x;
	background-position: top left;*/
}

.dialogBtnBarButtonDisabled
{
	float: left;
	cursor: default;
	height: 24px;
	width: 80px;
	overflow: hidden;
	color: #999999; /* Font color */
	/*background-color: #9C9C9C;
	background-repeat: repeat-x;
	background-position: top left;*/
}

/* Left background image for OK and CANCEL buttons */
.dialogBtnBarButtonLeftBackgroundEnabled
{
	background-color: #9C9C9C;
	background-repeat: no-repeat;
	background-position: top left;
	position: relative;
	width: 0px;
	height: 24px;
	float: left;
}

/* Left background image for OK and CANCEL buttons */
.dialogBtnBarButtonLeftBackgroundDisabled
{
	background-color: #9C9C9C;
	background-repeat: no-repeat;
	background-position: top left;
	position: relative;
	width: 0px;
	height: 24px;
	float: left;
}

/* Right background image for OK and CANCEL buttons */
.dialogBtnBarButtonRightBackgroundEnabled
{
	background-color: #9C9C9C;
	background-repeat: no-repeat;
	background-position: top right;
	position: relative;
	width: 0px;
	height: 24px;
	float: right;
}

/* Right background image for OK and CANCEL buttons */
.dialogBtnBarButtonRightBackgroundDisabled
{
	background-color: #9C9C9C;
	background-repeat: no-repeat;
	background-position: top right;
	position: relative;
	width: 0px;
	height: 24px;
	float: right;
}

/* Text for OK and CANCEL buttons */
.dialogBtnBarButtonText
{	
	font-family: tahoma, verdana, arial, sans-serif;
	font-size: 11px;
	font-weight: 400;
	text-align: center;
	vertical-align: middle;
}
