/* SWIM2.0 :: Simple website menu
****************************************************************
* DOM scripting by brothercake -- http://www.brothercake.com/
* Licensed under GPL -- http://www.gnu.org/copyleft/gpl.html
****************************************************************
* For professional menu solutions visit -- http://www.udm4.com/ 
****************************************************************
*/





/* tame the lists */
ul.vertical, ul.vertical li {
	margin:0;
	padding:0;
	list-style-type:none;
	font-size:100%; /* fix for win/ie's "non-linear text scaling" bug */
	}


/* navbar list */
ul.vertical {
	position:relative; /* absolute */
	z-index:1000;
	cursor:default;
	
	/* navbar width */
	width:8em;

	/* navbar left and top position 
	   this DOES NOT already include 1px compensation 
	   on TOP, for list-item border collapse 
	   (1px defaults to around 0.05em) */
	left:1em;
	top:2.05em;
	}

/* navbar list-items */
ul.vertical li {
	position:relative;  /* relative */
	text-align:left; 
	cursor:pointer;
		
	/* duplicate navbar width */
	width:8em;
	
	/* shift list-items to collapse borders vertically */
	margin:-1px 0 0 0;
	}


/* menu lists */
ul.vertical ul {
	z-index:1020;
	cursor:default;
	position:absolute; /* absolute */
	
	/* menu width */
	width:8.2em;
	
	/* menu offset, which already includes 1px compensation 
	   on TOP, for list-item border collapse */
	margin:-0.5em 0 0 7.5em;
	/* overlapping the menus improves usability */
	
	/* 
	position menus off the screen to hide 
	because using display, visibility, overflow or clip,  
	would hide them from browser-based screenreaders as well 
	*/
	top:-100em;
	
	/* shift menus to collapse navbar->menu borders */
	left:-1px;
	
	/* compensate for list-item border collapse */
	padding:1px 0 0 0;
	}
	
/* menu list-items */
ul.vertical ul li {
	/* duplicate menu width */
	width:8.2em;
	}


/* further child-menu offset */
ul.vertical ul ul {
	/* this already includes 1px compensation 
	   for list-item border collapse */
	margin:-0.5em 0 0 7.7em;
	/* overlapping the menus improves usability */
	}


/* menu triggers -- position menus back on the screen to show 
   hide these from safari < 1.2 because of it's "sticky hover" bug 
   that would make it difficult or impossible to close the menus 
   we're hiding it using the "@media with Media Type in Mixed Case" hack
   http://www.dithered.com/css_filters/css_only/media_mixed_case.html */
@media Screen, Projection { 
	ul.vertical li:hover > ul { top:0; }
	}


/* links */
ul.vertical a, ul.vertical a:visited {
	display:block;
	cursor:pointer;
		
	background:white;
	border:1px solid #CDC8B1;
	padding:5px 7px;
	font: bold 8pt 'Arial', Helvetica, sans-serif;

	color:blue;
	text-decoration:none;
	letter-spacing:1px;
	}
	
/* rollover pseudo-classes, and scriptable persistence class */
ul.vertical a:hover, ul.vertical a:focus, ul.vertical a.rollover, ul.vertical a.rollover:visited {
	background:#F0F0F0;
	color:blue;
	}



/* hacks for win/ie to cure 'excess hidden margins' bug */
@media screen, projection {
	* html ul.vertical li {
		/* for ie5.0 */
		display:inline; 
		/* for ie5.5+ */
		float:left; 
		/* this cures 'events fall through the menu' bug in ie6 */
		background:white; 
		}
	}
	
/* use different comparative positioning for ie, 
   to avoid problems with virtual z-ordering */
* html ul.vertical li { position:static; }
* html ul.vertical a { position:relative; }

/* hide menus from konqueror < 3.2 */
ul[class^="vertical"] ul { display:none; }
ul[class^="vertical"] ul { displa\y:block; }