#comic { position: relative; display: inline-block; outline: 2px solid black; overflow: hidden; user-select: none; .frame { background: white; transition: background-color .5s ease; &:focus { outline: none; } .content { opacity: 1; transition: opacity .5s ease; } &.loading { background: white; .content { opacity: 0; } } } .spinner { position: absolute; left: 50%; top: 45%; width: 50px; height: 52px; margin-left: -30px; margin-top: -26px; background-image: url('../../art/loading.png'); background-size: contain; animation-name: rotate; animation-iteration-count: infinite; animation-timing-function: linear; animation-duration: 2s; transform-origin: 56% 50%; @keyframes rotate { 0% { transform: rotateY(0); } 50% { transform: rotateY(360deg); } 100% { transform: rotateY(0); } } } .spinner-text { font-size: 0; position: absolute; left: 50%; top: 53%; width: 91px; height: 17px; margin-left: -91px / 2; background-image: url('../../art/loading.gif'); background-repeat: no-repeat; } .light { position: absolute; z-index: 200; .handle { position: absolute; transform: translate(-50%, -50%); &.position { width: 40px; height: 44px; background-image: url('../../art/light.png'); background-size: contain; } &.rotate { width: 0; height: 0; background: transparent; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 10px solid red; } &.color { width: 8px; height: 8px; background: black; border: 2px solid black; border-radius: 100%; } } &.selected:before { content: ''; display: block; position: absolute; left: -40px; right: -40px; top: -40px; bottom: -40px; border: 2px solid red; border-radius: 100%; opacity: .75; } } .tools { position: absolute; right: 0; z-index: 100; button { display: block; width: 40px; height: 40px; padding: 0; margin: 10px; box-sizing: content-box; font-size: 0; color: transparent; background: #ddd; background-size: contain; border: 1px solid #333; border-radius: 3px; transition: opacity .15s ease; opacity: .75; &:hover { opacity: 1; } &:disabled { opacity: .25; } &.add-light { background-image: url('../../art/add-light.png'); } &.remove { background-color: #d22; background-image: url('../../art/remove.png'); &:disabled { background-color: #777; } } } } #data { width: 100%; height: 10em; } }