html
{
  overflow: hidden; /* IE7 */
}

body
{
  padding: 0;
  margin: 0;
  border: 0;
}

h2
{
  margin: 1em;
  font-family: monospace;
}

#gallery
{
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #111;
}

#gallery a, #gallery a:active, #gallery a:focus
{
  outline: none;
}

#gallery #content
{
  position: absolute;
  top: 0;
  left: 0;
}

#gallery #flash
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}

#gallery #content > img
{
  position: absolute;
}

#gallery #content img.current
{
  box-shadow: 0 0 50px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 0 50px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0 0 50px rgba(0, 0, 0, 0.5);
  behavior: url(PIE.htc);
}

#gallery #content #header
{
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  background: rgba(0, 0, 0, 0.7);
  font-family: sans-serif;
  padding: 0.5em;
}

#gallery #content #header img
{
  vertical-align: middle;
}

#gallery #content #header a
{
  text-decoration: none;
  color: #fff;
}

#gallery #content #header a:hover
{
  text-decoration: underline;
}

#gallery #content #left:after
{
  content: "";
  position: absolute;
  left: 0;
  width: 5%;
  top: 0;
  height: 100%;
  background: url(left.png) no-repeat;
  background-position: center;
  opacity: 0.3;
  filter: alpha(opacity=30);
}

#gallery #content #right:after
{
  content: "";
  position: absolute;
  right: 0;
  width: 5%;
  top: 0;
  height: 100%;
  background: url(right.png) no-repeat;
  background-position: center;
  opacity: 0.3;
  filter: alpha(opacity=30);
}

#gallery #content #left:hover:after,
#gallery #content #right:hover:after
{
  opacity: 0.6;
  filter: alpha(opacity=60);
}

#gallery #list
{
  position: absolute;
  right: 0;
  top: 0;
  background: rgba(255, 255, 255, 0.1);
  overflow-y: scroll;
  overflow-x: hidden;
  text-align: center;

  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  behavior: url(PIE.htc);
}

#gallery #list:focus
{
  outline: 0;
}

#gallery #list .thumb
{
  display: inline-block;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 5px 5px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5);
  behavior: url(PIE.htc);
}

#gallery #list .thumb a
{
  display: block;
  position: relative;
  border: 2px solid #111
}

#gallery #list .thumb.current a
{
  border: 2px solid #f00;
}

#gallery #list .thumb a:hover,
#gallery #list .thumb a:focus
{
  border: 2px solid #fff;
}

#gallery #list .thumb.current a:hover,
#gallery #list .thumb.current a:focus
{
  border: 2px solid #f00;
}

#gallery #list .thumb img
{
  display: block;
  padding: 0px;
}

#gallery #list .thumb.pano-w .ovr
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(cut-left.png) top left repeat-y, url(cut-right.png) repeat-y top right;
}

#gallery #list .thumb.pano-h .ovr
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(cut-left.png) top left repeat-x, url(cut-right.png) repeat-x bottom left;
}

#gallery #list .thumb.movie .ovr
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(cut-mov.png) top left repeat-y, url(cut-mov.png) top right repeat-y;
}
