/***

DEFAULT:
The omnis menu java script allows the definition of classes for specific areas within the menu box.
The minimum classes for a menu are
	.omnisMenuMain				- the class for the main menu container
	.omnisMenuTable				- the class for the menu table
	.omnisMenuRow					- the class for the menu row
	.omnisMenuCellCheck		- the class for the cell containing the selection check symbol
	.omnisMenuCellText		- the class for the cell containing the menu line text
	.omnisMenuCellCascade	- the class for the cell containing the cascade arrow

STATES:
In addition, each of the above '.omnisMenuRow...' classes can have additional classes for the disabled 
and hilited states of menu line, as well as a special divider menu line state for lines that have no content
These are defined by creating additional classes and appending an underscore followed by the state.
It is possible to define the following classes in addition to the classes above
	.omnisMenuRow_hilite
	.omnisMenuRow_disabled
	.omnisMenuRow_divider
	.omnisMenuCellCheck_hilite
	.omnisMenuCellCheck_disabled
	.omnisMenuCellText_hilite
	.omnisMenuCellText_disabled
	.omnisMenuCellText_divider
	.omnisMenuCellCascade_hilite
	.omnisMenuCellCascade_disabled

PLATFORMS:
It is further more possible to define additional styles for specific platforms.
This can be achieved by creating classes using the names above and appending an additional underscore
followed by the platform name as returned by 'window.navigator.platform'. These can be
"win32", "linux_i686", "macppc" "macintel" (all lower case and spaces converted to '_'), 
or if none of these values matches the platform name, "default". 

To define specific menu line styles for the windows platform you could create classes named
	.omnisMenuRow_win32
	.omnisMenuCellText_win32
	.omnisMenuCellCascade_win32
	.omnisMenuRow_hilite_win32
	.omnisMenuRow_disabled_win32
	.omnisMenuRow_divider_win32
	.omnisMenuCellCheck_hilite_win32
	.omnisMenuCellCheck_disabled_win32
	.omnisMenuCellText_hilite_win32
	.omnisMenuCellText_disabled_win32
	.omnisMenuCellText_divider_win32
	.omnisMenuCellCascade_hilite_win32
	.omnisMenuCellCascade_disabled_win32



HOW IT WORKS:
The menu handling script will first look for a class for the required state and platform. If a class
does not exist for that platform, the class with the required state is chosen. If a class with
an appropriate state is not found, the default classes are used. This allows the omission of some classes
if their platform or state does not alter from the normal state. The default classes define the normal
state of a menu's area.


MS-IE AND MENU SHADOWS:
Internet Explorer up to version 8 does not support box-shadow. As a special case, if we add the style
named .omnisMenuShadow_ie, the javascript will create an additional DIV box behind our menu to which
we can asign the IE propriatory blur effect using the filter
"filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='2', MakeShadow='true', ShadowOpacity='0.25')"
If we use this style we should not specify the box-shadow style for the windows platform.


IMPORTANT!!! Class names are case sensitive in some browsers

***/


/*************** MENU MAIN AREA ***************/
/* positioning and appearance info for the main
menu area (DIV element) */

/* default for all platforms */
.omnisMenuMain, .omnisMenuMain_win32, .omnisMenuMain_macppc, .omnisMenuMain_macintel, .omnisMenuMain_linux_i686, .omnisMenuMain_default, .omnisMenuMain_iOS
{
	cursor: default;
	visibility: hidden;
	position: absolute;
	z-index: 9999;
}

/* mac specific */
.omnisMenuMain_macppc, .omnisMenuMain_macintel
{
	padding-top:4px;
	padding-bottom:4px;
	border: 1px solid rgb(183,196,196);
	background-color: rgb(255,255,255);
	-webkit-box-shadow: rgba(0,0,0,.25) 0px 5px 15px;
	-moz-box-shadow: 5px 5px 10px rgba(0,0,0,.25);
	box-shadow: 5px 5px 10px rgba(0,0,0,.25);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px
}

/* windows specific */
.omnisMenuMain_win32
{
	padding:2px;
	border-width: 1px;
	border-style: solid;
	border: 1px solid rgb(160,160,160);
	background-color: rgb(240,240,240);
	-webkit-box-shadow: rgba(0,0,0,.25) 0px 3px 3px;
	-moz-box-shadow: 3px 3px 3px rgba(0,0,0,.25);
	box-shadow: 3px 3px 3px rgba(0,0,0,.25);
}
/* special style for creating shadows in IE 8 or earlier */
.omnisMenuShadow_ie
{
	z-index: 9999;
	background-color: rgb(255,255,255);
	filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='3', MakeShadow='true', ShadowOpacity='0.25');
}

/* linux specific */
.omnisMenuMain_linux_i686
{
	padding:2px;
	border: 1px solid rgb(160,160,160);
	background-color: rgb(255,255,255);
}

/* Style for other platforms */
.omnisMenuMain_default, .omnisMenuMain_iOS
{
	border: 1px solid rgb(160,160,160);
}

/*************** MENU TABLE AREA ***************/
/* positioning and appearance info for the inner
menu area (TABLE element) */

.omnisMenuTable	
{
	cursor: default;
	background-color: rgb(240,240,240);
}



/*************** MENU ROW AREA ***************/
/* positioning and appearance info for the row 
(TR element) */

/* normal state for all platforms */
.omnisMenuRow, .omnisMenuRow_linux_i686
{
	color: black;
	background-color: white;
}

/* normal state for windows */
.omnisMenuRow_win32
{
	color: black;
	background-color: rgb(240,240,240);
}

