body { display: flex; flex-direction: row; } #navigation { display: flex; flex-direction: column; height: 100%; width: 48px; } #navigation > :not(#service-buttons) { flex-shrink: 0; } #service-buttons { flex-grow: 1; overflow: hidden auto; } #service-selector { display: block; margin: 0; padding: 0; list-style: none; } #service-selector::-webkit-scrollbar { width: 6px; } #service-selector [draggable] { user-select: none; background-color: rgb(43, 43, 43); } #service-selector [draggable] img { -webkit-user-drag: none; user-drag: none; } #service-selector .drag-target button::after, #service-last-drag-position.drag-target { content: ""; height: 4px; transform: translateY(-50%); border: 0; box-sizing: border-box; background: #fff9; } #service-selector .drag-target-self button::after { height: 48px; border: 1px dashed #fff; transform: none; } #service-selector .drag-target button::after { position: absolute; left: 0; top: 0; width: 100%; } #service-selector .drag-target::after { top: 75% !important; } *:focus { outline-color: rgb(118, 93, 176); } #navigation button { position: relative; display: block; width: 48px; height: 48px; margin: 0; padding: 0; color: #fff; border: 0; background: transparent; cursor: pointer; } #navigation button:focus { outline: none; background: #fff3 !important; } #navigation button img { width: 24px; } #navigation button i { font-size: 24px; } #service-selector li { position: relative; } #service-selector li button, #navigation > button { border-radius: 0; } #service-selector li.active button { background-color: #fff2; } #service-selector li.loaded button::before { content: ""; display: block; position: absolute; right: 0; top: 50%; transform: translateY(-50%); height: 75%; border-right: 4px solid #ffffff3e; } /*#service-selector li.loaded::after {*/ /* content: "";*/ /* position: absolute;*/ /* top: 50%;*/ /* right: 2px;*/ /* transform: translateY(-50%);*/ /* width: 4px;*/ /* height: 4px;*/ /* background-color: #fff;*/ /* border-radius: 100%;*/ /*}*/ #navigation button:hover { background-color: #fff3; } #history { display: flex; flex-direction: column; align-items: center; padding: 2px; } #history button, #history .status { display: inline; width: 24px; height: 24px; margin: 2px; padding: initial; font-size: 12px; background: #fff1; color: #fff; cursor: pointer; border-radius: 3px; } #history button i { font-size: inherit; } #history button.disabled { color: #888; border: transparent; background: transparent; cursor: initial; } #history button:focus, #history button:hover { outline: none; border-color: #fff9; } #history button:hover:not(.disabled) { outline: none; background-color: #fff2; } #history button:active:not(.disabled) { background-color: #fff4; } #history #status { background: transparent; } #history #status .unknown, #history #status .file { color: #888; } #history #status .https { color: #009800; } #history #status .http { color: #e20000; } #history #status > :not(.active) { display: none; } #history #status > * .tip { position: absolute; z-index: 1; left: 100%; top: 50%; transform: translateY(-50%); display: none; margin-left: 8px; background-color: #000; padding: 8px; border-radius: 4px; white-space: nowrap; color: #fff; text-transform: none; font-family: sans-serif; font-size: 16px; font-weight: 100; } #history #status > * .tip::before { content: ""; position: absolute; left: 0; top: 50%; transform: translate(-100%, -50%); display: inline-block; width: 0; height: 0; border: 0 solid transparent; border-top-width: 4px; border-bottom-width: 4px; border-right: 7px solid black; } #history #status:focus > * .tip { display: block; } #navigation #add-button:not(:hover) { opacity: 0.75; } #services { position: relative; flex-grow: 1; } #services > *:not(.loader):not(#url-preview) { height: 100%; } #services > :not(.active):not(.loader):not(#url-preview) { display: none; } #services > .loader { width: 64px; height: 64px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: -1; } #url-preview { position: absolute; bottom: 0; left: 0; display: block; padding: 2px 5px 1px 5px; max-width: 48%; overflow: hidden; text-overflow: ellipsis; font-family: monospace; border-width: 1px 1px 0 0; border-color: #232323; border-style: solid; border-radius: 0 5px 0 0; background: #2b2b2b; opacity: 1; transition: 100ms ease opacity; transition-delay: 200ms; } #url-preview.right { left: auto; right: 0; border-width: 1px 0 0 1px; border-radius: 5px 0 0 0; } #url-preview.hidden { opacity: 0; } #services > #empty-message { display: flex !important; position: absolute; z-index: -1; bottom: 0; width: 100%; justify-content: center; align-items: center; } #services > .loader:not(.hidden) ~ #empty-message { display: none !important; }