/* -moz-user-select */
#boxer * { -moz-user-select:none!important }
#boxer { -moz-user-select:none!important }

/* -ms-transform */
#boxer.mobile .boxer-image { -ms-transform:translate(0,0) }

/* -ms-user-select */
#boxer * { -ms-user-select:none!important }
#boxer { -ms-user-select:none!important }

/* -webkit-animation */
#boxer .boxer-loading:after { -webkit-animation:boxer-loading-spin .75s linear infinite }

/* -webkit-overflow-scrolling */
#boxer.mobile.iframe .boxer-content { -webkit-overflow-scrolling:touch }
#boxer.mobile.inline .boxer-content { -webkit-overflow-scrolling:touch }

/* -webkit-transform */
#boxer.mobile .boxer-image { -webkit-transform:translate(0,0) }
to { -webkit-transform:rotate(360deg) }
to { -webkit-transform:rotate(360deg) }

/* -webkit-transition */
#boxer * { -webkit-transition:none }
#boxer .boxer-close:before { -webkit-transition:color .15s linear }
#boxer .boxer-control { -webkit-transition:opacity .15s linear }
#boxer .boxer-loading { -webkit-transition:opacity .25s linear }
#boxer-overlay { -webkit-transition:opacity .25s linear }
#boxer.animating { -webkit-transition:height .25s ease,width .25s ease,opacity .25s linear,top .25s ease }
#boxer.animating .boxer-container { -webkit-transition:opacity .25s linear .25s }
#boxer.loading .boxer-container { -webkit-transition:opacity .25s linear }
#boxer.mobile .boxer-image { -webkit-transition:none!important }
#boxer.mobile.animated .boxer-image { -webkit-transition:-webkit-transform .25s ease-out!important }

/* -webkit-user-select */
#boxer * { -webkit-user-select:none!important }
#boxer { -webkit-user-select:none!important }

/* animation */
#boxer .boxer-loading:after { animation:boxer-loading-spin .75s linear infinite }

/* background */
#boxer { background:#fff }
#boxer .boxer-close { background:#fff }
#boxer .boxer-container { background:#fff }
#boxer .boxer-content { background:#fff }
#boxer .boxer-control { background:#fff }
#boxer-overlay { background:#000 }
#boxer.mobile { background:#111 }
#boxer.mobile .boxer-close { background:#111 }
#boxer.mobile .boxer-close:hover { background:#111 }
#boxer.mobile .boxer-container { background:#111 }
#boxer.mobile .boxer-control { background:#111 }

/* background-color */
#boxer.mobile .boxer-content { background-color:#111 }
#boxer.mobile .boxer-meta { background-color:#111 }

/* border */
#boxer .boxer-iframe { border:none }
#boxer .boxer-loading:after { border:5px solid transparent }
#boxer .boxer-loading:before { border:5px solid rgba(51,51,51,.25) }

/* border-color */
#boxer.mobile .boxer-loading:before { border-color:rgba(153,153,153,.25) }

/* border-left-color */
#boxer.mobile .boxer-control.next:before { border-left-color:#eee }

/* border-radius */
#boxer { border-radius:3px }
#boxer .boxer-close { border-radius:100% }
#boxer .boxer-control { border-radius:100% }
#boxer .boxer-loading:after { border-radius:110% }
#boxer .boxer-loading:before { border-radius:110% }
#boxer.mobile { border-radius:0 }
#boxer.mobile .boxer-close { border-radius:0 }
#boxer.mobile .boxer-close:hover { border-radius:0 }
#boxer.mobile .boxer-control { border-radius:0 }

/* border-right-color */
#boxer.mobile .boxer-control.previous:before { border-right-color:#eee }

/* border-top-color */
#boxer .boxer-loading:after { border-top-color:#333 }
#boxer.mobile .boxer-loading:after { border-top-color:#999 }

