From 57a48ec787a0cf4c1fd7cfa0aad30eca30a7468a Mon Sep 17 00:00:00 2001 From: John Furrow Date: Fri, 19 Feb 2016 23:58:53 -0800 Subject: [PATCH] Handle uploaded files better --- client/source/sass/components/_dropzone.scss | 35 +++++++++++- .../components/modals/AddTorrentsByFile.js | 25 ++++++--- server/assets/app.js | 2 +- server/assets/style.css | 33 +++++++++++- server/assets/style.css.map | 2 +- server/models/client.js | 53 +++++++++++++++++++ 6 files changed, 138 insertions(+), 12 deletions(-) diff --git a/client/source/sass/components/_dropzone.scss b/client/source/sass/components/_dropzone.scss index a96f9885..268ba606 100644 --- a/client/source/sass/components/_dropzone.scss +++ b/client/source/sass/components/_dropzone.scss @@ -76,13 +76,19 @@ $dropzone--file--icon--fill: #adbfce; &__selected-files { @extend .textbox; @extend .textbox.is-fulfilled; + border-radius: 4px 4px 0 0 ; font-size: 0.8em; padding: $spacing-unit * 1/2; width: 100%; + & + .dropzone { + border-radius: 0 0 4px 4px; + border-top: none; + } + &__file { - display: block; text-align: left; + white-space: nowrap; .icon { display: inline-block; @@ -102,4 +108,31 @@ $dropzone--file--icon--fill: #adbfce; } } } + + &__file { + display: flex; + width: 100%; + + &__item { + flex: 1 0 auto; + + &--icon { + flex: 0 0 auto; + } + + &--file-name { + flex: 1 1 auto; + overflow: hidden; + text-overflow: ellipsis; + } + + &--remove-icon { + cursor: pointer; + } + } + + .icon { + + } + } } diff --git a/client/source/scripts/components/modals/AddTorrentsByFile.js b/client/source/scripts/components/modals/AddTorrentsByFile.js index 2eb39253..a42f87e2 100644 --- a/client/source/scripts/components/modals/AddTorrentsByFile.js +++ b/client/source/scripts/components/modals/AddTorrentsByFile.js @@ -80,8 +80,7 @@ export default class AddTorrents extends React.Component { let dropzoneClasses = classnames('form__dropzone dropzone', { 'is-fulfilled': this.state.files && this.state.files.length > 0 }); - - let content = ( + let dropzoneContent = ( @@ -94,27 +93,39 @@ export default class AddTorrents extends React.Component { ); + let fileContent = null; if (this.state.files && this.state.files.length > 0) { let files = this.state.files.map((file, index) => { return ( -
  • - - {file.name} - +
  • + + + + + {file.name}{file.name} + +
  • ); }); - content = ( + fileContent = ( ); } + let content = ( +
    + {fileContent} + {dropzoneContent} +
    + ); + return content; } diff --git a/server/assets/app.js b/server/assets/app.js index c4d24ed1..1adc9a8b 100644 --- a/server/assets/app.js +++ b/server/assets/app.js @@ -1076,7 +1076,7 @@ /* 172 */ /***/ function(module, exports, __webpack_require__) { - eval("'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; desc = parent = undefined; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar _classnames = __webpack_require__(171);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _reactDropzone = __webpack_require__(173);\n\nvar _reactDropzone2 = _interopRequireDefault(_reactDropzone);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _AddTorrentsDestination = __webpack_require__(175);\n\nvar _AddTorrentsDestination2 = _interopRequireDefault(_AddTorrentsDestination);\n\nvar _iconsClose = __webpack_require__(201);\n\nvar _iconsClose2 = _interopRequireDefault(_iconsClose);\n\nvar _iconsFile = __webpack_require__(203);\n\nvar _iconsFile2 = _interopRequireDefault(_iconsFile);\n\nvar _iconsFiles = __webpack_require__(204);\n\nvar _iconsFiles2 = _interopRequireDefault(_iconsFiles);\n\nvar _ModalActions = __webpack_require__(205);\n\nvar _ModalActions2 = _interopRequireDefault(_ModalActions);\n\nvar _actionsTorrentActions = __webpack_require__(186);\n\nvar _actionsTorrentActions2 = _interopRequireDefault(_actionsTorrentActions);\n\nvar METHODS_TO_BIND = ['handleAddTorrents', 'handleDestinationChange', 'handleFileDrop', 'handleFileRemove'];\n\nvar AddTorrents = (function (_React$Component) {\n _inherits(AddTorrents, _React$Component);\n\n function AddTorrents() {\n var _this = this;\n\n _classCallCheck(this, AddTorrents);\n\n _get(Object.getPrototypeOf(AddTorrents.prototype), 'constructor', this).call(this);\n\n this.state = {\n isAddingTorrents: false,\n files: null\n };\n\n METHODS_TO_BIND.forEach(function (method) {\n _this[method] = _this[method].bind(_this);\n });\n }\n\n _createClass(AddTorrents, [{\n key: 'handleFileDrop',\n value: function handleFileDrop(files) {\n this.setState({ files: files });\n }\n }, {\n key: 'handleFileRemove',\n value: function handleFileRemove(fileIndex) {\n var files = this.state.files;\n files.splice(fileIndex, 1);\n\n this.setState({ files: files });\n }\n }, {\n key: 'handleFilesClick',\n value: function handleFilesClick(event) {\n event.stopPropagation();\n }\n }, {\n key: 'getActions',\n value: function getActions() {\n var icon = null;\n var primaryButtonText = 'Add Torrent';\n\n if (this.state.isAddingTorrents) {\n icon = _react2['default'].createElement(LoadingIndicatorDots, { viewBox: '0 0 32 32' });\n primaryButtonText = 'Adding...';\n }\n\n return [{\n clickHandler: null,\n content: 'Cancel',\n triggerDismiss: true,\n type: 'secondary'\n }, {\n clickHandler: this.handleAddTorrents,\n content: _react2['default'].createElement(\n 'span',\n null,\n icon,\n primaryButtonText\n ),\n supplementalClassName: icon != null ? 'has-icon' : '',\n triggerDismiss: false,\n type: 'primary'\n }];\n }\n }, {\n key: 'getModalContent',\n value: function getModalContent() {\n var _this2 = this;\n\n var dropzoneClasses = (0, _classnames2['default'])('form__dropzone dropzone', {\n 'is-fulfilled': this.state.files && this.state.files.length > 0\n });\n\n var content = _react2['default'].createElement(\n _reactDropzone2['default'],\n { activeClassName: 'dropzone--is-dragging',\n className: dropzoneClasses, ref: 'dropzone',\n onDrop: this.handleFileDrop, disablePreview: true },\n _react2['default'].createElement(\n 'div',\n { className: 'dropzone__copy' },\n _react2['default'].createElement(\n 'div',\n { className: 'dropzone__icon' },\n _react2['default'].createElement(_iconsFiles2['default'], null)\n ),\n 'Drop some files here, ',\n _react2['default'].createElement(\n 'span',\n { className: 'dropzone__browse-button' },\n 'or click to browse'\n ),\n '.'\n )\n );\n\n if (this.state.files && this.state.files.length > 0) {\n var files = this.state.files.map(function (file, index) {\n return _react2['default'].createElement(\n 'li',\n { className: 'dropzone__selected-files__file', key: index },\n _react2['default'].createElement(_iconsFile2['default'], null),\n file.name,\n _react2['default'].createElement(\n 'span',\n { onClick: _this2.handleFileRemove.bind(_this2, index) },\n _react2['default'].createElement(_iconsClose2['default'], null)\n )\n );\n });\n\n content = _react2['default'].createElement(\n 'ul',\n { className: 'dropzone__selected-files', onClick: this.handleFilesClick },\n files\n );\n }\n\n return content;\n }\n }, {\n key: 'handleAddTorrents',\n value: function handleAddTorrents() {\n if (!this.state.files || this.state.files.length === 0) {\n return;\n }\n\n var fileData = new FormData();\n\n this.state.files.forEach(function (file) {\n fileData.append('torrents', file);\n });\n\n fileData.append('destination', this.state.destination);\n\n _actionsTorrentActions2['default'].addTorrentsByFiles(fileData, this.state.destination);\n }\n }, {\n key: 'handleDestinationChange',\n value: function handleDestinationChange(destination) {\n this.setState({ destination: destination });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2['default'].createElement(\n 'div',\n { className: 'form' },\n _react2['default'].createElement(\n 'div',\n { className: 'form__row' },\n _react2['default'].createElement(\n 'label',\n { className: 'form__label' },\n 'Torrents'\n ),\n this.getModalContent()\n ),\n _react2['default'].createElement(_AddTorrentsDestination2['default'], { onChange: this.handleDestinationChange }),\n _react2['default'].createElement(_ModalActions2['default'], { actions: this.getActions(), dismiss: this.props.dismiss })\n );\n }\n }]);\n\n return AddTorrents;\n})(_react2['default'].Component);\n\nexports['default'] = AddTorrents;\nmodule.exports = exports['default'];//@ sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9jbGllbnQvc291cmNlL3NjcmlwdHMvY29tcG9uZW50cy9tb2RhbHMvQWRkVG9ycmVudHNCeUZpbGUuanM/MWI4NyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRCxpQ0FBaUMsMkNBQTJDLGdCQUFnQixrQkFBa0IsT0FBTywyQkFBMkIsd0RBQXdELGdDQUFnQyx1REFBdUQsMkRBQTJELEVBQUUsRUFBRSx5REFBeUQscUVBQXFFLDZEQUE2RCxvQkFBb0IsR0FBRyxFQUFFOztBQUVsakIsdUNBQXVDLG1CQUFtQiw0QkFBNEIsaURBQWlELGdCQUFnQixrREFBa0QsOERBQThELDBCQUEwQiw0Q0FBNEMsdUJBQXVCLGtCQUFrQixFQUFFLE9BQU8sYUFBYSxnQkFBZ0IsZ0JBQWdCLGVBQWUsMkJBQTJCLG9CQUFvQixFQUFFLEVBQUUsNEJBQTRCLG1CQUFtQixFQUFFLE9BQU8sdUJBQXVCLDRCQUE0QixrQkFBa0IsRUFBRSw4QkFBOEIsRUFBRSxFQUFFOztBQUUvb0Isc0NBQXNDLHVDQUF1QyxrQkFBa0I7O0FBRS9GLGlEQUFpRCwwQ0FBMEMsMERBQTBELEVBQUU7O0FBRXZKLDBDQUEwQywrREFBK0QscUdBQXFHLEVBQUUseUVBQXlFLGVBQWUseUVBQXlFLEVBQUUsRUFBRSx1SEFBdUg7O0FBRTVlOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixlQUFlO0FBQ3BDO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHFCQUFxQixlQUFlO0FBQ3BDO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsdUVBQXVFLHVCQUF1QjtBQUM5RjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPOztBQUVQO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSw2REFBNkQ7QUFDN0Q7QUFDQTtBQUNBLFdBQVcsOEJBQThCO0FBQ3pDO0FBQ0E7QUFDQSxhQUFhLDhCQUE4QjtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSx1Q0FBdUM7QUFDcEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEsMERBQTBEO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSx1REFBdUQ7QUFDdEU7QUFDQTtBQUNBO0FBQ0EsU0FBUzs7QUFFVDtBQUNBO0FBQ0EsV0FBVyx3RUFBd0U7QUFDbkY7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsT0FBTzs7QUFFUDs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQSxxQkFBcUIsMkJBQTJCO0FBQ2hEO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUyxvQkFBb0I7QUFDN0I7QUFDQTtBQUNBLFdBQVcseUJBQXlCO0FBQ3BDO0FBQ0E7QUFDQSxhQUFhLDJCQUEyQjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBLCtFQUErRSx5Q0FBeUM7QUFDeEgscUVBQXFFLDBEQUEwRDtBQUMvSDtBQUNBO0FBQ0EsR0FBRzs7QUFFSDtBQUNBLENBQUM7O0FBRUQ7QUFDQSIsImZpbGUiOiIxNzIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHtcbiAgdmFsdWU6IHRydWVcbn0pO1xuXG52YXIgX2NyZWF0ZUNsYXNzID0gKGZ1bmN0aW9uICgpIHsgZnVuY3Rpb24gZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmICgndmFsdWUnIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOyBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7IH0gfSByZXR1cm4gZnVuY3Rpb24gKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgeyBpZiAocHJvdG9Qcm9wcykgZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOyBpZiAoc3RhdGljUHJvcHMpIGRlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IsIHN0YXRpY1Byb3BzKTsgcmV0dXJuIENvbnN0cnVjdG9yOyB9OyB9KSgpO1xuXG52YXIgX2dldCA9IGZ1bmN0aW9uIGdldChfeCwgX3gyLCBfeDMpIHsgdmFyIF9hZ2FpbiA9IHRydWU7IF9mdW5jdGlvbjogd2hpbGUgKF9hZ2FpbikgeyB2YXIgb2JqZWN0ID0gX3gsIHByb3BlcnR5ID0gX3gyLCByZWNlaXZlciA9IF94MzsgX2FnYWluID0gZmFsc2U7IGlmIChvYmplY3QgPT09IG51bGwpIG9iamVjdCA9IEZ1bmN0aW9uLnByb3RvdHlwZTsgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG9iamVjdCwgcHJvcGVydHkpOyBpZiAoZGVzYyA9PT0gdW5kZWZpbmVkKSB7IHZhciBwYXJlbnQgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2Yob2JqZWN0KTsgaWYgKHBhcmVudCA9PT0gbnVsbCkgeyByZXR1cm4gdW5kZWZpbmVkOyB9IGVsc2UgeyBfeCA9IHBhcmVudDsgX3gyID0gcHJvcGVydHk7IF94MyA9IHJlY2VpdmVyOyBfYWdhaW4gPSB0cnVlOyBkZXNjID0gcGFyZW50ID0gdW5kZWZpbmVkOyBjb250aW51ZSBfZnVuY3Rpb247IH0gfSBlbHNlIGlmICgndmFsdWUnIGluIGRlc2MpIHsgcmV0dXJuIGRlc2MudmFsdWU7IH0gZWxzZSB7IHZhciBnZXR0ZXIgPSBkZXNjLmdldDsgaWYgKGdldHRlciA9PT0gdW5kZWZpbmVkKSB7IHJldHVybiB1bmRlZmluZWQ7IH0gcmV0dXJuIGdldHRlci5jYWxsKHJlY2VpdmVyKTsgfSB9IH07XG5cbmZ1bmN0aW9uIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQob2JqKSB7IHJldHVybiBvYmogJiYgb2JqLl9fZXNNb2R1bGUgPyBvYmogOiB7ICdkZWZhdWx0Jzogb2JqIH07IH1cblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKCdDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24nKTsgfSB9XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykgeyBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09ICdmdW5jdGlvbicgJiYgc3VwZXJDbGFzcyAhPT0gbnVsbCkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKCdTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvbiwgbm90ICcgKyB0eXBlb2Ygc3VwZXJDbGFzcyk7IH0gc3ViQ2xhc3MucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShzdXBlckNsYXNzICYmIHN1cGVyQ2xhc3MucHJvdG90eXBlLCB7IGNvbnN0cnVjdG9yOiB7IHZhbHVlOiBzdWJDbGFzcywgZW51bWVyYWJsZTogZmFsc2UsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfSB9KTsgaWYgKHN1cGVyQ2xhc3MpIE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5zZXRQcm90b3R5cGVPZihzdWJDbGFzcywgc3VwZXJDbGFzcykgOiBzdWJDbGFzcy5fX3Byb3RvX18gPSBzdXBlckNsYXNzOyB9XG5cbnZhciBfY2xhc3NuYW1lcyA9IHJlcXVpcmUoJ2NsYXNzbmFtZXMnKTtcblxudmFyIF9jbGFzc25hbWVzMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX2NsYXNzbmFtZXMpO1xuXG52YXIgX3JlYWN0RHJvcHpvbmUgPSByZXF1aXJlKCdyZWFjdC1kcm9wem9uZScpO1xuXG52YXIgX3JlYWN0RHJvcHpvbmUyID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChfcmVhY3REcm9wem9uZSk7XG5cbnZhciBfcmVhY3QgPSByZXF1aXJlKCdyZWFjdCcpO1xuXG52YXIgX3JlYWN0MiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX3JlYWN0KTtcblxudmFyIF9BZGRUb3JyZW50c0Rlc3RpbmF0aW9uID0gcmVxdWlyZSgnLi9BZGRUb3JyZW50c0Rlc3RpbmF0aW9uJyk7XG5cbnZhciBfQWRkVG9ycmVudHNEZXN0aW5hdGlvbjIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9BZGRUb3JyZW50c0Rlc3RpbmF0aW9uKTtcblxudmFyIF9pY29uc0Nsb3NlID0gcmVxdWlyZSgnLi4vaWNvbnMvQ2xvc2UnKTtcblxudmFyIF9pY29uc0Nsb3NlMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX2ljb25zQ2xvc2UpO1xuXG52YXIgX2ljb25zRmlsZSA9IHJlcXVpcmUoJy4uL2ljb25zL0ZpbGUnKTtcblxudmFyIF9pY29uc0ZpbGUyID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChfaWNvbnNGaWxlKTtcblxudmFyIF9pY29uc0ZpbGVzID0gcmVxdWlyZSgnLi4vaWNvbnMvRmlsZXMnKTtcblxudmFyIF9pY29uc0ZpbGVzMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX2ljb25zRmlsZXMpO1xuXG52YXIgX01vZGFsQWN0aW9ucyA9IHJlcXVpcmUoJy4vTW9kYWxBY3Rpb25zJyk7XG5cbnZhciBfTW9kYWxBY3Rpb25zMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX01vZGFsQWN0aW9ucyk7XG5cbnZhciBfYWN0aW9uc1RvcnJlbnRBY3Rpb25zID0gcmVxdWlyZSgnLi4vLi4vYWN0aW9ucy9Ub3JyZW50QWN0aW9ucycpO1xuXG52YXIgX2FjdGlvbnNUb3JyZW50QWN0aW9uczIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9hY3Rpb25zVG9ycmVudEFjdGlvbnMpO1xuXG52YXIgTUVUSE9EU19UT19CSU5EID0gWydoYW5kbGVBZGRUb3JyZW50cycsICdoYW5kbGVEZXN0aW5hdGlvbkNoYW5nZScsICdoYW5kbGVGaWxlRHJvcCcsICdoYW5kbGVGaWxlUmVtb3ZlJ107XG5cbnZhciBBZGRUb3JyZW50cyA9IChmdW5jdGlvbiAoX1JlYWN0JENvbXBvbmVudCkge1xuICBfaW5oZXJpdHMoQWRkVG9ycmVudHMsIF9SZWFjdCRDb21wb25lbnQpO1xuXG4gIGZ1bmN0aW9uIEFkZFRvcnJlbnRzKCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgQWRkVG9ycmVudHMpO1xuXG4gICAgX2dldChPYmplY3QuZ2V0UHJvdG90eXBlT2YoQWRkVG9ycmVudHMucHJvdG90eXBlKSwgJ2NvbnN0cnVjdG9yJywgdGhpcykuY2FsbCh0aGlzKTtcblxuICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICBpc0FkZGluZ1RvcnJlbnRzOiBmYWxzZSxcbiAgICAgIGZpbGVzOiBudWxsXG4gICAgfTtcblxuICAgIE1FVEhPRFNfVE9fQklORC5mb3JFYWNoKGZ1bmN0aW9uIChtZXRob2QpIHtcbiAgICAgIF90aGlzW21ldGhvZF0gPSBfdGhpc1ttZXRob2RdLmJpbmQoX3RoaXMpO1xuICAgIH0pO1xuICB9XG5cbiAgX2NyZWF0ZUNsYXNzKEFkZFRvcnJlbnRzLCBbe1xuICAgIGtleTogJ2hhbmRsZUZpbGVEcm9wJyxcbiAgICB2YWx1ZTogZnVuY3Rpb24gaGFuZGxlRmlsZURyb3AoZmlsZXMpIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBmaWxlczogZmlsZXMgfSk7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiAnaGFuZGxlRmlsZVJlbW92ZScsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGhhbmRsZUZpbGVSZW1vdmUoZmlsZUluZGV4KSB7XG4gICAgICB2YXIgZmlsZXMgPSB0aGlzLnN0YXRlLmZpbGVzO1xuICAgICAgZmlsZXMuc3BsaWNlKGZpbGVJbmRleCwgMSk7XG5cbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBmaWxlczogZmlsZXMgfSk7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiAnaGFuZGxlRmlsZXNDbGljaycsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGhhbmRsZUZpbGVzQ2xpY2soZXZlbnQpIHtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogJ2dldEFjdGlvbnMnLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBnZXRBY3Rpb25zKCkge1xuICAgICAgdmFyIGljb24gPSBudWxsO1xuICAgICAgdmFyIHByaW1hcnlCdXR0b25UZXh0ID0gJ0FkZCBUb3JyZW50JztcblxuICAgICAgaWYgKHRoaXMuc3RhdGUuaXNBZGRpbmdUb3JyZW50cykge1xuICAgICAgICBpY29uID0gX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoTG9hZGluZ0luZGljYXRvckRvdHMsIHsgdmlld0JveDogJzAgMCAzMiAzMicgfSk7XG4gICAgICAgIHByaW1hcnlCdXR0b25UZXh0ID0gJ0FkZGluZy4uLic7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBbe1xuICAgICAgICBjbGlja0hhbmRsZXI6IG51bGwsXG4gICAgICAgIGNvbnRlbnQ6ICdDYW5jZWwnLFxuICAgICAgICB0cmlnZ2VyRGlzbWlzczogdHJ1ZSxcbiAgICAgICAgdHlwZTogJ3NlY29uZGFyeSdcbiAgICAgIH0sIHtcbiAgICAgICAgY2xpY2tIYW5kbGVyOiB0aGlzLmhhbmRsZUFkZFRvcnJlbnRzLFxuICAgICAgICBjb250ZW50OiBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAnc3BhbicsXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICBpY29uLFxuICAgICAgICAgIHByaW1hcnlCdXR0b25UZXh0XG4gICAgICAgICksXG4gICAgICAgIHN1cHBsZW1lbnRhbENsYXNzTmFtZTogaWNvbiAhPSBudWxsID8gJ2hhcy1pY29uJyA6ICcnLFxuICAgICAgICB0cmlnZ2VyRGlzbWlzczogZmFsc2UsXG4gICAgICAgIHR5cGU6ICdwcmltYXJ5J1xuICAgICAgfV07XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiAnZ2V0TW9kYWxDb250ZW50JyxcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0TW9kYWxDb250ZW50KCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHZhciBkcm9wem9uZUNsYXNzZXMgPSAoMCwgX2NsYXNzbmFtZXMyWydkZWZhdWx0J10pKCdmb3JtX19kcm9wem9uZSBkcm9wem9uZScsIHtcbiAgICAgICAgJ2lzLWZ1bGZpbGxlZCc6IHRoaXMuc3RhdGUuZmlsZXMgJiYgdGhpcy5zdGF0ZS5maWxlcy5sZW5ndGggPiAwXG4gICAgICB9KTtcblxuICAgICAgdmFyIGNvbnRlbnQgPSBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgX3JlYWN0RHJvcHpvbmUyWydkZWZhdWx0J10sXG4gICAgICAgIHsgYWN0aXZlQ2xhc3NOYW1lOiAnZHJvcHpvbmUtLWlzLWRyYWdnaW5nJyxcbiAgICAgICAgICBjbGFzc05hbWU6IGRyb3B6b25lQ2xhc3NlcywgcmVmOiAnZHJvcHpvbmUnLFxuICAgICAgICAgIG9uRHJvcDogdGhpcy5oYW5kbGVGaWxlRHJvcCwgZGlzYWJsZVByZXZpZXc6IHRydWUgfSxcbiAgICAgICAgX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgJ2RpdicsXG4gICAgICAgICAgeyBjbGFzc05hbWU6ICdkcm9wem9uZV9fY29weScgfSxcbiAgICAgICAgICBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICdkaXYnLFxuICAgICAgICAgICAgeyBjbGFzc05hbWU6ICdkcm9wem9uZV9faWNvbicgfSxcbiAgICAgICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KF9pY29uc0ZpbGVzMlsnZGVmYXVsdCddLCBudWxsKVxuICAgICAgICAgICksXG4gICAgICAgICAgJ0Ryb3Agc29tZSBmaWxlcyBoZXJlLCAnLFxuICAgICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgJ3NwYW4nLFxuICAgICAgICAgICAgeyBjbGFzc05hbWU6ICdkcm9wem9uZV9fYnJvd3NlLWJ1dHRvbicgfSxcbiAgICAgICAgICAgICdvciBjbGljayB0byBicm93c2UnXG4gICAgICAgICAgKSxcbiAgICAgICAgICAnLidcbiAgICAgICAgKVxuICAgICAgKTtcblxuICAgICAgaWYgKHRoaXMuc3RhdGUuZmlsZXMgJiYgdGhpcy5zdGF0ZS5maWxlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHZhciBmaWxlcyA9IHRoaXMuc3RhdGUuZmlsZXMubWFwKGZ1bmN0aW9uIChmaWxlLCBpbmRleCkge1xuICAgICAgICAgIHJldHVybiBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICdsaScsXG4gICAgICAgICAgICB7IGNsYXNzTmFtZTogJ2Ryb3B6b25lX19zZWxlY3RlZC1maWxlc19fZmlsZScsIGtleTogaW5kZXggfSxcbiAgICAgICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KF9pY29uc0ZpbGUyWydkZWZhdWx0J10sIG51bGwpLFxuICAgICAgICAgICAgZmlsZS5uYW1lLFxuICAgICAgICAgICAgX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICdzcGFuJyxcbiAgICAgICAgICAgICAgeyBvbkNsaWNrOiBfdGhpczIuaGFuZGxlRmlsZVJlbW92ZS5iaW5kKF90aGlzMiwgaW5kZXgpIH0sXG4gICAgICAgICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KF9pY29uc0Nsb3NlMlsnZGVmYXVsdCddLCBudWxsKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnRlbnQgPSBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAndWwnLFxuICAgICAgICAgIHsgY2xhc3NOYW1lOiAnZHJvcHpvbmVfX3NlbGVjdGVkLWZpbGVzJywgb25DbGljazogdGhpcy5oYW5kbGVGaWxlc0NsaWNrIH0sXG4gICAgICAgICAgZmlsZXNcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbnRlbnQ7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiAnaGFuZGxlQWRkVG9ycmVudHMnLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBoYW5kbGVBZGRUb3JyZW50cygpIHtcbiAgICAgIGlmICghdGhpcy5zdGF0ZS5maWxlcyB8fCB0aGlzLnN0YXRlLmZpbGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHZhciBmaWxlRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgICB0aGlzLnN0YXRlLmZpbGVzLmZvckVhY2goZnVuY3Rpb24gKGZpbGUpIHtcbiAgICAgICAgZmlsZURhdGEuYXBwZW5kKCd0b3JyZW50cycsIGZpbGUpO1xuICAgICAgfSk7XG5cbiAgICAgIGZpbGVEYXRhLmFwcGVuZCgnZGVzdGluYXRpb24nLCB0aGlzLnN0YXRlLmRlc3RpbmF0aW9uKTtcblxuICAgICAgX2FjdGlvbnNUb3JyZW50QWN0aW9uczJbJ2RlZmF1bHQnXS5hZGRUb3JyZW50c0J5RmlsZXMoZmlsZURhdGEsIHRoaXMuc3RhdGUuZGVzdGluYXRpb24pO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogJ2hhbmRsZURlc3RpbmF0aW9uQ2hhbmdlJyxcbiAgICB2YWx1ZTogZnVuY3Rpb24gaGFuZGxlRGVzdGluYXRpb25DaGFuZ2UoZGVzdGluYXRpb24pIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBkZXN0aW5hdGlvbjogZGVzdGluYXRpb24gfSk7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiAncmVuZGVyJyxcbiAgICB2YWx1ZTogZnVuY3Rpb24gcmVuZGVyKCkge1xuICAgICAgcmV0dXJuIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KFxuICAgICAgICAnZGl2JyxcbiAgICAgICAgeyBjbGFzc05hbWU6ICdmb3JtJyB9LFxuICAgICAgICBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAnZGl2JyxcbiAgICAgICAgICB7IGNsYXNzTmFtZTogJ2Zvcm1fX3JvdycgfSxcbiAgICAgICAgICBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICdsYWJlbCcsXG4gICAgICAgICAgICB7IGNsYXNzTmFtZTogJ2Zvcm1fX2xhYmVsJyB9LFxuICAgICAgICAgICAgJ1RvcnJlbnRzJ1xuICAgICAgICAgICksXG4gICAgICAgICAgdGhpcy5nZXRNb2RhbENvbnRlbnQoKVxuICAgICAgICApLFxuICAgICAgICBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChfQWRkVG9ycmVudHNEZXN0aW5hdGlvbjJbJ2RlZmF1bHQnXSwgeyBvbkNoYW5nZTogdGhpcy5oYW5kbGVEZXN0aW5hdGlvbkNoYW5nZSB9KSxcbiAgICAgICAgX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoX01vZGFsQWN0aW9uczJbJ2RlZmF1bHQnXSwgeyBhY3Rpb25zOiB0aGlzLmdldEFjdGlvbnMoKSwgZGlzbWlzczogdGhpcy5wcm9wcy5kaXNtaXNzIH0pXG4gICAgICApO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBBZGRUb3JyZW50cztcbn0pKF9yZWFjdDJbJ2RlZmF1bHQnXS5Db21wb25lbnQpO1xuXG5leHBvcnRzWydkZWZhdWx0J10gPSBBZGRUb3JyZW50cztcbm1vZHVsZS5leHBvcnRzID0gZXhwb3J0c1snZGVmYXVsdCddO1xuXG5cbi8qKioqKioqKioqKioqKioqKlxuICoqIFdFQlBBQ0sgRk9PVEVSXG4gKiogLi9jbGllbnQvc291cmNlL3NjcmlwdHMvY29tcG9uZW50cy9tb2RhbHMvQWRkVG9ycmVudHNCeUZpbGUuanNcbiAqKiBtb2R1bGUgaWQgPSAxNzJcbiAqKiBtb2R1bGUgY2h1bmtzID0gMFxuICoqLyJdLCJzb3VyY2VSb290IjoiIn0="); + eval("'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; desc = parent = undefined; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar _classnames = __webpack_require__(171);\n\nvar _classnames2 = _interopRequireDefault(_classnames);\n\nvar _reactDropzone = __webpack_require__(173);\n\nvar _reactDropzone2 = _interopRequireDefault(_reactDropzone);\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _AddTorrentsDestination = __webpack_require__(175);\n\nvar _AddTorrentsDestination2 = _interopRequireDefault(_AddTorrentsDestination);\n\nvar _iconsClose = __webpack_require__(201);\n\nvar _iconsClose2 = _interopRequireDefault(_iconsClose);\n\nvar _iconsFile = __webpack_require__(203);\n\nvar _iconsFile2 = _interopRequireDefault(_iconsFile);\n\nvar _iconsFiles = __webpack_require__(204);\n\nvar _iconsFiles2 = _interopRequireDefault(_iconsFiles);\n\nvar _ModalActions = __webpack_require__(205);\n\nvar _ModalActions2 = _interopRequireDefault(_ModalActions);\n\nvar _actionsTorrentActions = __webpack_require__(186);\n\nvar _actionsTorrentActions2 = _interopRequireDefault(_actionsTorrentActions);\n\nvar METHODS_TO_BIND = ['handleAddTorrents', 'handleDestinationChange', 'handleFileDrop', 'handleFileRemove'];\n\nvar AddTorrents = (function (_React$Component) {\n _inherits(AddTorrents, _React$Component);\n\n function AddTorrents() {\n var _this = this;\n\n _classCallCheck(this, AddTorrents);\n\n _get(Object.getPrototypeOf(AddTorrents.prototype), 'constructor', this).call(this);\n\n this.state = {\n isAddingTorrents: false,\n files: null\n };\n\n METHODS_TO_BIND.forEach(function (method) {\n _this[method] = _this[method].bind(_this);\n });\n }\n\n _createClass(AddTorrents, [{\n key: 'handleFileDrop',\n value: function handleFileDrop(files) {\n this.setState({ files: files });\n }\n }, {\n key: 'handleFileRemove',\n value: function handleFileRemove(fileIndex) {\n var files = this.state.files;\n files.splice(fileIndex, 1);\n\n this.setState({ files: files });\n }\n }, {\n key: 'handleFilesClick',\n value: function handleFilesClick(event) {\n event.stopPropagation();\n }\n }, {\n key: 'getActions',\n value: function getActions() {\n var icon = null;\n var primaryButtonText = 'Add Torrent';\n\n if (this.state.isAddingTorrents) {\n icon = _react2['default'].createElement(LoadingIndicatorDots, { viewBox: '0 0 32 32' });\n primaryButtonText = 'Adding...';\n }\n\n return [{\n clickHandler: null,\n content: 'Cancel',\n triggerDismiss: true,\n type: 'secondary'\n }, {\n clickHandler: this.handleAddTorrents,\n content: _react2['default'].createElement(\n 'span',\n null,\n icon,\n primaryButtonText\n ),\n supplementalClassName: icon != null ? 'has-icon' : '',\n triggerDismiss: false,\n type: 'primary'\n }];\n }\n }, {\n key: 'getModalContent',\n value: function getModalContent() {\n var _this2 = this;\n\n var dropzoneClasses = (0, _classnames2['default'])('form__dropzone dropzone', {\n 'is-fulfilled': this.state.files && this.state.files.length > 0\n });\n var dropzoneContent = _react2['default'].createElement(\n _reactDropzone2['default'],\n { activeClassName: 'dropzone--is-dragging',\n className: dropzoneClasses, ref: 'dropzone',\n onDrop: this.handleFileDrop, disablePreview: true },\n _react2['default'].createElement(\n 'div',\n { className: 'dropzone__copy' },\n _react2['default'].createElement(\n 'div',\n { className: 'dropzone__icon' },\n _react2['default'].createElement(_iconsFiles2['default'], null)\n ),\n 'Drop some files here, ',\n _react2['default'].createElement(\n 'span',\n { className: 'dropzone__browse-button' },\n 'or click to browse'\n ),\n '.'\n )\n );\n var fileContent = null;\n\n if (this.state.files && this.state.files.length > 0) {\n var files = this.state.files.map(function (file, index) {\n return _react2['default'].createElement(\n 'li',\n { className: 'dropzone__selected-files__file dropzone__file', key: index },\n _react2['default'].createElement(\n 'span',\n { className: 'dropzone__file__item dropzone__file__item--icon' },\n _react2['default'].createElement(_iconsFile2['default'], null)\n ),\n _react2['default'].createElement(\n 'span',\n { className: 'dropzone__file__item dropzone__file__item--file-name' },\n file.name,\n file.name\n ),\n _react2['default'].createElement(\n 'span',\n { className: 'dropzone__file__item dropzone__file__item--icon dropzone__file__item--remove-icon', onClick: _this2.handleFileRemove.bind(_this2, index) },\n _react2['default'].createElement(_iconsClose2['default'], null)\n )\n );\n });\n\n fileContent = _react2['default'].createElement(\n 'ul',\n { className: 'dropzone__selected-files', onClick: this.handleFilesClick },\n files\n );\n }\n\n var content = _react2['default'].createElement(\n 'div',\n null,\n fileContent,\n dropzoneContent\n );\n\n return content;\n }\n }, {\n key: 'handleAddTorrents',\n value: function handleAddTorrents() {\n if (!this.state.files || this.state.files.length === 0) {\n return;\n }\n\n var fileData = new FormData();\n\n this.state.files.forEach(function (file) {\n fileData.append('torrents', file);\n });\n\n fileData.append('destination', this.state.destination);\n\n _actionsTorrentActions2['default'].addTorrentsByFiles(fileData, this.state.destination);\n }\n }, {\n key: 'handleDestinationChange',\n value: function handleDestinationChange(destination) {\n this.setState({ destination: destination });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2['default'].createElement(\n 'div',\n { className: 'form' },\n _react2['default'].createElement(\n 'div',\n { className: 'form__row' },\n _react2['default'].createElement(\n 'label',\n { className: 'form__label' },\n 'Torrents'\n ),\n this.getModalContent()\n ),\n _react2['default'].createElement(_AddTorrentsDestination2['default'], { onChange: this.handleDestinationChange }),\n _react2['default'].createElement(_ModalActions2['default'], { actions: this.getActions(), dismiss: this.props.dismiss })\n );\n }\n }]);\n\n return AddTorrents;\n})(_react2['default'].Component);\n\nexports['default'] = AddTorrents;\nmodule.exports = exports['default'];//@ sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9jbGllbnQvc291cmNlL3NjcmlwdHMvY29tcG9uZW50cy9tb2RhbHMvQWRkVG9ycmVudHNCeUZpbGUuanM/MWI4NyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRCxpQ0FBaUMsMkNBQTJDLGdCQUFnQixrQkFBa0IsT0FBTywyQkFBMkIsd0RBQXdELGdDQUFnQyx1REFBdUQsMkRBQTJELEVBQUUsRUFBRSx5REFBeUQscUVBQXFFLDZEQUE2RCxvQkFBb0IsR0FBRyxFQUFFOztBQUVsakIsdUNBQXVDLG1CQUFtQiw0QkFBNEIsaURBQWlELGdCQUFnQixrREFBa0QsOERBQThELDBCQUEwQiw0Q0FBNEMsdUJBQXVCLGtCQUFrQixFQUFFLE9BQU8sYUFBYSxnQkFBZ0IsZ0JBQWdCLGVBQWUsMkJBQTJCLG9CQUFvQixFQUFFLEVBQUUsNEJBQTRCLG1CQUFtQixFQUFFLE9BQU8sdUJBQXVCLDRCQUE0QixrQkFBa0IsRUFBRSw4QkFBOEIsRUFBRSxFQUFFOztBQUUvb0Isc0NBQXNDLHVDQUF1QyxrQkFBa0I7O0FBRS9GLGlEQUFpRCwwQ0FBMEMsMERBQTBELEVBQUU7O0FBRXZKLDBDQUEwQywrREFBK0QscUdBQXFHLEVBQUUseUVBQXlFLGVBQWUseUVBQXlFLEVBQUUsRUFBRSx1SEFBdUg7O0FBRTVlOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixlQUFlO0FBQ3BDO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBOztBQUVBLHFCQUFxQixlQUFlO0FBQ3BDO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsdUVBQXVFLHVCQUF1QjtBQUM5RjtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLDZEQUE2RDtBQUM3RDtBQUNBO0FBQ0EsV0FBVyw4QkFBOEI7QUFDekM7QUFDQTtBQUNBLGFBQWEsOEJBQThCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLHVDQUF1QztBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLHlFQUF5RTtBQUN0RjtBQUNBO0FBQ0EsZUFBZSwrREFBK0Q7QUFDOUU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLG9FQUFvRTtBQUNuRjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFBZSx1SkFBdUo7QUFDdEs7QUFDQTtBQUNBO0FBQ0EsU0FBUzs7QUFFVDtBQUNBO0FBQ0EsV0FBVyx3RUFBd0U7QUFDbkY7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLE9BQU87O0FBRVA7O0FBRUE7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0EscUJBQXFCLDJCQUEyQjtBQUNoRDtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVMsb0JBQW9CO0FBQzdCO0FBQ0E7QUFDQSxXQUFXLHlCQUF5QjtBQUNwQztBQUNBO0FBQ0EsYUFBYSwyQkFBMkI7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrRUFBK0UseUNBQXlDO0FBQ3hILHFFQUFxRSwwREFBMEQ7QUFDL0g7QUFDQTtBQUNBLEdBQUc7O0FBRUg7QUFDQSxDQUFDOztBQUVEO0FBQ0EiLCJmaWxlIjoiMTcyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7XG4gIHZhbHVlOiB0cnVlXG59KTtcblxudmFyIF9jcmVhdGVDbGFzcyA9IChmdW5jdGlvbiAoKSB7IGZ1bmN0aW9uIGRlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgeyBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7IHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07IGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTsgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOyBpZiAoJ3ZhbHVlJyBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgZGVzY3JpcHRvci5rZXksIGRlc2NyaXB0b3IpOyB9IH0gcmV0dXJuIGZ1bmN0aW9uIChDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsgaWYgKHByb3RvUHJvcHMpIGRlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTsgaWYgKHN0YXRpY1Byb3BzKSBkZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7IHJldHVybiBDb25zdHJ1Y3RvcjsgfTsgfSkoKTtcblxudmFyIF9nZXQgPSBmdW5jdGlvbiBnZXQoX3gsIF94MiwgX3gzKSB7IHZhciBfYWdhaW4gPSB0cnVlOyBfZnVuY3Rpb246IHdoaWxlIChfYWdhaW4pIHsgdmFyIG9iamVjdCA9IF94LCBwcm9wZXJ0eSA9IF94MiwgcmVjZWl2ZXIgPSBfeDM7IF9hZ2FpbiA9IGZhbHNlOyBpZiAob2JqZWN0ID09PSBudWxsKSBvYmplY3QgPSBGdW5jdGlvbi5wcm90b3R5cGU7IHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihvYmplY3QsIHByb3BlcnR5KTsgaWYgKGRlc2MgPT09IHVuZGVmaW5lZCkgeyB2YXIgcGFyZW50ID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKG9iamVjdCk7IGlmIChwYXJlbnQgPT09IG51bGwpIHsgcmV0dXJuIHVuZGVmaW5lZDsgfSBlbHNlIHsgX3ggPSBwYXJlbnQ7IF94MiA9IHByb3BlcnR5OyBfeDMgPSByZWNlaXZlcjsgX2FnYWluID0gdHJ1ZTsgZGVzYyA9IHBhcmVudCA9IHVuZGVmaW5lZDsgY29udGludWUgX2Z1bmN0aW9uOyB9IH0gZWxzZSBpZiAoJ3ZhbHVlJyBpbiBkZXNjKSB7IHJldHVybiBkZXNjLnZhbHVlOyB9IGVsc2UgeyB2YXIgZ2V0dGVyID0gZGVzYy5nZXQ7IGlmIChnZXR0ZXIgPT09IHVuZGVmaW5lZCkgeyByZXR1cm4gdW5kZWZpbmVkOyB9IHJldHVybiBnZXR0ZXIuY2FsbChyZWNlaXZlcik7IH0gfSB9O1xuXG5mdW5jdGlvbiBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KG9iaikgeyByZXR1cm4gb2JqICYmIG9iai5fX2VzTW9kdWxlID8gb2JqIDogeyAnZGVmYXVsdCc6IG9iaiB9OyB9XG5cbmZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcignQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uJyk7IH0gfVxuXG5mdW5jdGlvbiBfaW5oZXJpdHMoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpIHsgaWYgKHR5cGVvZiBzdXBlckNsYXNzICE9PSAnZnVuY3Rpb24nICYmIHN1cGVyQ2xhc3MgIT09IG51bGwpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcignU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb24sIG5vdCAnICsgdHlwZW9mIHN1cGVyQ2xhc3MpOyB9IHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgeyBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIGVudW1lcmFibGU6IGZhbHNlLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0gfSk7IGlmIChzdXBlckNsYXNzKSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3Quc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpIDogc3ViQ2xhc3MuX19wcm90b19fID0gc3VwZXJDbGFzczsgfVxuXG52YXIgX2NsYXNzbmFtZXMgPSByZXF1aXJlKCdjbGFzc25hbWVzJyk7XG5cbnZhciBfY2xhc3NuYW1lczIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9jbGFzc25hbWVzKTtcblxudmFyIF9yZWFjdERyb3B6b25lID0gcmVxdWlyZSgncmVhY3QtZHJvcHpvbmUnKTtcblxudmFyIF9yZWFjdERyb3B6b25lMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX3JlYWN0RHJvcHpvbmUpO1xuXG52YXIgX3JlYWN0ID0gcmVxdWlyZSgncmVhY3QnKTtcblxudmFyIF9yZWFjdDIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9yZWFjdCk7XG5cbnZhciBfQWRkVG9ycmVudHNEZXN0aW5hdGlvbiA9IHJlcXVpcmUoJy4vQWRkVG9ycmVudHNEZXN0aW5hdGlvbicpO1xuXG52YXIgX0FkZFRvcnJlbnRzRGVzdGluYXRpb24yID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChfQWRkVG9ycmVudHNEZXN0aW5hdGlvbik7XG5cbnZhciBfaWNvbnNDbG9zZSA9IHJlcXVpcmUoJy4uL2ljb25zL0Nsb3NlJyk7XG5cbnZhciBfaWNvbnNDbG9zZTIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9pY29uc0Nsb3NlKTtcblxudmFyIF9pY29uc0ZpbGUgPSByZXF1aXJlKCcuLi9pY29ucy9GaWxlJyk7XG5cbnZhciBfaWNvbnNGaWxlMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQoX2ljb25zRmlsZSk7XG5cbnZhciBfaWNvbnNGaWxlcyA9IHJlcXVpcmUoJy4uL2ljb25zL0ZpbGVzJyk7XG5cbnZhciBfaWNvbnNGaWxlczIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9pY29uc0ZpbGVzKTtcblxudmFyIF9Nb2RhbEFjdGlvbnMgPSByZXF1aXJlKCcuL01vZGFsQWN0aW9ucycpO1xuXG52YXIgX01vZGFsQWN0aW9uczIgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KF9Nb2RhbEFjdGlvbnMpO1xuXG52YXIgX2FjdGlvbnNUb3JyZW50QWN0aW9ucyA9IHJlcXVpcmUoJy4uLy4uL2FjdGlvbnMvVG9ycmVudEFjdGlvbnMnKTtcblxudmFyIF9hY3Rpb25zVG9ycmVudEFjdGlvbnMyID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChfYWN0aW9uc1RvcnJlbnRBY3Rpb25zKTtcblxudmFyIE1FVEhPRFNfVE9fQklORCA9IFsnaGFuZGxlQWRkVG9ycmVudHMnLCAnaGFuZGxlRGVzdGluYXRpb25DaGFuZ2UnLCAnaGFuZGxlRmlsZURyb3AnLCAnaGFuZGxlRmlsZVJlbW92ZSddO1xuXG52YXIgQWRkVG9ycmVudHMgPSAoZnVuY3Rpb24gKF9SZWFjdCRDb21wb25lbnQpIHtcbiAgX2luaGVyaXRzKEFkZFRvcnJlbnRzLCBfUmVhY3QkQ29tcG9uZW50KTtcblxuICBmdW5jdGlvbiBBZGRUb3JyZW50cygpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEFkZFRvcnJlbnRzKTtcblxuICAgIF9nZXQoT2JqZWN0LmdldFByb3RvdHlwZU9mKEFkZFRvcnJlbnRzLnByb3RvdHlwZSksICdjb25zdHJ1Y3RvcicsIHRoaXMpLmNhbGwodGhpcyk7XG5cbiAgICB0aGlzLnN0YXRlID0ge1xuICAgICAgaXNBZGRpbmdUb3JyZW50czogZmFsc2UsXG4gICAgICBmaWxlczogbnVsbFxuICAgIH07XG5cbiAgICBNRVRIT0RTX1RPX0JJTkQuZm9yRWFjaChmdW5jdGlvbiAobWV0aG9kKSB7XG4gICAgICBfdGhpc1ttZXRob2RdID0gX3RoaXNbbWV0aG9kXS5iaW5kKF90aGlzKTtcbiAgICB9KTtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhBZGRUb3JyZW50cywgW3tcbiAgICBrZXk6ICdoYW5kbGVGaWxlRHJvcCcsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGhhbmRsZUZpbGVEcm9wKGZpbGVzKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHsgZmlsZXM6IGZpbGVzIH0pO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogJ2hhbmRsZUZpbGVSZW1vdmUnLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBoYW5kbGVGaWxlUmVtb3ZlKGZpbGVJbmRleCkge1xuICAgICAgdmFyIGZpbGVzID0gdGhpcy5zdGF0ZS5maWxlcztcbiAgICAgIGZpbGVzLnNwbGljZShmaWxlSW5kZXgsIDEpO1xuXG4gICAgICB0aGlzLnNldFN0YXRlKHsgZmlsZXM6IGZpbGVzIH0pO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogJ2hhbmRsZUZpbGVzQ2xpY2snLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBoYW5kbGVGaWxlc0NsaWNrKGV2ZW50KSB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6ICdnZXRBY3Rpb25zJyxcbiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0QWN0aW9ucygpIHtcbiAgICAgIHZhciBpY29uID0gbnVsbDtcbiAgICAgIHZhciBwcmltYXJ5QnV0dG9uVGV4dCA9ICdBZGQgVG9ycmVudCc7XG5cbiAgICAgIGlmICh0aGlzLnN0YXRlLmlzQWRkaW5nVG9ycmVudHMpIHtcbiAgICAgICAgaWNvbiA9IF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KExvYWRpbmdJbmRpY2F0b3JEb3RzLCB7IHZpZXdCb3g6ICcwIDAgMzIgMzInIH0pO1xuICAgICAgICBwcmltYXJ5QnV0dG9uVGV4dCA9ICdBZGRpbmcuLi4nO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gW3tcbiAgICAgICAgY2xpY2tIYW5kbGVyOiBudWxsLFxuICAgICAgICBjb250ZW50OiAnQ2FuY2VsJyxcbiAgICAgICAgdHJpZ2dlckRpc21pc3M6IHRydWUsXG4gICAgICAgIHR5cGU6ICdzZWNvbmRhcnknXG4gICAgICB9LCB7XG4gICAgICAgIGNsaWNrSGFuZGxlcjogdGhpcy5oYW5kbGVBZGRUb3JyZW50cyxcbiAgICAgICAgY29udGVudDogX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgJ3NwYW4nLFxuICAgICAgICAgIG51bGwsXG4gICAgICAgICAgaWNvbixcbiAgICAgICAgICBwcmltYXJ5QnV0dG9uVGV4dFxuICAgICAgICApLFxuICAgICAgICBzdXBwbGVtZW50YWxDbGFzc05hbWU6IGljb24gIT0gbnVsbCA/ICdoYXMtaWNvbicgOiAnJyxcbiAgICAgICAgdHJpZ2dlckRpc21pc3M6IGZhbHNlLFxuICAgICAgICB0eXBlOiAncHJpbWFyeSdcbiAgICAgIH1dO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogJ2dldE1vZGFsQ29udGVudCcsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGdldE1vZGFsQ29udGVudCgpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICB2YXIgZHJvcHpvbmVDbGFzc2VzID0gKDAsIF9jbGFzc25hbWVzMlsnZGVmYXVsdCddKSgnZm9ybV9fZHJvcHpvbmUgZHJvcHpvbmUnLCB7XG4gICAgICAgICdpcy1mdWxmaWxsZWQnOiB0aGlzLnN0YXRlLmZpbGVzICYmIHRoaXMuc3RhdGUuZmlsZXMubGVuZ3RoID4gMFxuICAgICAgfSk7XG4gICAgICB2YXIgZHJvcHpvbmVDb250ZW50ID0gX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgIF9yZWFjdERyb3B6b25lMlsnZGVmYXVsdCddLFxuICAgICAgICB7IGFjdGl2ZUNsYXNzTmFtZTogJ2Ryb3B6b25lLS1pcy1kcmFnZ2luZycsXG4gICAgICAgICAgY2xhc3NOYW1lOiBkcm9wem9uZUNsYXNzZXMsIHJlZjogJ2Ryb3B6b25lJyxcbiAgICAgICAgICBvbkRyb3A6IHRoaXMuaGFuZGxlRmlsZURyb3AsIGRpc2FibGVQcmV2aWV3OiB0cnVlIH0sXG4gICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICdkaXYnLFxuICAgICAgICAgIHsgY2xhc3NOYW1lOiAnZHJvcHpvbmVfX2NvcHknIH0sXG4gICAgICAgICAgX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAnZGl2JyxcbiAgICAgICAgICAgIHsgY2xhc3NOYW1lOiAnZHJvcHpvbmVfX2ljb24nIH0sXG4gICAgICAgICAgICBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChfaWNvbnNGaWxlczJbJ2RlZmF1bHQnXSwgbnVsbClcbiAgICAgICAgICApLFxuICAgICAgICAgICdEcm9wIHNvbWUgZmlsZXMgaGVyZSwgJyxcbiAgICAgICAgICBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICdzcGFuJyxcbiAgICAgICAgICAgIHsgY2xhc3NOYW1lOiAnZHJvcHpvbmVfX2Jyb3dzZS1idXR0b24nIH0sXG4gICAgICAgICAgICAnb3IgY2xpY2sgdG8gYnJvd3NlJ1xuICAgICAgICAgICksXG4gICAgICAgICAgJy4nXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgICB2YXIgZmlsZUNvbnRlbnQgPSBudWxsO1xuXG4gICAgICBpZiAodGhpcy5zdGF0ZS5maWxlcyAmJiB0aGlzLnN0YXRlLmZpbGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdmFyIGZpbGVzID0gdGhpcy5zdGF0ZS5maWxlcy5tYXAoZnVuY3Rpb24gKGZpbGUsIGluZGV4KSB7XG4gICAgICAgICAgcmV0dXJuIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgJ2xpJyxcbiAgICAgICAgICAgIHsgY2xhc3NOYW1lOiAnZHJvcHpvbmVfX3NlbGVjdGVkLWZpbGVzX19maWxlIGRyb3B6b25lX19maWxlJywga2V5OiBpbmRleCB9LFxuICAgICAgICAgICAgX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICdzcGFuJyxcbiAgICAgICAgICAgICAgeyBjbGFzc05hbWU6ICdkcm9wem9uZV9fZmlsZV9faXRlbSBkcm9wem9uZV9fZmlsZV9faXRlbS0taWNvbicgfSxcbiAgICAgICAgICAgICAgX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoX2ljb25zRmlsZTJbJ2RlZmF1bHQnXSwgbnVsbClcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgJ3NwYW4nLFxuICAgICAgICAgICAgICB7IGNsYXNzTmFtZTogJ2Ryb3B6b25lX19maWxlX19pdGVtIGRyb3B6b25lX19maWxlX19pdGVtLS1maWxlLW5hbWUnIH0sXG4gICAgICAgICAgICAgIGZpbGUubmFtZSxcbiAgICAgICAgICAgICAgZmlsZS5uYW1lXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICdzcGFuJyxcbiAgICAgICAgICAgICAgeyBjbGFzc05hbWU6ICdkcm9wem9uZV9fZmlsZV9faXRlbSBkcm9wem9uZV9fZmlsZV9faXRlbS0taWNvbiBkcm9wem9uZV9fZmlsZV9faXRlbS0tcmVtb3ZlLWljb24nLCBvbkNsaWNrOiBfdGhpczIuaGFuZGxlRmlsZVJlbW92ZS5iaW5kKF90aGlzMiwgaW5kZXgpIH0sXG4gICAgICAgICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KF9pY29uc0Nsb3NlMlsnZGVmYXVsdCddLCBudWxsKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGZpbGVDb250ZW50ID0gX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgJ3VsJyxcbiAgICAgICAgICB7IGNsYXNzTmFtZTogJ2Ryb3B6b25lX19zZWxlY3RlZC1maWxlcycsIG9uQ2xpY2s6IHRoaXMuaGFuZGxlRmlsZXNDbGljayB9LFxuICAgICAgICAgIGZpbGVzXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHZhciBjb250ZW50ID0gX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICdkaXYnLFxuICAgICAgICBudWxsLFxuICAgICAgICBmaWxlQ29udGVudCxcbiAgICAgICAgZHJvcHpvbmVDb250ZW50XG4gICAgICApO1xuXG4gICAgICByZXR1cm4gY29udGVudDtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6ICdoYW5kbGVBZGRUb3JyZW50cycsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGhhbmRsZUFkZFRvcnJlbnRzKCkge1xuICAgICAgaWYgKCF0aGlzLnN0YXRlLmZpbGVzIHx8IHRoaXMuc3RhdGUuZmlsZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdmFyIGZpbGVEYXRhID0gbmV3IEZvcm1EYXRhKCk7XG5cbiAgICAgIHRoaXMuc3RhdGUuZmlsZXMuZm9yRWFjaChmdW5jdGlvbiAoZmlsZSkge1xuICAgICAgICBmaWxlRGF0YS5hcHBlbmQoJ3RvcnJlbnRzJywgZmlsZSk7XG4gICAgICB9KTtcblxuICAgICAgZmlsZURhdGEuYXBwZW5kKCdkZXN0aW5hdGlvbicsIHRoaXMuc3RhdGUuZGVzdGluYXRpb24pO1xuXG4gICAgICBfYWN0aW9uc1RvcnJlbnRBY3Rpb25zMlsnZGVmYXVsdCddLmFkZFRvcnJlbnRzQnlGaWxlcyhmaWxlRGF0YSwgdGhpcy5zdGF0ZS5kZXN0aW5hdGlvbik7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiAnaGFuZGxlRGVzdGluYXRpb25DaGFuZ2UnLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBoYW5kbGVEZXN0aW5hdGlvbkNoYW5nZShkZXN0aW5hdGlvbikge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7IGRlc3RpbmF0aW9uOiBkZXN0aW5hdGlvbiB9KTtcbiAgICB9XG4gIH0sIHtcbiAgICBrZXk6ICdyZW5kZXInLFxuICAgIHZhbHVlOiBmdW5jdGlvbiByZW5kZXIoKSB7XG4gICAgICByZXR1cm4gX3JlYWN0MlsnZGVmYXVsdCddLmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICdkaXYnLFxuICAgICAgICB7IGNsYXNzTmFtZTogJ2Zvcm0nIH0sXG4gICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICdkaXYnLFxuICAgICAgICAgIHsgY2xhc3NOYW1lOiAnZm9ybV9fcm93JyB9LFxuICAgICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgJ2xhYmVsJyxcbiAgICAgICAgICAgIHsgY2xhc3NOYW1lOiAnZm9ybV9fbGFiZWwnIH0sXG4gICAgICAgICAgICAnVG9ycmVudHMnXG4gICAgICAgICAgKSxcbiAgICAgICAgICB0aGlzLmdldE1vZGFsQ29udGVudCgpXG4gICAgICAgICksXG4gICAgICAgIF9yZWFjdDJbJ2RlZmF1bHQnXS5jcmVhdGVFbGVtZW50KF9BZGRUb3JyZW50c0Rlc3RpbmF0aW9uMlsnZGVmYXVsdCddLCB7IG9uQ2hhbmdlOiB0aGlzLmhhbmRsZURlc3RpbmF0aW9uQ2hhbmdlIH0pLFxuICAgICAgICBfcmVhY3QyWydkZWZhdWx0J10uY3JlYXRlRWxlbWVudChfTW9kYWxBY3Rpb25zMlsnZGVmYXVsdCddLCB7IGFjdGlvbnM6IHRoaXMuZ2V0QWN0aW9ucygpLCBkaXNtaXNzOiB0aGlzLnByb3BzLmRpc21pc3MgfSlcbiAgICAgICk7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIEFkZFRvcnJlbnRzO1xufSkoX3JlYWN0MlsnZGVmYXVsdCddLkNvbXBvbmVudCk7XG5cbmV4cG9ydHNbJ2RlZmF1bHQnXSA9IEFkZFRvcnJlbnRzO1xubW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzWydkZWZhdWx0J107XG5cblxuLyoqKioqKioqKioqKioqKioqXG4gKiogV0VCUEFDSyBGT09URVJcbiAqKiAuL2NsaWVudC9zb3VyY2Uvc2NyaXB0cy9jb21wb25lbnRzL21vZGFscy9BZGRUb3JyZW50c0J5RmlsZS5qc1xuICoqIG1vZHVsZSBpZCA9IDE3MlxuICoqIG1vZHVsZSBjaHVua3MgPSAwXG4gKiovIl0sInNvdXJjZVJvb3QiOiIifQ=="); /***/ }, /* 173 */ diff --git a/server/assets/style.css b/server/assets/style.css index 65913204..6485b0b1 100644 --- a/server/assets/style.css +++ b/server/assets/style.css @@ -1196,12 +1196,16 @@ body { color: #258de5; text-decoration: underline; } .dropzone__selected-files { + border-radius: 4px 4px 0 0; font-size: 0.8em; padding: 12.5px; width: 100%; } + .dropzone__selected-files + .dropzone { + border-radius: 0 0 4px 4px; + border-top: none; } .dropzone__selected-files__file { - display: block; - text-align: left; } + text-align: left; + white-space: nowrap; } .dropzone__selected-files__file .icon { display: inline-block; fill: #adbfce; @@ -1215,6 +1219,31 @@ body { margin-right: 0; vertical-align: middle; width: 8px; } + .dropzone__file { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + width: 100%; } + .dropzone__file__item { + -webkit-box-flex: 1; + -webkit-flex: 1 0 auto; + -ms-flex: 1 0 auto; + flex: 1 0 auto; } + .dropzone__file__item--icon { + -webkit-box-flex: 0; + -webkit-flex: 0 0 auto; + -ms-flex: 0 0 auto; + flex: 0 0 auto; } + .dropzone__file__item--file-name { + -webkit-box-flex: 1; + -webkit-flex: 1 1 auto; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + overflow: hidden; + text-overflow: ellipsis; } + .dropzone__file__item--remove-icon { + cursor: pointer; } .floating-action__button { background: #fff; diff --git a/server/assets/style.css.map b/server/assets/style.css.map index 2715dcec..544a5451 100644 --- a/server/assets/style.css.map +++ b/server/assets/style.css.map @@ -1 +1 @@ -{"version":3,"sources":["style.css","../../../node_modules/inuit-defaults/_settings.defaults.scss","../../../node_modules/inuit-normalize/_generic.normalize.scss","tools/_variables.scss","base/_typography.scss","../../../node_modules/inuit-reset/_generic.reset.scss","../../../node_modules/inuit-box-sizing/_generic.box-sizing.scss","../../../node_modules/inuit-page/_base.page.scss","tools/_reset.scss","base/_animations.scss","base/_form-elements.scss","tools/_colors.scss","base/_layout.scss","base/_main.scss","components/_action-bar.scss","components/_application-content.scss","components/_badge.scss","components/_client-stats.scss","components/_directory-tree.scss","components/_dropdown.scss","components/_dropzone.scss","components/_floating-action.scss","components/_icons.scss","components/_loading-indicator.scss","components/_modals.scss","components/_priority-meter.scss","components/_progress-bar.scss","components/_scrollbars.scss","components/_sidebar.scss","components/_sidebar-filter.scss","components/_textbox-repeater.scss","components/_torrent-details-panel.scss","components/_torrents.scss","components/_transfer-data.scss"],"names":[],"mappings":"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","file":"style.css","sourcesContent":["@charset \"UTF-8\";\n/*!\n * inuitcss, by @csswizardry\n *\n * github.com/inuitcss | inuitcss.com\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n/**\n * 1. Set default font family to sans-serif.\n * 2. Prevent iOS and IE text size adjust after device orientation change,\n * without disabling user zoom.\n */\n@import url(http://fonts.googleapis.com/css?family=Roboto:400italic,700italic,300,700,300italic,400);\n@import url(\"http://fonts.googleapis.com/css?family=Roboto:500,400italic,300,700,400\");\nhtml {\n font-family: sans-serif;\n /* 1 */\n -ms-text-size-adjust: 100%;\n /* 2 */\n -webkit-text-size-adjust: 100%;\n /* 2 */ }\n\n/**\n * Remove default margin.\n */\nbody {\n margin: 0; }\n\n/* HTML5 display definitions\n ========================================================================== */\n/**\n * Correct `block` display not defined for any HTML5 element in IE 8/9.\n * Correct `block` display not defined for `details` or `summary` in IE 10/11\n * and Firefox.\n * Correct `block` display not defined for `main` in IE 11.\n */\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block; }\n\n/**\n * 1. Correct `inline-block` display not defined in IE 8/9.\n * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n */\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n /* 1 */\n vertical-align: baseline;\n /* 2 */ }\n\n/**\n * Prevent modern browsers from displaying `audio` without controls.\n * Remove excess height in iOS 5 devices.\n */\naudio:not([controls]) {\n display: none;\n height: 0; }\n\n/**\n * Address `[hidden]` styling not present in IE 8/9/10.\n * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n */\n[hidden],\ntemplate {\n display: none; }\n\n/* Links\n ========================================================================== */\n/**\n * Remove the gray background color from active links in IE 10.\n */\na {\n background-color: transparent; }\n\n/**\n * Improve readability of focused elements when they are also in an\n * active/hover state.\n */\na:active,\na:hover {\n outline: 0; }\n\n/* Text-level semantics\n ========================================================================== */\n/**\n * Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n */\nabbr[title] {\n border-bottom: 1px dotted; }\n\n/**\n * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n */\nb,\nstrong {\n font-weight: bold; }\n\n/**\n * Address styling not present in Safari and Chrome.\n */\ndfn {\n font-style: italic; }\n\n/**\n * Address variable `h1` font-size and margin within `section` and `article`\n * contexts in Firefox 4+, Safari, and Chrome.\n */\nh1 {\n font-size: 2em;\n margin: 0.67em 0; }\n\n/**\n * Address styling not present in IE 8/9.\n */\nmark {\n background: #ff0;\n color: #000; }\n\n/**\n * Address inconsistent and variable font size in all browsers.\n */\nsmall {\n font-size: 80%; }\n\n/**\n * Prevent `sub` and `sup` affecting `line-height` in all browsers.\n */\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline; }\n\nsup {\n top: -0.5em; }\n\nsub {\n bottom: -0.25em; }\n\n/* Embedded content\n ========================================================================== */\n/**\n * Remove border when inside `a` element in IE 8/9/10.\n */\nimg {\n border: 0; }\n\n/**\n * Correct overflow not hidden in IE 9/10/11.\n */\nsvg:not(:root) {\n overflow: hidden; }\n\n/* Grouping content\n ========================================================================== */\n/**\n * Address margin not present in IE 8/9 and Safari.\n */\nfigure {\n margin: 1em 40px; }\n\n/**\n * Address differences between Firefox and other browsers.\n */\nhr {\n box-sizing: content-box;\n height: 0; }\n\n/**\n * Contain overflow in all browsers.\n */\npre {\n overflow: auto; }\n\n/**\n * Address odd `em`-unit font size rendering in all browsers.\n */\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em; }\n\n/* Forms\n ========================================================================== */\n/**\n * Known limitation: by default, Chrome and Safari on OS X allow very limited\n * styling of `select`, unless a `border` property is set.\n */\n/**\n * 1. Correct color not being inherited.\n * Known issue: affects color of disabled elements.\n * 2. Correct font properties not being inherited.\n * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n /* 1 */\n font: inherit;\n /* 2 */\n margin: 0;\n /* 3 */ }\n\n/**\n * Address `overflow` set to `hidden` in IE 8/9/10/11.\n */\nbutton {\n overflow: visible; }\n\n/**\n * Address inconsistent `text-transform` inheritance for `button` and `select`.\n * All other form control elements do not inherit `text-transform` values.\n * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n * Correct `select` style inheritance in Firefox.\n */\nbutton,\nselect {\n text-transform: none; }\n\n/**\n * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n * and `video` controls.\n * 2. Correct inability to style clickable `input` types in iOS.\n * 3. Improve usability and consistency of cursor style between image-type\n * `input` and others.\n */\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n /* 2 */\n cursor: pointer;\n /* 3 */ }\n\n/**\n * Re-set default cursor for disabled elements.\n */\nbutton[disabled],\nhtml input[disabled] {\n cursor: default; }\n\n/**\n * Remove inner padding and border in Firefox 4+.\n */\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0; }\n\n/**\n * Address Firefox 4+ setting `line-height` on `input` using `!important` in\n * the UA stylesheet.\n */\ninput {\n line-height: normal; }\n\n/**\n * It's recommended that you don't attempt to style these elements.\n * Firefox's implementation doesn't respect box-sizing, padding, or width.\n *\n * 1. Address box sizing set to `content-box` in IE 8/9/10.\n * 2. Remove excess padding in IE 8/9/10.\n */\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n /* 1 */\n padding: 0;\n /* 2 */ }\n\n/**\n * Fix the cursor style for Chrome's increment/decrement buttons. For certain\n * `font-size` values of the `input`, it causes the cursor style of the\n * decrement button to change from `default` to `text`.\n */\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto; }\n\n/**\n * 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n */\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n /* 1 */\n box-sizing: content-box;\n /* 2 */ }\n\n/**\n * Remove inner padding and search cancel button in Safari and Chrome on OS X.\n * Safari (but not Chrome) clips the cancel button when the search input has\n * padding (and `textfield` appearance).\n */\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none; }\n\n/**\n * Define consistent border, margin, and padding.\n */\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em; }\n\n/**\n * 1. Correct `color` not being inherited in IE 8/9/10/11.\n * 2. Remove padding so people aren't caught out if they zero out fieldsets.\n */\nlegend {\n border: 0;\n /* 1 */\n padding: 0;\n /* 2 */ }\n\n/**\n * Remove default vertical scrollbar in IE 8/9/10/11.\n */\ntextarea {\n overflow: auto; }\n\n/**\n * Don't inherit the `font-weight` (applied by a rule above).\n * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n */\noptgroup {\n font-weight: bold; }\n\n/* Tables\n ========================================================================== */\n/**\n * Remove most spacing between table cells.\n */\ntable {\n border-collapse: collapse;\n border-spacing: 0; }\n\ntd,\nth {\n padding: 0; }\n\n/*------------------------------------* #RESET\n\\*------------------------------------*/\n/**\n * As well as using normalize.css, it is often advantageous to remove all\n * margins from certain elements.\n */\nbody,\nh1, h2, h3, h4, h5, h6,\np, blockquote, pre,\ndl, dd, ol, ul,\nform, fieldset, legend,\nfigure,\ntable, th, td, caption,\nhr {\n margin: 0;\n padding: 0; }\n\n/**\n * Give a help cursor to elements that give extra info on `:hover`.\n */\nabbr[title],\ndfn[title] {\n cursor: help; }\n\n/**\n * Remove underlines from potentially troublesome elements.\n */\nu,\nins {\n text-decoration: none; }\n\n/**\n * Apply faux underlines to inserted text via `border-bottom`.\n */\nins {\n border-bottom: 1px solid; }\n\n/*------------------------------------* #BOX-SIZING\n\\*------------------------------------*/\n/**\n * Set the global `box-sizing` state to `border-box`.\n *\n * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice\n * paulirish.com/2012/box-sizing-border-box-ftw\n */\nhtml {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n*, *:before, *:after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n\n/*------------------------------------* #PAGE\n\\*------------------------------------*/\n/**\n * High-, page-level styling.\n *\n * 1. Set the default `font-size` and `line-height` for the entire project,\n * sourced from our default variables. The `font-size` is calculated to exist\n * in ems, the `line-height` is calculated to exist unitlessly.\n * 2. Force scrollbars to always be visible to prevent awkward ‘jumps’ when\n * navigating between pages that do/do not have enough content to produce\n * scrollbars naturally.\n * 3. Ensure the page always fills at least the entire height of the viewport.\n * 4. Prevent certain mobile browsers from automatically zooming fonts.\n * 5. Fonts on OSX will look more consistent with other systems that do not\n * render text using sub-pixel anti-aliasing.\n */\nhtml {\n font-size: 1em;\n /* [1] */\n line-height: 1.5;\n /* [1] */\n background-color: #fff;\n color: #333;\n overflow-y: scroll;\n /* [2] */\n min-height: 100%;\n /* [3] */\n -webkit-text-size-adjust: 100%;\n /* [4] */\n -ms-text-size-adjust: 100%;\n /* [4] */\n -moz-osx-font-smoothing: grayscale;\n /* [5] */\n -webkit-font-smoothing: antialiased;\n /* [5] */ }\n\nth {\n font-weight: inherit;\n text-align: left; }\n\n@keyframes fade-in {\n 0% {\n opacity: 0; }\n 100% {\n opacity: 1; } }\n\n@keyframes fade-out {\n 0% {\n opacity: 1; }\n 100% {\n opacity: 0; } }\n\n.textbox, .dropzone__selected-files,\n.button {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n outline: none; }\n\n.textbox, .dropzone__selected-files {\n background: #e9eff5;\n border-radius: 4px;\n border: 1px solid #d6e2ea;\n color: #53718a;\n display: block;\n font-size: 0.9em;\n padding: 10px 15px;\n transition: background 0.25s, border 0.25s, color 0.25s;\n width: 100%; }\n .textbox::placeholder, .dropzone__selected-files::placeholder {\n color: #abbac7;\n font-style: italic;\n transition: color 0.25s; }\n .textbox:focus, .dropzone__selected-files:focus {\n background: #fdfefe;\n border-color: #c7d6df;\n color: #258de5; }\n .textbox:focus::placeholder, .dropzone__selected-files:focus::placeholder {\n color: #abbac7; }\n .textbox.is-fulfilled, .dropzone__selected-files {\n background: #fdfefe; }\n\n.button {\n background: transparent;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 0.9em;\n font-weight: 500;\n padding: 8px 22px;\n transition: background 0.25s;\n user-select: none; }\n .button.has-icon .icon {\n height: 16px;\n margin: 0 8.33333px;\n vertical-align: middle;\n width: 16px; }\n .button.has-icon .icon:first-child {\n margin-left: 0; }\n .button.has-icon .icon:last-child {\n margin-right: 0; }\n .button--deemphasize {\n background: #e9eef2;\n box-shadow: inset 0 0 0 1px #d9e2e9;\n color: #66717a; }\n .button--deemphasize:hover {\n background: #d9e2e9;\n box-shadow: inset 0 0 0 1px #c9d5df;\n color: #5a646c; }\n .button--primary {\n background: #258de5;\n box-shadow: inset 0 0 0 1px #1a80d7;\n color: #fff;\n white-space: nowrap; }\n .button--primary:hover {\n background: #1a80d7;\n box-shadow: inset 0 0 0 1px #1773c0; }\n\n.form__label {\n color: #abbac7;\n display: block;\n font-size: 0.8em;\n line-height: 1;\n margin-bottom: 0.35em; }\n\n.form__row + .form__row {\n margin-top: 25px; }\n\nhtml,\nbody {\n height: 100%;\n overflow: hidden; }\n\n.container {\n height: 100%;\n width: 100%; }\n\n.flood {\n align-items: stretch;\n display: flex;\n height: 100%; }\n\n.application__content {\n display: flex;\n height: 100vh;\n flex: 1 2 auto;\n flex-direction: column;\n position: relative; }\n\n.application__panel {\n display: flex;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0; }\n .application__panel--torrent-list {\n transition: transform 0.5s;\n z-index: 2; }\n .application__panel--torrent-list.is-open {\n transform: translateX(85%); }\n .application__panel--torrent-details {\n right: 15%;\n width: 85%;\n z-index: 1; }\n\n.torrent__header {\n flex: 1;\n min-height: 35px;\n max-height: 35px; }\n\n.torrent__list__wrapper {\n display: flex;\n flex: 1; }\n .torrent__list__wrapper--custom-scroll {\n flex: 1;\n height: auto !important; }\n\nbody {\n background: #1a2f3d; }\n\nul {\n list-style: none; }\n\nbody {\n color: #53718a;\n font-family: \"Roboto\", sans-srif; }\n\n.unit {\n display: inline-block;\n font-size: 0.8em;\n font-style: normal;\n margin-bottom: 0.1em;\n opacity: 0.8; }\n\n.text-overflow {\n overflow: hidden;\n position: relative;\n text-overflow: ellipsis; }\n\n.action-bar {\n background: transparent;\n color: #1b1a1c;\n display: flex;\n flex: 0 0 60px;\n position: relative; }\n .action-bar:after {\n background: rgba(26, 47, 61, 0.15);\n bottom: 0;\n content: '';\n height: 1px;\n left: 9px;\n position: absolute;\n right: 0;\n width: auto; }\n .action-bar__item {\n flex: 3; }\n .action-bar__item:first-child {\n text-align: left; }\n .action-bar__item:last-child {\n text-align: right; }\n .action-bar__item--sort-torrents {\n max-width: 225px; }\n .action-bar__item--sort-torrents .dropdown {\n margin: 5px 0 0 15px; }\n .action-bar__item--sort-torrents .dropdown__content {\n min-width: 250px; }\n .action-bar__item--torrent-operations .dropdown {\n display: inline-block;\n height: 60px; }\n .action-bar__item--torrent-operations .dropdown__content {\n min-width: 430px;\n right: 4px; }\n .action-bar__group {\n display: inline-block;\n font-size: 0;\n padding: 0 15px; }\n .action-bar__group--has-divider {\n position: relative; }\n .action-bar__group--has-divider:before {\n background: rgba(122, 128, 128, 0.15);\n content: '';\n position: absolute;\n height: 80%;\n left: 0;\n top: 10%;\n width: 1px; }\n\n.actions {\n list-style: none; }\n\n.action {\n box-shadow: 1px 0 transparent, -1px 0 transparent;\n cursor: pointer;\n display: inline-block;\n height: 60px;\n position: relative;\n width: 60px;\n text-align: center;\n transition: background 0.25s, box-shadow 0.25s; }\n .action:hover {\n background: rgba(51, 62, 74, 0.05);\n box-shadow: 1px 0 rgba(51, 62, 74, 0.15), -1px 0 rgba(51, 62, 74, 0.15); }\n .action:hover .icon {\n fill: #258de5; }\n .action__label {\n display: block;\n position: absolute;\n top: 100%;\n visibility: hidden; }\n .action .icon {\n fill: #909799;\n height: 25px;\n left: 50%;\n position: absolute;\n top: 50%;\n transition: fill 0.25s;\n transform: translateX(-50%) translateY(-50%);\n width: 30px; }\n\n.application__content {\n background: #e9eef2; }\n\n.badge {\n background: #2b4456;\n border-radius: 100px;\n color: #132532;\n display: inline-block;\n font-size: 0.8em;\n font-weight: 800;\n line-height: 1;\n margin-left: 10px;\n padding: 1px 5px;\n transition: background 0.25s;\n vertical-align: baseline; }\n\n.client-stats {\n height: 200px;\n position: relative; }\n .client-stats .loading-indicator {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%); }\n .client-stats .transfer-data-enter {\n opacity: 0;\n transition: opacity 1s; }\n .client-stats .transfer-data-enter.transfer-data-enter-active {\n opacity: 1; }\n .client-stats .transfer-data-leave {\n opacity: 1;\n transition: opacity 1s; }\n .client-stats .transfer-data-leave.transfer-data-leave-active {\n opacity: 0; }\n\n.client-stat {\n align-items: center;\n display: flex;\n height: 100px;\n padding: 0 20px; }\n .client-stat__icon, .client-stat__data {\n position: relative;\n vertical-align: top;\n z-index: 1; }\n .client-stat__icon {\n flex: 0 0 23px; }\n .client-stat__icon .icon {\n display: inline-block;\n height: 25px;\n margin: 6px 0 0 -5px;\n width: auto; }\n .client-stat__data {\n flex: 1; }\n .client-stat__data--primary, .client-stat__data--secondary {\n display: block;\n font-weight: 100;\n line-height: 1.2; }\n .client-stat__data--primary {\n font-size: 1.75em;\n white-space: nowrap; }\n .client-stat__data--primary .unit {\n font-size: 0.65em;\n margin-bottom: 0;\n opacity: 0.5;\n position: relative;\n top: -0.1em; }\n .client-stat__data--secondary {\n font-size: 0.8em;\n font-style: italic;\n font-weight: 400; }\n\n.client-stat--limits {\n background: none;\n border: none;\n color: #53718a;\n display: block;\n outline: none;\n padding: 10px 15px;\n font-size: 0.85em;\n text-align: left;\n transition: color 0.25s;\n vertical-align: middle;\n width: 100%; }\n .client-stat--limits .icon {\n display: inline-block;\n fill: #53718a;\n margin: -2px 5px 0 0;\n transition: fill 0.25s;\n vertical-align: middle;\n width: 14.5px; }\n .client-stat--limits .icon .limits__bars--top {\n opacity: 0.4; }\n .client-stat--limits .icon .limits__bars--bottom {\n opacity: 0.6; }\n .client-stat--limits:hover {\n color: #258de5; }\n .client-stat--limits:hover .icon {\n fill: #258de5; }\n\n.client-stat {\n position: relative; }\n .client-stat .graph {\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 0; }\n .client-stat .graph svg {\n height: 100%;\n width: 100%; }\n .client-stat .graph__line {\n fill: none; }\n .client-stat .graph__line--limit {\n stroke-dasharray: 3px 4px;\n stroke-width: 1px; }\n .client-stat .graph__line--rate {\n stroke-width: 1.1px; }\n .client-stat--download .icon {\n fill: rgba(43, 174, 108, 0.75); }\n .client-stat--download .client-stat__data--primary {\n color: #2bae6c; }\n .client-stat--download .client-stat__data--secondary {\n color: rgba(43, 174, 108, 0.75); }\n .client-stat--download .graph .graph--download--gradient--top {\n stop-color: rgba(43, 174, 108, 0.2); }\n .client-stat--download .graph .graph--download--gradient--bottom {\n stop-color: rgba(43, 174, 108, 0); }\n .client-stat--download .graph__area {\n fill: url(\"#graph--download--gradient\"); }\n .client-stat--download .graph__line--limit {\n stroke: rgba(102, 217, 159, 0.15); }\n .client-stat--download .graph__line--rate {\n stroke: rgba(43, 174, 108, 0.4); }\n .client-stat--upload .icon {\n fill: rgba(35, 135, 217, 0.75); }\n .client-stat--upload .client-stat__data--primary {\n color: #2387d9; }\n .client-stat--upload .client-stat__data--secondary {\n color: rgba(35, 135, 217, 0.75); }\n .client-stat--upload .graph .graph--upload--gradient--top {\n stop-color: rgba(35, 135, 217, 0.2); }\n .client-stat--upload .graph .graph--upload--gradient--bottom {\n stop-color: rgba(35, 135, 217, 0); }\n .client-stat--upload .graph__area {\n fill: url(\"#graph--upload--gradient\"); }\n .client-stat--upload .graph__line--limit {\n stroke: rgba(121, 183, 233, 0.15); }\n .client-stat--upload .graph__line--rate {\n stroke: rgba(35, 135, 217, 0.4); }\n\n.directory-tree .icon {\n display: inline-block;\n fill: rgba(82, 120, 147, 0.4);\n height: 14px;\n margin-right: 6px;\n width: 14px; }\n\n.directory-tree__node {\n color: #527893;\n line-height: 1.75;\n text-overflow: ellipsis;\n vertical-align: middle;\n white-space: nowrap; }\n .directory-tree__node--group {\n padding-left: 10px;\n position: relative; }\n .directory-tree__node--group:after {\n background: rgba(82, 120, 147, 0.1);\n content: '';\n height: 100%;\n left: 5px;\n position: absolute;\n top: -5px;\n width: 2px; }\n .directory-tree__node--directory {\n color: #527893;\n cursor: pointer;\n transition: color 0.125s; }\n .directory-tree__node--directory.is-expanded {\n color: #719bb7;\n font-weight: 500; }\n .directory-tree__node--directory.is-expanded .icon {\n fill: rgba(130, 170, 197, 0.5); }\n .directory-tree__node--directory .icon {\n fill: rgba(82, 120, 147, 0.4); }\n .directory-tree__node .file {\n align-items: center;\n display: flex;\n line-height: 1.4;\n margin-left: -9px;\n padding: 2px 0 2px 9px;\n transition: background 0.25s, box-shadow 0.25s, color 0.25s;\n width: 100%; }\n .directory-tree__node .file:hover {\n background: rgba(26, 45, 60, 0.8);\n box-shadow: 0 1px 0 #1f3647, 0 -1px 0 #1f3647;\n color: #79a7c7; }\n .directory-tree__node .file:hover .file__detail--size, .directory-tree__node .file:hover .file__detail--priority {\n color: #527893; }\n .directory-tree__node .file .icon {\n fill: #344b5b;\n margin-top: -3px;\n vertical-align: middle; }\n .directory-tree__node .file__detail {\n flex: 1 1 auto;\n overflow: hidden;\n padding-right: 6.25px;\n text-overflow: ellipsis; }\n .directory-tree__node .file__detail--size, .directory-tree__node .file__detail--priority {\n color: #2b4456;\n flex: 0 0 auto;\n font-size: 0.95em;\n text-align: right;\n transition: color 0.25s; }\n .directory-tree__node .file__detail--priority .icon {\n height: auto;\n margin-right: 0;\n width: 16px; }\n .directory-tree__node .file__detail:last-child {\n padding-right: 0; }\n .directory-tree__node--file-list {\n margin-bottom: 3px; }\n\n.directory-tree__parent-directory {\n margin-left: -1px;\n overflow: hidden;\n text-overflow: ellipsis; }\n .directory-tree__parent-directory .icon {\n fill: rgba(58, 92, 116, 0.5);\n margin-right: 8px;\n vertical-align: middle; }\n\n.directory-tree__tree .directory-tree__tree {\n padding-left: 6px; }\n\n.dropdown {\n display: inline-block;\n outline: none;\n position: relative;\n z-index: 2; }\n .dropdown__button, .dropdown__trigger {\n cursor: pointer; }\n .dropdown__button {\n display: block;\n padding: 12px 15px 7px 15px;\n text-align: left;\n width: auto;\n word-wrap: none; }\n .dropdown__content {\n background: rgba(255, 255, 255, 0.98);\n border-radius: 3px;\n box-shadow: 0 0 0 1px rgba(26, 47, 61, 0.1), 0 0 35px rgba(26, 47, 61, 0.3);\n color: #95a2ad;\n left: 0;\n position: absolute;\n text-align: left;\n top: 0;\n z-index: 2; }\n .dropdown.is-expanded .dropdown__header .dropdown__value {\n color: #4e6a7c; }\n .dropdown__label {\n color: #abbac7;\n display: block;\n font-size: 0.65em;\n font-weight: 500;\n letter-spacing: 0.1em;\n line-height: 0.9em;\n text-transform: uppercase; }\n .dropdown__button .dropdown__label {\n cursor: pointer; }\n .dropdown__value {\n color: #8899a8;\n transition: color 0.25s; }\n .dropdown__value:after {\n border-top: 5px solid #8899a8;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n content: '';\n display: inline-block;\n margin-left: 10px;\n vertical-align: middle; }\n .dropdown__header {\n position: relative; }\n .dropdown__header:after {\n background: rgba(26, 47, 61, 0.05);\n bottom: 0;\n content: '';\n display: block;\n height: 1px;\n left: 5%;\n position: absolute;\n width: 90%; }\n .dropdown__items {\n display: flex;\n padding: 10px 0; }\n .dropdown__list {\n flex: 1; }\n .dropdown__item {\n padding: 5px 15px; }\n .dropdown__item.is-selectable {\n cursor: pointer;\n display: block;\n font-size: 0.9em;\n transition: background 0.25s, color 0.25s; }\n .dropdown__item.is-selectable:hover {\n background: rgba(233, 238, 242, 0.4);\n color: #788997; }\n .dropdown__item.is-selectable.is-selected {\n color: #258de5; }\n .dropdown--align-right .dropdown {\n left: auto;\n right: 0; }\n\n.dropdown__content-enter {\n animation: fade-in 0.25s both; }\n\n.dropdown__content-leave {\n animation: fade-out 0.25s both; }\n\n.dropdown__content__container {\n padding: 25px 30px; }\n\n.dropzone {\n align-items: center;\n background: #e9eff5;\n border: 1px dashed #d6e2ea;\n border-radius: 4px;\n color: #53718a;\n display: flex;\n flex-direction: column;\n text-align: center;\n transition: border 0.25s, color 0.25s;\n width: 100%; }\n .dropzone:hover {\n border-color: #93b2c7; }\n .dropzone:hover .dropzone__icon .icon {\n fill: #96adc3; }\n .dropzone--is-dragging, .dropzone--is-dragging:hover {\n border-color: #258de5;\n color: #258de5; }\n .dropzone--is-dragging .dropzone__icon .icon, .dropzone--is-dragging:hover .dropzone__icon .icon {\n fill: #258de5; }\n .dropzone__icon .icon--files {\n fill: #c7d3df;\n height: 64px;\n transition: fill 0.25s;\n width: 64px; }\n .dropzone__icon .icon--files__file--right, .dropzone__icon .icon--files__file--left {\n fill-opacity: 0.5; }\n .dropzone__copy {\n cursor: pointer;\n flex: 1;\n font-size: 0.85em;\n padding: 25px;\n width: 100%; }\n .dropzone__browse-button {\n color: #258de5;\n text-decoration: underline; }\n .dropzone__selected-files {\n font-size: 0.8em;\n padding: 12.5px;\n width: 100%; }\n .dropzone__selected-files__file {\n display: block;\n text-align: left; }\n .dropzone__selected-files__file .icon {\n display: inline-block;\n fill: #adbfce;\n height: 12px;\n margin-right: 4px;\n vertical-align: baseline;\n width: 12px; }\n .dropzone__selected-files__file .icon--close {\n height: 8px;\n margin-left: 4px;\n margin-right: 0;\n vertical-align: middle;\n width: 8px; }\n\n.floating-action__button {\n background: #fff;\n border: none;\n border-radius: 16px;\n box-shadow: 0 0 0 1px rgba(26, 47, 61, 0.1);\n cursor: pointer;\n height: 16px;\n outline: none;\n margin-right: 6px;\n padding: 0;\n position: relative;\n transition: background 0.25s, box-shadow 0.25s;\n width: 16px; }\n .floating-action__button:last-child {\n margin-right: 0; }\n .floating-action__button:hover {\n background: #e9eef2;\n box-shadow: 0 0 0 1px rgba(26, 47, 61, 0.2); }\n .floating-action__button:hover .icon {\n fill: rgba(26, 47, 61, 0.5); }\n .floating-action__button .icon {\n height: 8px;\n fill: rgba(26, 47, 61, 0.3);\n left: 50%;\n position: absolute;\n top: 50%;\n transition: fill 0.25s;\n transform: translate(-50%, -50%);\n width: 8px; }\n\n@keyframes loading-indicator-dots-pulse {\n 0% {\n fill-opacity: 0.2; }\n 100% {\n fill-opacity: 0.8; } }\n\n.icon--eta .icon__ring {\n fill-opacity: 1; }\n\n.icon--loading-indicator .loading-indicator--dots__dot {\n animation: loading-indicator-dots-pulse 0.6s linear alternate infinite;\n fill: #fff; }\n .icon--loading-indicator .loading-indicator--dots__dot--center {\n animation-delay: 0.2s; }\n .icon--loading-indicator .loading-indicator--dots__dot--right {\n animation-delay: 0.4s; }\n\n@keyframes loading-indicator-swipe {\n 0% {\n transform: translateX(-100%); }\n 50% {\n transform: translateX(400%); }\n 100% {\n transform: translateX(400%); } }\n\n.loading-indicator {\n height: 18px;\n position: relative;\n width: 32px; }\n .loading-indicator.is-inverse .loading-indicator__bar {\n background: rgba(56, 88, 109, 0.7); }\n .loading-indicator.is-inverse .loading-indicator__bar:after {\n background: rgba(37, 141, 229, 0.75); }\n .loading-indicator__bar {\n background: #e9eef2;\n border-radius: 10px;\n height: 3px;\n left: 0;\n overflow: hidden;\n position: absolute;\n transform: translateY(0);\n width: 100%; }\n .loading-indicator__bar:after {\n animation: loading-indicator-swipe 3s ease-in-out infinite;\n background: rgba(37, 141, 229, 0.75);\n border-radius: 10px;\n content: '';\n display: block;\n height: 100%;\n transform: translateX(-100%);\n width: 25%; }\n .loading-indicator__bar--1 {\n top: 0; }\n .loading-indicator__bar--2 {\n top: 50%;\n transform: translateY(-50%); }\n .loading-indicator__bar--2:after {\n animation-delay: 0.5s; }\n .loading-indicator__bar--3 {\n bottom: 0; }\n .loading-indicator__bar--3:after {\n animation-delay: 1s; }\n\n.modal {\n background: rgba(26, 47, 61, 0.5);\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n transition: opacity 0.5s;\n width: 100%;\n z-index: 100; }\n .modal--align-center {\n text-align: center; }\n .modal__tabs {\n color: #abbac7;\n font-size: 0.7em;\n font-weight: 400;\n margin: 10px -5px 0 -5px; }\n .modal__tabs .modal__tab {\n cursor: pointer;\n display: inline-block;\n margin-right: 6.25px;\n padding: 5px;\n position: relative; }\n .modal__tabs .modal__tab:after {\n bottom: 0;\n content: '';\n height: 1px;\n left: 0;\n position: absolute;\n right: 0;\n transition: background 0.25s; }\n .modal__tabs .modal__tab:last-child {\n margin-right: 0; }\n .modal__tabs .modal__tab.is-active {\n color: #258de5;\n font-weight: 800; }\n .modal__tabs .modal__tab.is-active:after {\n background: #258de5; }\n .modal__header {\n background: #fff;\n border-radius: 3px 3px 0 0;\n box-shadow: inset 0 -1px 0 #dde7ed;\n color: #5c6e80;\n flex: 0 0 auto;\n font-size: 1.25em;\n font-weight: 300;\n line-height: 1;\n padding: 20px 25px; }\n .modal__header.has-tabs {\n padding-bottom: 0; }\n .modal__content {\n flex: 1 1 auto;\n overflow: auto;\n padding: 20px 25px 20px 25px; }\n .modal__content__wrapper {\n background: #f7fafc;\n border-radius: 3px;\n box-shadow: 0 0 0 1px rgba(26, 47, 61, 0.1), 0 0 35px rgba(26, 47, 61, 0.3);\n display: flex;\n flex-direction: column;\n left: 50%;\n max-height: 80%;\n max-width: 80%;\n position: absolute;\n top: 10%;\n transform: translate(-50%, 0);\n width: 500px; }\n .modal__body {\n color: #94a3af;\n font-size: 0.9em; }\n .modal__actions {\n margin-top: 25px; }\n .modal__button-group {\n text-align: right; }\n .modal--align-center .modal__button-group {\n text-align: center; }\n .modal__button-group .button + .button {\n margin-left: 20px; }\n .modal__animation-enter {\n opacity: 0; }\n .modal__animation-enter-active {\n opacity: 1; }\n .modal__animation-leave {\n opacity: 1;\n pointer-events: none; }\n .modal__animation-leave-active {\n opacity: 0; }\n\n.priority-meter {\n height: 8px;\n position: relative; }\n .priority-meter__wrapper {\n cursor: pointer;\n display: inline-block;\n padding: 5px;\n user-select: none;\n vertical-align: middle; }\n .priority-meter:before, .priority-meter:after {\n content: '';\n display: block;\n position: absolute; }\n .priority-meter:before {\n height: 2px;\n left: 0;\n top: 3px;\n transition: background 0.25s;\n width: 100%; }\n .priority-meter:after {\n height: 100%;\n top: 0;\n transition: background 0.25s, left 0.25s;\n width: 2px; }\n .priority-meter--max-2 {\n width: 18px; }\n .priority-meter--max-2.priority-meter--level-0:before {\n background: rgba(67, 96, 118, 0.2); }\n .priority-meter--max-2.priority-meter--level-0:after {\n left: 0;\n background: #436076; }\n .priority-meter--max-2.priority-meter--level-1:before {\n background: rgba(37, 141, 229, 0.2); }\n .priority-meter--max-2.priority-meter--level-1:after {\n left: 8px;\n background: #258de5; }\n .priority-meter--max-2.priority-meter--level-2:before {\n background: rgba(57, 206, 131, 0.2); }\n .priority-meter--max-2.priority-meter--level-2:after {\n background: #39ce83;\n left: 16px; }\n .priority-meter--max-3 {\n width: 26px; }\n .priority-meter--max-3.priority-meter--level-0:before {\n background: rgba(67, 96, 118, 0.2); }\n .priority-meter--max-3.priority-meter--level-0:after {\n left: 0;\n background: #436076; }\n .priority-meter--max-3.priority-meter--level-1:before {\n background: rgba(37, 141, 229, 0.2); }\n .priority-meter--max-3.priority-meter--level-1:after {\n left: 8px;\n background: #258de5; }\n .priority-meter--max-3.priority-meter--level-2:before {\n background: rgba(57, 206, 131, 0.2); }\n .priority-meter--max-3.priority-meter--level-2:after {\n background: #39ce83;\n left: 16px; }\n .priority-meter--max-3.priority-meter--level-3:before {\n background: rgba(57, 206, 131, 0.2); }\n .priority-meter--max-3.priority-meter--level-3:after {\n background: #39ce83;\n left: 24px; }\n\n.progress-bar {\n height: 3px;\n position: relative;\n transition: opacity 0.25s;\n z-index: 1; }\n .is-selected.is-stopped .progress-bar {\n opacity: 0.5; }\n .progress-bar:after {\n background: #e3e5e5;\n content: '';\n height: 1px;\n left: 0;\n position: absolute;\n z-index: 0;\n top: 1px;\n transition: background 0.25s;\n width: 100%; }\n .is-selected .progress-bar:after {\n background: rgba(255, 255, 255, 0.5); }\n .is-selected.is-stopped .progress-bar:after {\n background: rgba(255, 255, 255, 0.5); }\n .progress-bar__fill {\n background: #39ce83;\n bottom: 0;\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n transition: background 0.25s, width 0.25s;\n z-index: 1; }\n .is-seeding .progress-bar__fill {\n background: #258de5; }\n .is-completed .progress-bar__fill,\n .is-stopped .progress-bar__fill {\n background: #e3e5e5; }\n .is-selected .progress-bar__fill {\n background: #fff; }\n .has-error .progress-bar__fill {\n background: #e95779; }\n\n.scrollbars__thumb {\n background: rgba(26, 47, 61, 0.3);\n border-radius: 10px;\n cursor: pointer;\n opacity: 0;\n transition: background 0.25s, opacity 0.5s; }\n .scrollbars__thumb:active {\n opacity: 1; }\n .scrollbars__thumb:hover, .scrollbars__thumb:active {\n background: rgba(26, 47, 61, 0.6); }\n .is-inverted .scrollbars__thumb {\n background: rgba(233, 238, 242, 0.3); }\n .is-inverted .scrollbars__thumb:hover, .is-inverted .scrollbars__thumb:active {\n background: rgba(233, 238, 242, 0.6); }\n\n.scrollbars:hover .scrollbars__thumb {\n opacity: 1; }\n\n.application__sidebar {\n box-shadow: 1px 0 rgba(6, 9, 11, 0.3);\n color: #53718a;\n flex: 1;\n min-width: 200px;\n max-width: 240px;\n overflow: auto;\n position: relative;\n z-index: 2; }\n\n.sidebar__item--search {\n position: relative; }\n .sidebar__item--search .icon {\n fill: #53718a;\n height: 22px;\n left: 17px;\n opacity: 0.5;\n position: absolute;\n top: 50%;\n transition: fill 0.25s, opacity 0.25s;\n transform: translateY(-50%);\n width: 22px; }\n .sidebar__item--search .textbox, .sidebar__item--search .dropzone__selected-files {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border: 1px solid rgba(9, 24, 36, 0.4);\n border-left: none;\n border-right: none;\n border-radius: 0;\n background: rgba(9, 24, 36, 0.3);\n box-shadow: none;\n color: #53718a;\n display: block;\n font-size: 1em;\n outline: none;\n padding: 12px 0 12px 45px;\n transition: background 0.25s, border 0.25s, color 0.25s;\n width: 100%; }\n .sidebar__item--search .textbox::placeholder, .sidebar__item--search .dropzone__selected-files::placeholder {\n color: rgba(83, 113, 138, 0.4);\n font-style: italic;\n transition: color 0.25s; }\n .sidebar__item--search.is-in-use .icon {\n fill: #2c9e65;\n opacity: 1; }\n .sidebar__item--search.is-in-use .textbox, .sidebar__item--search.is-in-use .dropzone__selected-files {\n background: #39ce83;\n border-bottom: 1px solid #39ce83;\n border-top: 1px solid #39ce83;\n color: #1e8954; }\n .sidebar__item--search.is-in-use .textbox::placeholder, .sidebar__item--search.is-in-use .dropzone__selected-files::placeholder {\n color: #2cad6d; }\n\n.sidebar__item--speed-limit {\n padding-left: 5px;\n padding-top: 5px; }\n .sidebar__item--speed-limit .dropdown__content {\n min-width: 180px; }\n .sidebar__item--speed-limit .dropdown__items {\n font-size: 0.9em; }\n\n.sidebar-filter {\n font-size: 0.85em;\n padding: 30px 0; }\n .sidebar-filter + .sidebar-filter {\n padding-top: 0; }\n .sidebar-filter__item {\n color: #53718a;\n cursor: pointer;\n font-weight: 400;\n padding: 3px 20px;\n transition: color 0.25s; }\n .sidebar-filter__item:hover {\n color: #7a97af; }\n .sidebar-filter__item:hover .icon {\n fill: #7a97af; }\n .sidebar-filter__item.is-active {\n color: #258de5;\n font-weight: 700; }\n .sidebar-filter__item.is-active .badge {\n background: #3b586d; }\n .sidebar-filter__item.is-active .icon {\n fill: #258de5; }\n .sidebar-filter__item .icon {\n display: inline-block;\n fill: #53718a;\n height: 14px;\n margin-right: 7px;\n transition: fill 0.25s;\n vertical-align: middle;\n width: auto; }\n .sidebar-filter .badge {\n background: #2b4456;\n color: #132532; }\n\n.sidebar-filter__item--heading {\n cursor: default;\n font-size: 0.8em;\n font-weight: 500;\n letter-spacing: 0.1em;\n text-transform: uppercase; }\n .sidebar-filter__item--heading, .sidebar-filter__item--heading:hover {\n color: rgba(83, 113, 138, 0.5); }\n\n.textbox-repeater .floating-action__group {\n margin-top: -8px;\n position: absolute;\n right: -8px;\n top: 50%; }\n\n.textbox-repeater .floating-action__button {\n position: relative; }\n\n.textbox-repeater .textbox__wrapper {\n position: relative; }\n\n.textbox-repeater .form__row + .form__row {\n margin-top: 12.5px; }\n\n.application__panel--torrent-details {\n background: #0e2231; }\n\n.torrent-details {\n background: #0e2231;\n bottom: 0;\n box-shadow: -1px 0 0 rgba(26, 47, 61, 0.1);\n display: flex;\n flex-direction: column;\n font-size: 0.8em;\n left: 0;\n min-width: 400px;\n overflow: auto;\n position: absolute;\n right: 0;\n top: 0;\n transition: opacity 1s;\n z-index: 2; }\n .torrent-details__wrapper {\n flex: 1;\n height: 100%; }\n .torrent-details__scroll-container {\n height: auto !important; }\n .torrent-details__header {\n box-shadow: 0 1px 0 rgba(4, 13, 19, 0.3);\n flex: 0 0 auto;\n padding: 12.5px 25px 16.66667px 25px; }\n .torrent-details__header.has-error .progress-bar__fill {\n background: #be2558; }\n .torrent-details__header.is-stopped .progress-bar__fill {\n background: #7b9cb4; }\n .torrent-details__header .progress-bar:after {\n background: #2a3e4c; }\n .torrent-details__action {\n cursor: pointer;\n transition: color 0.25s; }\n .torrent-details__action .icon {\n transition: fill 0.25s; }\n .torrent-details__action.is-active {\n color: #258de5; }\n .torrent-details__action.is-active .icon {\n fill: #258de5; }\n .torrent-details__table {\n color: #527893;\n width: 100%; }\n .torrent-details__table__heading--primary {\n color: #3a5c74;\n font-size: 1.125em; }\n .torrent-details__table__heading--secondary {\n color: rgba(82, 120, 147, 0.5);\n font-size: 0.7em;\n letter-spacing: 0.1em;\n text-transform: uppercase; }\n .torrent-details__content {\n flex: 1;\n overflow: auto;\n padding: 16.66667px 25px; }\n .torrent-details__content__wrapper {\n background: rgba(16, 26, 34, 0.4);\n display: flex;\n flex: 1;\n overflow: hidden; }\n .torrent-details__navigation {\n background: transparent;\n box-shadow: 1px 0 0 rgba(4, 13, 19, 0.4);\n min-width: 125px;\n padding: 12.5px 0; }\n .torrent-details__navigation .navigation__item {\n cursor: pointer;\n padding: 6.25px 25px;\n text-align: right;\n transition: background 0.25s, box-shadow 0.25s, color 0.25s; }\n .torrent-details__navigation .navigation__item.is-active {\n background: rgba(52, 156, 244, 0.07);\n box-shadow: 1px 0 0 #349cf4;\n color: #349cf4; }\n .torrent-details__section__heading, .torrent-details__section__null-data {\n color: #3a5c74;\n font-size: 1.15em;\n margin-bottom: 2.5px; }\n .torrent-details__section__heading .badge {\n background: rgba(82, 120, 147, 0.5);\n color: #0c1b26; }\n\n.torrent-details__heading {\n color: #c7dbeb;\n font-size: 1.7em;\n font-weight: 300; }\n\n.torrent-details__sub-heading {\n display: flex;\n margin-bottom: 6.25px; }\n .torrent-details__sub-heading__secondary {\n color: #7b9cb4;\n display: flex;\n flex: 1 0 auto; }\n .torrent-details__sub-heading__secondary:first-child {\n justify-content: flex-start; }\n .torrent-details__sub-heading__secondary:last-child {\n justify-content: flex-end; }\n .torrent-details__sub-heading__tertiary {\n flex: 0 0 auto;\n margin-right: 1em; }\n .torrent-details__sub-heading__tertiary .icon {\n fill: rgba(77, 111, 135, 0.5);\n height: 12px;\n margin-right: 3px;\n margin-top: -3px;\n vertical-align: middle;\n width: 12px; }\n .torrent-details__sub-heading__tertiary .priority-meter {\n display: inline-block;\n margin-top: -1px;\n margin-right: 6px;\n vertical-align: middle; }\n .torrent-details__sub-heading__tertiary .priority-meter__wrapper {\n margin-top: -3px;\n padding: 0; }\n .torrent-details__sub-heading__tertiary--download {\n color: #258de5; }\n .torrent-details__sub-heading__tertiary--download .icon {\n fill: #258de5; }\n .torrent-details__sub-heading__tertiary--upload {\n color: #39ce83; }\n .torrent-details__sub-heading__tertiary--upload .icon {\n fill: #39ce83; }\n .torrent-details__sub-heading__tertiary:last-child {\n margin-right: 0; }\n\n.torrent-details-enter {\n opacity: 0; }\n\n.torrent-details-enter-active {\n opacity: 1; }\n\n.torrent-details-leave {\n opacity: 0;\n transition: opacity 0.5s; }\n\n.torrents {\n display: flex;\n flex: 1 1 100px;\n position: relative; }\n .torrents:after {\n background: #fff;\n bottom: 0;\n box-shadow: -1px 0 0 0 rgba(26, 47, 61, 0.15);\n content: '';\n height: auto;\n left: 10px;\n position: absolute;\n right: 0;\n top: 0; }\n .torrents .loading-indicator {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%); }\n\n.torrent__list {\n margin: 0 0 0 10px;\n padding: 10px 0;\n position: relative; }\n .torrent__list__wrapper {\n list-style: none;\n max-width: 100%;\n opacity: 1;\n overflow: auto;\n transition: opacity 1s;\n user-select: none;\n z-index: 1; }\n .torrent__list--loading-enter {\n opacity: 0;\n transition: opacity 1s; }\n .torrent__list--loading-enter-active {\n opacity: 1; }\n .torrent__list--loading-leave {\n opacity: 1;\n transition: opacity 1s; }\n .torrent__list--loading-leave-active {\n opacity: 0; }\n .torrent__list--empty {\n opacity: 0; }\n\n.torrent {\n cursor: default;\n padding: 10px 20px;\n position: relative;\n transition: background 0.25s; }\n .torrent:hover {\n background: #f6f8fa; }\n .torrent:hover .torrent__more-info {\n opacity: 1; }\n .torrent.is-selected {\n background: #258de5; }\n .torrent__more-info {\n height: 20px;\n margin-top: -10px;\n position: absolute;\n left: -7px;\n opacity: 0;\n top: 50%;\n transition: background 0.25s, box-shadow 0.25s, opacity 0.25s;\n width: 20px; }\n\n.torrent__details {\n align-items: center;\n display: flex;\n flex: 1;\n flex-flow: row wrap;\n list-style: none; }\n .torrent__details--primary, .torrent__details--secondary, .torrent__details--tertiary {\n transition: color 0.25s; }\n .torrent__details--primary {\n color: #333332;\n flex: 4;\n line-height: 1.3;\n white-space: nowrap; }\n .is-stopped .torrent__details--primary {\n color: rgba(51, 51, 50, 0.5); }\n .is-selected .torrent__details--primary {\n color: #fff; }\n .is-selected.is-stopped .torrent__details--primary {\n color: rgba(255, 255, 255, 0.6); }\n .torrent__details--secondary {\n align-items: flex-end;\n color: #807f7e;\n flex: 1;\n font-size: 0.75em;\n min-width: 200px; }\n .torrent__details--secondary li {\n flex: 1 1 auto;\n min-width: 15%; }\n .torrent__details--secondary li.torrent__details--ratio {\n max-width: 30px; }\n .is-stopped .torrent__details--secondary {\n color: rgba(128, 127, 126, 0.5); }\n .is-selected .torrent__details--secondary {\n color: #fff; }\n .is-selected.is-stopped .torrent__details--secondary {\n color: rgba(255, 255, 255, 0.6); }\n .torrent__details--tertiary {\n color: #807f7e;\n display: block;\n font-size: 0.75em;\n margin: 0 0 3px 0; }\n .torrent__details--tertiary li {\n display: inline-block;\n margin-right: 1em; }\n .torrent__details--tertiary li:last-child {\n margin-right: 0; }\n .is-stopped .torrent__details--tertiary {\n color: rgba(128, 127, 126, 0.5); }\n .is-selected .torrent__details--tertiary {\n color: rgba(255, 255, 255, 0.9); }\n .is-selected.is-stopped .torrent__details--tertiary {\n color: rgba(255, 255, 255, 0.5); }\n .torrent__details__label {\n margin-right: 0.5em;\n opacity: 0.5; }\n\n.torrent__details--eta {\n opacity: 0;\n transition: opacity 1s, visibility 1s;\n visibility: hidden; }\n .torrent__details--eta .torrent__details--segment {\n margin-right: 0.25em; }\n .torrent__details--eta .torrent__details--segment:last-child {\n margin-right: 0; }\n .is-actively-downloading .torrent__details--eta {\n opacity: 1;\n visibility: visible; }\n\n.view--torrent-list {\n background: #e9eef2;\n box-shadow: -1px 0 rgba(26, 47, 61, 0.15);\n display: flex;\n flex-direction: column;\n flex: 1;\n flex: 0 1 100%; }\n\n.transfer-data--download {\n color: #39ce83; }\n .transfer-data--download .icon {\n fill: #39ce83; }\n\n.transfer-data--upload {\n color: #258de5; }\n .transfer-data--upload .icon {\n fill: #258de5; }\n","/*!\n * inuitcss, by @csswizardry\n *\n * github.com/inuitcss | inuitcss.com\n */\n///*------------------------------------*\\\n// #DEFAULTS\n//\\*------------------------------------*/\n\n// These variables are inuitcss’ defaults; they should not be modified or\n// adjusted directly; you should predefine the variables in your own project.\n\n\n\n\n\n// High-level base settings.\n$inuit-base-font-size: 16px !default;\n$inuit-base-line-height: 24px !default;\n$inuit-base-text-color: #333 !default;\n$inuit-base-background-color: #fff !default;\n\n\n\n\n\n// Namespace.\n//\n// Would you like inuitcss’ classes to be prepended with a namespace? If so,\n// define it here.\n$inuit-namespace: null !default;\n\n\n\n\n\n// These variables are framework variables, sourced from variables defined\n// above. Feel free to use these variables throughout your project, but do not\n// modify or reassign them.\n$inuit-base-spacing-unit: $inuit-base-line-height;\n$inuit-base-spacing-unit--tiny: round($inuit-base-spacing-unit / 4);\n$inuit-base-spacing-unit--small: round($inuit-base-spacing-unit / 2);\n$inuit-base-spacing-unit--large: round($inuit-base-spacing-unit * 2);\n$inuit-base-spacing-unit--huge: round($inuit-base-spacing-unit * 4);\n","/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n/**\n * 1. Set default font family to sans-serif.\n * 2. Prevent iOS and IE text size adjust after device orientation change,\n * without disabling user zoom.\n */\n\nhtml {\n font-family: sans-serif; /* 1 */\n -ms-text-size-adjust: 100%; /* 2 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/**\n * Remove default margin.\n */\n\nbody {\n margin: 0;\n}\n\n/* HTML5 display definitions\n ========================================================================== */\n\n/**\n * Correct `block` display not defined for any HTML5 element in IE 8/9.\n * Correct `block` display not defined for `details` or `summary` in IE 10/11\n * and Firefox.\n * Correct `block` display not defined for `main` in IE 11.\n */\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n/**\n * 1. Correct `inline-block` display not defined in IE 8/9.\n * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n */\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; /* 1 */\n vertical-align: baseline; /* 2 */\n}\n\n/**\n * Prevent modern browsers from displaying `audio` without controls.\n * Remove excess height in iOS 5 devices.\n */\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n/**\n * Address `[hidden]` styling not present in IE 8/9/10.\n * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n */\n\n[hidden],\ntemplate {\n display: none;\n}\n\n/* Links\n ========================================================================== */\n\n/**\n * Remove the gray background color from active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * Improve readability of focused elements when they are also in an\n * active/hover state.\n */\n\na:active,\na:hover {\n outline: 0;\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n */\n\nabbr[title] {\n border-bottom: 1px dotted;\n}\n\n/**\n * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n */\n\nb,\nstrong {\n font-weight: bold;\n}\n\n/**\n * Address styling not present in Safari and Chrome.\n */\n\ndfn {\n font-style: italic;\n}\n\n/**\n * Address variable `h1` font-size and margin within `section` and `article`\n * contexts in Firefox 4+, Safari, and Chrome.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/**\n * Address styling not present in IE 8/9.\n */\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n/**\n * Address inconsistent and variable font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` affecting `line-height` in all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove border when inside `a` element in IE 8/9/10.\n */\n\nimg {\n border: 0;\n}\n\n/**\n * Correct overflow not hidden in IE 9/10/11.\n */\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * Address margin not present in IE 8/9 and Safari.\n */\n\nfigure {\n margin: 1em 40px;\n}\n\n/**\n * Address differences between Firefox and other browsers.\n */\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n/**\n * Contain overflow in all browsers.\n */\n\npre {\n overflow: auto;\n}\n\n/**\n * Address odd `em`-unit font size rendering in all browsers.\n */\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * Known limitation: by default, Chrome and Safari on OS X allow very limited\n * styling of `select`, unless a `border` property is set.\n */\n\n/**\n * 1. Correct color not being inherited.\n * Known issue: affects color of disabled elements.\n * 2. Correct font properties not being inherited.\n * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; /* 1 */\n font: inherit; /* 2 */\n margin: 0; /* 3 */\n}\n\n/**\n * Address `overflow` set to `hidden` in IE 8/9/10/11.\n */\n\nbutton {\n overflow: visible;\n}\n\n/**\n * Address inconsistent `text-transform` inheritance for `button` and `select`.\n * All other form control elements do not inherit `text-transform` values.\n * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n * Correct `select` style inheritance in Firefox.\n */\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/**\n * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n * and `video` controls.\n * 2. Correct inability to style clickable `input` types in iOS.\n * 3. Improve usability and consistency of cursor style between image-type\n * `input` and others.\n */\n\nbutton,\nhtml input[type=\"button\"], /* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; /* 2 */\n cursor: pointer; /* 3 */\n}\n\n/**\n * Re-set default cursor for disabled elements.\n */\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n/**\n * Remove inner padding and border in Firefox 4+.\n */\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n/**\n * Address Firefox 4+ setting `line-height` on `input` using `!important` in\n * the UA stylesheet.\n */\n\ninput {\n line-height: normal;\n}\n\n/**\n * It's recommended that you don't attempt to style these elements.\n * Firefox's implementation doesn't respect box-sizing, padding, or width.\n *\n * 1. Address box sizing set to `content-box` in IE 8/9/10.\n * 2. Remove excess padding in IE 8/9/10.\n */\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Fix the cursor style for Chrome's increment/decrement buttons. For certain\n * `font-size` values of the `input`, it causes the cursor style of the\n * decrement button to change from `default` to `text`.\n */\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n */\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n box-sizing: content-box; /* 2 */\n}\n\n/**\n * Remove inner padding and search cancel button in Safari and Chrome on OS X.\n * Safari (but not Chrome) clips the cancel button when the search input has\n * padding (and `textfield` appearance).\n */\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * Define consistent border, margin, and padding.\n */\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n/**\n * 1. Correct `color` not being inherited in IE 8/9/10/11.\n * 2. Remove padding so people aren't caught out if they zero out fieldsets.\n */\n\nlegend {\n border: 0; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Remove default vertical scrollbar in IE 8/9/10/11.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * Don't inherit the `font-weight` (applied by a rule above).\n * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n */\n\noptgroup {\n font-weight: bold;\n}\n\n/* Tables\n ========================================================================== */\n\n/**\n * Remove most spacing between table cells.\n */\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","@import 'colors';\n@import url(http://fonts.googleapis.com/css?family=Roboto:400italic,700italic,300,700,300italic,400);\n\n$font: 'Roboto', sans-srif;\n\n$spacing-unit: 25px;\n$torrent-details--width: 85%;\n","@import url('http://fonts.googleapis.com/css?family=Roboto:500,400italic,300,700,400');\n\nbody {\n color: $foreground;\n font-family: $font;\n}\n\n.unit {\n display: inline-block;\n font-size: 0.8em;\n font-style: normal;\n margin-bottom: 0.1em;\n opacity: 0.8;\n}\n\n.text-overflow {\n overflow: hidden;\n position: relative;\n text-overflow: ellipsis;\n}\n","/*------------------------------------*\\\n #RESET\n\\*------------------------------------*/\n\n/**\n * As well as using normalize.css, it is often advantageous to remove all\n * margins from certain elements.\n */\nbody,\nh1, h2, h3, h4, h5, h6,\np, blockquote, pre,\ndl, dd, ol, ul,\nform, fieldset, legend,\nfigure,\ntable, th, td, caption,\nhr {\n margin: 0;\n padding: 0;\n}\n\n\n\n\n\n/**\n * Give a help cursor to elements that give extra info on `:hover`.\n */\nabbr[title],\ndfn[title] {\n cursor: help;\n}\n\n\n\n\n\n/**\n * Remove underlines from potentially troublesome elements.\n */\nu,\nins {\n text-decoration: none;\n}\n\n\n\n\n\n/**\n * Apply faux underlines to inserted text via `border-bottom`.\n */\nins {\n border-bottom: 1px solid;\n}\n","/*------------------------------------*\\\n #BOX-SIZING\n\\*------------------------------------*/\n\n/**\n * Set the global `box-sizing` state to `border-box`.\n *\n * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice\n * paulirish.com/2012/box-sizing-border-box-ftw\n */\nhtml {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n\n* {\n\n &,\n &:before,\n &:after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n}\n\n\n\n\n\n// If we have included this file, set a variable to tell the rest of the\n// framework that global `box-sizing: border-box` has been set.\n$inuit-global-border-box: true;\n","/*------------------------------------*\\\n #PAGE\n\\*------------------------------------*/\n\n/**\n * High-, page-level styling.\n *\n * 1. Set the default `font-size` and `line-height` for the entire project,\n * sourced from our default variables. The `font-size` is calculated to exist\n * in ems, the `line-height` is calculated to exist unitlessly.\n * 2. Force scrollbars to always be visible to prevent awkward ‘jumps’ when\n * navigating between pages that do/do not have enough content to produce\n * scrollbars naturally.\n * 3. Ensure the page always fills at least the entire height of the viewport.\n * 4. Prevent certain mobile browsers from automatically zooming fonts.\n * 5. Fonts on OSX will look more consistent with other systems that do not\n * render text using sub-pixel anti-aliasing.\n */\nhtml {\n font-size: ($inuit-base-font-size / 16px) * 1em; /* [1] */\n line-height: $inuit-base-line-height / $inuit-base-font-size; /* [1] */\n background-color: $inuit-base-background-color;\n color: $inuit-base-text-color;\n overflow-y: scroll; /* [2] */\n min-height: 100%; /* [3] */\n -webkit-text-size-adjust: 100%; /* [4] */\n -ms-text-size-adjust: 100%; /* [4] */\n -moz-osx-font-smoothing: grayscale; /* [5] */\n -webkit-font-smoothing: antialiased; /* [5] */\n}\n","th {\n font-weight: inherit;\n text-align: left;\n}\n","@keyframes fade-in {\n\n 0% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n\n}\n\n@keyframes fade-out {\n\n 0% {\n opacity: 1;\n }\n\n 100% {\n opacity: 0;\n }\n\n}\n",".textbox,\n.button {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n outline: none;\n}\n\n.textbox {\n background: $textbox--background;\n border-radius: 4px;\n border: 1px solid $textbox--border;\n color: $textbox--foreground;\n display: block;\n font-size: 0.9em;\n padding: 10px 15px;\n transition: background 0.25s, border 0.25s, color 0.25s;\n width: 100%;\n\n &::placeholder {\n color: $textbox--placeholder;\n font-style: italic;\n transition: color 0.25s;\n }\n\n &:focus {\n background: $textbox--active--background;\n border-color: $textbox--active--border;\n color: $textbox--active--foreground;\n\n &::placeholder {\n color: $textbox--active--placeholder;\n }\n }\n\n &.is-fulfilled {\n background: $textbox--fulfilled--background;\n }\n}\n\n.button {\n background: transparent;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 0.9em;\n font-weight: 500;\n padding: 8px 22px;\n transition: background 0.25s;\n user-select: none;\n\n &.has-icon {\n\n .icon {\n height: 16px;\n margin: 0 $spacing-unit * 1/3;\n vertical-align: middle;\n width: 16px;\n\n &:first-child {\n margin-left: 0;\n }\n\n &:last-child {\n margin-right: 0;\n }\n }\n }\n\n &--deemphasize {\n background: $button--deemphasized--background;\n box-shadow: inset 0 0 0 1px $button--deemphasized--border;\n color: $button--deemphasized--foreground;\n\n &:hover {\n background: $button--deemphasized--background--hover;\n box-shadow: inset 0 0 0 1px $button--deemphasized--border--hover;\n color: $button--deemphasized--foreground--hover;\n }\n }\n\n &--primary {\n background: $button--primary--background;\n box-shadow: inset 0 0 0 1px $button--primary--border;\n color: $button--primary--foreground;\n white-space: nowrap;\n\n &:hover {\n background: $button--primary--background--hover;\n box-shadow: inset 0 0 0 1px $button--primary--border--hover;\n }\n }\n}\n\n.form {\n\n &__label {\n color: $form--label--foreground;\n display: block;\n font-size: 0.8em;\n line-height: 1;\n margin-bottom: 0.35em;\n }\n\n &__row {\n\n & + .form__row {\n margin-top: $spacing-unit;\n }\n }\n}\n","$blue: #258de5;\n$green: #39ce83;\n$white: #fff;\n\n$background: #1a2f3d;\n$foreground: #53718a;\n\n$main-content--background: #e9eef2;\n\n$header--foreground: #313436;\n\n// form elements\n$form--label--foreground: #abbac7;\n\n$textbox--background: #e9eff5;\n$textbox--foreground: #53718a;\n$textbox--placeholder: #abbac7;\n$textbox--border: #d6e2ea;\n$textbox--fulfilled--background: #fdfefe;\n$textbox--active--background: #fdfefe;\n$textbox--active--border: desaturate(darken($textbox--border, 5%), 5%);\n$textbox--active--foreground: $blue;\n$textbox--active--placeholder: $textbox--placeholder;\n\n$textbox-repeater--button--background: #fff;\n$textbox-repeater--button--background--hover: $main-content--background;\n$textbox-repeater--button--border: rgba($background, 0.1);\n$textbox-repeater--button--border--hover: rgba($background, 0.2);\n$textbox-repeater--button--foreground: rgba($background, 0.3);\n$textbox-repeater--button--foreground--hover: rgba($background, 0.5);\n\n$button--primary--foreground: #fff;\n$button--primary--background: $blue;\n$button--primary--background--hover: darken($button--primary--background, 5%);\n$button--primary--border: darken($button--primary--background, 5%);\n$button--primary--border--hover: darken($button--primary--border, 5%);\n\n$button--deemphasized--foreground: #66717a;\n$button--deemphasized--background: $main-content--background;\n$button--deemphasized--foreground--hover: darken($button--deemphasized--foreground, 5%);\n$button--deemphasized--background--hover: darken($button--deemphasized--background, 5%);\n$button--deemphasized--border: darken($button--deemphasized--background, 5%);\n$button--deemphasized--border--hover: darken($button--deemphasized--border, 5%);\n\n// action bar\n$action-bar--background: transparent;\n$action-bar--foreground: #1b1a1c;\n$action-bar--group--border: rgba(#7a8080, 0.15);\n\n$action--foreground: #909799;\n$action--foreground--hover: $blue;\n$action--background--hover: rgba(#333e4a, 0.05);\n$action--border--hover: rgba(#333e4a, 0.15);\n\n// filter bar\n$sidebar--foreground: #53718a;\n$sidebar--border: rgba(darken($sidebar--foreground, 40%), 0.3);\n\n$client-stats--limits--opacity: 0.15;\n$client-stats--speed--fill--top--opacity: 0.2;\n$client-stats--speed--fill--bottom--opacity: 0;\n$client-stats--speed--stroke--opacity: 0.4;\n\n$client-stats--download--primary--foreground: #2bae6c;\n$client-stats--download--secondary--foreground: rgba($client-stats--download--primary--foreground, 0.75);\n$client-stats--download--graph--stroke: rgba(#2bae6c, $client-stats--speed--stroke--opacity);\n$client-stats--download--graph--fill--top: rgba(#2bae6c, $client-stats--speed--fill--top--opacity);\n$client-stats--download--graph--fill--bottom: rgba(#2bae6c, $client-stats--speed--fill--bottom--opacity);\n$client-stats--download--limits--line: rgba(lighten($client-stats--download--primary--foreground, 20%), $client-stats--limits--opacity);\n\n$client-stats--upload--primary--foreground: #2387d9;\n$client-stats--upload--secondary--foreground: rgba($client-stats--upload--primary--foreground, 0.75);\n$client-stats--upload--graph--stroke: rgba(#2387d9, $client-stats--speed--stroke--opacity);\n$client-stats--upload--graph--fill--top: rgba(#2387d9, $client-stats--speed--fill--top--opacity);\n$client-stats--upload--graph--fill--bottom: rgba(#2387d9, $client-stats--speed--fill--bottom--opacity);\n$client-stats--upload--limits--line: rgba(lighten($client-stats--upload--primary--foreground, 20%), $client-stats--limits--opacity);\n\n$client-stats--limits--foreground: $foreground;\n$client-stats--limits--icon--hover: $blue;\n\n$search-torrents--base: #091824;\n$search-torrents--background: rgba($search-torrents--base, 0.3);\n$search-torrents--background--active: $green;\n$search-torrents--border: rgba($search-torrents--background, 0.4);\n$search-torrents--border--active: $search-torrents--background--active;\n$search-torrents--foreground: $sidebar--foreground;\n$search-torrents--foreground--active: #1e8954;\n$search-torrents--placeholder: rgba($sidebar--foreground, 0.4);\n$search-torrents--placeholder--active: #2cad6d;\n\n$search-torrents--icon--foreground: $sidebar--foreground;\n$search-torrents--icon--foreground--active: #2c9e65;\n\n$sidebar-filter--foreground: $sidebar--foreground;\n$sidebar-filter--foreground--header: rgba($sidebar-filter--foreground, 0.5);\n$sidebar-filter--foreground--active: $blue;\n$sidebar-filter--foreground--hover: lighten($sidebar-filter--foreground, 15%);\n\n$sidebar-filter--count--foreground: #132532;\n$sidebar-filter--count--background: #2b4456;\n$sidebar-filter--count--background--active: #3b586d;\n\n// torrents list\n$torrent-list--background: #fff;\n$torrent-list--border: rgba($background, 0.15);\n\n$torrent--primary--foreground: #333332;\n$torrent--primary--foreground--stopped: rgba(#333332, 0.5);\n$torrent--primary--foreground--selected: #fff;\n$torrent--primary--foreground--selected--stopped: rgba($torrent--primary--foreground--selected, 0.6);\n$torrent--secondary--foreground: #807f7e;\n$torrent--secondary--foreground--stopped: rgba(#807f7e, 0.5);\n$torrent--secondary--foreground--selected: #fff;\n$torrent--secondary--foreground--selected--stopped: rgba(#fff, 0.6);\n$torrent--tertiary--foreground: #807f7e;\n$torrent--tertiary--foreground--stopped: rgba(#807f7e, 0.5);\n$torrent--tertiary--foreground--selected: rgba(#fff, 0.9);\n$torrent--tertiary--foreground--selected--stopped: rgba(#fff, 0.5);\n\n$torrent--background--hover: #f6f8fa;\n$torrent--background--selected: $blue;\n\n$progress-bar--background: #e3e5e5;\n$progress-bar--background--selected: rgba(#fff, 0.5);\n$progress-bar--background--selected--stopped: rgba(#fff, 0.5);\n$progress-bar--fill: $green;\n\n$progress-bar--fill--stopped: #e3e5e5;\n$progress-bar--fill--completed: $blue;\n$progress-bar--fill--selected: #fff;\n$progress-bar--fill--error: #e95779;\n\n// torrent details\n$torrent-details--background: saturate(lighten(#0c1b26, 2.5%), 4%); //#162835;\n$torrent-details--border: rgba($background, 0.1);\n\n$torrent-details--header--border: rgba(#040d13, 0.3);\n$torrent-details--header--name--foreground: #c7dbeb;\n$torrent-details--header--tertiary--foreground: #7b9cb4;\n$torrent-details--header--progress-bar--track: #2a3e4c;\n$torrent-details--header--progress-bar--fill--error: #be2558;\n\n$torrent-details--navigation--border: rgba(#040d13, 0.4);\n$torrent-details--navigation--item--background--active: rgba(#349cf4, 0.07);\n$torrent-details--navigation--item--foreground--active: #349cf4;\n$torrent-details--navigation--item--border--active: #349cf4;\n$torrent-details--navigation--background: transparent;\n\n$torrent-details--content--background: rgba(desaturate(#0c1b26, 15%), 0.4);\n\n$torrent-details--directory-tree--parent-directory--foreground: #3a5c74;\n$torrent-details--directory-tree--parent-directory--icon--fill: rgba(#3a5c74, 0.5);\n$torrent-details--directory-tree--file--hover--background: rgba(#1a2d3c, 0.8);\n$torrent-details--directory-tree--file--hover--foreground: #79a7c7;\n$torrent-details--directory-tree--file--hover--border: #1f3647;\n\n$torrent-details--table--foreground: #527893;\n$torrent-details--table--header: rgba(#527893, 0.5);\n$torrent-details--table--header--count--background: rgba(#527893, 0.5);\n$torrent-details--table--header--count--foreground: #0c1b26;\n\n$torrent-details--header--icon--default--fill: rgba(#4d6f87, 0.5);\n\n// tansfer data\n$transfer-data--download: $green;\n$transfer-data--upload: $blue;\n\n// dropdown menu\n$dropdown--background: rgba(#fff, 0.98);\n$dropdown--foreground: #95a2ad;\n$dropdown--container--border: rgba($background, 0.1);\n$dropdown--container--shadow: rgba($background, 0.3);\n$dropdown--label: #abbac7;\n$dropdown--value: #8899a8;\n$dropdown--value--active: #4e6a7c;\n$dropdown--header--border: rgba($background, 0.05);\n$dropdown--item--background--hover: rgba($main-content--background, 0.4);\n$dropdown--item--foreground--hover: darken($dropdown--foreground, 10%);\n$dropdown--item--foreground--active: $blue;\n\n// modal windows\n$modal--background: #f7fafc;\n$modal--heading--background: #fff;\n$modal--heading--foreground: #5c6e80;\n$modal--heading--border: #dde7ed;\n\n$modal--body--foreground: desaturate(lighten($foreground, 20%), 10%);\n\n$modal--tab--foreground: #abbac7;\n$modal--tab--foreground--active: $blue;\n$modal--tab--border--active: $blue;\n\n$modal--overlay: rgba($background, 0.5);\n\n$modal--content--border: rgba($background, 0.1);\n$modal--content--shadow: rgba($background, 0.3);\n\n// directory torrent-details--directory-tree--icon-fill\n$directory-tree--filename--foreground: #527893;\n$directory-tree--directory--foreground: $directory-tree--filename--foreground;\n$directory-tree--directory--foreground--open: #719bb7;\n\n$directory-tree--icon--file: #344b5b;\n$directory-tree--icon--folder: rgba(#527893, 0.4);\n$directory-tree--icon--folder--active: rgba(#82aac5, 0.5);\n$directory-tree--icon--folder--open: rgba(#82aac5, 0.5);\n\n$directory-tree--file-details--foreground: #2b4456;\n$directory-tree--file-details--hover--foreground: #527893;\n\n// scrollbars\n$scrollbar--thumb--background--inactive: rgba(#1a2f3d, 0.3);\n$scrollbar--thumb--background--hover: rgba(#1a2f3d, 0.6);\n$scrollbar--thumb--background--inverted--inactive: rgba(#e9eef2, 0.3);\n$scrollbar--thumb--background--inverted--hover: rgba(#e9eef2, 0.6);\n\n// loading indicator\n$loading-indicator--bar--background: #e9eef2;\n$loading-indicator--bar--background--inverse: rgba(#38586d, 0.7);\n$loading-indicator--tick--background: rgba($blue, 0.75);\n$loading-indicator--tick--background--inverse: rgba($blue, 0.75);\n\n// priority meter\n$priority-meter--track--level-0--background: rgba(#436076, 0.2);\n$priority-meter--bar--level-0--background: #436076;\n$priority-meter--track--level-1--background: rgba($blue, 0.2);\n$priority-meter--bar--level-1--background: $blue;\n$priority-meter--track--level-2--background: rgba($green, 0.2);\n$priority-meter--bar--level-2--background: $green;\n\n// dropzone\n$dropzone--background: #e9eff5;\n$dropzone--foreground: #53718a;\n$dropzone--foreground--hover: darken($dropzone--foreground, 20%);\n$dropzone--foreground--dragging: $blue;\n$dropzone--border: #d6e2ea;\n$dropzone--border--hover: darken($dropzone--border, 20%);\n$dropzone--border--dragging: $blue;\n$dropzone--browse--foreground: $blue;\n$dropzone--icon--fill: #c7d3df;\n$dropzone--icon--fill--hover: darken($dropzone--icon--fill, 15%);\n$dropzone--icon--fill--dragging: $blue;\n","html,\nbody {\n height: 100%;\n overflow: hidden;\n}\n\n.container {\n height: 100%;\n width: 100%;\n}\n\n.flood {\n align-items: stretch;\n display: flex;\n height: 100%;\n}\n\n.application {\n\n &__content {\n display: flex;\n height: 100vh;\n flex: 1 2 auto;\n flex-direction: column;\n position: relative;\n }\n\n &__panel {\n display: flex;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n\n &--torrent-list {\n transition: transform 0.5s;\n z-index: 2;\n\n &.is-open {\n transform: translateX($torrent-details--width);\n }\n }\n\n &--torrent-details {\n right: 100% - $torrent-details--width;\n width: $torrent-details--width;\n z-index: 1;\n }\n }\n}\n\n.torrent {\n\n &__header {\n flex: 1;\n min-height: 35px;\n max-height: 35px;\n }\n\n &__list {\n\n &__wrapper {\n display: flex;\n flex: 1;\n\n &--custom-scroll {\n flex: 1;\n height: auto !important;\n }\n }\n }\n}\n","body {\n background: $background;\n}\n\nul {\n list-style: none;\n}\n",".action-bar {\n background: $action-bar--background;\n color: $action-bar--foreground;\n display: flex;\n flex: 0 0 60px;\n position: relative;\n\n &:after {\n background: $torrent-list--border;\n bottom: 0;\n content: '';\n height: 1px;\n left: 9px;\n position: absolute;\n right: 0;\n width: auto;\n }\n\n &__item {\n flex: 3;\n\n &:first-child {\n text-align: left;\n }\n\n &:last-child {\n text-align: right;\n }\n\n &--sort-torrents {\n max-width: 225px;\n\n .dropdown {\n margin: 5px 0 0 15px;\n\n &__content {\n min-width: 250px;\n }\n }\n }\n\n &--torrent-operations {\n\n .dropdown {\n display: inline-block;\n height: 60px;\n\n &__content {\n min-width: 430px;\n right: 4px;\n }\n }\n }\n }\n\n &__group {\n display: inline-block;\n font-size: 0;\n padding: 0 15px;\n\n &--has-divider {\n position: relative;\n\n &:before {\n background: $action-bar--group--border;\n content: '';\n position: absolute;\n height: 80%;\n left: 0;\n top: 10%;\n width: 1px;\n }\n }\n }\n}\n\n.actions {\n list-style: none;\n}\n\n.action {\n box-shadow:\n 1px 0 transparent,\n -1px 0 transparent;\n cursor: pointer;\n display: inline-block;\n height: 60px;\n position: relative;\n width: 60px;\n text-align: center;\n transition: background 0.25s, box-shadow 0.25s;\n\n &:hover {\n background: $action--background--hover;\n box-shadow:\n 1px 0 $action--border--hover,\n -1px 0 $action--border--hover;\n\n .icon {\n fill: $action--foreground--hover;\n }\n }\n\n &__label {\n display: block;\n position: absolute;\n top: 100%;\n visibility: hidden;\n }\n\n .icon {\n fill: $action--foreground;\n height: 25px;\n left: 50%;\n position: absolute;\n top: 50%;\n transition: fill 0.25s;\n transform: translateX(-50%) translateY(-50%);\n width: 30px;\n }\n}\n",".application {\n\n &__content {\n background: $main-content--background;\n }\n}\n",".badge {\n background: $sidebar-filter--count--background;\n border-radius: 100px;\n color: $sidebar-filter--count--foreground;\n display: inline-block;\n font-size: 0.8em;\n font-weight: 800;\n line-height: 1;\n margin-left: 10px;\n padding: 1px 5px;\n transition: background 0.25s;\n vertical-align: baseline;\n}\n",".client-stats {\n height: 200px;\n position: relative;\n\n .loading-indicator {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n }\n\n .transfer-data-enter {\n opacity: 0;\n transition: opacity 1s;\n\n &.transfer-data-enter-active {\n opacity: 1;\n }\n }\n\n .transfer-data-leave {\n opacity: 1;\n transition: opacity 1s;\n\n &.transfer-data-leave-active {\n opacity: 0;\n }\n }\n}\n\n.client-stat {\n align-items: center;\n display: flex;\n height: 100px;\n padding: 0 20px;\n\n &__icon,\n &__data {\n position: relative;\n vertical-align: top;\n z-index: 1;\n }\n\n &__icon {\n flex: 0 0 23px;\n\n .icon {\n display: inline-block;\n height: 25px;\n margin: 6px 0 0 -5px;\n width: auto;\n }\n }\n\n &__data {\n flex: 1;\n\n &--primary,\n &--secondary {\n display: block;\n font-weight: 100;\n line-height: 1.2;\n }\n\n &--primary {\n font-size: 1.75em;\n white-space: nowrap;\n\n .unit {\n font-size: 0.65em;\n margin-bottom: 0;\n opacity: 0.5;\n position: relative;\n top: -0.1em;\n }\n }\n\n &--secondary {\n font-size: 0.8em;\n font-style: italic;\n font-weight: 400;\n }\n }\n}\n\n.client-stat {\n\n &--limits {\n background: none;\n border: none;\n color: $client-stats--limits--foreground;\n display: block;\n outline: none;\n padding: 10px 15px;\n font-size: 0.85em;\n text-align: left;\n transition: color 0.25s;\n vertical-align: middle;\n width: 100%;\n\n .icon {\n display: inline-block;\n fill: $client-stats--limits--foreground;\n margin: -2px 5px 0 0;\n transition: fill 0.25s;\n vertical-align: middle;\n width: 14.5px;\n\n .limits {\n\n &__bars {\n\n &--top {\n opacity: 0.4;\n }\n\n &--bottom {\n opacity: 0.6;\n }\n }\n }\n }\n\n &:hover {\n color: $client-stats--limits--icon--hover;\n\n .icon {\n fill: $client-stats--limits--icon--hover;\n }\n }\n }\n}\n\n.client-stat {\n position: relative;\n\n .graph {\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 0;\n\n svg {\n height: 100%;\n width: 100%;\n }\n\n &__line {\n fill: none;\n\n &--limit {\n stroke-dasharray: 3px 4px;\n stroke-width: 1px;\n }\n\n &--rate {\n stroke-width: 1.1px;\n }\n }\n\n }\n\n &--download {\n\n .icon {\n fill: $client-stats--download--secondary--foreground;\n }\n\n .client-stat {\n\n &__data {\n\n &--primary {\n color: $client-stats--download--primary--foreground;\n }\n\n &--secondary {\n color: $client-stats--download--secondary--foreground;\n }\n\n }\n\n }\n\n .graph {\n\n .graph--download--gradient--top {\n stop-color: $client-stats--download--graph--fill--top;\n }\n\n .graph--download--gradient--bottom {\n stop-color: $client-stats--download--graph--fill--bottom;\n }\n\n &__area {\n fill: url('#graph--download--gradient')\n }\n\n &__line {\n\n &--limit {\n stroke: $client-stats--download--limits--line;\n }\n\n &--rate {\n stroke: $client-stats--download--graph--stroke;\n }\n }\n\n }\n\n }\n\n &--upload {\n\n .icon {\n fill: $client-stats--upload--secondary--foreground;\n }\n\n .client-stat {\n\n &__data {\n\n &--primary {\n color: $client-stats--upload--primary--foreground;\n }\n\n &--secondary {\n color: $client-stats--upload--secondary--foreground;\n }\n\n }\n\n }\n\n .graph {\n\n .graph--upload--gradient--top {\n stop-color: $client-stats--upload--graph--fill--top;\n }\n\n .graph--upload--gradient--bottom {\n stop-color: $client-stats--upload--graph--fill--bottom;\n }\n\n &__area {\n fill: url('#graph--upload--gradient')\n }\n\n &__line {\n\n &--limit {\n stroke: $client-stats--upload--limits--line;\n }\n\n &--rate {\n stroke: $client-stats--upload--graph--stroke;\n }\n }\n\n }\n\n }\n\n}\n",".directory-tree {\n\n .icon {\n display: inline-block;\n fill: $directory-tree--icon--folder;\n height: 14px;\n margin-right: 6px;\n width: 14px;\n }\n\n &__node {\n color: $directory-tree--filename--foreground;\n line-height: 1.75;\n text-overflow: ellipsis;\n vertical-align: middle;\n white-space: nowrap;\n\n &--group {\n padding-left: 10px;\n position: relative;\n\n &:after {\n background: rgba(#527893, 0.1);\n content: '';\n height: 100%;\n left: 5px;\n position: absolute;\n top: -5px;\n width: 2px;\n }\n }\n\n &--directory {\n color: $directory-tree--directory--foreground;\n cursor: pointer;\n transition: color 0.125s;\n\n &.is-expanded {\n color: $directory-tree--directory--foreground--open;\n font-weight: 500;\n\n .icon {\n fill: $directory-tree--icon--folder--active;\n }\n }\n\n .icon {\n fill: $directory-tree--icon--folder;\n }\n }\n\n .file {\n align-items: center;\n display: flex;\n line-height: 1.4;\n margin-left: -9px;\n padding: 2px 0 2px 9px;\n transition: background 0.25s, box-shadow 0.25s, color 0.25s;\n width: 100%;\n\n &:hover {\n background: $torrent-details--directory-tree--file--hover--background;\n box-shadow:\n 0 1px 0 $torrent-details--directory-tree--file--hover--border,\n 0 -1px 0 $torrent-details--directory-tree--file--hover--border;\n color: $torrent-details--directory-tree--file--hover--foreground;\n\n .file {\n\n &__detail {\n\n &--size,\n &--priority {\n color: $directory-tree--file-details--hover--foreground;\n }\n }\n }\n }\n\n .icon {\n fill: $directory-tree--icon--file;\n margin-top: -3px;\n vertical-align: middle;\n }\n\n &__detail {\n flex: 1 1 auto;\n overflow: hidden;\n padding-right: $spacing-unit * 1/4;\n text-overflow: ellipsis;\n\n &--size,\n &--priority {\n color: $directory-tree--file-details--foreground;\n flex: 0 0 auto;\n font-size: 0.95em;\n text-align: right;\n transition: color 0.25s;\n }\n\n &--priority {\n\n .icon {\n height: auto;\n margin-right: 0;\n width: 16px;\n }\n }\n\n &:last-child {\n padding-right: 0;\n }\n }\n }\n\n &--file-list {\n margin-bottom: 3px;\n }\n }\n\n &__parent-directory {\n margin-left: -1px;\n overflow: hidden;\n text-overflow: ellipsis;\n\n .icon {\n fill: $torrent-details--directory-tree--parent-directory--icon--fill;\n margin-right: 8px;\n vertical-align: middle;\n }\n }\n\n &__tree {\n\n .directory-tree__tree {\n padding-left: 6px;\n }\n }\n}\n",".dropdown {\n display: inline-block;\n outline: none;\n position: relative;\n z-index: 2;\n\n &__button,\n &__trigger {\n cursor: pointer;\n }\n\n &__button {\n display: block;\n padding: 12px 15px 7px 15px;\n text-align: left;\n width: auto;\n word-wrap: none;\n }\n\n &__content {\n background: $dropdown--background;\n border-radius: 3px;\n box-shadow:\n 0 0 0 1px $dropdown--container--border,\n 0 0 35px $dropdown--container--shadow;\n color: $dropdown--foreground;\n left: 0;\n position: absolute;\n text-align: left;\n top: 0;\n z-index: 2;\n }\n\n &.is-expanded {\n\n .dropdown {\n\n &__header {\n\n .dropdown {\n\n &__value {\n color: $dropdown--value--active;\n }\n }\n }\n }\n }\n\n &__label {\n color: $dropdown--label;\n display: block;\n font-size: 0.65em;\n font-weight: 500;\n letter-spacing: 0.1em;\n line-height: 0.9em;\n text-transform: uppercase;\n\n .dropdown__button & {\n cursor: pointer;\n }\n }\n\n &__value {\n color: $dropdown--value;\n transition: color 0.25s;\n\n &:after {\n border-top: 5px solid $dropdown--value;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n content: '';\n display: inline-block;\n margin-left: 10px;\n vertical-align: middle;\n }\n }\n\n &__header {\n position: relative;\n\n &:after {\n background: $dropdown--header--border;\n bottom: 0;\n content: '';\n display: block;\n height: 1px;\n left: 5%;\n position: absolute;\n width: 90%;\n }\n }\n\n &__items {\n display: flex;\n padding: 10px 0;\n }\n\n &__list {\n flex: 1;\n }\n\n &__item {\n padding: 5px 15px;\n\n &.is-selectable {\n cursor: pointer;\n display: block;\n font-size: 0.9em;\n transition: background 0.25s, color 0.25s;\n\n &:hover {\n background: $dropdown--item--background--hover;\n color: $dropdown--item--foreground--hover;\n }\n\n &.is-selected {\n color: $dropdown--item--foreground--active;\n }\n }\n }\n\n &--align-right & {\n left: auto;\n right: 0;\n }\n}\n\n.dropdown {\n\n &__content {\n\n &-enter {\n animation: fade-in 0.25s both;\n }\n\n &-leave {\n animation: fade-out 0.25s both;\n }\n }\n}\n\n.dropdown {\n\n &__content {\n\n &__container {\n padding: 25px 30px;\n }\n }\n}\n","$dropzone--file--icon--fill: #adbfce;\n\n.dropzone {\n align-items: center;\n background: $dropzone--background;\n border: 1px dashed $dropzone--border;\n border-radius: 4px;\n color: $dropzone--foreground;\n display: flex;\n flex-direction: column;\n text-align: center;\n transition: border 0.25s, color 0.25s;\n width: 100%;\n\n &:hover {\n border-color: $dropzone--border--hover;\n\n .dropzone__icon {\n\n .icon {\n fill: $dropzone--icon--fill--hover;\n }\n }\n }\n\n &--is-dragging {\n\n &,\n &:hover {\n border-color: $dropzone--border--dragging;\n color: $dropzone--foreground--dragging;\n\n .dropzone__icon {\n\n .icon {\n fill: $dropzone--icon--fill--dragging;\n }\n }\n }\n }\n\n &__icon {\n\n .icon {\n\n &--files {\n fill: $dropzone--icon--fill;\n height: 64px;\n transition: fill 0.25s;\n width: 64px;\n\n &__file {\n\n &--right,\n &--left {\n fill-opacity: 0.5;\n }\n }\n }\n }\n }\n\n &__copy {\n cursor: pointer;\n flex: 1;\n font-size: 0.85em;\n padding: $spacing-unit;\n width: 100%;\n }\n\n &__browse-button {\n color: $dropzone--browse--foreground;\n text-decoration: underline;\n }\n\n &__selected-files {\n @extend .textbox;\n @extend .textbox.is-fulfilled;\n font-size: 0.8em;\n padding: $spacing-unit * 1/2;\n width: 100%;\n\n &__file {\n display: block;\n text-align: left;\n\n .icon {\n display: inline-block;\n fill: $dropzone--file--icon--fill;\n height: 12px;\n margin-right: 4px;\n vertical-align: baseline;\n width: 12px;\n }\n\n .icon--close {\n height: 8px;\n margin-left: 4px;\n margin-right: 0;\n vertical-align: middle;\n width: 8px;\n }\n }\n }\n}\n",".floating-action {\n\n &__button {\n background: $textbox-repeater--button--background;\n border: none;\n border-radius: 16px;\n box-shadow: 0 0 0 1px $textbox-repeater--button--border;\n cursor: pointer;\n height: 16px;\n outline: none;\n margin-right: 6px;\n padding: 0;\n position: relative;\n transition: background 0.25s, box-shadow 0.25s;\n width: 16px;\n\n &:last-child {\n margin-right: 0;\n }\n\n &:hover {\n background: $textbox-repeater--button--background--hover;\n box-shadow: 0 0 0 1px $textbox-repeater--button--border--hover;\n\n .icon {\n fill: $textbox-repeater--button--foreground--hover;\n }\n }\n\n .icon {\n height: 8px;\n fill: $textbox-repeater--button--foreground;\n left: 50%;\n position: absolute;\n top: 50%;\n transition: fill 0.25s;\n transform: translate(-50%, -50%);\n width: 8px;\n }\n }\n}\n","@keyframes loading-indicator-dots-pulse {\n 0% {\n fill-opacity: 0.2;\n }\n\n 100% {\n fill-opacity: 0.8;\n }\n}\n\n.icon {\n\n &--eta {\n\n .icon {\n\n &__ring {\n fill-opacity: 1;\n }\n }\n }\n\n &--loading-indicator {\n\n .loading-indicator {\n\n &--dots {\n\n &__dot {\n animation: loading-indicator-dots-pulse 0.6s linear alternate infinite;\n fill: $white;\n\n &--center {\n animation-delay: 0.2s;\n }\n\n &--right {\n animation-delay: 0.4s;\n }\n }\n }\n }\n }\n}\n","@keyframes loading-indicator-swipe {\n 0% {\n transform: translateX(-100%);\n }\n\n 50% {\n transform: translateX(400%);\n }\n\n 100% {\n transform: translateX(400%);\n }\n}\n\n.loading-indicator {\n height: 18px;\n position: relative;\n width: 32px;\n\n &.is-inverse {\n\n .loading-indicator {\n\n &__bar {\n background: $loading-indicator--bar--background--inverse;\n\n &:after {\n background: $loading-indicator--tick--background--inverse;\n }\n }\n }\n }\n\n &__bar {\n background: $loading-indicator--bar--background;\n border-radius: 10px;\n height: 3px;\n left: 0;\n overflow: hidden;\n position: absolute;\n transform: translateY(0);\n width: 100%;\n\n &:after {\n animation: loading-indicator-swipe 3s ease-in-out infinite;\n background: $loading-indicator--tick--background;\n border-radius: 10px;\n content: '';\n display: block;\n height: 100%;\n transform: translateX(-100%);\n width: 25%;\n }\n\n &--1 {\n top: 0;\n }\n\n &--2 {\n top: 50%;\n transform: translateY(-50%);\n\n &:after {\n animation-delay: 0.5s;\n }\n }\n\n &--3 {\n bottom: 0;\n\n &:after {\n animation-delay: 1s;\n }\n }\n }\n}\n","$modal--border-radius: 3px;\n$modal--padding--horizontal: $spacing-unit;\n$modal--padding--vertical: $modal--padding--horizontal * 4/5;\n\n$modal--content--padding--top: $spacing-unit * 4/5;\n$modal--content--padding--right: $spacing-unit;\n$modal--content--padding--bottom: $spacing-unit * 4/5;\n$modal--content--padding--left: $spacing-unit;\n\n$modal--actions--margin--top: $spacing-unit;\n\n$modal--tabs--margin--top: $spacing-unit * 2/5;\n$modal--tabs--margin--right: $spacing-unit * -1/5;\n$modal--tabs--margin--bottom: 0;\n$modal--tabs--margin--left: $spacing-unit * -1/5;\n\n.modal {\n background: $modal--overlay;\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n transition: opacity 0.5s;\n width: 100%;\n z-index: 100;\n\n &--align-center {\n text-align: center;\n }\n\n &__tabs {\n color: $modal--tab--foreground;\n font-size: 0.7em;\n font-weight: 400;\n margin: $modal--tabs--margin--top $modal--tabs--margin--right $modal--tabs--margin--bottom $modal--tabs--margin--left;\n\n .modal {\n\n &__tab {\n cursor: pointer;\n display: inline-block;\n margin-right: $spacing-unit * 1/4;\n padding: $spacing-unit * 1/5;\n position: relative;\n\n &:after {\n bottom: 0;\n content: '';\n height: 1px;\n left: 0;\n position: absolute;\n right: 0;\n transition: background 0.25s;\n }\n\n &:last-child {\n margin-right: 0;\n }\n\n &.is-active {\n color: $modal--tab--foreground--active;\n font-weight: 800;\n\n &:after {\n background: $modal--tab--border--active;\n }\n }\n }\n }\n }\n\n &__header {\n background: $modal--heading--background;\n border-radius: $modal--border-radius $modal--border-radius 0 0;\n box-shadow: inset 0 -1px 0 $modal--heading--border;\n color: $modal--heading--foreground;\n flex: 0 0 auto;\n font-size: 1.25em;\n font-weight: 300;\n line-height: 1;\n padding: $modal--padding--vertical $modal--padding--horizontal;\n\n &.has-tabs {\n padding-bottom: 0;\n }\n }\n\n &__content {\n flex: 1 1 auto;\n overflow: auto;\n padding: $modal--content--padding--top $modal--content--padding--right $modal--content--padding--bottom $modal--content--padding--left;\n\n &__wrapper {\n background: $modal--background;\n border-radius: $modal--border-radius;\n box-shadow:\n 0 0 0 1px $modal--content--border,\n 0 0 35px $modal--content--shadow;\n display: flex;\n flex-direction: column;\n left: 50%;\n max-height: 80%;\n max-width: 80%;\n position: absolute;\n top: 10%;\n transform: translate(-50%, 0);\n width: 500px;\n }\n }\n\n &__body {\n color: $modal--body--foreground;\n font-size: 0.9em;\n }\n\n &__actions {\n margin-top: $modal--actions--margin--top;\n }\n\n &__button-group {\n text-align: right;\n\n .modal--align-center & {\n text-align: center;\n }\n\n .button {\n\n & + .button {\n margin-left: 20px;\n }\n }\n }\n\n &__animation-enter {\n opacity: 0;\n }\n\n &__animation-enter-active {\n opacity: 1;\n }\n\n &__animation-leave {\n opacity: 1;\n pointer-events: none;\n }\n\n &__animation-leave-active {\n opacity: 0;\n }\n}\n",".priority-meter {\n height: 8px;\n position: relative;\n\n &__wrapper {\n cursor: pointer;\n display: inline-block;\n padding: 5px;\n user-select: none;\n vertical-align: middle;\n }\n\n &:before,\n &:after {\n content: '';\n display: block;\n position: absolute;\n }\n\n &:before {\n height: 2px;\n left: 0;\n top: 3px;\n transition: background 0.25s;\n width: 100%;\n }\n\n &:after {\n height: 100%;\n top: 0;\n transition: background 0.25s, left 0.25s;\n width: 2px;\n }\n\n &--max-2 {\n width: 18px;\n\n &.priority-meter {\n\n &--level-0 {\n\n &:before {\n background: $priority-meter--track--level-0--background;\n }\n\n &:after {\n left: 0;\n background: $priority-meter--bar--level-0--background;\n }\n }\n\n &--level-1 {\n\n &:before {\n background: $priority-meter--track--level-1--background;\n }\n\n &:after {\n left: 8px;\n background: $priority-meter--bar--level-1--background;\n }\n }\n\n &--level-2 {\n\n &:before {\n background: $priority-meter--track--level-2--background;\n }\n\n &:after {\n background: $priority-meter--bar--level-2--background;\n left: 16px;\n }\n }\n }\n }\n\n &--max-3 {\n width: 26px;\n\n &.priority-meter {\n\n &--level-0 {\n\n &:before {\n background: $priority-meter--track--level-0--background;\n }\n\n &:after {\n left: 0;\n background: $priority-meter--bar--level-0--background;\n }\n }\n\n &--level-1 {\n\n &:before {\n background: $priority-meter--track--level-1--background;\n }\n\n &:after {\n left: 8px;\n background: $priority-meter--bar--level-1--background;\n }\n }\n\n &--level-2 {\n\n &:before {\n background: $priority-meter--track--level-2--background;\n }\n\n &:after {\n background: $priority-meter--bar--level-2--background;\n left: 16px;\n }\n }\n\n &--level-3 {\n\n &:before {\n background: $priority-meter--track--level-2--background;\n }\n\n &:after {\n background: $priority-meter--bar--level-2--background;\n left: 24px;\n }\n }\n }\n }\n}\n",".progress-bar {\n height: 3px;\n position: relative;\n transition: opacity 0.25s;\n z-index: 1;\n\n .is-selected.is-stopped & {\n opacity: 0.5;\n }\n\n &:after {\n background: $progress-bar--background;\n content: '';\n height: 1px;\n left: 0;\n position: absolute;\n z-index: 0;\n top: 1px;\n transition: background 0.25s;\n width: 100%;\n\n .is-selected & {\n background: $progress-bar--background--selected;\n }\n\n .is-selected.is-stopped & {\n background: $progress-bar--background--selected--stopped;\n }\n }\n\n &__fill {\n background: $progress-bar--fill;\n bottom: 0;\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n transition: background 0.25s, width 0.25s;\n z-index: 1;\n\n .is-seeding & {\n background: $progress-bar--fill--completed;\n }\n\n .is-completed &,\n .is-stopped & {\n background: $progress-bar--fill--stopped;\n }\n\n .is-selected & {\n background: $progress-bar--fill--selected;\n }\n\n .has-error & {\n background: $progress-bar--fill--error;\n }\n }\n}\n",".scrollbars {\n\n &__thumb {\n background: $scrollbar--thumb--background--inactive;\n border-radius: 10px;\n cursor: pointer;\n opacity: 0;\n transition: background 0.25s, opacity 0.5s;\n\n &:active {\n opacity: 1;\n }\n\n &:hover,\n &:active {\n background: $scrollbar--thumb--background--hover;\n }\n\n .is-inverted & {\n background: $scrollbar--thumb--background--inverted--inactive;\n\n &:hover,\n &:active {\n background: $scrollbar--thumb--background--inverted--hover;\n }\n }\n }\n\n &:hover {\n\n .scrollbars__thumb {\n opacity: 1;\n }\n }\n}\n",".application {\n\n &__sidebar {\n box-shadow: 1px 0 $sidebar--border;\n color: $sidebar--foreground;\n flex: 1;\n min-width: 200px;\n max-width: 240px;\n overflow: auto;\n position: relative;\n z-index: 2;\n }\n}\n\n.sidebar {\n\n &__item {\n\n &--search {\n position: relative;\n\n .icon {\n fill: $search-torrents--icon--foreground;\n height: 22px;\n left: 17px;\n opacity: 0.5;\n position: absolute;\n top: 50%;\n transition: fill 0.25s, opacity 0.25s;\n transform: translateY(-50%);\n width: 22px;\n }\n\n .textbox {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border: 1px solid $search-torrents--border;\n border-left: none;\n border-right: none;\n border-radius: 0;\n background: $search-torrents--background;\n box-shadow: none;\n color: $search-torrents--foreground;\n display: block;\n font-size: 1em;\n outline: none;\n padding: 12px 0 12px 45px;\n transition: background 0.25s, border 0.25s, color 0.25s;\n width: 100%;\n\n &::placeholder {\n color: $search-torrents--placeholder;\n font-style: italic;\n transition: color 0.25s;\n }\n }\n\n &.is-in-use {\n\n .icon {\n fill: $search-torrents--icon--foreground--active;\n opacity: 1;\n }\n\n .textbox {\n background: $search-torrents--background--active;\n border-bottom: 1px solid $search-torrents--border--active;\n border-top: 1px solid $search-torrents--border--active;\n color: $search-torrents--foreground--active;\n\n &::placeholder {\n color: $search-torrents--placeholder--active;\n }\n }\n }\n }\n\n &--speed-limit {\n padding-left: 5px;\n padding-top: 5px;\n\n .dropdown {\n\n &__content {\n min-width: 180px;\n }\n\n &__items {\n font-size: 0.9em;\n }\n }\n }\n }\n}\n",".sidebar-filter {\n font-size: 0.85em;\n padding: 30px 0;\n\n & + .sidebar-filter {\n padding-top: 0;\n }\n\n &__item {\n color: $sidebar-filter--foreground;\n cursor: pointer;\n font-weight: 400;\n padding: 3px 20px;\n transition: color 0.25s;\n\n &:hover {\n color: $sidebar-filter--foreground--hover;\n\n .icon {\n fill: $sidebar-filter--foreground--hover;\n }\n }\n\n &.is-active {\n color: $sidebar-filter--foreground--active;\n font-weight: 700;\n\n .badge {\n background: $sidebar-filter--count--background--active;\n }\n\n .icon {\n fill: $sidebar-filter--foreground--active;\n }\n }\n\n .icon {\n display: inline-block;\n fill: $sidebar-filter--foreground;\n height: 14px;\n margin-right: 7px;\n transition: fill 0.25s;\n vertical-align: middle;\n width: auto;\n }\n }\n\n .badge {\n background: $sidebar-filter--count--background;\n color: $sidebar-filter--count--foreground;\n }\n}\n\n\n.sidebar-filter {\n\n &__item {\n\n &--heading {\n cursor: default;\n font-size: 0.8em;\n font-weight: 500;\n letter-spacing: 0.1em;\n text-transform: uppercase;\n\n &,\n &:hover {\n color: $sidebar-filter--foreground--header;\n }\n }\n }\n}\n",".textbox-repeater {\n\n .floating-action {\n\n &__group {\n margin-top: -8px;\n position: absolute;\n right: -8px;\n top: 50%;\n }\n\n &__button {\n position: relative;\n }\n }\n\n .textbox {\n\n &__wrapper {\n position: relative;\n }\n }\n\n .form {\n\n &__row {\n\n & + .form__row {\n margin-top: $spacing-unit * 1/2;\n }\n }\n }\n}\n",".application {\n\n &__panel {\n\n &--torrent-details {\n background: $torrent-details--background;\n }\n }\n}\n\n.torrent-details {\n background: $torrent-details--background;\n bottom: 0;\n box-shadow: -1px 0 0 $torrent-details--border;\n display: flex;\n flex-direction: column;\n font-size: 0.8em;\n left: 0;\n min-width: 400px;\n overflow: auto;\n position: absolute;\n right: 0;\n top: 0;\n transition: opacity 1s;\n z-index: 2;\n\n &__wrapper {\n flex: 1;\n height: 100%;\n }\n\n &__scroll-container {\n height: auto !important;\n }\n\n &__header {\n box-shadow: 0 1px 0 $torrent-details--header--border;\n flex: 0 0 auto;\n padding: $spacing-unit * 1/2 $spacing-unit $spacing-unit * 2/3 $spacing-unit;\n\n &.has-error {\n\n .progress-bar {\n\n &__fill {\n background: $torrent-details--header--progress-bar--fill--error;\n }\n }\n }\n\n &.is-stopped {\n\n .progress-bar {\n\n &__fill {\n background: #7b9cb4;\n }\n }\n }\n\n .progress-bar {\n\n &:after {\n background: $torrent-details--header--progress-bar--track;\n }\n }\n }\n\n &__action {\n cursor: pointer;\n transition: color 0.25s;\n\n .icon {\n transition: fill 0.25s;\n }\n\n &.is-active {\n color: $blue;\n\n .icon {\n fill: $blue;\n }\n }\n }\n\n &__table {\n color: $torrent-details--table--foreground;\n width: 100%;\n\n &__heading {\n\n &--primary {\n color: $torrent-details--directory-tree--parent-directory--foreground;\n font-size: 1.125em;\n }\n\n &--secondary {\n color: $torrent-details--table--header;\n font-size: 0.7em;\n letter-spacing: 0.1em;\n text-transform: uppercase;\n }\n }\n }\n\n &__content {\n flex: 1;\n overflow: auto;\n padding: $spacing-unit * 2/3 $spacing-unit;\n\n &__wrapper {\n background: $torrent-details--content--background;\n display: flex;\n flex: 1;\n overflow: hidden;\n }\n }\n\n &__navigation {\n background: $torrent-details--navigation--background;\n box-shadow: 1px 0 0 $torrent-details--navigation--border;\n min-width: 125px;\n padding: $spacing-unit * 1/2 0;\n\n .navigation {\n\n &__item {\n cursor: pointer;\n padding: $spacing-unit * 1/4 $spacing-unit;\n text-align: right;\n transition: background 0.25s, box-shadow 0.25s, color 0.25s;\n\n &.is-active {\n background: $torrent-details--navigation--item--background--active;\n box-shadow: 1px 0 0 $torrent-details--navigation--item--border--active;\n color: $torrent-details--navigation--item--foreground--active;\n }\n }\n }\n }\n\n &__section {\n\n &__heading,\n &__null-data {\n color: $torrent-details--directory-tree--parent-directory--foreground;\n font-size: 1.15em;\n margin-bottom: $spacing-unit * 1/10;\n }\n\n &__heading {\n\n .badge {\n background: $torrent-details--table--header--count--background;\n color: $torrent-details--table--header--count--foreground;\n }\n }\n }\n}\n\n.torrent-details {\n\n &__heading {\n color: $torrent-details--header--name--foreground;\n font-size: 1.7em;\n font-weight: 300;\n }\n\n &__sub-heading {\n display: flex;\n margin-bottom: $spacing-unit * 1/4;\n\n &__secondary {\n color: $torrent-details--header--tertiary--foreground;\n display: flex;\n flex: 1 0 auto;\n\n &:first-child {\n justify-content: flex-start;\n }\n\n &:last-child {\n justify-content: flex-end;\n }\n }\n\n &__tertiary {\n flex: 0 0 auto;\n margin-right: 1em;\n\n .icon {\n fill: $torrent-details--header--icon--default--fill;\n height: 12px;\n margin-right: 3px;\n margin-top: -3px;\n vertical-align: middle;\n width: 12px;\n }\n\n .priority-meter {\n display: inline-block;\n margin-top: -1px;\n margin-right: 6px;\n vertical-align: middle;\n\n &__wrapper {\n margin-top: -3px;\n padding: 0;\n }\n }\n\n &--download {\n color: $blue;\n\n .icon {\n fill: $blue;\n }\n }\n\n &--upload {\n color: $green;\n\n .icon {\n fill: $green;\n }\n }\n\n &:last-child {\n margin-right: 0;\n }\n }\n }\n}\n\n.torrent-details-enter {\n opacity: 0;\n}\n\n.torrent-details-enter-active {\n opacity: 1;\n}\n\n.torrent-details-leave {\n opacity: 0;\n transition: opacity 0.5s;\n}\n",".torrents {\n display: flex;\n flex: 1 1 100px;\n position: relative;\n\n &:after {\n background: $torrent-list--background;\n bottom: 0;\n box-shadow: -1px 0 0 0 $torrent-list--border;\n content: '';\n height: auto;\n left: 10px;\n position: absolute;\n right: 0;\n top: 0;\n }\n\n .loading-indicator {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n }\n}\n\n.torrent {\n\n &__list {\n margin: 0 0 0 10px;\n padding: 10px 0;\n position: relative;\n\n &__wrapper {\n list-style: none;\n max-width: 100%;\n opacity: 1;\n overflow: auto;\n transition: opacity 1s;\n user-select: none;\n z-index: 1;\n }\n\n &--loading {\n\n &-enter {\n opacity: 0;\n transition: opacity 1s;\n\n &-active {\n opacity: 1;\n }\n }\n\n &-leave {\n opacity: 1;\n transition: opacity 1s;\n\n &-active {\n opacity: 0;\n }\n }\n }\n\n &--empty {\n opacity: 0;\n }\n }\n}\n\n.torrent {\n cursor: default;\n padding: 10px 20px;\n position: relative;\n transition: background 0.25s;\n\n &:hover {\n background: $torrent--background--hover;\n\n .torrent {\n\n &__more-info {\n opacity: 1;\n }\n }\n }\n\n &.is-selected {\n background: $torrent--background--selected;\n }\n\n &__more-info {\n height: 20px;\n margin-top: -10px;\n position: absolute;\n left: -7px;\n opacity: 0;\n top: 50%;\n transition: background 0.25s, box-shadow 0.25s, opacity 0.25s;\n width: 20px;\n }\n}\n\n.torrent {\n\n &__details {\n align-items: center;\n display: flex;\n flex: 1;\n flex-flow: row wrap;\n list-style: none;\n\n &--primary,\n &--secondary,\n &--tertiary {\n transition: color 0.25s;\n }\n\n &--primary {\n color: $torrent--primary--foreground;\n flex: 4;\n line-height: 1.3;\n white-space: nowrap;\n\n .is-stopped & {\n color: $torrent--primary--foreground--stopped;\n }\n\n .is-selected & {\n color: $torrent--primary--foreground--selected;\n }\n\n .is-selected.is-stopped & {\n color: $torrent--primary--foreground--selected--stopped;\n }\n }\n\n &--secondary {\n align-items: flex-end;\n color: $torrent--secondary--foreground;\n flex: 1;\n font-size: 0.75em;\n min-width: 200px;\n\n li {\n flex: 1 1 auto;\n min-width: 15%;\n\n &.torrent__details--ratio {\n max-width: 30px;\n }\n }\n\n .is-stopped & {\n color: $torrent--secondary--foreground--stopped;\n }\n\n .is-selected & {\n color: $torrent--secondary--foreground--selected;\n }\n\n .is-selected.is-stopped & {\n color: $torrent--secondary--foreground--selected--stopped;\n }\n }\n\n &--tertiary {\n color: $torrent--tertiary--foreground;\n display: block;\n font-size: 0.75em;\n margin: 0 0 3px 0;\n\n li {\n display: inline-block;\n margin-right: 1em;\n\n &:last-child {\n margin-right: 0;\n }\n }\n\n .is-stopped & {\n color: $torrent--tertiary--foreground--stopped;\n }\n\n .is-selected & {\n color: $torrent--tertiary--foreground--selected;\n }\n\n .is-selected.is-stopped & {\n color: $torrent--tertiary--foreground--selected--stopped;\n }\n }\n\n &__label {\n margin-right: 0.5em;\n opacity: 0.5;\n }\n }\n}\n\n.torrent {\n\n &__details {\n\n &--eta {\n opacity: 0;\n transition: opacity 1s, visibility 1s;\n visibility: hidden;\n\n .torrent__details--segment {\n margin-right: 0.25em;\n\n &:last-child {\n margin-right: 0;\n }\n }\n\n .is-actively-downloading & {\n opacity: 1;\n visibility: visible;\n }\n }\n }\n}\n\n.view {\n\n &--torrent-list {\n background: #e9eef2;\n box-shadow: -1px 0 $torrent-list--border;\n display: flex;\n flex-direction: column;\n flex: 1;\n flex: 0 1 100%;\n }\n}\n",".transfer-data {\n\n &--download {\n color: $transfer-data--download;\n\n .icon {\n fill: $transfer-data--download;\n }\n }\n\n &--upload {\n color: $transfer-data--upload;\n\n .icon {\n fill: $transfer-data--upload;\n }\n }\n}\n"],"sourceRoot":"/source/"} \ No newline at end of file +{"version":3,"sources":["style.css","../../../node_modules/inuit-defaults/_settings.defaults.scss","../../../node_modules/inuit-normalize/_generic.normalize.scss","tools/_variables.scss","base/_typography.scss","../../../node_modules/inuit-reset/_generic.reset.scss","../../../node_modules/inuit-box-sizing/_generic.box-sizing.scss","../../../node_modules/inuit-page/_base.page.scss","tools/_reset.scss","base/_animations.scss","base/_form-elements.scss","tools/_colors.scss","base/_layout.scss","base/_main.scss","components/_action-bar.scss","components/_application-content.scss","components/_badge.scss","components/_client-stats.scss","components/_directory-tree.scss","components/_dropdown.scss","components/_dropzone.scss","components/_floating-action.scss","components/_icons.scss","components/_loading-indicator.scss","components/_modals.scss","components/_priority-meter.scss","components/_progress-bar.scss","components/_scrollbars.scss","components/_sidebar.scss","components/_sidebar-filter.scss","components/_textbox-repeater.scss","components/_torrent-details-panel.scss","components/_torrents.scss","components/_transfer-data.scss"],"names":[],"mappings":"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","file":"style.css","sourcesContent":["@charset \"UTF-8\";\n/*!\n * inuitcss, by @csswizardry\n *\n * github.com/inuitcss | inuitcss.com\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n/**\n * 1. Set default font family to sans-serif.\n * 2. Prevent iOS and IE text size adjust after device orientation change,\n * without disabling user zoom.\n */\n@import url(http://fonts.googleapis.com/css?family=Roboto:400italic,700italic,300,700,300italic,400);\n@import url(\"http://fonts.googleapis.com/css?family=Roboto:500,400italic,300,700,400\");\nhtml {\n font-family: sans-serif;\n /* 1 */\n -ms-text-size-adjust: 100%;\n /* 2 */\n -webkit-text-size-adjust: 100%;\n /* 2 */ }\n\n/**\n * Remove default margin.\n */\nbody {\n margin: 0; }\n\n/* HTML5 display definitions\n ========================================================================== */\n/**\n * Correct `block` display not defined for any HTML5 element in IE 8/9.\n * Correct `block` display not defined for `details` or `summary` in IE 10/11\n * and Firefox.\n * Correct `block` display not defined for `main` in IE 11.\n */\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block; }\n\n/**\n * 1. Correct `inline-block` display not defined in IE 8/9.\n * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n */\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n /* 1 */\n vertical-align: baseline;\n /* 2 */ }\n\n/**\n * Prevent modern browsers from displaying `audio` without controls.\n * Remove excess height in iOS 5 devices.\n */\naudio:not([controls]) {\n display: none;\n height: 0; }\n\n/**\n * Address `[hidden]` styling not present in IE 8/9/10.\n * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n */\n[hidden],\ntemplate {\n display: none; }\n\n/* Links\n ========================================================================== */\n/**\n * Remove the gray background color from active links in IE 10.\n */\na {\n background-color: transparent; }\n\n/**\n * Improve readability of focused elements when they are also in an\n * active/hover state.\n */\na:active,\na:hover {\n outline: 0; }\n\n/* Text-level semantics\n ========================================================================== */\n/**\n * Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n */\nabbr[title] {\n border-bottom: 1px dotted; }\n\n/**\n * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n */\nb,\nstrong {\n font-weight: bold; }\n\n/**\n * Address styling not present in Safari and Chrome.\n */\ndfn {\n font-style: italic; }\n\n/**\n * Address variable `h1` font-size and margin within `section` and `article`\n * contexts in Firefox 4+, Safari, and Chrome.\n */\nh1 {\n font-size: 2em;\n margin: 0.67em 0; }\n\n/**\n * Address styling not present in IE 8/9.\n */\nmark {\n background: #ff0;\n color: #000; }\n\n/**\n * Address inconsistent and variable font size in all browsers.\n */\nsmall {\n font-size: 80%; }\n\n/**\n * Prevent `sub` and `sup` affecting `line-height` in all browsers.\n */\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline; }\n\nsup {\n top: -0.5em; }\n\nsub {\n bottom: -0.25em; }\n\n/* Embedded content\n ========================================================================== */\n/**\n * Remove border when inside `a` element in IE 8/9/10.\n */\nimg {\n border: 0; }\n\n/**\n * Correct overflow not hidden in IE 9/10/11.\n */\nsvg:not(:root) {\n overflow: hidden; }\n\n/* Grouping content\n ========================================================================== */\n/**\n * Address margin not present in IE 8/9 and Safari.\n */\nfigure {\n margin: 1em 40px; }\n\n/**\n * Address differences between Firefox and other browsers.\n */\nhr {\n box-sizing: content-box;\n height: 0; }\n\n/**\n * Contain overflow in all browsers.\n */\npre {\n overflow: auto; }\n\n/**\n * Address odd `em`-unit font size rendering in all browsers.\n */\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em; }\n\n/* Forms\n ========================================================================== */\n/**\n * Known limitation: by default, Chrome and Safari on OS X allow very limited\n * styling of `select`, unless a `border` property is set.\n */\n/**\n * 1. Correct color not being inherited.\n * Known issue: affects color of disabled elements.\n * 2. Correct font properties not being inherited.\n * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n /* 1 */\n font: inherit;\n /* 2 */\n margin: 0;\n /* 3 */ }\n\n/**\n * Address `overflow` set to `hidden` in IE 8/9/10/11.\n */\nbutton {\n overflow: visible; }\n\n/**\n * Address inconsistent `text-transform` inheritance for `button` and `select`.\n * All other form control elements do not inherit `text-transform` values.\n * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n * Correct `select` style inheritance in Firefox.\n */\nbutton,\nselect {\n text-transform: none; }\n\n/**\n * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n * and `video` controls.\n * 2. Correct inability to style clickable `input` types in iOS.\n * 3. Improve usability and consistency of cursor style between image-type\n * `input` and others.\n */\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n /* 2 */\n cursor: pointer;\n /* 3 */ }\n\n/**\n * Re-set default cursor for disabled elements.\n */\nbutton[disabled],\nhtml input[disabled] {\n cursor: default; }\n\n/**\n * Remove inner padding and border in Firefox 4+.\n */\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0; }\n\n/**\n * Address Firefox 4+ setting `line-height` on `input` using `!important` in\n * the UA stylesheet.\n */\ninput {\n line-height: normal; }\n\n/**\n * It's recommended that you don't attempt to style these elements.\n * Firefox's implementation doesn't respect box-sizing, padding, or width.\n *\n * 1. Address box sizing set to `content-box` in IE 8/9/10.\n * 2. Remove excess padding in IE 8/9/10.\n */\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n /* 1 */\n padding: 0;\n /* 2 */ }\n\n/**\n * Fix the cursor style for Chrome's increment/decrement buttons. For certain\n * `font-size` values of the `input`, it causes the cursor style of the\n * decrement button to change from `default` to `text`.\n */\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto; }\n\n/**\n * 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n */\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n /* 1 */\n box-sizing: content-box;\n /* 2 */ }\n\n/**\n * Remove inner padding and search cancel button in Safari and Chrome on OS X.\n * Safari (but not Chrome) clips the cancel button when the search input has\n * padding (and `textfield` appearance).\n */\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none; }\n\n/**\n * Define consistent border, margin, and padding.\n */\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em; }\n\n/**\n * 1. Correct `color` not being inherited in IE 8/9/10/11.\n * 2. Remove padding so people aren't caught out if they zero out fieldsets.\n */\nlegend {\n border: 0;\n /* 1 */\n padding: 0;\n /* 2 */ }\n\n/**\n * Remove default vertical scrollbar in IE 8/9/10/11.\n */\ntextarea {\n overflow: auto; }\n\n/**\n * Don't inherit the `font-weight` (applied by a rule above).\n * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n */\noptgroup {\n font-weight: bold; }\n\n/* Tables\n ========================================================================== */\n/**\n * Remove most spacing between table cells.\n */\ntable {\n border-collapse: collapse;\n border-spacing: 0; }\n\ntd,\nth {\n padding: 0; }\n\n/*------------------------------------* #RESET\n\\*------------------------------------*/\n/**\n * As well as using normalize.css, it is often advantageous to remove all\n * margins from certain elements.\n */\nbody,\nh1, h2, h3, h4, h5, h6,\np, blockquote, pre,\ndl, dd, ol, ul,\nform, fieldset, legend,\nfigure,\ntable, th, td, caption,\nhr {\n margin: 0;\n padding: 0; }\n\n/**\n * Give a help cursor to elements that give extra info on `:hover`.\n */\nabbr[title],\ndfn[title] {\n cursor: help; }\n\n/**\n * Remove underlines from potentially troublesome elements.\n */\nu,\nins {\n text-decoration: none; }\n\n/**\n * Apply faux underlines to inserted text via `border-bottom`.\n */\nins {\n border-bottom: 1px solid; }\n\n/*------------------------------------* #BOX-SIZING\n\\*------------------------------------*/\n/**\n * Set the global `box-sizing` state to `border-box`.\n *\n * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice\n * paulirish.com/2012/box-sizing-border-box-ftw\n */\nhtml {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box; }\n\n*, *:before, *:after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit; }\n\n/*------------------------------------* #PAGE\n\\*------------------------------------*/\n/**\n * High-, page-level styling.\n *\n * 1. Set the default `font-size` and `line-height` for the entire project,\n * sourced from our default variables. The `font-size` is calculated to exist\n * in ems, the `line-height` is calculated to exist unitlessly.\n * 2. Force scrollbars to always be visible to prevent awkward ‘jumps’ when\n * navigating between pages that do/do not have enough content to produce\n * scrollbars naturally.\n * 3. Ensure the page always fills at least the entire height of the viewport.\n * 4. Prevent certain mobile browsers from automatically zooming fonts.\n * 5. Fonts on OSX will look more consistent with other systems that do not\n * render text using sub-pixel anti-aliasing.\n */\nhtml {\n font-size: 1em;\n /* [1] */\n line-height: 1.5;\n /* [1] */\n background-color: #fff;\n color: #333;\n overflow-y: scroll;\n /* [2] */\n min-height: 100%;\n /* [3] */\n -webkit-text-size-adjust: 100%;\n /* [4] */\n -ms-text-size-adjust: 100%;\n /* [4] */\n -moz-osx-font-smoothing: grayscale;\n /* [5] */\n -webkit-font-smoothing: antialiased;\n /* [5] */ }\n\nth {\n font-weight: inherit;\n text-align: left; }\n\n@keyframes fade-in {\n 0% {\n opacity: 0; }\n 100% {\n opacity: 1; } }\n\n@keyframes fade-out {\n 0% {\n opacity: 1; }\n 100% {\n opacity: 0; } }\n\n.textbox, .dropzone__selected-files,\n.button {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n outline: none; }\n\n.textbox, .dropzone__selected-files {\n background: #e9eff5;\n border-radius: 4px;\n border: 1px solid #d6e2ea;\n color: #53718a;\n display: block;\n font-size: 0.9em;\n padding: 10px 15px;\n transition: background 0.25s, border 0.25s, color 0.25s;\n width: 100%; }\n .textbox::placeholder, .dropzone__selected-files::placeholder {\n color: #abbac7;\n font-style: italic;\n transition: color 0.25s; }\n .textbox:focus, .dropzone__selected-files:focus {\n background: #fdfefe;\n border-color: #c7d6df;\n color: #258de5; }\n .textbox:focus::placeholder, .dropzone__selected-files:focus::placeholder {\n color: #abbac7; }\n .textbox.is-fulfilled, .dropzone__selected-files {\n background: #fdfefe; }\n\n.button {\n background: transparent;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 0.9em;\n font-weight: 500;\n padding: 8px 22px;\n transition: background 0.25s;\n user-select: none; }\n .button.has-icon .icon {\n height: 16px;\n margin: 0 8.33333px;\n vertical-align: middle;\n width: 16px; }\n .button.has-icon .icon:first-child {\n margin-left: 0; }\n .button.has-icon .icon:last-child {\n margin-right: 0; }\n .button--deemphasize {\n background: #e9eef2;\n box-shadow: inset 0 0 0 1px #d9e2e9;\n color: #66717a; }\n .button--deemphasize:hover {\n background: #d9e2e9;\n box-shadow: inset 0 0 0 1px #c9d5df;\n color: #5a646c; }\n .button--primary {\n background: #258de5;\n box-shadow: inset 0 0 0 1px #1a80d7;\n color: #fff;\n white-space: nowrap; }\n .button--primary:hover {\n background: #1a80d7;\n box-shadow: inset 0 0 0 1px #1773c0; }\n\n.form__label {\n color: #abbac7;\n display: block;\n font-size: 0.8em;\n line-height: 1;\n margin-bottom: 0.35em; }\n\n.form__row + .form__row {\n margin-top: 25px; }\n\nhtml,\nbody {\n height: 100%;\n overflow: hidden; }\n\n.container {\n height: 100%;\n width: 100%; }\n\n.flood {\n align-items: stretch;\n display: flex;\n height: 100%; }\n\n.application__content {\n display: flex;\n height: 100vh;\n flex: 1 2 auto;\n flex-direction: column;\n position: relative; }\n\n.application__panel {\n display: flex;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0; }\n .application__panel--torrent-list {\n transition: transform 0.5s;\n z-index: 2; }\n .application__panel--torrent-list.is-open {\n transform: translateX(85%); }\n .application__panel--torrent-details {\n right: 15%;\n width: 85%;\n z-index: 1; }\n\n.torrent__header {\n flex: 1;\n min-height: 35px;\n max-height: 35px; }\n\n.torrent__list__wrapper {\n display: flex;\n flex: 1; }\n .torrent__list__wrapper--custom-scroll {\n flex: 1;\n height: auto !important; }\n\nbody {\n background: #1a2f3d; }\n\nul {\n list-style: none; }\n\nbody {\n color: #53718a;\n font-family: \"Roboto\", sans-srif; }\n\n.unit {\n display: inline-block;\n font-size: 0.8em;\n font-style: normal;\n margin-bottom: 0.1em;\n opacity: 0.8; }\n\n.text-overflow {\n overflow: hidden;\n position: relative;\n text-overflow: ellipsis; }\n\n.action-bar {\n background: transparent;\n color: #1b1a1c;\n display: flex;\n flex: 0 0 60px;\n position: relative; }\n .action-bar:after {\n background: rgba(26, 47, 61, 0.15);\n bottom: 0;\n content: '';\n height: 1px;\n left: 9px;\n position: absolute;\n right: 0;\n width: auto; }\n .action-bar__item {\n flex: 3; }\n .action-bar__item:first-child {\n text-align: left; }\n .action-bar__item:last-child {\n text-align: right; }\n .action-bar__item--sort-torrents {\n max-width: 225px; }\n .action-bar__item--sort-torrents .dropdown {\n margin: 5px 0 0 15px; }\n .action-bar__item--sort-torrents .dropdown__content {\n min-width: 250px; }\n .action-bar__item--torrent-operations .dropdown {\n display: inline-block;\n height: 60px; }\n .action-bar__item--torrent-operations .dropdown__content {\n min-width: 430px;\n right: 4px; }\n .action-bar__group {\n display: inline-block;\n font-size: 0;\n padding: 0 15px; }\n .action-bar__group--has-divider {\n position: relative; }\n .action-bar__group--has-divider:before {\n background: rgba(122, 128, 128, 0.15);\n content: '';\n position: absolute;\n height: 80%;\n left: 0;\n top: 10%;\n width: 1px; }\n\n.actions {\n list-style: none; }\n\n.action {\n box-shadow: 1px 0 transparent, -1px 0 transparent;\n cursor: pointer;\n display: inline-block;\n height: 60px;\n position: relative;\n width: 60px;\n text-align: center;\n transition: background 0.25s, box-shadow 0.25s; }\n .action:hover {\n background: rgba(51, 62, 74, 0.05);\n box-shadow: 1px 0 rgba(51, 62, 74, 0.15), -1px 0 rgba(51, 62, 74, 0.15); }\n .action:hover .icon {\n fill: #258de5; }\n .action__label {\n display: block;\n position: absolute;\n top: 100%;\n visibility: hidden; }\n .action .icon {\n fill: #909799;\n height: 25px;\n left: 50%;\n position: absolute;\n top: 50%;\n transition: fill 0.25s;\n transform: translateX(-50%) translateY(-50%);\n width: 30px; }\n\n.application__content {\n background: #e9eef2; }\n\n.badge {\n background: #2b4456;\n border-radius: 100px;\n color: #132532;\n display: inline-block;\n font-size: 0.8em;\n font-weight: 800;\n line-height: 1;\n margin-left: 10px;\n padding: 1px 5px;\n transition: background 0.25s;\n vertical-align: baseline; }\n\n.client-stats {\n height: 200px;\n position: relative; }\n .client-stats .loading-indicator {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%); }\n .client-stats .transfer-data-enter {\n opacity: 0;\n transition: opacity 1s; }\n .client-stats .transfer-data-enter.transfer-data-enter-active {\n opacity: 1; }\n .client-stats .transfer-data-leave {\n opacity: 1;\n transition: opacity 1s; }\n .client-stats .transfer-data-leave.transfer-data-leave-active {\n opacity: 0; }\n\n.client-stat {\n align-items: center;\n display: flex;\n height: 100px;\n padding: 0 20px; }\n .client-stat__icon, .client-stat__data {\n position: relative;\n vertical-align: top;\n z-index: 1; }\n .client-stat__icon {\n flex: 0 0 23px; }\n .client-stat__icon .icon {\n display: inline-block;\n height: 25px;\n margin: 6px 0 0 -5px;\n width: auto; }\n .client-stat__data {\n flex: 1; }\n .client-stat__data--primary, .client-stat__data--secondary {\n display: block;\n font-weight: 100;\n line-height: 1.2; }\n .client-stat__data--primary {\n font-size: 1.75em;\n white-space: nowrap; }\n .client-stat__data--primary .unit {\n font-size: 0.65em;\n margin-bottom: 0;\n opacity: 0.5;\n position: relative;\n top: -0.1em; }\n .client-stat__data--secondary {\n font-size: 0.8em;\n font-style: italic;\n font-weight: 400; }\n\n.client-stat--limits {\n background: none;\n border: none;\n color: #53718a;\n display: block;\n outline: none;\n padding: 10px 15px;\n font-size: 0.85em;\n text-align: left;\n transition: color 0.25s;\n vertical-align: middle;\n width: 100%; }\n .client-stat--limits .icon {\n display: inline-block;\n fill: #53718a;\n margin: -2px 5px 0 0;\n transition: fill 0.25s;\n vertical-align: middle;\n width: 14.5px; }\n .client-stat--limits .icon .limits__bars--top {\n opacity: 0.4; }\n .client-stat--limits .icon .limits__bars--bottom {\n opacity: 0.6; }\n .client-stat--limits:hover {\n color: #258de5; }\n .client-stat--limits:hover .icon {\n fill: #258de5; }\n\n.client-stat {\n position: relative; }\n .client-stat .graph {\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 0; }\n .client-stat .graph svg {\n height: 100%;\n width: 100%; }\n .client-stat .graph__line {\n fill: none; }\n .client-stat .graph__line--limit {\n stroke-dasharray: 3px 4px;\n stroke-width: 1px; }\n .client-stat .graph__line--rate {\n stroke-width: 1.1px; }\n .client-stat--download .icon {\n fill: rgba(43, 174, 108, 0.75); }\n .client-stat--download .client-stat__data--primary {\n color: #2bae6c; }\n .client-stat--download .client-stat__data--secondary {\n color: rgba(43, 174, 108, 0.75); }\n .client-stat--download .graph .graph--download--gradient--top {\n stop-color: rgba(43, 174, 108, 0.2); }\n .client-stat--download .graph .graph--download--gradient--bottom {\n stop-color: rgba(43, 174, 108, 0); }\n .client-stat--download .graph__area {\n fill: url(\"#graph--download--gradient\"); }\n .client-stat--download .graph__line--limit {\n stroke: rgba(102, 217, 159, 0.15); }\n .client-stat--download .graph__line--rate {\n stroke: rgba(43, 174, 108, 0.4); }\n .client-stat--upload .icon {\n fill: rgba(35, 135, 217, 0.75); }\n .client-stat--upload .client-stat__data--primary {\n color: #2387d9; }\n .client-stat--upload .client-stat__data--secondary {\n color: rgba(35, 135, 217, 0.75); }\n .client-stat--upload .graph .graph--upload--gradient--top {\n stop-color: rgba(35, 135, 217, 0.2); }\n .client-stat--upload .graph .graph--upload--gradient--bottom {\n stop-color: rgba(35, 135, 217, 0); }\n .client-stat--upload .graph__area {\n fill: url(\"#graph--upload--gradient\"); }\n .client-stat--upload .graph__line--limit {\n stroke: rgba(121, 183, 233, 0.15); }\n .client-stat--upload .graph__line--rate {\n stroke: rgba(35, 135, 217, 0.4); }\n\n.directory-tree .icon {\n display: inline-block;\n fill: rgba(82, 120, 147, 0.4);\n height: 14px;\n margin-right: 6px;\n width: 14px; }\n\n.directory-tree__node {\n color: #527893;\n line-height: 1.75;\n text-overflow: ellipsis;\n vertical-align: middle;\n white-space: nowrap; }\n .directory-tree__node--group {\n padding-left: 10px;\n position: relative; }\n .directory-tree__node--group:after {\n background: rgba(82, 120, 147, 0.1);\n content: '';\n height: 100%;\n left: 5px;\n position: absolute;\n top: -5px;\n width: 2px; }\n .directory-tree__node--directory {\n color: #527893;\n cursor: pointer;\n transition: color 0.125s; }\n .directory-tree__node--directory.is-expanded {\n color: #719bb7;\n font-weight: 500; }\n .directory-tree__node--directory.is-expanded .icon {\n fill: rgba(130, 170, 197, 0.5); }\n .directory-tree__node--directory .icon {\n fill: rgba(82, 120, 147, 0.4); }\n .directory-tree__node .file {\n align-items: center;\n display: flex;\n line-height: 1.4;\n margin-left: -9px;\n padding: 2px 0 2px 9px;\n transition: background 0.25s, box-shadow 0.25s, color 0.25s;\n width: 100%; }\n .directory-tree__node .file:hover {\n background: rgba(26, 45, 60, 0.8);\n box-shadow: 0 1px 0 #1f3647, 0 -1px 0 #1f3647;\n color: #79a7c7; }\n .directory-tree__node .file:hover .file__detail--size, .directory-tree__node .file:hover .file__detail--priority {\n color: #527893; }\n .directory-tree__node .file .icon {\n fill: #344b5b;\n margin-top: -3px;\n vertical-align: middle; }\n .directory-tree__node .file__detail {\n flex: 1 1 auto;\n overflow: hidden;\n padding-right: 6.25px;\n text-overflow: ellipsis; }\n .directory-tree__node .file__detail--size, .directory-tree__node .file__detail--priority {\n color: #2b4456;\n flex: 0 0 auto;\n font-size: 0.95em;\n text-align: right;\n transition: color 0.25s; }\n .directory-tree__node .file__detail--priority .icon {\n height: auto;\n margin-right: 0;\n width: 16px; }\n .directory-tree__node .file__detail:last-child {\n padding-right: 0; }\n .directory-tree__node--file-list {\n margin-bottom: 3px; }\n\n.directory-tree__parent-directory {\n margin-left: -1px;\n overflow: hidden;\n text-overflow: ellipsis; }\n .directory-tree__parent-directory .icon {\n fill: rgba(58, 92, 116, 0.5);\n margin-right: 8px;\n vertical-align: middle; }\n\n.directory-tree__tree .directory-tree__tree {\n padding-left: 6px; }\n\n.dropdown {\n display: inline-block;\n outline: none;\n position: relative;\n z-index: 2; }\n .dropdown__button, .dropdown__trigger {\n cursor: pointer; }\n .dropdown__button {\n display: block;\n padding: 12px 15px 7px 15px;\n text-align: left;\n width: auto;\n word-wrap: none; }\n .dropdown__content {\n background: rgba(255, 255, 255, 0.98);\n border-radius: 3px;\n box-shadow: 0 0 0 1px rgba(26, 47, 61, 0.1), 0 0 35px rgba(26, 47, 61, 0.3);\n color: #95a2ad;\n left: 0;\n position: absolute;\n text-align: left;\n top: 0;\n z-index: 2; }\n .dropdown.is-expanded .dropdown__header .dropdown__value {\n color: #4e6a7c; }\n .dropdown__label {\n color: #abbac7;\n display: block;\n font-size: 0.65em;\n font-weight: 500;\n letter-spacing: 0.1em;\n line-height: 0.9em;\n text-transform: uppercase; }\n .dropdown__button .dropdown__label {\n cursor: pointer; }\n .dropdown__value {\n color: #8899a8;\n transition: color 0.25s; }\n .dropdown__value:after {\n border-top: 5px solid #8899a8;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n content: '';\n display: inline-block;\n margin-left: 10px;\n vertical-align: middle; }\n .dropdown__header {\n position: relative; }\n .dropdown__header:after {\n background: rgba(26, 47, 61, 0.05);\n bottom: 0;\n content: '';\n display: block;\n height: 1px;\n left: 5%;\n position: absolute;\n width: 90%; }\n .dropdown__items {\n display: flex;\n padding: 10px 0; }\n .dropdown__list {\n flex: 1; }\n .dropdown__item {\n padding: 5px 15px; }\n .dropdown__item.is-selectable {\n cursor: pointer;\n display: block;\n font-size: 0.9em;\n transition: background 0.25s, color 0.25s; }\n .dropdown__item.is-selectable:hover {\n background: rgba(233, 238, 242, 0.4);\n color: #788997; }\n .dropdown__item.is-selectable.is-selected {\n color: #258de5; }\n .dropdown--align-right .dropdown {\n left: auto;\n right: 0; }\n\n.dropdown__content-enter {\n animation: fade-in 0.25s both; }\n\n.dropdown__content-leave {\n animation: fade-out 0.25s both; }\n\n.dropdown__content__container {\n padding: 25px 30px; }\n\n.dropzone {\n align-items: center;\n background: #e9eff5;\n border: 1px dashed #d6e2ea;\n border-radius: 4px;\n color: #53718a;\n display: flex;\n flex-direction: column;\n text-align: center;\n transition: border 0.25s, color 0.25s;\n width: 100%; }\n .dropzone:hover {\n border-color: #93b2c7; }\n .dropzone:hover .dropzone__icon .icon {\n fill: #96adc3; }\n .dropzone--is-dragging, .dropzone--is-dragging:hover {\n border-color: #258de5;\n color: #258de5; }\n .dropzone--is-dragging .dropzone__icon .icon, .dropzone--is-dragging:hover .dropzone__icon .icon {\n fill: #258de5; }\n .dropzone__icon .icon--files {\n fill: #c7d3df;\n height: 64px;\n transition: fill 0.25s;\n width: 64px; }\n .dropzone__icon .icon--files__file--right, .dropzone__icon .icon--files__file--left {\n fill-opacity: 0.5; }\n .dropzone__copy {\n cursor: pointer;\n flex: 1;\n font-size: 0.85em;\n padding: 25px;\n width: 100%; }\n .dropzone__browse-button {\n color: #258de5;\n text-decoration: underline; }\n .dropzone__selected-files {\n border-radius: 4px 4px 0 0;\n font-size: 0.8em;\n padding: 12.5px;\n width: 100%; }\n .dropzone__selected-files + .dropzone {\n border-radius: 0 0 4px 4px;\n border-top: none; }\n .dropzone__selected-files__file {\n text-align: left;\n white-space: nowrap; }\n .dropzone__selected-files__file .icon {\n display: inline-block;\n fill: #adbfce;\n height: 12px;\n margin-right: 4px;\n vertical-align: baseline;\n width: 12px; }\n .dropzone__selected-files__file .icon--close {\n height: 8px;\n margin-left: 4px;\n margin-right: 0;\n vertical-align: middle;\n width: 8px; }\n .dropzone__file {\n display: flex;\n width: 100%; }\n .dropzone__file__item {\n flex: 1 0 auto; }\n .dropzone__file__item--icon {\n flex: 0 0 auto; }\n .dropzone__file__item--file-name {\n flex: 1 1 auto;\n overflow: hidden;\n text-overflow: ellipsis; }\n .dropzone__file__item--remove-icon {\n cursor: pointer; }\n\n.floating-action__button {\n background: #fff;\n border: none;\n border-radius: 16px;\n box-shadow: 0 0 0 1px rgba(26, 47, 61, 0.1);\n cursor: pointer;\n height: 16px;\n outline: none;\n margin-right: 6px;\n padding: 0;\n position: relative;\n transition: background 0.25s, box-shadow 0.25s;\n width: 16px; }\n .floating-action__button:last-child {\n margin-right: 0; }\n .floating-action__button:hover {\n background: #e9eef2;\n box-shadow: 0 0 0 1px rgba(26, 47, 61, 0.2); }\n .floating-action__button:hover .icon {\n fill: rgba(26, 47, 61, 0.5); }\n .floating-action__button .icon {\n height: 8px;\n fill: rgba(26, 47, 61, 0.3);\n left: 50%;\n position: absolute;\n top: 50%;\n transition: fill 0.25s;\n transform: translate(-50%, -50%);\n width: 8px; }\n\n@keyframes loading-indicator-dots-pulse {\n 0% {\n fill-opacity: 0.2; }\n 100% {\n fill-opacity: 0.8; } }\n\n.icon--eta .icon__ring {\n fill-opacity: 1; }\n\n.icon--loading-indicator .loading-indicator--dots__dot {\n animation: loading-indicator-dots-pulse 0.6s linear alternate infinite;\n fill: #fff; }\n .icon--loading-indicator .loading-indicator--dots__dot--center {\n animation-delay: 0.2s; }\n .icon--loading-indicator .loading-indicator--dots__dot--right {\n animation-delay: 0.4s; }\n\n@keyframes loading-indicator-swipe {\n 0% {\n transform: translateX(-100%); }\n 50% {\n transform: translateX(400%); }\n 100% {\n transform: translateX(400%); } }\n\n.loading-indicator {\n height: 18px;\n position: relative;\n width: 32px; }\n .loading-indicator.is-inverse .loading-indicator__bar {\n background: rgba(56, 88, 109, 0.7); }\n .loading-indicator.is-inverse .loading-indicator__bar:after {\n background: rgba(37, 141, 229, 0.75); }\n .loading-indicator__bar {\n background: #e9eef2;\n border-radius: 10px;\n height: 3px;\n left: 0;\n overflow: hidden;\n position: absolute;\n transform: translateY(0);\n width: 100%; }\n .loading-indicator__bar:after {\n animation: loading-indicator-swipe 3s ease-in-out infinite;\n background: rgba(37, 141, 229, 0.75);\n border-radius: 10px;\n content: '';\n display: block;\n height: 100%;\n transform: translateX(-100%);\n width: 25%; }\n .loading-indicator__bar--1 {\n top: 0; }\n .loading-indicator__bar--2 {\n top: 50%;\n transform: translateY(-50%); }\n .loading-indicator__bar--2:after {\n animation-delay: 0.5s; }\n .loading-indicator__bar--3 {\n bottom: 0; }\n .loading-indicator__bar--3:after {\n animation-delay: 1s; }\n\n.modal {\n background: rgba(26, 47, 61, 0.5);\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n transition: opacity 0.5s;\n width: 100%;\n z-index: 100; }\n .modal--align-center {\n text-align: center; }\n .modal__tabs {\n color: #abbac7;\n font-size: 0.7em;\n font-weight: 400;\n margin: 10px -5px 0 -5px; }\n .modal__tabs .modal__tab {\n cursor: pointer;\n display: inline-block;\n margin-right: 6.25px;\n padding: 5px;\n position: relative; }\n .modal__tabs .modal__tab:after {\n bottom: 0;\n content: '';\n height: 1px;\n left: 0;\n position: absolute;\n right: 0;\n transition: background 0.25s; }\n .modal__tabs .modal__tab:last-child {\n margin-right: 0; }\n .modal__tabs .modal__tab.is-active {\n color: #258de5;\n font-weight: 800; }\n .modal__tabs .modal__tab.is-active:after {\n background: #258de5; }\n .modal__header {\n background: #fff;\n border-radius: 3px 3px 0 0;\n box-shadow: inset 0 -1px 0 #dde7ed;\n color: #5c6e80;\n flex: 0 0 auto;\n font-size: 1.25em;\n font-weight: 300;\n line-height: 1;\n padding: 20px 25px; }\n .modal__header.has-tabs {\n padding-bottom: 0; }\n .modal__content {\n flex: 1 1 auto;\n overflow: auto;\n padding: 20px 25px 20px 25px; }\n .modal__content__wrapper {\n background: #f7fafc;\n border-radius: 3px;\n box-shadow: 0 0 0 1px rgba(26, 47, 61, 0.1), 0 0 35px rgba(26, 47, 61, 0.3);\n display: flex;\n flex-direction: column;\n left: 50%;\n max-height: 80%;\n max-width: 80%;\n position: absolute;\n top: 10%;\n transform: translate(-50%, 0);\n width: 500px; }\n .modal__body {\n color: #94a3af;\n font-size: 0.9em; }\n .modal__actions {\n margin-top: 25px; }\n .modal__button-group {\n text-align: right; }\n .modal--align-center .modal__button-group {\n text-align: center; }\n .modal__button-group .button + .button {\n margin-left: 20px; }\n .modal__animation-enter {\n opacity: 0; }\n .modal__animation-enter-active {\n opacity: 1; }\n .modal__animation-leave {\n opacity: 1;\n pointer-events: none; }\n .modal__animation-leave-active {\n opacity: 0; }\n\n.priority-meter {\n height: 8px;\n position: relative; }\n .priority-meter__wrapper {\n cursor: pointer;\n display: inline-block;\n padding: 5px;\n user-select: none;\n vertical-align: middle; }\n .priority-meter:before, .priority-meter:after {\n content: '';\n display: block;\n position: absolute; }\n .priority-meter:before {\n height: 2px;\n left: 0;\n top: 3px;\n transition: background 0.25s;\n width: 100%; }\n .priority-meter:after {\n height: 100%;\n top: 0;\n transition: background 0.25s, left 0.25s;\n width: 2px; }\n .priority-meter--max-2 {\n width: 18px; }\n .priority-meter--max-2.priority-meter--level-0:before {\n background: rgba(67, 96, 118, 0.2); }\n .priority-meter--max-2.priority-meter--level-0:after {\n left: 0;\n background: #436076; }\n .priority-meter--max-2.priority-meter--level-1:before {\n background: rgba(37, 141, 229, 0.2); }\n .priority-meter--max-2.priority-meter--level-1:after {\n left: 8px;\n background: #258de5; }\n .priority-meter--max-2.priority-meter--level-2:before {\n background: rgba(57, 206, 131, 0.2); }\n .priority-meter--max-2.priority-meter--level-2:after {\n background: #39ce83;\n left: 16px; }\n .priority-meter--max-3 {\n width: 26px; }\n .priority-meter--max-3.priority-meter--level-0:before {\n background: rgba(67, 96, 118, 0.2); }\n .priority-meter--max-3.priority-meter--level-0:after {\n left: 0;\n background: #436076; }\n .priority-meter--max-3.priority-meter--level-1:before {\n background: rgba(37, 141, 229, 0.2); }\n .priority-meter--max-3.priority-meter--level-1:after {\n left: 8px;\n background: #258de5; }\n .priority-meter--max-3.priority-meter--level-2:before {\n background: rgba(57, 206, 131, 0.2); }\n .priority-meter--max-3.priority-meter--level-2:after {\n background: #39ce83;\n left: 16px; }\n .priority-meter--max-3.priority-meter--level-3:before {\n background: rgba(57, 206, 131, 0.2); }\n .priority-meter--max-3.priority-meter--level-3:after {\n background: #39ce83;\n left: 24px; }\n\n.progress-bar {\n height: 3px;\n position: relative;\n transition: opacity 0.25s;\n z-index: 1; }\n .is-selected.is-stopped .progress-bar {\n opacity: 0.5; }\n .progress-bar:after {\n background: #e3e5e5;\n content: '';\n height: 1px;\n left: 0;\n position: absolute;\n z-index: 0;\n top: 1px;\n transition: background 0.25s;\n width: 100%; }\n .is-selected .progress-bar:after {\n background: rgba(255, 255, 255, 0.5); }\n .is-selected.is-stopped .progress-bar:after {\n background: rgba(255, 255, 255, 0.5); }\n .progress-bar__fill {\n background: #39ce83;\n bottom: 0;\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n transition: background 0.25s, width 0.25s;\n z-index: 1; }\n .is-seeding .progress-bar__fill {\n background: #258de5; }\n .is-completed .progress-bar__fill,\n .is-stopped .progress-bar__fill {\n background: #e3e5e5; }\n .is-selected .progress-bar__fill {\n background: #fff; }\n .has-error .progress-bar__fill {\n background: #e95779; }\n\n.scrollbars__thumb {\n background: rgba(26, 47, 61, 0.3);\n border-radius: 10px;\n cursor: pointer;\n opacity: 0;\n transition: background 0.25s, opacity 0.5s; }\n .scrollbars__thumb:active {\n opacity: 1; }\n .scrollbars__thumb:hover, .scrollbars__thumb:active {\n background: rgba(26, 47, 61, 0.6); }\n .is-inverted .scrollbars__thumb {\n background: rgba(233, 238, 242, 0.3); }\n .is-inverted .scrollbars__thumb:hover, .is-inverted .scrollbars__thumb:active {\n background: rgba(233, 238, 242, 0.6); }\n\n.scrollbars:hover .scrollbars__thumb {\n opacity: 1; }\n\n.application__sidebar {\n box-shadow: 1px 0 rgba(6, 9, 11, 0.3);\n color: #53718a;\n flex: 1;\n min-width: 200px;\n max-width: 240px;\n overflow: auto;\n position: relative;\n z-index: 2; }\n\n.sidebar__item--search {\n position: relative; }\n .sidebar__item--search .icon {\n fill: #53718a;\n height: 22px;\n left: 17px;\n opacity: 0.5;\n position: absolute;\n top: 50%;\n transition: fill 0.25s, opacity 0.25s;\n transform: translateY(-50%);\n width: 22px; }\n .sidebar__item--search .textbox, .sidebar__item--search .dropzone__selected-files {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border: 1px solid rgba(9, 24, 36, 0.4);\n border-left: none;\n border-right: none;\n border-radius: 0;\n background: rgba(9, 24, 36, 0.3);\n box-shadow: none;\n color: #53718a;\n display: block;\n font-size: 1em;\n outline: none;\n padding: 12px 0 12px 45px;\n transition: background 0.25s, border 0.25s, color 0.25s;\n width: 100%; }\n .sidebar__item--search .textbox::placeholder, .sidebar__item--search .dropzone__selected-files::placeholder {\n color: rgba(83, 113, 138, 0.4);\n font-style: italic;\n transition: color 0.25s; }\n .sidebar__item--search.is-in-use .icon {\n fill: #2c9e65;\n opacity: 1; }\n .sidebar__item--search.is-in-use .textbox, .sidebar__item--search.is-in-use .dropzone__selected-files {\n background: #39ce83;\n border-bottom: 1px solid #39ce83;\n border-top: 1px solid #39ce83;\n color: #1e8954; }\n .sidebar__item--search.is-in-use .textbox::placeholder, .sidebar__item--search.is-in-use .dropzone__selected-files::placeholder {\n color: #2cad6d; }\n\n.sidebar__item--speed-limit {\n padding-left: 5px;\n padding-top: 5px; }\n .sidebar__item--speed-limit .dropdown__content {\n min-width: 180px; }\n .sidebar__item--speed-limit .dropdown__items {\n font-size: 0.9em; }\n\n.sidebar-filter {\n font-size: 0.85em;\n padding: 30px 0; }\n .sidebar-filter + .sidebar-filter {\n padding-top: 0; }\n .sidebar-filter__item {\n color: #53718a;\n cursor: pointer;\n font-weight: 400;\n padding: 3px 20px;\n transition: color 0.25s; }\n .sidebar-filter__item:hover {\n color: #7a97af; }\n .sidebar-filter__item:hover .icon {\n fill: #7a97af; }\n .sidebar-filter__item.is-active {\n color: #258de5;\n font-weight: 700; }\n .sidebar-filter__item.is-active .badge {\n background: #3b586d; }\n .sidebar-filter__item.is-active .icon {\n fill: #258de5; }\n .sidebar-filter__item .icon {\n display: inline-block;\n fill: #53718a;\n height: 14px;\n margin-right: 7px;\n transition: fill 0.25s;\n vertical-align: middle;\n width: auto; }\n .sidebar-filter .badge {\n background: #2b4456;\n color: #132532; }\n\n.sidebar-filter__item--heading {\n cursor: default;\n font-size: 0.8em;\n font-weight: 500;\n letter-spacing: 0.1em;\n text-transform: uppercase; }\n .sidebar-filter__item--heading, .sidebar-filter__item--heading:hover {\n color: rgba(83, 113, 138, 0.5); }\n\n.textbox-repeater .floating-action__group {\n margin-top: -8px;\n position: absolute;\n right: -8px;\n top: 50%; }\n\n.textbox-repeater .floating-action__button {\n position: relative; }\n\n.textbox-repeater .textbox__wrapper {\n position: relative; }\n\n.textbox-repeater .form__row + .form__row {\n margin-top: 12.5px; }\n\n.application__panel--torrent-details {\n background: #0e2231; }\n\n.torrent-details {\n background: #0e2231;\n bottom: 0;\n box-shadow: -1px 0 0 rgba(26, 47, 61, 0.1);\n display: flex;\n flex-direction: column;\n font-size: 0.8em;\n left: 0;\n min-width: 400px;\n overflow: auto;\n position: absolute;\n right: 0;\n top: 0;\n transition: opacity 1s;\n z-index: 2; }\n .torrent-details__wrapper {\n flex: 1;\n height: 100%; }\n .torrent-details__scroll-container {\n height: auto !important; }\n .torrent-details__header {\n box-shadow: 0 1px 0 rgba(4, 13, 19, 0.3);\n flex: 0 0 auto;\n padding: 12.5px 25px 16.66667px 25px; }\n .torrent-details__header.has-error .progress-bar__fill {\n background: #be2558; }\n .torrent-details__header.is-stopped .progress-bar__fill {\n background: #7b9cb4; }\n .torrent-details__header .progress-bar:after {\n background: #2a3e4c; }\n .torrent-details__action {\n cursor: pointer;\n transition: color 0.25s; }\n .torrent-details__action .icon {\n transition: fill 0.25s; }\n .torrent-details__action.is-active {\n color: #258de5; }\n .torrent-details__action.is-active .icon {\n fill: #258de5; }\n .torrent-details__table {\n color: #527893;\n width: 100%; }\n .torrent-details__table__heading--primary {\n color: #3a5c74;\n font-size: 1.125em; }\n .torrent-details__table__heading--secondary {\n color: rgba(82, 120, 147, 0.5);\n font-size: 0.7em;\n letter-spacing: 0.1em;\n text-transform: uppercase; }\n .torrent-details__content {\n flex: 1;\n overflow: auto;\n padding: 16.66667px 25px; }\n .torrent-details__content__wrapper {\n background: rgba(16, 26, 34, 0.4);\n display: flex;\n flex: 1;\n overflow: hidden; }\n .torrent-details__navigation {\n background: transparent;\n box-shadow: 1px 0 0 rgba(4, 13, 19, 0.4);\n min-width: 125px;\n padding: 12.5px 0; }\n .torrent-details__navigation .navigation__item {\n cursor: pointer;\n padding: 6.25px 25px;\n text-align: right;\n transition: background 0.25s, box-shadow 0.25s, color 0.25s; }\n .torrent-details__navigation .navigation__item.is-active {\n background: rgba(52, 156, 244, 0.07);\n box-shadow: 1px 0 0 #349cf4;\n color: #349cf4; }\n .torrent-details__section__heading, .torrent-details__section__null-data {\n color: #3a5c74;\n font-size: 1.15em;\n margin-bottom: 2.5px; }\n .torrent-details__section__heading .badge {\n background: rgba(82, 120, 147, 0.5);\n color: #0c1b26; }\n\n.torrent-details__heading {\n color: #c7dbeb;\n font-size: 1.7em;\n font-weight: 300; }\n\n.torrent-details__sub-heading {\n display: flex;\n margin-bottom: 6.25px; }\n .torrent-details__sub-heading__secondary {\n color: #7b9cb4;\n display: flex;\n flex: 1 0 auto; }\n .torrent-details__sub-heading__secondary:first-child {\n justify-content: flex-start; }\n .torrent-details__sub-heading__secondary:last-child {\n justify-content: flex-end; }\n .torrent-details__sub-heading__tertiary {\n flex: 0 0 auto;\n margin-right: 1em; }\n .torrent-details__sub-heading__tertiary .icon {\n fill: rgba(77, 111, 135, 0.5);\n height: 12px;\n margin-right: 3px;\n margin-top: -3px;\n vertical-align: middle;\n width: 12px; }\n .torrent-details__sub-heading__tertiary .priority-meter {\n display: inline-block;\n margin-top: -1px;\n margin-right: 6px;\n vertical-align: middle; }\n .torrent-details__sub-heading__tertiary .priority-meter__wrapper {\n margin-top: -3px;\n padding: 0; }\n .torrent-details__sub-heading__tertiary--download {\n color: #258de5; }\n .torrent-details__sub-heading__tertiary--download .icon {\n fill: #258de5; }\n .torrent-details__sub-heading__tertiary--upload {\n color: #39ce83; }\n .torrent-details__sub-heading__tertiary--upload .icon {\n fill: #39ce83; }\n .torrent-details__sub-heading__tertiary:last-child {\n margin-right: 0; }\n\n.torrent-details-enter {\n opacity: 0; }\n\n.torrent-details-enter-active {\n opacity: 1; }\n\n.torrent-details-leave {\n opacity: 0;\n transition: opacity 0.5s; }\n\n.torrents {\n display: flex;\n flex: 1 1 100px;\n position: relative; }\n .torrents:after {\n background: #fff;\n bottom: 0;\n box-shadow: -1px 0 0 0 rgba(26, 47, 61, 0.15);\n content: '';\n height: auto;\n left: 10px;\n position: absolute;\n right: 0;\n top: 0; }\n .torrents .loading-indicator {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%); }\n\n.torrent__list {\n margin: 0 0 0 10px;\n padding: 10px 0;\n position: relative; }\n .torrent__list__wrapper {\n list-style: none;\n max-width: 100%;\n opacity: 1;\n overflow: auto;\n transition: opacity 1s;\n user-select: none;\n z-index: 1; }\n .torrent__list--loading-enter {\n opacity: 0;\n transition: opacity 1s; }\n .torrent__list--loading-enter-active {\n opacity: 1; }\n .torrent__list--loading-leave {\n opacity: 1;\n transition: opacity 1s; }\n .torrent__list--loading-leave-active {\n opacity: 0; }\n .torrent__list--empty {\n opacity: 0; }\n\n.torrent {\n cursor: default;\n padding: 10px 20px;\n position: relative;\n transition: background 0.25s; }\n .torrent:hover {\n background: #f6f8fa; }\n .torrent:hover .torrent__more-info {\n opacity: 1; }\n .torrent.is-selected {\n background: #258de5; }\n .torrent__more-info {\n height: 20px;\n margin-top: -10px;\n position: absolute;\n left: -7px;\n opacity: 0;\n top: 50%;\n transition: background 0.25s, box-shadow 0.25s, opacity 0.25s;\n width: 20px; }\n\n.torrent__details {\n align-items: center;\n display: flex;\n flex: 1;\n flex-flow: row wrap;\n list-style: none; }\n .torrent__details--primary, .torrent__details--secondary, .torrent__details--tertiary {\n transition: color 0.25s; }\n .torrent__details--primary {\n color: #333332;\n flex: 4;\n line-height: 1.3;\n white-space: nowrap; }\n .is-stopped .torrent__details--primary {\n color: rgba(51, 51, 50, 0.5); }\n .is-selected .torrent__details--primary {\n color: #fff; }\n .is-selected.is-stopped .torrent__details--primary {\n color: rgba(255, 255, 255, 0.6); }\n .torrent__details--secondary {\n align-items: flex-end;\n color: #807f7e;\n flex: 1;\n font-size: 0.75em;\n min-width: 200px; }\n .torrent__details--secondary li {\n flex: 1 1 auto;\n min-width: 15%; }\n .torrent__details--secondary li.torrent__details--ratio {\n max-width: 30px; }\n .is-stopped .torrent__details--secondary {\n color: rgba(128, 127, 126, 0.5); }\n .is-selected .torrent__details--secondary {\n color: #fff; }\n .is-selected.is-stopped .torrent__details--secondary {\n color: rgba(255, 255, 255, 0.6); }\n .torrent__details--tertiary {\n color: #807f7e;\n display: block;\n font-size: 0.75em;\n margin: 0 0 3px 0; }\n .torrent__details--tertiary li {\n display: inline-block;\n margin-right: 1em; }\n .torrent__details--tertiary li:last-child {\n margin-right: 0; }\n .is-stopped .torrent__details--tertiary {\n color: rgba(128, 127, 126, 0.5); }\n .is-selected .torrent__details--tertiary {\n color: rgba(255, 255, 255, 0.9); }\n .is-selected.is-stopped .torrent__details--tertiary {\n color: rgba(255, 255, 255, 0.5); }\n .torrent__details__label {\n margin-right: 0.5em;\n opacity: 0.5; }\n\n.torrent__details--eta {\n opacity: 0;\n transition: opacity 1s, visibility 1s;\n visibility: hidden; }\n .torrent__details--eta .torrent__details--segment {\n margin-right: 0.25em; }\n .torrent__details--eta .torrent__details--segment:last-child {\n margin-right: 0; }\n .is-actively-downloading .torrent__details--eta {\n opacity: 1;\n visibility: visible; }\n\n.view--torrent-list {\n background: #e9eef2;\n box-shadow: -1px 0 rgba(26, 47, 61, 0.15);\n display: flex;\n flex-direction: column;\n flex: 1;\n flex: 0 1 100%; }\n\n.transfer-data--download {\n color: #39ce83; }\n .transfer-data--download .icon {\n fill: #39ce83; }\n\n.transfer-data--upload {\n color: #258de5; }\n .transfer-data--upload .icon {\n fill: #258de5; }\n","/*!\n * inuitcss, by @csswizardry\n *\n * github.com/inuitcss | inuitcss.com\n */\n///*------------------------------------*\\\n// #DEFAULTS\n//\\*------------------------------------*/\n\n// These variables are inuitcss’ defaults; they should not be modified or\n// adjusted directly; you should predefine the variables in your own project.\n\n\n\n\n\n// High-level base settings.\n$inuit-base-font-size: 16px !default;\n$inuit-base-line-height: 24px !default;\n$inuit-base-text-color: #333 !default;\n$inuit-base-background-color: #fff !default;\n\n\n\n\n\n// Namespace.\n//\n// Would you like inuitcss’ classes to be prepended with a namespace? If so,\n// define it here.\n$inuit-namespace: null !default;\n\n\n\n\n\n// These variables are framework variables, sourced from variables defined\n// above. Feel free to use these variables throughout your project, but do not\n// modify or reassign them.\n$inuit-base-spacing-unit: $inuit-base-line-height;\n$inuit-base-spacing-unit--tiny: round($inuit-base-spacing-unit / 4);\n$inuit-base-spacing-unit--small: round($inuit-base-spacing-unit / 2);\n$inuit-base-spacing-unit--large: round($inuit-base-spacing-unit * 2);\n$inuit-base-spacing-unit--huge: round($inuit-base-spacing-unit * 4);\n","/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n/**\n * 1. Set default font family to sans-serif.\n * 2. Prevent iOS and IE text size adjust after device orientation change,\n * without disabling user zoom.\n */\n\nhtml {\n font-family: sans-serif; /* 1 */\n -ms-text-size-adjust: 100%; /* 2 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/**\n * Remove default margin.\n */\n\nbody {\n margin: 0;\n}\n\n/* HTML5 display definitions\n ========================================================================== */\n\n/**\n * Correct `block` display not defined for any HTML5 element in IE 8/9.\n * Correct `block` display not defined for `details` or `summary` in IE 10/11\n * and Firefox.\n * Correct `block` display not defined for `main` in IE 11.\n */\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n/**\n * 1. Correct `inline-block` display not defined in IE 8/9.\n * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n */\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; /* 1 */\n vertical-align: baseline; /* 2 */\n}\n\n/**\n * Prevent modern browsers from displaying `audio` without controls.\n * Remove excess height in iOS 5 devices.\n */\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n/**\n * Address `[hidden]` styling not present in IE 8/9/10.\n * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n */\n\n[hidden],\ntemplate {\n display: none;\n}\n\n/* Links\n ========================================================================== */\n\n/**\n * Remove the gray background color from active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * Improve readability of focused elements when they are also in an\n * active/hover state.\n */\n\na:active,\na:hover {\n outline: 0;\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n */\n\nabbr[title] {\n border-bottom: 1px dotted;\n}\n\n/**\n * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n */\n\nb,\nstrong {\n font-weight: bold;\n}\n\n/**\n * Address styling not present in Safari and Chrome.\n */\n\ndfn {\n font-style: italic;\n}\n\n/**\n * Address variable `h1` font-size and margin within `section` and `article`\n * contexts in Firefox 4+, Safari, and Chrome.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/**\n * Address styling not present in IE 8/9.\n */\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n/**\n * Address inconsistent and variable font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` affecting `line-height` in all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove border when inside `a` element in IE 8/9/10.\n */\n\nimg {\n border: 0;\n}\n\n/**\n * Correct overflow not hidden in IE 9/10/11.\n */\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * Address margin not present in IE 8/9 and Safari.\n */\n\nfigure {\n margin: 1em 40px;\n}\n\n/**\n * Address differences between Firefox and other browsers.\n */\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n/**\n * Contain overflow in all browsers.\n */\n\npre {\n overflow: auto;\n}\n\n/**\n * Address odd `em`-unit font size rendering in all browsers.\n */\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * Known limitation: by default, Chrome and Safari on OS X allow very limited\n * styling of `select`, unless a `border` property is set.\n */\n\n/**\n * 1. Correct color not being inherited.\n * Known issue: affects color of disabled elements.\n * 2. Correct font properties not being inherited.\n * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; /* 1 */\n font: inherit; /* 2 */\n margin: 0; /* 3 */\n}\n\n/**\n * Address `overflow` set to `hidden` in IE 8/9/10/11.\n */\n\nbutton {\n overflow: visible;\n}\n\n/**\n * Address inconsistent `text-transform` inheritance for `button` and `select`.\n * All other form control elements do not inherit `text-transform` values.\n * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n * Correct `select` style inheritance in Firefox.\n */\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/**\n * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n * and `video` controls.\n * 2. Correct inability to style clickable `input` types in iOS.\n * 3. Improve usability and consistency of cursor style between image-type\n * `input` and others.\n */\n\nbutton,\nhtml input[type=\"button\"], /* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; /* 2 */\n cursor: pointer; /* 3 */\n}\n\n/**\n * Re-set default cursor for disabled elements.\n */\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n/**\n * Remove inner padding and border in Firefox 4+.\n */\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n/**\n * Address Firefox 4+ setting `line-height` on `input` using `!important` in\n * the UA stylesheet.\n */\n\ninput {\n line-height: normal;\n}\n\n/**\n * It's recommended that you don't attempt to style these elements.\n * Firefox's implementation doesn't respect box-sizing, padding, or width.\n *\n * 1. Address box sizing set to `content-box` in IE 8/9/10.\n * 2. Remove excess padding in IE 8/9/10.\n */\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Fix the cursor style for Chrome's increment/decrement buttons. For certain\n * `font-size` values of the `input`, it causes the cursor style of the\n * decrement button to change from `default` to `text`.\n */\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n */\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n box-sizing: content-box; /* 2 */\n}\n\n/**\n * Remove inner padding and search cancel button in Safari and Chrome on OS X.\n * Safari (but not Chrome) clips the cancel button when the search input has\n * padding (and `textfield` appearance).\n */\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * Define consistent border, margin, and padding.\n */\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n/**\n * 1. Correct `color` not being inherited in IE 8/9/10/11.\n * 2. Remove padding so people aren't caught out if they zero out fieldsets.\n */\n\nlegend {\n border: 0; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Remove default vertical scrollbar in IE 8/9/10/11.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * Don't inherit the `font-weight` (applied by a rule above).\n * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n */\n\noptgroup {\n font-weight: bold;\n}\n\n/* Tables\n ========================================================================== */\n\n/**\n * Remove most spacing between table cells.\n */\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","@import 'colors';\n@import url(http://fonts.googleapis.com/css?family=Roboto:400italic,700italic,300,700,300italic,400);\n\n$font: 'Roboto', sans-srif;\n\n$spacing-unit: 25px;\n$torrent-details--width: 85%;\n","@import url('http://fonts.googleapis.com/css?family=Roboto:500,400italic,300,700,400');\n\nbody {\n color: $foreground;\n font-family: $font;\n}\n\n.unit {\n display: inline-block;\n font-size: 0.8em;\n font-style: normal;\n margin-bottom: 0.1em;\n opacity: 0.8;\n}\n\n.text-overflow {\n overflow: hidden;\n position: relative;\n text-overflow: ellipsis;\n}\n","/*------------------------------------*\\\n #RESET\n\\*------------------------------------*/\n\n/**\n * As well as using normalize.css, it is often advantageous to remove all\n * margins from certain elements.\n */\nbody,\nh1, h2, h3, h4, h5, h6,\np, blockquote, pre,\ndl, dd, ol, ul,\nform, fieldset, legend,\nfigure,\ntable, th, td, caption,\nhr {\n margin: 0;\n padding: 0;\n}\n\n\n\n\n\n/**\n * Give a help cursor to elements that give extra info on `:hover`.\n */\nabbr[title],\ndfn[title] {\n cursor: help;\n}\n\n\n\n\n\n/**\n * Remove underlines from potentially troublesome elements.\n */\nu,\nins {\n text-decoration: none;\n}\n\n\n\n\n\n/**\n * Apply faux underlines to inserted text via `border-bottom`.\n */\nins {\n border-bottom: 1px solid;\n}\n","/*------------------------------------*\\\n #BOX-SIZING\n\\*------------------------------------*/\n\n/**\n * Set the global `box-sizing` state to `border-box`.\n *\n * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice\n * paulirish.com/2012/box-sizing-border-box-ftw\n */\nhtml {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n\n* {\n\n &,\n &:before,\n &:after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n}\n\n\n\n\n\n// If we have included this file, set a variable to tell the rest of the\n// framework that global `box-sizing: border-box` has been set.\n$inuit-global-border-box: true;\n","/*------------------------------------*\\\n #PAGE\n\\*------------------------------------*/\n\n/**\n * High-, page-level styling.\n *\n * 1. Set the default `font-size` and `line-height` for the entire project,\n * sourced from our default variables. The `font-size` is calculated to exist\n * in ems, the `line-height` is calculated to exist unitlessly.\n * 2. Force scrollbars to always be visible to prevent awkward ‘jumps’ when\n * navigating between pages that do/do not have enough content to produce\n * scrollbars naturally.\n * 3. Ensure the page always fills at least the entire height of the viewport.\n * 4. Prevent certain mobile browsers from automatically zooming fonts.\n * 5. Fonts on OSX will look more consistent with other systems that do not\n * render text using sub-pixel anti-aliasing.\n */\nhtml {\n font-size: ($inuit-base-font-size / 16px) * 1em; /* [1] */\n line-height: $inuit-base-line-height / $inuit-base-font-size; /* [1] */\n background-color: $inuit-base-background-color;\n color: $inuit-base-text-color;\n overflow-y: scroll; /* [2] */\n min-height: 100%; /* [3] */\n -webkit-text-size-adjust: 100%; /* [4] */\n -ms-text-size-adjust: 100%; /* [4] */\n -moz-osx-font-smoothing: grayscale; /* [5] */\n -webkit-font-smoothing: antialiased; /* [5] */\n}\n","th {\n font-weight: inherit;\n text-align: left;\n}\n","@keyframes fade-in {\n\n 0% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n\n}\n\n@keyframes fade-out {\n\n 0% {\n opacity: 1;\n }\n\n 100% {\n opacity: 0;\n }\n\n}\n",".textbox,\n.button {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n outline: none;\n}\n\n.textbox {\n background: $textbox--background;\n border-radius: 4px;\n border: 1px solid $textbox--border;\n color: $textbox--foreground;\n display: block;\n font-size: 0.9em;\n padding: 10px 15px;\n transition: background 0.25s, border 0.25s, color 0.25s;\n width: 100%;\n\n &::placeholder {\n color: $textbox--placeholder;\n font-style: italic;\n transition: color 0.25s;\n }\n\n &:focus {\n background: $textbox--active--background;\n border-color: $textbox--active--border;\n color: $textbox--active--foreground;\n\n &::placeholder {\n color: $textbox--active--placeholder;\n }\n }\n\n &.is-fulfilled {\n background: $textbox--fulfilled--background;\n }\n}\n\n.button {\n background: transparent;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 0.9em;\n font-weight: 500;\n padding: 8px 22px;\n transition: background 0.25s;\n user-select: none;\n\n &.has-icon {\n\n .icon {\n height: 16px;\n margin: 0 $spacing-unit * 1/3;\n vertical-align: middle;\n width: 16px;\n\n &:first-child {\n margin-left: 0;\n }\n\n &:last-child {\n margin-right: 0;\n }\n }\n }\n\n &--deemphasize {\n background: $button--deemphasized--background;\n box-shadow: inset 0 0 0 1px $button--deemphasized--border;\n color: $button--deemphasized--foreground;\n\n &:hover {\n background: $button--deemphasized--background--hover;\n box-shadow: inset 0 0 0 1px $button--deemphasized--border--hover;\n color: $button--deemphasized--foreground--hover;\n }\n }\n\n &--primary {\n background: $button--primary--background;\n box-shadow: inset 0 0 0 1px $button--primary--border;\n color: $button--primary--foreground;\n white-space: nowrap;\n\n &:hover {\n background: $button--primary--background--hover;\n box-shadow: inset 0 0 0 1px $button--primary--border--hover;\n }\n }\n}\n\n.form {\n\n &__label {\n color: $form--label--foreground;\n display: block;\n font-size: 0.8em;\n line-height: 1;\n margin-bottom: 0.35em;\n }\n\n &__row {\n\n & + .form__row {\n margin-top: $spacing-unit;\n }\n }\n}\n","$blue: #258de5;\n$green: #39ce83;\n$white: #fff;\n\n$background: #1a2f3d;\n$foreground: #53718a;\n\n$main-content--background: #e9eef2;\n\n$header--foreground: #313436;\n\n// form elements\n$form--label--foreground: #abbac7;\n\n$textbox--background: #e9eff5;\n$textbox--foreground: #53718a;\n$textbox--placeholder: #abbac7;\n$textbox--border: #d6e2ea;\n$textbox--fulfilled--background: #fdfefe;\n$textbox--active--background: #fdfefe;\n$textbox--active--border: desaturate(darken($textbox--border, 5%), 5%);\n$textbox--active--foreground: $blue;\n$textbox--active--placeholder: $textbox--placeholder;\n\n$textbox-repeater--button--background: #fff;\n$textbox-repeater--button--background--hover: $main-content--background;\n$textbox-repeater--button--border: rgba($background, 0.1);\n$textbox-repeater--button--border--hover: rgba($background, 0.2);\n$textbox-repeater--button--foreground: rgba($background, 0.3);\n$textbox-repeater--button--foreground--hover: rgba($background, 0.5);\n\n$button--primary--foreground: #fff;\n$button--primary--background: $blue;\n$button--primary--background--hover: darken($button--primary--background, 5%);\n$button--primary--border: darken($button--primary--background, 5%);\n$button--primary--border--hover: darken($button--primary--border, 5%);\n\n$button--deemphasized--foreground: #66717a;\n$button--deemphasized--background: $main-content--background;\n$button--deemphasized--foreground--hover: darken($button--deemphasized--foreground, 5%);\n$button--deemphasized--background--hover: darken($button--deemphasized--background, 5%);\n$button--deemphasized--border: darken($button--deemphasized--background, 5%);\n$button--deemphasized--border--hover: darken($button--deemphasized--border, 5%);\n\n// action bar\n$action-bar--background: transparent;\n$action-bar--foreground: #1b1a1c;\n$action-bar--group--border: rgba(#7a8080, 0.15);\n\n$action--foreground: #909799;\n$action--foreground--hover: $blue;\n$action--background--hover: rgba(#333e4a, 0.05);\n$action--border--hover: rgba(#333e4a, 0.15);\n\n// filter bar\n$sidebar--foreground: #53718a;\n$sidebar--border: rgba(darken($sidebar--foreground, 40%), 0.3);\n\n$client-stats--limits--opacity: 0.15;\n$client-stats--speed--fill--top--opacity: 0.2;\n$client-stats--speed--fill--bottom--opacity: 0;\n$client-stats--speed--stroke--opacity: 0.4;\n\n$client-stats--download--primary--foreground: #2bae6c;\n$client-stats--download--secondary--foreground: rgba($client-stats--download--primary--foreground, 0.75);\n$client-stats--download--graph--stroke: rgba(#2bae6c, $client-stats--speed--stroke--opacity);\n$client-stats--download--graph--fill--top: rgba(#2bae6c, $client-stats--speed--fill--top--opacity);\n$client-stats--download--graph--fill--bottom: rgba(#2bae6c, $client-stats--speed--fill--bottom--opacity);\n$client-stats--download--limits--line: rgba(lighten($client-stats--download--primary--foreground, 20%), $client-stats--limits--opacity);\n\n$client-stats--upload--primary--foreground: #2387d9;\n$client-stats--upload--secondary--foreground: rgba($client-stats--upload--primary--foreground, 0.75);\n$client-stats--upload--graph--stroke: rgba(#2387d9, $client-stats--speed--stroke--opacity);\n$client-stats--upload--graph--fill--top: rgba(#2387d9, $client-stats--speed--fill--top--opacity);\n$client-stats--upload--graph--fill--bottom: rgba(#2387d9, $client-stats--speed--fill--bottom--opacity);\n$client-stats--upload--limits--line: rgba(lighten($client-stats--upload--primary--foreground, 20%), $client-stats--limits--opacity);\n\n$client-stats--limits--foreground: $foreground;\n$client-stats--limits--icon--hover: $blue;\n\n$search-torrents--base: #091824;\n$search-torrents--background: rgba($search-torrents--base, 0.3);\n$search-torrents--background--active: $green;\n$search-torrents--border: rgba($search-torrents--background, 0.4);\n$search-torrents--border--active: $search-torrents--background--active;\n$search-torrents--foreground: $sidebar--foreground;\n$search-torrents--foreground--active: #1e8954;\n$search-torrents--placeholder: rgba($sidebar--foreground, 0.4);\n$search-torrents--placeholder--active: #2cad6d;\n\n$search-torrents--icon--foreground: $sidebar--foreground;\n$search-torrents--icon--foreground--active: #2c9e65;\n\n$sidebar-filter--foreground: $sidebar--foreground;\n$sidebar-filter--foreground--header: rgba($sidebar-filter--foreground, 0.5);\n$sidebar-filter--foreground--active: $blue;\n$sidebar-filter--foreground--hover: lighten($sidebar-filter--foreground, 15%);\n\n$sidebar-filter--count--foreground: #132532;\n$sidebar-filter--count--background: #2b4456;\n$sidebar-filter--count--background--active: #3b586d;\n\n// torrents list\n$torrent-list--background: #fff;\n$torrent-list--border: rgba($background, 0.15);\n\n$torrent--primary--foreground: #333332;\n$torrent--primary--foreground--stopped: rgba(#333332, 0.5);\n$torrent--primary--foreground--selected: #fff;\n$torrent--primary--foreground--selected--stopped: rgba($torrent--primary--foreground--selected, 0.6);\n$torrent--secondary--foreground: #807f7e;\n$torrent--secondary--foreground--stopped: rgba(#807f7e, 0.5);\n$torrent--secondary--foreground--selected: #fff;\n$torrent--secondary--foreground--selected--stopped: rgba(#fff, 0.6);\n$torrent--tertiary--foreground: #807f7e;\n$torrent--tertiary--foreground--stopped: rgba(#807f7e, 0.5);\n$torrent--tertiary--foreground--selected: rgba(#fff, 0.9);\n$torrent--tertiary--foreground--selected--stopped: rgba(#fff, 0.5);\n\n$torrent--background--hover: #f6f8fa;\n$torrent--background--selected: $blue;\n\n$progress-bar--background: #e3e5e5;\n$progress-bar--background--selected: rgba(#fff, 0.5);\n$progress-bar--background--selected--stopped: rgba(#fff, 0.5);\n$progress-bar--fill: $green;\n\n$progress-bar--fill--stopped: #e3e5e5;\n$progress-bar--fill--completed: $blue;\n$progress-bar--fill--selected: #fff;\n$progress-bar--fill--error: #e95779;\n\n// torrent details\n$torrent-details--background: saturate(lighten(#0c1b26, 2.5%), 4%); //#162835;\n$torrent-details--border: rgba($background, 0.1);\n\n$torrent-details--header--border: rgba(#040d13, 0.3);\n$torrent-details--header--name--foreground: #c7dbeb;\n$torrent-details--header--tertiary--foreground: #7b9cb4;\n$torrent-details--header--progress-bar--track: #2a3e4c;\n$torrent-details--header--progress-bar--fill--error: #be2558;\n\n$torrent-details--navigation--border: rgba(#040d13, 0.4);\n$torrent-details--navigation--item--background--active: rgba(#349cf4, 0.07);\n$torrent-details--navigation--item--foreground--active: #349cf4;\n$torrent-details--navigation--item--border--active: #349cf4;\n$torrent-details--navigation--background: transparent;\n\n$torrent-details--content--background: rgba(desaturate(#0c1b26, 15%), 0.4);\n\n$torrent-details--directory-tree--parent-directory--foreground: #3a5c74;\n$torrent-details--directory-tree--parent-directory--icon--fill: rgba(#3a5c74, 0.5);\n$torrent-details--directory-tree--file--hover--background: rgba(#1a2d3c, 0.8);\n$torrent-details--directory-tree--file--hover--foreground: #79a7c7;\n$torrent-details--directory-tree--file--hover--border: #1f3647;\n\n$torrent-details--table--foreground: #527893;\n$torrent-details--table--header: rgba(#527893, 0.5);\n$torrent-details--table--header--count--background: rgba(#527893, 0.5);\n$torrent-details--table--header--count--foreground: #0c1b26;\n\n$torrent-details--header--icon--default--fill: rgba(#4d6f87, 0.5);\n\n// tansfer data\n$transfer-data--download: $green;\n$transfer-data--upload: $blue;\n\n// dropdown menu\n$dropdown--background: rgba(#fff, 0.98);\n$dropdown--foreground: #95a2ad;\n$dropdown--container--border: rgba($background, 0.1);\n$dropdown--container--shadow: rgba($background, 0.3);\n$dropdown--label: #abbac7;\n$dropdown--value: #8899a8;\n$dropdown--value--active: #4e6a7c;\n$dropdown--header--border: rgba($background, 0.05);\n$dropdown--item--background--hover: rgba($main-content--background, 0.4);\n$dropdown--item--foreground--hover: darken($dropdown--foreground, 10%);\n$dropdown--item--foreground--active: $blue;\n\n// modal windows\n$modal--background: #f7fafc;\n$modal--heading--background: #fff;\n$modal--heading--foreground: #5c6e80;\n$modal--heading--border: #dde7ed;\n\n$modal--body--foreground: desaturate(lighten($foreground, 20%), 10%);\n\n$modal--tab--foreground: #abbac7;\n$modal--tab--foreground--active: $blue;\n$modal--tab--border--active: $blue;\n\n$modal--overlay: rgba($background, 0.5);\n\n$modal--content--border: rgba($background, 0.1);\n$modal--content--shadow: rgba($background, 0.3);\n\n// directory torrent-details--directory-tree--icon-fill\n$directory-tree--filename--foreground: #527893;\n$directory-tree--directory--foreground: $directory-tree--filename--foreground;\n$directory-tree--directory--foreground--open: #719bb7;\n\n$directory-tree--icon--file: #344b5b;\n$directory-tree--icon--folder: rgba(#527893, 0.4);\n$directory-tree--icon--folder--active: rgba(#82aac5, 0.5);\n$directory-tree--icon--folder--open: rgba(#82aac5, 0.5);\n\n$directory-tree--file-details--foreground: #2b4456;\n$directory-tree--file-details--hover--foreground: #527893;\n\n// scrollbars\n$scrollbar--thumb--background--inactive: rgba(#1a2f3d, 0.3);\n$scrollbar--thumb--background--hover: rgba(#1a2f3d, 0.6);\n$scrollbar--thumb--background--inverted--inactive: rgba(#e9eef2, 0.3);\n$scrollbar--thumb--background--inverted--hover: rgba(#e9eef2, 0.6);\n\n// loading indicator\n$loading-indicator--bar--background: #e9eef2;\n$loading-indicator--bar--background--inverse: rgba(#38586d, 0.7);\n$loading-indicator--tick--background: rgba($blue, 0.75);\n$loading-indicator--tick--background--inverse: rgba($blue, 0.75);\n\n// priority meter\n$priority-meter--track--level-0--background: rgba(#436076, 0.2);\n$priority-meter--bar--level-0--background: #436076;\n$priority-meter--track--level-1--background: rgba($blue, 0.2);\n$priority-meter--bar--level-1--background: $blue;\n$priority-meter--track--level-2--background: rgba($green, 0.2);\n$priority-meter--bar--level-2--background: $green;\n\n// dropzone\n$dropzone--background: #e9eff5;\n$dropzone--foreground: #53718a;\n$dropzone--foreground--hover: darken($dropzone--foreground, 20%);\n$dropzone--foreground--dragging: $blue;\n$dropzone--border: #d6e2ea;\n$dropzone--border--hover: darken($dropzone--border, 20%);\n$dropzone--border--dragging: $blue;\n$dropzone--browse--foreground: $blue;\n$dropzone--icon--fill: #c7d3df;\n$dropzone--icon--fill--hover: darken($dropzone--icon--fill, 15%);\n$dropzone--icon--fill--dragging: $blue;\n","html,\nbody {\n height: 100%;\n overflow: hidden;\n}\n\n.container {\n height: 100%;\n width: 100%;\n}\n\n.flood {\n align-items: stretch;\n display: flex;\n height: 100%;\n}\n\n.application {\n\n &__content {\n display: flex;\n height: 100vh;\n flex: 1 2 auto;\n flex-direction: column;\n position: relative;\n }\n\n &__panel {\n display: flex;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n\n &--torrent-list {\n transition: transform 0.5s;\n z-index: 2;\n\n &.is-open {\n transform: translateX($torrent-details--width);\n }\n }\n\n &--torrent-details {\n right: 100% - $torrent-details--width;\n width: $torrent-details--width;\n z-index: 1;\n }\n }\n}\n\n.torrent {\n\n &__header {\n flex: 1;\n min-height: 35px;\n max-height: 35px;\n }\n\n &__list {\n\n &__wrapper {\n display: flex;\n flex: 1;\n\n &--custom-scroll {\n flex: 1;\n height: auto !important;\n }\n }\n }\n}\n","body {\n background: $background;\n}\n\nul {\n list-style: none;\n}\n",".action-bar {\n background: $action-bar--background;\n color: $action-bar--foreground;\n display: flex;\n flex: 0 0 60px;\n position: relative;\n\n &:after {\n background: $torrent-list--border;\n bottom: 0;\n content: '';\n height: 1px;\n left: 9px;\n position: absolute;\n right: 0;\n width: auto;\n }\n\n &__item {\n flex: 3;\n\n &:first-child {\n text-align: left;\n }\n\n &:last-child {\n text-align: right;\n }\n\n &--sort-torrents {\n max-width: 225px;\n\n .dropdown {\n margin: 5px 0 0 15px;\n\n &__content {\n min-width: 250px;\n }\n }\n }\n\n &--torrent-operations {\n\n .dropdown {\n display: inline-block;\n height: 60px;\n\n &__content {\n min-width: 430px;\n right: 4px;\n }\n }\n }\n }\n\n &__group {\n display: inline-block;\n font-size: 0;\n padding: 0 15px;\n\n &--has-divider {\n position: relative;\n\n &:before {\n background: $action-bar--group--border;\n content: '';\n position: absolute;\n height: 80%;\n left: 0;\n top: 10%;\n width: 1px;\n }\n }\n }\n}\n\n.actions {\n list-style: none;\n}\n\n.action {\n box-shadow:\n 1px 0 transparent,\n -1px 0 transparent;\n cursor: pointer;\n display: inline-block;\n height: 60px;\n position: relative;\n width: 60px;\n text-align: center;\n transition: background 0.25s, box-shadow 0.25s;\n\n &:hover {\n background: $action--background--hover;\n box-shadow:\n 1px 0 $action--border--hover,\n -1px 0 $action--border--hover;\n\n .icon {\n fill: $action--foreground--hover;\n }\n }\n\n &__label {\n display: block;\n position: absolute;\n top: 100%;\n visibility: hidden;\n }\n\n .icon {\n fill: $action--foreground;\n height: 25px;\n left: 50%;\n position: absolute;\n top: 50%;\n transition: fill 0.25s;\n transform: translateX(-50%) translateY(-50%);\n width: 30px;\n }\n}\n",".application {\n\n &__content {\n background: $main-content--background;\n }\n}\n",".badge {\n background: $sidebar-filter--count--background;\n border-radius: 100px;\n color: $sidebar-filter--count--foreground;\n display: inline-block;\n font-size: 0.8em;\n font-weight: 800;\n line-height: 1;\n margin-left: 10px;\n padding: 1px 5px;\n transition: background 0.25s;\n vertical-align: baseline;\n}\n",".client-stats {\n height: 200px;\n position: relative;\n\n .loading-indicator {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n }\n\n .transfer-data-enter {\n opacity: 0;\n transition: opacity 1s;\n\n &.transfer-data-enter-active {\n opacity: 1;\n }\n }\n\n .transfer-data-leave {\n opacity: 1;\n transition: opacity 1s;\n\n &.transfer-data-leave-active {\n opacity: 0;\n }\n }\n}\n\n.client-stat {\n align-items: center;\n display: flex;\n height: 100px;\n padding: 0 20px;\n\n &__icon,\n &__data {\n position: relative;\n vertical-align: top;\n z-index: 1;\n }\n\n &__icon {\n flex: 0 0 23px;\n\n .icon {\n display: inline-block;\n height: 25px;\n margin: 6px 0 0 -5px;\n width: auto;\n }\n }\n\n &__data {\n flex: 1;\n\n &--primary,\n &--secondary {\n display: block;\n font-weight: 100;\n line-height: 1.2;\n }\n\n &--primary {\n font-size: 1.75em;\n white-space: nowrap;\n\n .unit {\n font-size: 0.65em;\n margin-bottom: 0;\n opacity: 0.5;\n position: relative;\n top: -0.1em;\n }\n }\n\n &--secondary {\n font-size: 0.8em;\n font-style: italic;\n font-weight: 400;\n }\n }\n}\n\n.client-stat {\n\n &--limits {\n background: none;\n border: none;\n color: $client-stats--limits--foreground;\n display: block;\n outline: none;\n padding: 10px 15px;\n font-size: 0.85em;\n text-align: left;\n transition: color 0.25s;\n vertical-align: middle;\n width: 100%;\n\n .icon {\n display: inline-block;\n fill: $client-stats--limits--foreground;\n margin: -2px 5px 0 0;\n transition: fill 0.25s;\n vertical-align: middle;\n width: 14.5px;\n\n .limits {\n\n &__bars {\n\n &--top {\n opacity: 0.4;\n }\n\n &--bottom {\n opacity: 0.6;\n }\n }\n }\n }\n\n &:hover {\n color: $client-stats--limits--icon--hover;\n\n .icon {\n fill: $client-stats--limits--icon--hover;\n }\n }\n }\n}\n\n.client-stat {\n position: relative;\n\n .graph {\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 0;\n\n svg {\n height: 100%;\n width: 100%;\n }\n\n &__line {\n fill: none;\n\n &--limit {\n stroke-dasharray: 3px 4px;\n stroke-width: 1px;\n }\n\n &--rate {\n stroke-width: 1.1px;\n }\n }\n\n }\n\n &--download {\n\n .icon {\n fill: $client-stats--download--secondary--foreground;\n }\n\n .client-stat {\n\n &__data {\n\n &--primary {\n color: $client-stats--download--primary--foreground;\n }\n\n &--secondary {\n color: $client-stats--download--secondary--foreground;\n }\n\n }\n\n }\n\n .graph {\n\n .graph--download--gradient--top {\n stop-color: $client-stats--download--graph--fill--top;\n }\n\n .graph--download--gradient--bottom {\n stop-color: $client-stats--download--graph--fill--bottom;\n }\n\n &__area {\n fill: url('#graph--download--gradient')\n }\n\n &__line {\n\n &--limit {\n stroke: $client-stats--download--limits--line;\n }\n\n &--rate {\n stroke: $client-stats--download--graph--stroke;\n }\n }\n\n }\n\n }\n\n &--upload {\n\n .icon {\n fill: $client-stats--upload--secondary--foreground;\n }\n\n .client-stat {\n\n &__data {\n\n &--primary {\n color: $client-stats--upload--primary--foreground;\n }\n\n &--secondary {\n color: $client-stats--upload--secondary--foreground;\n }\n\n }\n\n }\n\n .graph {\n\n .graph--upload--gradient--top {\n stop-color: $client-stats--upload--graph--fill--top;\n }\n\n .graph--upload--gradient--bottom {\n stop-color: $client-stats--upload--graph--fill--bottom;\n }\n\n &__area {\n fill: url('#graph--upload--gradient')\n }\n\n &__line {\n\n &--limit {\n stroke: $client-stats--upload--limits--line;\n }\n\n &--rate {\n stroke: $client-stats--upload--graph--stroke;\n }\n }\n\n }\n\n }\n\n}\n",".directory-tree {\n\n .icon {\n display: inline-block;\n fill: $directory-tree--icon--folder;\n height: 14px;\n margin-right: 6px;\n width: 14px;\n }\n\n &__node {\n color: $directory-tree--filename--foreground;\n line-height: 1.75;\n text-overflow: ellipsis;\n vertical-align: middle;\n white-space: nowrap;\n\n &--group {\n padding-left: 10px;\n position: relative;\n\n &:after {\n background: rgba(#527893, 0.1);\n content: '';\n height: 100%;\n left: 5px;\n position: absolute;\n top: -5px;\n width: 2px;\n }\n }\n\n &--directory {\n color: $directory-tree--directory--foreground;\n cursor: pointer;\n transition: color 0.125s;\n\n &.is-expanded {\n color: $directory-tree--directory--foreground--open;\n font-weight: 500;\n\n .icon {\n fill: $directory-tree--icon--folder--active;\n }\n }\n\n .icon {\n fill: $directory-tree--icon--folder;\n }\n }\n\n .file {\n align-items: center;\n display: flex;\n line-height: 1.4;\n margin-left: -9px;\n padding: 2px 0 2px 9px;\n transition: background 0.25s, box-shadow 0.25s, color 0.25s;\n width: 100%;\n\n &:hover {\n background: $torrent-details--directory-tree--file--hover--background;\n box-shadow:\n 0 1px 0 $torrent-details--directory-tree--file--hover--border,\n 0 -1px 0 $torrent-details--directory-tree--file--hover--border;\n color: $torrent-details--directory-tree--file--hover--foreground;\n\n .file {\n\n &__detail {\n\n &--size,\n &--priority {\n color: $directory-tree--file-details--hover--foreground;\n }\n }\n }\n }\n\n .icon {\n fill: $directory-tree--icon--file;\n margin-top: -3px;\n vertical-align: middle;\n }\n\n &__detail {\n flex: 1 1 auto;\n overflow: hidden;\n padding-right: $spacing-unit * 1/4;\n text-overflow: ellipsis;\n\n &--size,\n &--priority {\n color: $directory-tree--file-details--foreground;\n flex: 0 0 auto;\n font-size: 0.95em;\n text-align: right;\n transition: color 0.25s;\n }\n\n &--priority {\n\n .icon {\n height: auto;\n margin-right: 0;\n width: 16px;\n }\n }\n\n &:last-child {\n padding-right: 0;\n }\n }\n }\n\n &--file-list {\n margin-bottom: 3px;\n }\n }\n\n &__parent-directory {\n margin-left: -1px;\n overflow: hidden;\n text-overflow: ellipsis;\n\n .icon {\n fill: $torrent-details--directory-tree--parent-directory--icon--fill;\n margin-right: 8px;\n vertical-align: middle;\n }\n }\n\n &__tree {\n\n .directory-tree__tree {\n padding-left: 6px;\n }\n }\n}\n",".dropdown {\n display: inline-block;\n outline: none;\n position: relative;\n z-index: 2;\n\n &__button,\n &__trigger {\n cursor: pointer;\n }\n\n &__button {\n display: block;\n padding: 12px 15px 7px 15px;\n text-align: left;\n width: auto;\n word-wrap: none;\n }\n\n &__content {\n background: $dropdown--background;\n border-radius: 3px;\n box-shadow:\n 0 0 0 1px $dropdown--container--border,\n 0 0 35px $dropdown--container--shadow;\n color: $dropdown--foreground;\n left: 0;\n position: absolute;\n text-align: left;\n top: 0;\n z-index: 2;\n }\n\n &.is-expanded {\n\n .dropdown {\n\n &__header {\n\n .dropdown {\n\n &__value {\n color: $dropdown--value--active;\n }\n }\n }\n }\n }\n\n &__label {\n color: $dropdown--label;\n display: block;\n font-size: 0.65em;\n font-weight: 500;\n letter-spacing: 0.1em;\n line-height: 0.9em;\n text-transform: uppercase;\n\n .dropdown__button & {\n cursor: pointer;\n }\n }\n\n &__value {\n color: $dropdown--value;\n transition: color 0.25s;\n\n &:after {\n border-top: 5px solid $dropdown--value;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n content: '';\n display: inline-block;\n margin-left: 10px;\n vertical-align: middle;\n }\n }\n\n &__header {\n position: relative;\n\n &:after {\n background: $dropdown--header--border;\n bottom: 0;\n content: '';\n display: block;\n height: 1px;\n left: 5%;\n position: absolute;\n width: 90%;\n }\n }\n\n &__items {\n display: flex;\n padding: 10px 0;\n }\n\n &__list {\n flex: 1;\n }\n\n &__item {\n padding: 5px 15px;\n\n &.is-selectable {\n cursor: pointer;\n display: block;\n font-size: 0.9em;\n transition: background 0.25s, color 0.25s;\n\n &:hover {\n background: $dropdown--item--background--hover;\n color: $dropdown--item--foreground--hover;\n }\n\n &.is-selected {\n color: $dropdown--item--foreground--active;\n }\n }\n }\n\n &--align-right & {\n left: auto;\n right: 0;\n }\n}\n\n.dropdown {\n\n &__content {\n\n &-enter {\n animation: fade-in 0.25s both;\n }\n\n &-leave {\n animation: fade-out 0.25s both;\n }\n }\n}\n\n.dropdown {\n\n &__content {\n\n &__container {\n padding: 25px 30px;\n }\n }\n}\n","$dropzone--file--icon--fill: #adbfce;\n\n.dropzone {\n align-items: center;\n background: $dropzone--background;\n border: 1px dashed $dropzone--border;\n border-radius: 4px;\n color: $dropzone--foreground;\n display: flex;\n flex-direction: column;\n text-align: center;\n transition: border 0.25s, color 0.25s;\n width: 100%;\n\n &:hover {\n border-color: $dropzone--border--hover;\n\n .dropzone__icon {\n\n .icon {\n fill: $dropzone--icon--fill--hover;\n }\n }\n }\n\n &--is-dragging {\n\n &,\n &:hover {\n border-color: $dropzone--border--dragging;\n color: $dropzone--foreground--dragging;\n\n .dropzone__icon {\n\n .icon {\n fill: $dropzone--icon--fill--dragging;\n }\n }\n }\n }\n\n &__icon {\n\n .icon {\n\n &--files {\n fill: $dropzone--icon--fill;\n height: 64px;\n transition: fill 0.25s;\n width: 64px;\n\n &__file {\n\n &--right,\n &--left {\n fill-opacity: 0.5;\n }\n }\n }\n }\n }\n\n &__copy {\n cursor: pointer;\n flex: 1;\n font-size: 0.85em;\n padding: $spacing-unit;\n width: 100%;\n }\n\n &__browse-button {\n color: $dropzone--browse--foreground;\n text-decoration: underline;\n }\n\n &__selected-files {\n @extend .textbox;\n @extend .textbox.is-fulfilled;\n border-radius: 4px 4px 0 0 ;\n font-size: 0.8em;\n padding: $spacing-unit * 1/2;\n width: 100%;\n\n & + .dropzone {\n border-radius: 0 0 4px 4px;\n border-top: none;\n }\n\n &__file {\n text-align: left;\n white-space: nowrap;\n\n .icon {\n display: inline-block;\n fill: $dropzone--file--icon--fill;\n height: 12px;\n margin-right: 4px;\n vertical-align: baseline;\n width: 12px;\n }\n\n .icon--close {\n height: 8px;\n margin-left: 4px;\n margin-right: 0;\n vertical-align: middle;\n width: 8px;\n }\n }\n }\n\n &__file {\n display: flex;\n width: 100%;\n\n &__item {\n flex: 1 0 auto;\n\n &--icon {\n flex: 0 0 auto;\n }\n\n &--file-name {\n flex: 1 1 auto;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n &--remove-icon {\n cursor: pointer;\n }\n }\n\n .icon {\n\n }\n }\n}\n",".floating-action {\n\n &__button {\n background: $textbox-repeater--button--background;\n border: none;\n border-radius: 16px;\n box-shadow: 0 0 0 1px $textbox-repeater--button--border;\n cursor: pointer;\n height: 16px;\n outline: none;\n margin-right: 6px;\n padding: 0;\n position: relative;\n transition: background 0.25s, box-shadow 0.25s;\n width: 16px;\n\n &:last-child {\n margin-right: 0;\n }\n\n &:hover {\n background: $textbox-repeater--button--background--hover;\n box-shadow: 0 0 0 1px $textbox-repeater--button--border--hover;\n\n .icon {\n fill: $textbox-repeater--button--foreground--hover;\n }\n }\n\n .icon {\n height: 8px;\n fill: $textbox-repeater--button--foreground;\n left: 50%;\n position: absolute;\n top: 50%;\n transition: fill 0.25s;\n transform: translate(-50%, -50%);\n width: 8px;\n }\n }\n}\n","@keyframes loading-indicator-dots-pulse {\n 0% {\n fill-opacity: 0.2;\n }\n\n 100% {\n fill-opacity: 0.8;\n }\n}\n\n.icon {\n\n &--eta {\n\n .icon {\n\n &__ring {\n fill-opacity: 1;\n }\n }\n }\n\n &--loading-indicator {\n\n .loading-indicator {\n\n &--dots {\n\n &__dot {\n animation: loading-indicator-dots-pulse 0.6s linear alternate infinite;\n fill: $white;\n\n &--center {\n animation-delay: 0.2s;\n }\n\n &--right {\n animation-delay: 0.4s;\n }\n }\n }\n }\n }\n}\n","@keyframes loading-indicator-swipe {\n 0% {\n transform: translateX(-100%);\n }\n\n 50% {\n transform: translateX(400%);\n }\n\n 100% {\n transform: translateX(400%);\n }\n}\n\n.loading-indicator {\n height: 18px;\n position: relative;\n width: 32px;\n\n &.is-inverse {\n\n .loading-indicator {\n\n &__bar {\n background: $loading-indicator--bar--background--inverse;\n\n &:after {\n background: $loading-indicator--tick--background--inverse;\n }\n }\n }\n }\n\n &__bar {\n background: $loading-indicator--bar--background;\n border-radius: 10px;\n height: 3px;\n left: 0;\n overflow: hidden;\n position: absolute;\n transform: translateY(0);\n width: 100%;\n\n &:after {\n animation: loading-indicator-swipe 3s ease-in-out infinite;\n background: $loading-indicator--tick--background;\n border-radius: 10px;\n content: '';\n display: block;\n height: 100%;\n transform: translateX(-100%);\n width: 25%;\n }\n\n &--1 {\n top: 0;\n }\n\n &--2 {\n top: 50%;\n transform: translateY(-50%);\n\n &:after {\n animation-delay: 0.5s;\n }\n }\n\n &--3 {\n bottom: 0;\n\n &:after {\n animation-delay: 1s;\n }\n }\n }\n}\n","$modal--border-radius: 3px;\n$modal--padding--horizontal: $spacing-unit;\n$modal--padding--vertical: $modal--padding--horizontal * 4/5;\n\n$modal--content--padding--top: $spacing-unit * 4/5;\n$modal--content--padding--right: $spacing-unit;\n$modal--content--padding--bottom: $spacing-unit * 4/5;\n$modal--content--padding--left: $spacing-unit;\n\n$modal--actions--margin--top: $spacing-unit;\n\n$modal--tabs--margin--top: $spacing-unit * 2/5;\n$modal--tabs--margin--right: $spacing-unit * -1/5;\n$modal--tabs--margin--bottom: 0;\n$modal--tabs--margin--left: $spacing-unit * -1/5;\n\n.modal {\n background: $modal--overlay;\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n transition: opacity 0.5s;\n width: 100%;\n z-index: 100;\n\n &--align-center {\n text-align: center;\n }\n\n &__tabs {\n color: $modal--tab--foreground;\n font-size: 0.7em;\n font-weight: 400;\n margin: $modal--tabs--margin--top $modal--tabs--margin--right $modal--tabs--margin--bottom $modal--tabs--margin--left;\n\n .modal {\n\n &__tab {\n cursor: pointer;\n display: inline-block;\n margin-right: $spacing-unit * 1/4;\n padding: $spacing-unit * 1/5;\n position: relative;\n\n &:after {\n bottom: 0;\n content: '';\n height: 1px;\n left: 0;\n position: absolute;\n right: 0;\n transition: background 0.25s;\n }\n\n &:last-child {\n margin-right: 0;\n }\n\n &.is-active {\n color: $modal--tab--foreground--active;\n font-weight: 800;\n\n &:after {\n background: $modal--tab--border--active;\n }\n }\n }\n }\n }\n\n &__header {\n background: $modal--heading--background;\n border-radius: $modal--border-radius $modal--border-radius 0 0;\n box-shadow: inset 0 -1px 0 $modal--heading--border;\n color: $modal--heading--foreground;\n flex: 0 0 auto;\n font-size: 1.25em;\n font-weight: 300;\n line-height: 1;\n padding: $modal--padding--vertical $modal--padding--horizontal;\n\n &.has-tabs {\n padding-bottom: 0;\n }\n }\n\n &__content {\n flex: 1 1 auto;\n overflow: auto;\n padding: $modal--content--padding--top $modal--content--padding--right $modal--content--padding--bottom $modal--content--padding--left;\n\n &__wrapper {\n background: $modal--background;\n border-radius: $modal--border-radius;\n box-shadow:\n 0 0 0 1px $modal--content--border,\n 0 0 35px $modal--content--shadow;\n display: flex;\n flex-direction: column;\n left: 50%;\n max-height: 80%;\n max-width: 80%;\n position: absolute;\n top: 10%;\n transform: translate(-50%, 0);\n width: 500px;\n }\n }\n\n &__body {\n color: $modal--body--foreground;\n font-size: 0.9em;\n }\n\n &__actions {\n margin-top: $modal--actions--margin--top;\n }\n\n &__button-group {\n text-align: right;\n\n .modal--align-center & {\n text-align: center;\n }\n\n .button {\n\n & + .button {\n margin-left: 20px;\n }\n }\n }\n\n &__animation-enter {\n opacity: 0;\n }\n\n &__animation-enter-active {\n opacity: 1;\n }\n\n &__animation-leave {\n opacity: 1;\n pointer-events: none;\n }\n\n &__animation-leave-active {\n opacity: 0;\n }\n}\n",".priority-meter {\n height: 8px;\n position: relative;\n\n &__wrapper {\n cursor: pointer;\n display: inline-block;\n padding: 5px;\n user-select: none;\n vertical-align: middle;\n }\n\n &:before,\n &:after {\n content: '';\n display: block;\n position: absolute;\n }\n\n &:before {\n height: 2px;\n left: 0;\n top: 3px;\n transition: background 0.25s;\n width: 100%;\n }\n\n &:after {\n height: 100%;\n top: 0;\n transition: background 0.25s, left 0.25s;\n width: 2px;\n }\n\n &--max-2 {\n width: 18px;\n\n &.priority-meter {\n\n &--level-0 {\n\n &:before {\n background: $priority-meter--track--level-0--background;\n }\n\n &:after {\n left: 0;\n background: $priority-meter--bar--level-0--background;\n }\n }\n\n &--level-1 {\n\n &:before {\n background: $priority-meter--track--level-1--background;\n }\n\n &:after {\n left: 8px;\n background: $priority-meter--bar--level-1--background;\n }\n }\n\n &--level-2 {\n\n &:before {\n background: $priority-meter--track--level-2--background;\n }\n\n &:after {\n background: $priority-meter--bar--level-2--background;\n left: 16px;\n }\n }\n }\n }\n\n &--max-3 {\n width: 26px;\n\n &.priority-meter {\n\n &--level-0 {\n\n &:before {\n background: $priority-meter--track--level-0--background;\n }\n\n &:after {\n left: 0;\n background: $priority-meter--bar--level-0--background;\n }\n }\n\n &--level-1 {\n\n &:before {\n background: $priority-meter--track--level-1--background;\n }\n\n &:after {\n left: 8px;\n background: $priority-meter--bar--level-1--background;\n }\n }\n\n &--level-2 {\n\n &:before {\n background: $priority-meter--track--level-2--background;\n }\n\n &:after {\n background: $priority-meter--bar--level-2--background;\n left: 16px;\n }\n }\n\n &--level-3 {\n\n &:before {\n background: $priority-meter--track--level-2--background;\n }\n\n &:after {\n background: $priority-meter--bar--level-2--background;\n left: 24px;\n }\n }\n }\n }\n}\n",".progress-bar {\n height: 3px;\n position: relative;\n transition: opacity 0.25s;\n z-index: 1;\n\n .is-selected.is-stopped & {\n opacity: 0.5;\n }\n\n &:after {\n background: $progress-bar--background;\n content: '';\n height: 1px;\n left: 0;\n position: absolute;\n z-index: 0;\n top: 1px;\n transition: background 0.25s;\n width: 100%;\n\n .is-selected & {\n background: $progress-bar--background--selected;\n }\n\n .is-selected.is-stopped & {\n background: $progress-bar--background--selected--stopped;\n }\n }\n\n &__fill {\n background: $progress-bar--fill;\n bottom: 0;\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n transition: background 0.25s, width 0.25s;\n z-index: 1;\n\n .is-seeding & {\n background: $progress-bar--fill--completed;\n }\n\n .is-completed &,\n .is-stopped & {\n background: $progress-bar--fill--stopped;\n }\n\n .is-selected & {\n background: $progress-bar--fill--selected;\n }\n\n .has-error & {\n background: $progress-bar--fill--error;\n }\n }\n}\n",".scrollbars {\n\n &__thumb {\n background: $scrollbar--thumb--background--inactive;\n border-radius: 10px;\n cursor: pointer;\n opacity: 0;\n transition: background 0.25s, opacity 0.5s;\n\n &:active {\n opacity: 1;\n }\n\n &:hover,\n &:active {\n background: $scrollbar--thumb--background--hover;\n }\n\n .is-inverted & {\n background: $scrollbar--thumb--background--inverted--inactive;\n\n &:hover,\n &:active {\n background: $scrollbar--thumb--background--inverted--hover;\n }\n }\n }\n\n &:hover {\n\n .scrollbars__thumb {\n opacity: 1;\n }\n }\n}\n",".application {\n\n &__sidebar {\n box-shadow: 1px 0 $sidebar--border;\n color: $sidebar--foreground;\n flex: 1;\n min-width: 200px;\n max-width: 240px;\n overflow: auto;\n position: relative;\n z-index: 2;\n }\n}\n\n.sidebar {\n\n &__item {\n\n &--search {\n position: relative;\n\n .icon {\n fill: $search-torrents--icon--foreground;\n height: 22px;\n left: 17px;\n opacity: 0.5;\n position: absolute;\n top: 50%;\n transition: fill 0.25s, opacity 0.25s;\n transform: translateY(-50%);\n width: 22px;\n }\n\n .textbox {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border: 1px solid $search-torrents--border;\n border-left: none;\n border-right: none;\n border-radius: 0;\n background: $search-torrents--background;\n box-shadow: none;\n color: $search-torrents--foreground;\n display: block;\n font-size: 1em;\n outline: none;\n padding: 12px 0 12px 45px;\n transition: background 0.25s, border 0.25s, color 0.25s;\n width: 100%;\n\n &::placeholder {\n color: $search-torrents--placeholder;\n font-style: italic;\n transition: color 0.25s;\n }\n }\n\n &.is-in-use {\n\n .icon {\n fill: $search-torrents--icon--foreground--active;\n opacity: 1;\n }\n\n .textbox {\n background: $search-torrents--background--active;\n border-bottom: 1px solid $search-torrents--border--active;\n border-top: 1px solid $search-torrents--border--active;\n color: $search-torrents--foreground--active;\n\n &::placeholder {\n color: $search-torrents--placeholder--active;\n }\n }\n }\n }\n\n &--speed-limit {\n padding-left: 5px;\n padding-top: 5px;\n\n .dropdown {\n\n &__content {\n min-width: 180px;\n }\n\n &__items {\n font-size: 0.9em;\n }\n }\n }\n }\n}\n",".sidebar-filter {\n font-size: 0.85em;\n padding: 30px 0;\n\n & + .sidebar-filter {\n padding-top: 0;\n }\n\n &__item {\n color: $sidebar-filter--foreground;\n cursor: pointer;\n font-weight: 400;\n padding: 3px 20px;\n transition: color 0.25s;\n\n &:hover {\n color: $sidebar-filter--foreground--hover;\n\n .icon {\n fill: $sidebar-filter--foreground--hover;\n }\n }\n\n &.is-active {\n color: $sidebar-filter--foreground--active;\n font-weight: 700;\n\n .badge {\n background: $sidebar-filter--count--background--active;\n }\n\n .icon {\n fill: $sidebar-filter--foreground--active;\n }\n }\n\n .icon {\n display: inline-block;\n fill: $sidebar-filter--foreground;\n height: 14px;\n margin-right: 7px;\n transition: fill 0.25s;\n vertical-align: middle;\n width: auto;\n }\n }\n\n .badge {\n background: $sidebar-filter--count--background;\n color: $sidebar-filter--count--foreground;\n }\n}\n\n\n.sidebar-filter {\n\n &__item {\n\n &--heading {\n cursor: default;\n font-size: 0.8em;\n font-weight: 500;\n letter-spacing: 0.1em;\n text-transform: uppercase;\n\n &,\n &:hover {\n color: $sidebar-filter--foreground--header;\n }\n }\n }\n}\n",".textbox-repeater {\n\n .floating-action {\n\n &__group {\n margin-top: -8px;\n position: absolute;\n right: -8px;\n top: 50%;\n }\n\n &__button {\n position: relative;\n }\n }\n\n .textbox {\n\n &__wrapper {\n position: relative;\n }\n }\n\n .form {\n\n &__row {\n\n & + .form__row {\n margin-top: $spacing-unit * 1/2;\n }\n }\n }\n}\n",".application {\n\n &__panel {\n\n &--torrent-details {\n background: $torrent-details--background;\n }\n }\n}\n\n.torrent-details {\n background: $torrent-details--background;\n bottom: 0;\n box-shadow: -1px 0 0 $torrent-details--border;\n display: flex;\n flex-direction: column;\n font-size: 0.8em;\n left: 0;\n min-width: 400px;\n overflow: auto;\n position: absolute;\n right: 0;\n top: 0;\n transition: opacity 1s;\n z-index: 2;\n\n &__wrapper {\n flex: 1;\n height: 100%;\n }\n\n &__scroll-container {\n height: auto !important;\n }\n\n &__header {\n box-shadow: 0 1px 0 $torrent-details--header--border;\n flex: 0 0 auto;\n padding: $spacing-unit * 1/2 $spacing-unit $spacing-unit * 2/3 $spacing-unit;\n\n &.has-error {\n\n .progress-bar {\n\n &__fill {\n background: $torrent-details--header--progress-bar--fill--error;\n }\n }\n }\n\n &.is-stopped {\n\n .progress-bar {\n\n &__fill {\n background: #7b9cb4;\n }\n }\n }\n\n .progress-bar {\n\n &:after {\n background: $torrent-details--header--progress-bar--track;\n }\n }\n }\n\n &__action {\n cursor: pointer;\n transition: color 0.25s;\n\n .icon {\n transition: fill 0.25s;\n }\n\n &.is-active {\n color: $blue;\n\n .icon {\n fill: $blue;\n }\n }\n }\n\n &__table {\n color: $torrent-details--table--foreground;\n width: 100%;\n\n &__heading {\n\n &--primary {\n color: $torrent-details--directory-tree--parent-directory--foreground;\n font-size: 1.125em;\n }\n\n &--secondary {\n color: $torrent-details--table--header;\n font-size: 0.7em;\n letter-spacing: 0.1em;\n text-transform: uppercase;\n }\n }\n }\n\n &__content {\n flex: 1;\n overflow: auto;\n padding: $spacing-unit * 2/3 $spacing-unit;\n\n &__wrapper {\n background: $torrent-details--content--background;\n display: flex;\n flex: 1;\n overflow: hidden;\n }\n }\n\n &__navigation {\n background: $torrent-details--navigation--background;\n box-shadow: 1px 0 0 $torrent-details--navigation--border;\n min-width: 125px;\n padding: $spacing-unit * 1/2 0;\n\n .navigation {\n\n &__item {\n cursor: pointer;\n padding: $spacing-unit * 1/4 $spacing-unit;\n text-align: right;\n transition: background 0.25s, box-shadow 0.25s, color 0.25s;\n\n &.is-active {\n background: $torrent-details--navigation--item--background--active;\n box-shadow: 1px 0 0 $torrent-details--navigation--item--border--active;\n color: $torrent-details--navigation--item--foreground--active;\n }\n }\n }\n }\n\n &__section {\n\n &__heading,\n &__null-data {\n color: $torrent-details--directory-tree--parent-directory--foreground;\n font-size: 1.15em;\n margin-bottom: $spacing-unit * 1/10;\n }\n\n &__heading {\n\n .badge {\n background: $torrent-details--table--header--count--background;\n color: $torrent-details--table--header--count--foreground;\n }\n }\n }\n}\n\n.torrent-details {\n\n &__heading {\n color: $torrent-details--header--name--foreground;\n font-size: 1.7em;\n font-weight: 300;\n }\n\n &__sub-heading {\n display: flex;\n margin-bottom: $spacing-unit * 1/4;\n\n &__secondary {\n color: $torrent-details--header--tertiary--foreground;\n display: flex;\n flex: 1 0 auto;\n\n &:first-child {\n justify-content: flex-start;\n }\n\n &:last-child {\n justify-content: flex-end;\n }\n }\n\n &__tertiary {\n flex: 0 0 auto;\n margin-right: 1em;\n\n .icon {\n fill: $torrent-details--header--icon--default--fill;\n height: 12px;\n margin-right: 3px;\n margin-top: -3px;\n vertical-align: middle;\n width: 12px;\n }\n\n .priority-meter {\n display: inline-block;\n margin-top: -1px;\n margin-right: 6px;\n vertical-align: middle;\n\n &__wrapper {\n margin-top: -3px;\n padding: 0;\n }\n }\n\n &--download {\n color: $blue;\n\n .icon {\n fill: $blue;\n }\n }\n\n &--upload {\n color: $green;\n\n .icon {\n fill: $green;\n }\n }\n\n &:last-child {\n margin-right: 0;\n }\n }\n }\n}\n\n.torrent-details-enter {\n opacity: 0;\n}\n\n.torrent-details-enter-active {\n opacity: 1;\n}\n\n.torrent-details-leave {\n opacity: 0;\n transition: opacity 0.5s;\n}\n",".torrents {\n display: flex;\n flex: 1 1 100px;\n position: relative;\n\n &:after {\n background: $torrent-list--background;\n bottom: 0;\n box-shadow: -1px 0 0 0 $torrent-list--border;\n content: '';\n height: auto;\n left: 10px;\n position: absolute;\n right: 0;\n top: 0;\n }\n\n .loading-indicator {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n }\n}\n\n.torrent {\n\n &__list {\n margin: 0 0 0 10px;\n padding: 10px 0;\n position: relative;\n\n &__wrapper {\n list-style: none;\n max-width: 100%;\n opacity: 1;\n overflow: auto;\n transition: opacity 1s;\n user-select: none;\n z-index: 1;\n }\n\n &--loading {\n\n &-enter {\n opacity: 0;\n transition: opacity 1s;\n\n &-active {\n opacity: 1;\n }\n }\n\n &-leave {\n opacity: 1;\n transition: opacity 1s;\n\n &-active {\n opacity: 0;\n }\n }\n }\n\n &--empty {\n opacity: 0;\n }\n }\n}\n\n.torrent {\n cursor: default;\n padding: 10px 20px;\n position: relative;\n transition: background 0.25s;\n\n &:hover {\n background: $torrent--background--hover;\n\n .torrent {\n\n &__more-info {\n opacity: 1;\n }\n }\n }\n\n &.is-selected {\n background: $torrent--background--selected;\n }\n\n &__more-info {\n height: 20px;\n margin-top: -10px;\n position: absolute;\n left: -7px;\n opacity: 0;\n top: 50%;\n transition: background 0.25s, box-shadow 0.25s, opacity 0.25s;\n width: 20px;\n }\n}\n\n.torrent {\n\n &__details {\n align-items: center;\n display: flex;\n flex: 1;\n flex-flow: row wrap;\n list-style: none;\n\n &--primary,\n &--secondary,\n &--tertiary {\n transition: color 0.25s;\n }\n\n &--primary {\n color: $torrent--primary--foreground;\n flex: 4;\n line-height: 1.3;\n white-space: nowrap;\n\n .is-stopped & {\n color: $torrent--primary--foreground--stopped;\n }\n\n .is-selected & {\n color: $torrent--primary--foreground--selected;\n }\n\n .is-selected.is-stopped & {\n color: $torrent--primary--foreground--selected--stopped;\n }\n }\n\n &--secondary {\n align-items: flex-end;\n color: $torrent--secondary--foreground;\n flex: 1;\n font-size: 0.75em;\n min-width: 200px;\n\n li {\n flex: 1 1 auto;\n min-width: 15%;\n\n &.torrent__details--ratio {\n max-width: 30px;\n }\n }\n\n .is-stopped & {\n color: $torrent--secondary--foreground--stopped;\n }\n\n .is-selected & {\n color: $torrent--secondary--foreground--selected;\n }\n\n .is-selected.is-stopped & {\n color: $torrent--secondary--foreground--selected--stopped;\n }\n }\n\n &--tertiary {\n color: $torrent--tertiary--foreground;\n display: block;\n font-size: 0.75em;\n margin: 0 0 3px 0;\n\n li {\n display: inline-block;\n margin-right: 1em;\n\n &:last-child {\n margin-right: 0;\n }\n }\n\n .is-stopped & {\n color: $torrent--tertiary--foreground--stopped;\n }\n\n .is-selected & {\n color: $torrent--tertiary--foreground--selected;\n }\n\n .is-selected.is-stopped & {\n color: $torrent--tertiary--foreground--selected--stopped;\n }\n }\n\n &__label {\n margin-right: 0.5em;\n opacity: 0.5;\n }\n }\n}\n\n.torrent {\n\n &__details {\n\n &--eta {\n opacity: 0;\n transition: opacity 1s, visibility 1s;\n visibility: hidden;\n\n .torrent__details--segment {\n margin-right: 0.25em;\n\n &:last-child {\n margin-right: 0;\n }\n }\n\n .is-actively-downloading & {\n opacity: 1;\n visibility: visible;\n }\n }\n }\n}\n\n.view {\n\n &--torrent-list {\n background: #e9eef2;\n box-shadow: -1px 0 $torrent-list--border;\n display: flex;\n flex-direction: column;\n flex: 1;\n flex: 0 1 100%;\n }\n}\n",".transfer-data {\n\n &--download {\n color: $transfer-data--download;\n\n .icon {\n fill: $transfer-data--download;\n }\n }\n\n &--upload {\n color: $transfer-data--upload;\n\n .icon {\n fill: $transfer-data--upload;\n }\n }\n}\n"],"sourceRoot":"/source/"} \ No newline at end of file diff --git a/server/models/client.js b/server/models/client.js index 91cc5809..f4e7ba5c 100644 --- a/server/models/client.js +++ b/server/models/client.js @@ -241,6 +241,59 @@ var client = { }); }, + moveFiles: function(data, callback) { + let files = data.files || []; + + var multicall = [ + [] + ]; + + if (data.destination !== null && data.destination !== '') { + multicall[0].push({ + methodName: 'execute', + params: [ + 'mkdir', + '-p', + data.destination + ] + }); + } + + var torrentsAdded = 0; + + // loop through the torrents: + // stop torrents, call d.stop and d.close + // move torrents + // set new torrent directory + // start torrents, call d.start and d.open + + while (torrentsAdded < data.urls.length) { + var parameters = [ + '', + data.urls[torrentsAdded] + ]; + + if (data.destination !== null && data.destination !== '') { + parameters.push('d.directory.set="' + data.destination + '"'); + } + + parameters.push('d.custom.set=addtime,' + Math.floor(Date.now() / 1000)); + + multicall[0].push({ + methodName: 'load.start', + params: parameters + }); + + torrentsAdded++; + } + + rTorrent.get('system.multicall', multicall).then(function(data) { + callback(null, data); + }, function(error) { + callback(error, null); + }); + }, + setFilePriority: function (hash, data, callback) { // TODO Add support for multiple hashes. var fileIndex = data.fileIndices[0];