/* hilite state for all platforms */
.omnisMenuRow_hilite
{
	color: white;
	background-color: rgb(86,104,241);
}

/* hilite state for macintosh */
.omnisMenuRow_hilite_macppc, .omnisMenuRow_hilite_macintel
{
	color: white;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(110,129,246,1)), to(rgba(63,79,235,1)));
	background: -moz-linear-gradient (top, rgba(110,129,246,1), rgba(63,79,235,1));
	background-color: rgb(110,129,246);
}

/* hilite state for windows */
.omnisMenuRow_hilite_win32
{
	color: black;
	background-color: rgb(240,240,240);
	border: 1px solid rgb(0,0,0);
}

/* hilite state for linux */
.omnisMenuRow_hilite_linux_i686
{
	color: rgb(255,255,255);
	background-color: rgb(102,140,177);
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(102,140,177,1.0)), to(rgba(99,138,175,1.0)));
	background: -moz-linear-gradient (top, rgba(102,140,177,1.0), rgba(99,138,175,1.0))
}

/* disabled state for all platforms */
.omnisMenuRow_disabled
{
	color: rgb(157,157,157);
	color: rgba(0,0,0,0.4);
	background-color: rgb(255,255,255);
}

/* disabled state for windows */
.omnisMenuRow_disabled_win32
{
	color: rgb(157,157,157);
	background-color: rgb(240,240,240);
}



/*************** MENU ROW CHECK/SELECTED AREA ***************/
/* positioning and appearance info for menu line check to the 
left of the text area (TD element column 1)*/

/* normal state for all platforms */
.omnisMenuCellCheck, .omnisMenuCellCheck_win32, .omnisMenuCellCheck_hilite_win32
{
	font: menu;
	font-size: 10pt;
	font-family: Arial,Sans-serif;
	width: 20px;
	padding-left: 5px;
	padding-bottom: 2px;
	text-align: left;
	white-space: nowrap;
}

/* normal state for windows */
.omnisMenuCellCheck_win32
{
	border-left: 1px solid rgb(240,240,240);
	border-top: 1px solid rgb(240,240,240);
	border-bottom: 1px solid rgb(240,240,240);
}

/* hilite state for windows */
.omnisMenuCellCheck_hilite_win32
{
	border-left: 1px solid rgb(174,207,247);
	border-top: 1px solid rgb(174,207,247);
	border-bottom: 1px solid rgb(174,207,247);
	background-color: rgb(230,237,246);
	-webkit-border-top-left-radius: 4px;
	-webkit-border-bottom-left-radius: 4px;
	-moz-border-radius: 4px 0 0 4px;
	border-radius: 4px 0 0 4px;
}



/*************** MENU ROW TEXT AREA ***************/
/* positioning and appearance info for menu line text 
(TD element column 2) */

/* normal state for all platforms */
.omnisMenuCellText, .omnisMenuCellText_win32, .omnisMenuCellText_hilite_win32
{
	font: menu;
	font-size: 10pt;
	padding-left: 0px;
	padding-right: 0px;
	padding-bottom: 2px;
	text-align: left;
	white-space: nowrap;
}

/* State for other platforms */
.omnisMenuCellText_default
{
	font: menu;
	font-size: 10pt;
	line-height:2;
}


/* normal state for windows */
.omnisMenuCellText_win32
{
	border-top: 1px solid rgb(240,240,240);
	border-bottom: 1px solid rgb(240,240,240);
}

/* hilite state for windows */
.omnisMenuCellText_hilite_win32
{
	border-top: 1px solid rgb(174,207,247);
	border-bottom: 1px solid rgb(174,207,247);
	background-color: rgb(230,237,246);
}

/* divider state for all platforms */
.omnisMenuCellText_divider
{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:50%;
	border-bottom: 1px solid rgb(220,220,220);
}

/* divider state for windows */
.omnisMenuCellText_divider_win32
{
	line-height:0px;
	position:absolute;
	left:0px;
	top:50%;
	width:100%;
	height:0px;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-color: rgb(224,224,224) rgb(255,255,255) rgb(255,255,255) rgb(224,224,224);
}



/*************** MENU ROW CASCADE AREA ***************/
/* positioning and appearance info for the cascading 
arrow to the right of the menu line text (TD element 
column 3) */

/* normal state for all platforms */
.omnisMenuCellCascade, .omnisMenuCellCascade_win32, .omnisMenuCellCascade_hilite_win32
{
	font: menu;
	font-size: 10pt;
	width: 30px;
	padding-right: 10px;
	padding-bottom: 2px;
	text-align: right;
	white-space: nowrap;
}

/* normal state for windows */
.omnisMenuCellCascade_win32
{
	font-family: Dingbats,Arial,Sans-serif;
	border-right: 1px solid rgb(240,240,240);
	border-top: 1px solid rgb(240,240,240);
	border-bottom: 1px solid rgb(240,240,240);
}

/* hilite state for windows */
.omnisMenuCellCascade_hilite_win32
{
	font-family: Dingbats,Arial,Sans-serif;
	border-right: 1px solid rgb(174,207,247);
	border-top: 1px solid rgb(174,207,247);
	border-bottom: 1px solid rgb(174,207,247);
	background-color: rgb(230,237,246);
	-webkit-border-top-right-radius: 4px;
	-webkit-border-bottom-right-radius: 4px;
	-moz-border-radius: 0 4px 4px 0;
	border-radius: 0 4px 4px 0;
	/*filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffd2d9ff,endColorstr=#ffb2b9df);*/
}