/* bottom */
#boxer .boxer-close:before { bottom:0 }
#boxer .boxer-loading { bottom:0 }
#boxer .boxer-loading:after { bottom:0 }
#boxer .boxer-loading:before { bottom:0 }
#boxer-overlay { bottom:0 }
#boxer.fixed { bottom:0 }
#boxer.mobile { bottom:0 }
#boxer.mobile .boxer-meta { bottom:0 }

/* box-shadow */
#boxer { box-shadow:0 0 25px #000 }
#boxer .boxer-control { box-shadow:0 0 5px rgba(0,0,0,.25) }
#boxer.mobile .boxer-control { box-shadow:none }

/* box-sizing */
#boxer * { box-sizing:border-box }
#boxer { box-sizing:border-box }
#boxer :after { box-sizing:border-box }
#boxer :before { box-sizing:border-box }

/* clear */
#boxer .boxer-meta { clear:both }

/* color */
#boxer .boxer-caption p { color:#666 }
#boxer .boxer-close:before { color:#333 }
#boxer .boxer-control { color:#666666 }
#boxer .boxer-error p { color:#900 }
#boxer .boxer-position { color:#999 }
#boxer.mobile .boxer-caption p { color:#eee }
#boxer.mobile .boxer-close:before { color:#ccc }
#boxer.mobile .boxer-close:hover:before { color:#ccc }
#boxer.mobile .boxer-position { color:#999 }

/* content */
#boxer .boxer-close:before { content:"\00d7" }
#boxer .boxer-loading:after { content:'' }
#boxer .boxer-loading:before { content:'' }

/* cursor */
#boxer .boxer-close { cursor:pointer }
#boxer .boxer-control { cursor:pointer }
.no-touch #boxer.mobile .boxer-control.disabled { cursor:default!important }
.no-touch #boxer.mobile:hover .boxer-control.disabled { cursor:default!important }
.no-touch #boxer:hover .boxer-control.disabled { cursor:default!important }

/* display */
#boxer .boxer-close { display:block }
#boxer .boxer-close:before { display:block }
#boxer .boxer-control { display:block }
#boxer .boxer-loading { display:block }
#boxer .boxer-loading:after { display:block }
#boxer .boxer-loading:before { display:block }

/* float */
#boxer .boxer-iframe { float:left }
#boxer .boxer-image { float:left }

/* font-size */
#boxer .boxer-caption p { font-size:14px }
#boxer .boxer-close:before { font-size:22px }
#boxer .boxer-control { font-size:small }
#boxer .boxer-error p { font-size:14px }
#boxer .boxer-position { font-size:12px }
#boxer.mobile .boxer-caption p { font-size:14px }
#boxer.mobile .boxer-close:before { font-size:28px }
#boxer.mobile .boxer-close:hover:before { font-size:28px }
#boxer.mobile .boxer-position { font-size:12px }

/* font-weight */
#boxer .boxer-close:before { font-weight:700 }
#boxer.mobile .boxer-close:before { font-weight:700 }
#boxer.mobile .boxer-close:hover:before { font-weight:700 }

/* height */
#boxer { height:200px }
#boxer .boxer-close { height:30px }
#boxer .boxer-container { height:100% }
#boxer .boxer-control { height:40px }
#boxer .boxer-iframe { height:100% }
#boxer .boxer-loading { height:50px }
#boxer .boxer-loading:after { height:100% }
#boxer .boxer-loading:before { height:100% }
#boxer .boxer-video { height:100% }
#boxer-overlay { height:100% }
#boxer.mobile { height:100% }
#boxer.mobile .boxer-close { height:40px }
#boxer.mobile .boxer-close:hover { height:40px }
#boxer.mobile .boxer-control { height:100% }

/* left */
#boxer { left:0 }
#boxer .boxer-close:before { left:0 }
#boxer .boxer-control.previous { right:20px }
#boxer .boxer-loading { left:0 }
#boxer .boxer-loading:after { left:0 }
#boxer .boxer-loading:before { left:0 }
#boxer-overlay { left:0 }
#boxer.mobile { left:0 }
#boxer.mobile .boxer-control.previous { right:0 }
#boxer.mobile .boxer-meta { left:0 }

