UNPKG

electorrent

Version:

An Electron/Node/AngularJS remote client app for uTorrent server

439 lines (412 loc) 9.29 kB
html, body { overflow: hidden; -webkit-user-select: none; } .wrapper { position: relative; top: 0; height: 100vh; } .main.wrapper { background-color: #F0F0F0; } .wrapper .sidebar, .main-panel { overflow: auto; max-height: 100%; height: 100%; } .wrapper .sidebar { position: absolute; top: 0; bottom: 0; left: 0; width: 260px; display: block; z-index: 1; overflow-x: hidden; border-right: 1px solid #CECECE; } .sidebar + div { position: relative; z-index: 2; float: right; width: calc(100% - 260px); min-height: 100%; overflow: hidden; } .torrent.sidebar { background-color: #FFF; } .sidebar .nav { margin: 0px; padding: 14px; } .sidebar .nav li { font-size: 15px; padding: 15px; margin: 10px; border-radius: 5px; list-style-type: none; cursor: pointer; } .sidebar .nav li.active { background: #F5F5F5 !important; } .sidebar .nav li:hover { background: #F5F5F5 !important; } .sidebar .nav + .divider { margin-top: 0; } .sidebar .section { padding: 12px; padding-left: 24px; padding-right: 24px; /*background-color: #F5F5F5;*/ border-top: 1px solid #CECECE; border-bottom: 1px solid #CECECE; font-weight: 700; font-style: normal; } .sidebar .filter.label { margin: 0px; padding: 25px; padding-top: 12px; padding-right: 50px; } .sidebar .filter.label li { margin: 5px; list-style-type: none; cursor: pointer; } .torrent.tag { background color: #F5F5F5; } .torrent.tag .detail { float: right; } .clear.button { float: right; border-radius: 100px !important; margin: -4px; } .main-panel { background: rgba(247, 247, 248, 1); } .main-panel .action.header { white-space: nowrap; height: 50px; padding: 0 7px; background-color: #FFF; line-height: 50px; border-bottom: 1px solid #CECECE; z-index: 1000; overflow: visible !important; } .container > .content { position: absolute; right: 0; left: 0; min-width: 300px; height: calc(100% - 65px); padding: 21px; overflow-y: auto; overflow-x: hidden; } .container > .actions {} .container > .actions.footer { white-space: nowrap; position: absolute; bottom: 0; right: 0; left: 0; height: 65px; padding: 1rem; border-top: 1px solid #CECECE; text-align: right; background-color: #f9fafb; overflow: hidden; } .main-panel .main-content { height: calc(100% - 50px); overflow-x: hidden; /*overflow-y: auto;*/ overflow-y: overlay; /* Chrome scrollbar on top */ } .torrent.table { border-radius: 0; margin: 0; border: none; } .value { padding: 0 .7em; } .sorting.icon { position: absolute; right: 5px; } .ui.table thead th { cursor: default !important; } .torrent.table thead th.sortup, .torrent.table thead th.sortdown { padding-right: 25px !important; } .torrent.table thead th.sortdown i::before { content: "\f078"; /* Arrow down icon */ } .torrent.table thead th.sortup i::before { content: "\f077"; /* Arrow up icon */ } .torrent.table tbody tr { cursor: default; -webkit-user-select: none !important; } .torrent.progress { margin: 0 !important; overflow: hidden; } .torrent.progress label { position: absolute; width: 100%; height: 100%; line-height: 24.5px; text-align: center; z-index: 1; color: rgba(255, 255, 255, .9); font-weight: 700; } .torrent.progress .bar { min-width: 0; border-bottom-right-radius: 0; border-top-right-radius: 0; } .torrent.sort.label { float: right; border-radius: 25px; } .torrent.context.menu { display: none; position: absolute; z-index: 1000; } .torrent.context.menu .ui.vertical.menu { box-shadow: 0 0 50px rgba(0, 0, 0, 0.15); } .overlay { position: absolute; background-color: #F0F0F0; height: 100%; width: 100%; z-index: 10000; } .meta.text { color: #888888; font-style: italic; } .transparent.overlay { background-color: rgba(0, 0, 0, 0.75); } .narrow.column { max-width: 450px; } .ui.stretched.segment { overflow: hidden; position: absolute; display: block; height: auto; bottom: 0; top: 0; left: 0; right: 0; margin: 10vmin; padding: 0px; } ::-webkit-scrollbar { background: none; -webkit-appearance: none; width: 7px; height: 7px; } ::-webkit-scrollbar-thumb { border-radius: 4px; background-color: rgba(0,0,0,.5); -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5); } ::-webkit-scrollbar * { background:transparent; } /*#########################################*/ /* Overlay Animation */ /*#########################################*/ .overlay.ng-hide-add, .overlay.ng-hide-remove { /* this is required as of 1.3x to properly apply all styling in a show/hide animation */ -webkit-transition: 0s cubic-bezier(.24, .78, .35, .99) all; } .overlay.ng-hide-add-active, .overlay.ng-hide-remove-active { /* the transition is defined in the active class */ -webkit-transition: 0.24s cubic-bezier(.24, .78, .35, .99) all; } .overlay.ng-hide-add { opacity: 1; transform: scale(1.0); } .overlay.ng-hide-add.ng-hide-add-active { opacity: 0; transform: scale(1.1); } .overlay.ng-hide-remove { opacity: 0; transform: scale(1.1); } .overlay.ng-hide-remove.ng-hide-remove-active { opacity: 1; transform: scale(1.0); } /*#########################################*/ /* Notifications */ /*#########################################*/ .notifications.container { top: 15px; right: 15px; width: 375px; position: absolute; z-index: 100000; } .notification { margin: 5px; box-shadow: 0 0 20px rgba(0, 0, 0, 0.15); } .ui.negative.message { background-color: #F2B3B3; color: #7A1200; border: none; } .ui.positive.message { background-color: rgb(199, 236, 179); color: #1F5130; border: none; } .notification.ng-enter { -webkit-animation: notification-show 0.24s cubic-bezier(0.175, 0.885, 0.32, 1.27499); } .notification.ng-leave { -webkit-animation: notification-hide .12s cubic-bezier(.34, .07, 1, .2), notification-shrink .24s .12s cubic-bezier(0.5, 0, 0, 1); -webkit-animation-fill-mode: forwards; } @-webkit-keyframes notification-show { 0% { opacity: 0; transform: perspective(350px) translate(0, -30px) rotateX(90deg); } 100% { opacity: 1; transform: perspective(350px) translate(0, 0) rotateX( 0deg); } } @-webkit-keyframes notification-hide { 0% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(.5); } } @-webkit-keyframes notification-shrink { 0% { opacity: 0; max-height: 70px; } 100% { opacity: 0; max-height: 0; } } /*#########################################*/ /* Dropdown Menus */ /*#########################################*/ .dropdown .menu.visible-add-active { -webkit-animation: dropdown-show 0.16s cubic-bezier(0.175, 0.885, 0.32, 1.27499); -webkit-transform-origin: center top; } .dropbox .menu.hidden-add-active { -webkit-animation: dropdown-show 0.16s cubic-bezier(.34, .07, 1, .2); } @-webkit-keyframes dropdown-show { 0% { opacity: 0; transform: perspective(650px) translate(0, -30px); } 100% { opacity: 1; transform: perspective(650px) translate(0, 0); } } @-webkit-keyframes dropdown-hide { 0% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(.5); } } .popup { position: absolute; top: 0; right: 0; left: 0; bottom: 0; z-index: 2000; -webkit-transform-origin: center center; background-color: rgba(255, 255, 255, 0.5); } .popup .content h2 { position: absolute; top: 50%; left: 50%; margin-left: -125px !important; margin-top: -25px !important; -webkit-animation: dragdrop 1s ease-in-out infinite; } .popup.ng-enter { -webkit-animation: dragdrop-in 0.12s ease-out; } .popup.ng-leave { -webkit-animation: dragdrop-out 0.24s cubic-bezier(0.175, 0.885, 0.32, 1.27499); } @-webkit-keyframes dragdrop { 0% { transform: rotateZ(6deg); } 50% { transform: rotateZ(-6deg); } 100% { transform: rotateZ(6deg); } } @-webkit-keyframes dragdrop-in { 0% { opacity: 0; transform: scale(1.2); } 100% { opacity 1; transform: scale(1); } } @-webkit-keyframes dragdrop-out { 0% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(1.2); } }