//Global Variables
load = ({
  browser:({
    engine:({trident:'trident',gecko:'gecko',webkit:'webkit',khtml:'khtml',presto:'presto',mobile:'mobile'}),
    hybrid:({qtweb:'qtweb',maxthon:'maxthon',lunascape:'lunascape',netscape:'netscape'})
  })
})
//Cross Browser Selector
function cssBrowserSelector(userAgent) {
  var ua = userAgent.toLowerCase(), is = function(type){ return ua.indexOf(type) > -1 },
  browser = [(!(/opera|webtv/i.test(ua)) && /msie\s(\d)/.test(ua) && !/lunascape\s(\d)/.test(ua)) ? (load.browser.engine.trident + ' ie ie' + RegExp.$1) : 
    is('maxthon') && is('applewebkit/') ? load.browser.engine.webkit + ' ' + load.browser.hybrid.maxthon + (/maxthon\/(\d+)/.test(ua) ? ' ' + load.browser.hybrid.maxthon + RegExp.$1 : '') :
    is('lunascape') && is('msie') ? load.browser.engine.trident + ' ' + load.browser.hybrid.lunascape + (/lunascape\s(\d+)/.test(ua) ? ' ' + load.browser.hybrid.lunascape + RegExp.$1 : '') :
    is('lunascape') && is('gecko/') ? load.browser.engine.gecko + ' ' + load.browser.hybrid.lunascape + (/lunascape\/(\d+)/.test(ua) ? ' ' + load.browser.hybrid.lunascape + RegExp.$1 : '') :
    is('lunascape') && is('applewebkit/') ? load.browser.engine.webkit + ' ' + load.browser.hybrid.lunascape + (/lunascape\/(\d+)/.test(ua) ? ' ' + load.browser.hybrid.lunascape + RegExp.$1 : '') :
    is('navigator') && is('gecko/') ? load.browser.engine.gecko + ' ' + load.browser.hybrid.netscape + (/navigator\/(\d+)/.test(ua) ? ' ' + load.browser.hybrid.netscape + RegExp.$1 : '') :
    is('flock') && is('gecko/') ? load.browser.engine.gecko + ' ' + 'flock' + (/flock\/(\d+)/.test(ua) ? ' ' + 'flock' + RegExp.$1 : '') :
    is('flock') && is('applewebkit/') ? load.browser.engine.webkit + ' ' + 'flock' + (/flock\/(\d+)/.test(ua) ? ' ' + 'flock' + RegExp.$1 : '') :
    is('qtweb') ? load.browser.engine.webkit + ' ' + load.browser.hybrid.qtweb + (/qtweb internet browser\/(\d+)/.test(ua) ? ' ' + load.browser.hybrid.qtweb + RegExp.$1 : '') :
    is('iceweasel') ? load.browser.engine.gecko + ' ' + 'iceweasel' + (/iceweasel\/(\d+)/.test(ua) ? ' ' + 'iceweasel' + RegExp.$1 : '') :
    is('icecat') ? load.browser.engine.gecko + ' ' + 'icecat' + (/icecat\/(\d+)/.test(ua) ? ' ' + 'icecat' + RegExp.$1 : '') :
    is('arora') ? load.browser.engine.webkit + ' ' + 'arora' + (/arora\/(\d+)/.test(ua) ? ' ' + 'arora' + RegExp.$1 : '') :
    is('epiphany') ? load.browser.engine.webkit + ' ' + 'epiphany' + (/epiphany\/(\d+)/.test(ua) ? ' ' + 'epiphany' + RegExp.$1 : '') :
    is('epic') ? load.browser.engine.gecko + ' ' + 'epic' + (/epic\/(\d+)/.test(ua) ? ' ' + 'epic' + RegExp.$1 : '') :
    is('iron') ? load.browser.engine.webkit + ' ' + 'iron' + (/iron\/(\d+)/.test(ua) ? ' ' + 'iron' + RegExp.$1 : '') :
    is('wyzo') ? load.browser.engine.gecko + ' ' + 'wyzo' + (/wyzo\/(\d+)/.test(ua) ? ' ' + 'wyzo' + RegExp.$1 : '') :
    is('seamonkey') ? load.browser.engine.gecko + ' ' + 'seamonkey' + (/seamonkey\/(\d+)/.test(ua) ? ' ' + 'seamonkey' + RegExp.$1 : '') :
    is('firefox/2') ? load.browser.engine.gecko + ' ff ff2' :
    is('firefox/3.5') ? load.browser.engine.gecko + ' ff ff3 ff3_5' :
    is('firefox/3.6') ? load.browser.engine.gecko + ' ff ff3 ff3_6' :
    is('firefox/3') ? load.browser.engine.gecko + ' ff ff3' :
    is('firefox/4') ? load.browser.engine.gecko + ' ff ff4' :
    is('gecko/') ? load.browser.engine.gecko :
    is('opera') ? load.browser.engine.presto + (/version\/(\d+)/.test(ua) ? ' ' + 'opera' + ' ' + 'opera' + RegExp.$1 : (/opera(\s|\/)(\d+)/.test(ua) ? ' ' + 'opera' + ' ' + 'opera' + RegExp.$2 : '')) :
    is('konqueror') ? load.browser.engine.khtml + ' ' + 'konqueror' + (/konqueror\/(\d+)/.test(ua) ? ' ' + 'konqueror' + RegExp.$1 : '') :
    is('blackberry') ? load.browser.engine.mobile + ' blackberry' :
    is('android') ? load.browser.engine.mobile + ' android' :
    is('chrome') ? load.browser.engine.webkit + ' chrome' :
    is('iron') ? load.browser.engine.webkit + ' iron' :
    is('camino') ? load.browser.engine.gecko + ' ' + 'camino' + (/camino\/(\d{1})/.test(ua) ? ' ' + 'camino' + RegExp.$1 : '') :
    is('omniweb') ? load.browser.engine.webkit + ' ' + 'omniweb' + (/omniweb\/(\d{1})/.test(ua) ? ' ' + 'omniweb' + RegExp.$1 : '') :
    is('shiira') ? load.browser.engine.webkit + ' ' + 'shiira' + (/shiira safari\/(\d{1})/.test(ua) ? ' ' + 'shiira' + RegExp.$1 : '') :
    is('safari') ? load.browser.engine.webkit + ' ' + 'safari' + (/safari\/(\d{1})/.test(ua) ? ' ' + 'safari' + RegExp.$1 : '') :
    is('mozilla/') ? load.browser.engine.gecko : '',
    is('j2me') ? load.browser.engine.mobile + ' j2me' :
    is('iphone') ? load.browser.engine.mobile + ' iphone' :
    is('ipod') ? load.browser.engine.mobile + ' ipod' :
    is('ipad') ? load.browser.engine.mobile + ' ipad' :
    is('mac') ? 'mac' :
    is('darwin') ? 'mac' :
    is('webtv') ? 'webtv' :
    is('win') ? 'win' + (is('windows nt 6.0') ? ' vista' : '') :
    is('freebsd') ? 'freebsd' : (is('x11') || is('linux')) ? 'linux' : '', 'js'];
  uaClass = browser.join(' ');
  document.documentElement.className = uaClass;
  return uaClass;
}
cssBrowserSelector(navigator.userAgent);