/* line-height */
#boxer .boxer-close:before { line-height:30px }
#boxer .boxer-control { line-height:40px }
#boxer.mobile .boxer-close:before { line-height:40px }
#boxer.mobile .boxer-close:hover:before { line-height:40px }

/* margin */
#boxer { margin:0 auto }
#boxer .boxer-caption p { margin:0 }
#boxer .boxer-close:before { margin:auto }
#boxer .boxer-error p { margin:0 }
#boxer .boxer-loading { margin:auto }
#boxer .boxer-position { margin:0 }
#boxer.fixed { margin:auto }
#boxer.mobile .boxer-caption p { margin:0 }
#boxer.mobile .boxer-position { margin:0 }

/* margin-left */
#boxer .boxer-control { margin-left:auto }
#boxer.mobile .boxer-control.previous:before { margin-right:19px }

/* margin-right */
#boxer .boxer-control { margin-right:auto }
#boxer.mobile .boxer-control.next:before { margin-left:19px }

/* opacity */
#boxer { opacity:0 }
#boxer .boxer-content { opacity:1 }
#boxer .boxer-control { opacity:1 }
#boxer .boxer-control.disabled { opacity:0 }
#boxer .boxer-loading { opacity:0 }
#boxer-overlay { opacity:0 }
#boxer.loading .boxer-container { opacity:0 }
#boxer.loading .boxer-loading { opacity:1 }
#boxer.mobile .boxer-control { opacity:1 }
.boxer-open #boxer { opacity:1 }
.boxer-open #boxer-overlay { opacity:.75 }
.no-touch #boxer .boxer-control { opacity:0 }
.no-touch #boxer.mobile .boxer-control { opacity:1 }
.no-touch #boxer.mobile .boxer-control.disabled { opacity:0 }
.no-touch #boxer.mobile:hover .boxer-control { opacity:1 }
.no-touch #boxer.mobile:hover .boxer-control.disabled { opacity:0 }
.no-touch #boxer:hover .boxer-control { opacity:1 }
.no-touch #boxer:hover .boxer-control.disabled { opacity:0 }

/* overflow */
#boxer .boxer-close { overflow:hidden }
#boxer .boxer-container { overflow:hidden }
#boxer .boxer-content { overflow:hidden }
#boxer .boxer-control { overflow:hidden }
#boxer .boxer-iframe { overflow:auto }
.boxer-lock { overflow:hidden!important }

/* overflow-x */
#boxer.mobile.iframe .boxer-content { overflow-x:hidden }
#boxer.mobile.inline .boxer-content { overflow-x:hidden }

/* overflow-y */
#boxer.mobile.iframe .boxer-content { overflow-y:scroll }
#boxer.mobile.inline .boxer-content { overflow-y:scroll }

/* padding */
#boxer { padding:10px }
#boxer .boxer-caption p { padding:15px }
#boxer .boxer-close { padding:0 }
#boxer .boxer-content { padding:0 }
#boxer .boxer-error p { padding:25px }
#boxer .boxer-meta { padding:10px 0 0 0 }
#boxer .boxer-position { padding:15px 15px 0 15px }
#boxer.inline { padding:30px }
#boxer.mobile { padding:40px 0 0 }
#boxer.mobile .boxer-caption p { padding:0 }
#boxer.mobile .boxer-meta { padding:15px 65px }
#boxer.mobile .boxer-position { padding:0 15px 0 0 }

/* padding-top */
#boxer .boxer-caption.gallery p { padding-top:0 }

/* position */
#boxer { position:absolute }
#boxer .boxer-close { position:absolute }
#boxer .boxer-close:before { position:absolute }
#boxer .boxer-container { position:relative }
#boxer .boxer-control { position:absolute }
#boxer .boxer-loading { position:absolute }
#boxer .boxer-loading:after { position:absolute }
#boxer .boxer-loading:before { position:absolute }
#boxer-overlay { position:fixed }
#boxer.fixed { position:fixed }
#boxer.mobile { position:fixed }
#boxer.mobile .boxer-meta { position:absolute }

