.cssbox {
  width: 0px;
  height: 0px;
  position: fixed;
  overflow: hidden;
  left: 0px;
  top: 0px;
  padding: 0px;
  z-index: 99;
  text-align: center;
  background: rgb(0,0,0);
  background: -moz-radial-gradient(center, ellipse cover, rgba(255,255,255,0.3) 0%, rgba(0,0,0,1) 100%);
  background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,rgba(255,255,255,0.3)), color-stop(100%,rgba(0,0,0,1)));
  background: -webkit-radial-gradient(center, ellipse cover, rgba(255,255,255,0.3) 0%,rgba(0,0,0,1) 100%);
  background: -o-radial-gradient(center, ellipse cover, rgba(255,255,255,0.3) 0%,rgba(0,0,0,1) 100%);
  background: -ms-radial-gradient(center, ellipse cover, rgba(255,255,255,0.3) 0%,rgba(0,0,0,1) 100%);
  background: radial-gradient(center, ellipse cover, rgba(255,255,255,0.3) 0%,rgba(0,0,0,1) 100%);
}

.cssbox > div {
  margin-top: -2.5em;
  position: relative;
  color: rgba(27,54,81,0.8);
  text-shadow: 0px 1px 1px rgba(255,255,255,0.6);
}

.cssbox div p {
  display: inline-block;
  color: #fff;
  padding: 0.5em 1em;
  font-weight: normal;
  text-shadow: 1px 1px 0 rgba(0,0,0,0.6);
  text-align: center;
  background: rgba(1,1,1,0.6);
  border-radius: .3em;
  margin-top: 0.5em;
}

.cssbox a.cssbox-close {
  background: rgba(1,1,1,0.6);
  border-radius: .3em;
  z-index: 1001;
  color: #fff;
  position: absolute;
  top: .5em;
  left: 50%;
  line-height: 2.3em;
  text-align: center;
  width: 4em;
  height: 2.3em;
  overflow: hidden;
  margin-left: -2em;
  opacity: 0;
  filter: alpha(opacity=0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=0)";
  -webkit-box-shadow: 0px 1px 2px rgba(0,0,0,0.3);
  -moz-box-shadow: 0px 1px 2px rgba(0,0,0,0.3);
  box-shadow: 0px 1px 2px rgba(0,0,0,0.3);
}

.cssbox img {
  max-width: 100%;
  height: auto;
  display: block;
  max-height: 100%;
  margin: auto;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=0)";
  -webkit-box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
  -moz-box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
  box-shadow: 0px 2px 7px rgba(0,0,0,0.2);
}

.cssbox-prev,
.cssbox-next {
  border-radius: .3em;
  display: inline-block;
  color: #fff;
  padding: 0.5em 1em;
  font-weight: normal;
  text-shadow: 1px 1px 0 rgba(0,0,0,0.6);
  text-align: center;
  background: rgba(1,1,1,0.6);
  position: absolute;
  top: .5em;
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=80)";
}

.cssbox-prev:hover,
.cssbox-next:hover {
  opacity: 1;
  filter: alpha(opacity=99);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=99)";
}
.cssbox-prev {
  left: .5em;
}
.cssbox-next {
  right: .5em;
}

.cssbox:target {
  width: auto;
  height: auto;
  bottom: 0;
  right: 0;
  padding: 1em 1em 1em 1em;
  z-index: 9999;
}
.cssbox:target img,
.cssbox:target a.cssbox-close {
  opacity: 1;
  filter: alpha(opacity=99);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=99)";
}

/*
  100% Height for Opera as the max-height seems to be ignored, not optimal for large screens
  http://bricss.net/post/11230266445/css-hack-to-target-opera
*/
x:-o-prefocus,
.cssbox img {
  height: 100%;
}
