html, body {
    height:100%;
    margin:0;
    padding:0;
}

body {
    background-color:#FFFFFF;
    color:#000000;
    font-family:Helvetica,Arial,sans-serif;
    font-size:small;
    margin:3px 8px;

    max-width:956px;
    padding-left:24px;
}

#package-header {
	background: #eaeaea url(haskell_icon.gif) no-repeat 5px 6px;
	height: 2em;
	margin: 0 0 0 -10px;
	position: relative;
}

#package-header .caption {
	margin-left: 30px;
	padding-top: 6px;
}



div#style-menu-holder {
	position: relative;
	z-index: 2;
	display: inline;
}

#style-menu {
	position: absolute;
	z-index: 1;
	overflow: visible;
	background-color: #eaeaea;
	margin: 0;
	width: 6em;
	text-align: center;
	right: 0;
	padding: 0 2px 1px;
	border-left: 1px solid #919191;
	border-right: 1px solid #919191;
	border-bottom: 1px solid #919191;
}

#style-menu li {
	display: list-item;
	border-style: none;
	margin: 0;
	padding: 3px;
	color: #000;
	list-style-type: none;
}

#style-menu li + li {
	border-top: 1px solid #919191;
}

#module-header .caption {
    background:transparent none repeat scroll 0 0;
    border:medium none;
    font-size: 170%;
    line-height: 130%;
    margin:0 0 0 -10px;

    background-color:#E5ECF9;
    border-top:1px solid #3366CC;
    padding:1px 3px;
	font-weight: bold;
	position: relative;
}


dl.info {
	position: absolute;
	display: block;
	right: 1em;
	top: 3em;
    background-color:#FAFAFA;
    border:1px solid #BBBBBB;
    padding:0.99em;
}

dl.info dt {
	float: left;
	clear: left;
	width: 5em;
	font-weight: bold;
	margin: 0;
	padding: 0;
}

dl.info dd {
	padding-left: 6em;
	margin: 0;
}

#description .caption,
#synopsis .caption,
h1 {
    background-color:#E5ECF9;
    border-top:1px solid #3366CC;
    font-size:130%;
    font-weight:bold;
    margin:2em 0 0 -10px;
    padding:1px 3px;
    position:relative;
}

#table-of-contents .caption,
h2 {
    font-size:130%;
    font-weight:bold;
    margin:1.5em 0 0;
    padding: 0;
    top:0;
}

#synopsis li.src * {
	display: inline;
}

#synopsis ul.subs,
#synopsis ul.subs li {
	padding: 0 0 0 0.25em;
	margin: 0;
}

#footer {
    color:#666666;
	background-color: #eaeaea;
	margin: 2em 0 0 -10px;
	position: relative;
}

#footer p {
	margin: 0;
	padding: 0.5em;
	border-top: 1px solid #919191;
}

ol, ul {
    line-height:125%;
    margin:0.5em 0 0 15px;
    padding:0;
}

li {
    margin:0.3em 0 0 1.5em;
    padding:0;
}

p {
    line-height:125%;
    margin:0;
    padding:1em 0 0;
}

h1 + p, h2 + p, h3 + p,
pre + p,
p + p {
	padding-top: 1em;
}

code, pre {
    color:#007000;
    font-family:monospace;
}

pre {
    background-color:#FAFAFA;
    border:1px solid #BBBBBB;
    font-size:9pt;
    line-height:125%;
    margin:1em 0 0;
    overflow:auto;
    padding:0.99em;
}

code {
    font-size:10pt;
}

a:link {
    color:#0000CC;
}

ul.links {
	list-style: none;
	position: absolute;
	right: 1px;
	top: 0;
}

ul.links li {
	display: inline;
	white-space: nowrap;
	padding: 0 10px;
	border-left: 1px solid #919191;
	margin: 0;
}

dl {
    line-height:125%;
    margin:0;
    padding:0;
}

dt {
    font-weight:normal;
    margin:0.75em 0 0;
    padding:0;
}

dd {
    font-weight:normal;
    margin:0.4em 0 0 2em;
    padding:0;
}

.hide {	display: none; }
.show { }
.collapser {
  background: url(minus.gif) no-repeat 0 1.3em;
}
.expander {
  background: url(plus.gif) no-repeat 0 1.3em;
}
.collapser, .expander {
  padding-left: 14px;
  margin-left: -14px;
  cursor: pointer;
}

.top {
    margin:0.4em 0 0 2em;
    padding:0;
}

.top .src {
    margin:0.75em 0 0 -2em;
    padding:0;
}

.top .subs .src {
	margin-left: 0;
}

.arguments .caption,
.fields .caption {
	display: none;
}

.associated-types,
.constructors,
.methods {
    background-color:#FAFAFA;
    border:1px solid #BBBBBB;
    padding:0.99em;
}

.subs .caption {
	font-weight: bold;
}

.subs td {
	padding-right: 1em;
	padding-left: 1em;
}

#index .caption,
#module-list .caption {
    font-size:130%;
    font-weight:bold;
    padding: 0;
    top:0;
	margin: 0.5em 0;
}

#index table {
	border-spacing: 0;
}
#index td {
	padding-right: 1em;
	border-top: 1px solid #eaeaea;
	padding-top: 2px;
	padding-bottom: 2px;
}

#index td.alt {
	padding-left: 2em;
	font-style: italic;
	font-size: 80%;
}

#alphabet ul {
	list-style: none;
	padding: 0;
	margin: 0.5em 0 0;
}

#alphabet li {
	display: inline;
	margin: 0 0.25em;
}

#alphabet a {
	text-decoration: none;
	font-weight: bold;
}

.module {
}

#mini {
	padding: 0;
	margin: 0 0 0 10px;
}

#mini h1, #mini h2, #mini h3, #mini h4 {
	margin-top: 0.5em;
	color: #a9a9a9;
}

#mini h1 {
	background-color: #eff2f9;
}

#module-list ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

#module-list li {
	margin: 0;
	border-top: 1px solid #eaeaea;
	padding: 2px 0 2px 1.4em;
}

#module-list li .package {
	float: right;
}

#mini #interface .top,
#mini #interface .src {
	margin-top: 2px;
	font-weight: normal;
	font-style: normal;
}

#mini #interface .src a {
	font-weight: bold;
}

.keyword {
    font-weight: bold;
    font-family: monospace;
}

#synopsis {
    display: none;
}

td p {
    padding-top: 0;
}

.src {
    font-family: monospace;
    font-size: larger;
}

.def {
    font-weight: bold;
}