/* right */
#boxer { right:0 }
#boxer .boxer-close { right:-7.5px }
#boxer .boxer-close:before { right:0 }
#boxer .boxer-control.next { left:20px }
#boxer .boxer-loading { right:0 }
#boxer .boxer-loading:after { right:0 }
#boxer .boxer-loading:before { right:0 }
#boxer-overlay { right:0 }
#boxer.mobile { right:0 }
#boxer.mobile .boxer-close { right:0 }
#boxer.mobile .boxer-close:hover { right:0 }
#boxer.mobile .boxer-control.next { left:0 }
#boxer.mobile .boxer-meta { right:0 }

/* text-align */
#boxer .boxer-close:before { text-align:center }
#boxer .boxer-control { text-align:center }
#boxer .boxer-error p { text-align:center }

/* text-indent */
#boxer .boxer-close { text-indent:200% }
#boxer .boxer-close:before { text-indent:0 }
.no-opacity #boxer .boxer-close { text-indent:-999px }
.no-opacity #boxer .boxer-control { text-indent:-999px }

/* text-transform */
#boxer .boxer-error p { text-transform:uppercase }

/* top */
#boxer .boxer-close { top:-7.5px }
#boxer .boxer-close:before { top:0 }
#boxer .boxer-control { top:0 }
#boxer .boxer-loading { top:0 }
#boxer .boxer-loading:after { top:0 }
#boxer .boxer-loading:before { top:0 }
#boxer-overlay { top:0 }
#boxer.fixed { top:0 }
#boxer.mobile { top:0 }
#boxer.mobile .boxer-close { top:0 }
#boxer.mobile .boxer-close:hover { top:0 }

/* transform */
#boxer.mobile .boxer-image { transform:translate(0,0) }
to { transform:rotate(360deg) }
to { transform:rotate(360deg) }

/* transition */
#boxer * { transition:none }
#boxer .boxer-close:before { transition:color .15s linear }
#boxer .boxer-control { transition:opacity .15s linear }
#boxer .boxer-loading { transition:opacity .25s linear }
#boxer-overlay { transition:opacity .25s linear }
#boxer.animating { transition:height .25s ease,width .25s ease,opacity .25s linear,top .25s ease }
#boxer.animating .boxer-container { transition:opacity .25s linear .25s }
#boxer.loading .boxer-container { transition:opacity .25s linear }
#boxer.mobile .boxer-image { transition:none!important }
#boxer.mobile.animated .boxer-image { transition:transform .25s ease-out!important }

/* user-select */
#boxer * { user-select:none!important }
#boxer { user-select:none!important }

/* white-space */
#boxer .boxer-close { white-space:nowrap }
#boxer .boxer-control { white-space:nowrap }

/* width */
#boxer { width:200px }
#boxer .boxer-close { width:30px }
#boxer .boxer-container { width:100% }
#boxer .boxer-content { width:100% }
#boxer .boxer-control { width:40px }
#boxer .boxer-error { width:250px }
#boxer .boxer-iframe { width:100% }
#boxer .boxer-loading { width:50px }
#boxer .boxer-loading:after { width:100% }
#boxer .boxer-loading:before { width:100% }
#boxer .boxer-video { width:100% }
#boxer-overlay { width:100% }
#boxer.iframe .boxer-content { width:auto }
#boxer.inline .boxer-content { width:auto }
#boxer.mobile { width:100% }
#boxer.mobile .boxer-close { width:40px }
#boxer.mobile .boxer-close:hover { width:40px }
#boxer.mobile .boxer-control { width:50px }
#boxer.mobile .boxer-meta { width:100% }

/* z-index */
#boxer { z-index:101 }
#boxer .boxer-close { z-index:105 }
#boxer .boxer-container { z-index:103 }
#boxer .boxer-loading { z-index:105 }
#boxer-overlay { z-index:100 }
