var Shadowbox={};
Shadowbox.lib=function(){
	var styleCache={};
	var camelRe=/(-[a-z])/gi;
	var camelFn=function(m,a){ return a.charAt(1).toUpperCase();};
	var toCamel=function(style){
		var camel;
		if(!(camel=styleCache[style])){
			camel=styleCache[style]=style.replace(camelRe,camelFn);}
return camel;};

var view=document.defaultView;
var alphaRe=/alpha\([^\)]*\)/gi;
var setOpacity=function(el,opacity){
	var s=el.style;
	if(window.ActiveXObject){
		s.zoom=1;s.filter=(s.filter||'').replace(alphaRe,'')+(opacity==1?'':' alpha(opacity='+(opacity*100)+')');}
	else{
		s.opacity=opacity;}};
		
return{adapter:'standalone',getStyle:function(){
	return view&&view.getComputedStyle?function(el,style){
		var v,cs,camel;
		if(style=='float')style='cssFloat';
		if(v=el.style[style])return v;
		if(cs=view.getComputedStyle(el,'')){ return cs[toCamel(style)];}
		
return null;}:
function(el,style){
	var v,cs,camel;
	if(style=='opacity'){
		if(typeof el.style.filter=='string'){
			var m=el.style.filter.match(/alpha\(opacity=(.+)\)/i);
			if(m){var fv=parseFloat(m[1]);
			if(!isNaN(fv))return(fv?fv/100:0);}}
		return 1;}
	else if(style=='float'){style='styleFloat';}
var camel=toCamel(style);
if(v=el.style[camel])return v;
if(cs=el.currentStyle)return cs[camel];
return null;};}(),setStyle:function(el,style,value){if(typeof style=='string'){var camel=toCamel(style);if(camel=='opacity'){setOpacity(el,value);}else{el.style[camel]=value;}}else{for(var s in style){this.setStyle(el,s,style[s]);}}},get:function(el){return typeof el=='string'?document.getElementById(el):el;},remove:function(el){el.parentNode.removeChild(el);},getTarget:function(e){var t=e.target?e.target:e.srcElement;return t.nodeType==3?t.parentNode:t;},getPageXY:function(e){var x=e.pageX||(e.clientX+
(document.documentElement.scrollLeft||document.body.scrollLeft));var y=e.pageY||(e.clientY+
(document.documentElement.scrollTop||document.body.scrollTop));return[x,y];},preventDefault:function(e){if(e.preventDefault){e.preventDefault();}else{e.returnValue=false;}},keyCode:function(e){return e.which?e.which:e.keyCode;},addEvent:function(el,name,handler){if(el.addEventListener){el.addEventListener(name,handler,false);}else if(el.attachEvent){el.attachEvent('on'+name,handler);}},removeEvent:function(el,name,handler){if(el.removeEventListener){el.removeEventListener(name,handler,false);}else if(el.detachEvent){el.detachEvent('on'+name,handler);}},append:function(el,html){if(el.insertAdjacentHTML){el.insertAdjacentHTML('BeforeEnd',html);}else if(el.lastChild){var range=el.ownerDocument.createRange();range.setStartAfter(el.lastChild);var frag=range.createContextualFragment(html);el.appendChild(frag);}else{el.innerHTML=html;}}};}();
