/*
 * Copyright (c) 2005, 2006 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 *
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 * IBM Corporation - initial implementation
 */
body{ 
	font-family:verdana,arial,sans-serif; 
	font-size:11px; 
	}

p{ 
	font-family:verdana,arial,sans-serif; 
	font-size:11px; 
	}

td{ 
	font-family:verdana,arial,sans-serif; 
	font-size:11px;
	}

th{ 
	font-family:verdana,arial,sans-serif; 
	font-size:11px;
	background-color: #c8d7e3; 
	padding-bottom: 5px;
	padding-top: 3px;
	padding-left: 3px;
	padding-right: 3px;		
	text-align: left;
}

.secHead {
	font-family: verdana,arial,sans-serif;
	font-size: 11px;
	font-weight: bold;
	text-decoration: none;
	color: #ffffff;
	}


.secCont{
	 font-family:verdana,arial,sans-serif; 
	 font-size:11px; 
}

.subHead {
	color: #293d6b;
	font-family: verdana,arial,sans-serif;
	font-size: 11px;
	font-weight: bold;
	text-decoration: none;
}

.stepCont{
	 font-family:verdana,arial,sans-serif; 
	 font-size:11px;
}

h1{ font-family:arial,sans-serif; font-weight:bold; font-size:18px; }
h2{ font-family:arial,sans-serif; font-weight:bold; font-size:15px; }
h3{ font-family:arial,sans-serif; font-weight:bold; font-size:14px; }
h4{ font-family:arial,sans-serif; font-weight:bold; font-size:12px; }

.codeSample{
	font-family: Courier;	
}

.quote{
	font-family: verdana,arial,sans-serif; 	
	font-style: italic;
}

.copy{ font-family:verdana,arial,sans-serif; font-size:10px; color:#999999;}
a.copy:link,
a.copy:active,
a.copy:visited,
a.copy:hover{ font-family:verdana,arial,sans-serif; font-size:10px; color:#999999;}

a:link{
    color: #5c81a7;
	text-decoration: none;
	font-family:verdana,arial,sans-serif; font-weight:normal; font-size:10px;
}

a:active{
    color: #0000ff;
	text-decoration: none;
	font-family:verdana,arial,sans-serif; font-weight:mornal; font-size:10px;
}

a:visited{
    color: #660066;
	text-decoration: none;
	font-family:verdana,arial,sans-serif; font-weight:normal; font-size:10px;
}
a:hover{
    color: #5c81a7;
	text-decoration: underline;
	font-family:verdana,arial,sans-serif; font-weight:normal; font-size:10px;
}

a.unselect:link,
a.unselect:active,
a.unselect:visited{
	font-family:verdana,arial,sans-serif; 
	font-weight:normal; 
	font-size:10px; 
	color: #5c81a7; 
}

a.unselect:hover{ color: #5c81a7; }

a.tab:link,
a.tab:active,
a.tab:visited{
	font-family:verdana,arial,sans-serif; 
	font-weight:bold; 
	font-size:10px; 
	color: #ffffff; 
}

a.tab:hover{ 
	color: #c8d7e3;
	text-decoration: none;	
}

.tab_active{
	font-family:verdana,arial,sans-serif; 
	font-weight:bold; 
	font-size:10px; 
	color: #293d6b; 
}
