From 0d90e0b7f61c6a12072a3f789f6e6f1bcc4d79ad Mon Sep 17 00:00:00 2001 From: Martin Donnelly Date: Fri, 17 Jun 2016 16:50:40 +0100 Subject: [PATCH] New dials --- app/css/app.css | 67 +- app/css/custom.scss | 9 +- app/css/mui.custom.css | 1913 +---------------- app/index.html | 5 + app/js/device/CC2650/cc2650_accelerometer.js | 8 +- app/js/device/CC2650/cc2650_thermopile.js | 68 +- app/js/device/fmc/TSL.js | 440 ++++ app/js/standards/capability.js | 68 +- app/js/standards/deviceInformation.js | 61 + app/partials/cc2650_barometer.ejs | 42 + app/partials/cc2650_thermopile.ejs | 48 + app/partials/cc2650_thermopile_dial.ejs | 92 + app/partials/tsl.ejs | 45 + fonts.list | 1 + gulpfile.js | 18 + localserver.js | 16 + package.json | 3 + .../2.2.1/taskArtifacts/cache.properties.lock | Bin 17 -> 17 bytes .../2.2.1/taskArtifacts/fileHashes.bin | Bin 148764 -> 155035 bytes .../2.2.1/taskArtifacts/fileSnapshots.bin | Bin 10918810 -> 11360782 bytes .../2.2.1/taskArtifacts/taskArtifacts.bin | Bin 61031 -> 61031 bytes platforms/android/assets/www/css/app.css | 67 +- platforms/android/assets/www/css/custom.scss | 9 +- .../android/assets/www/css/mui.custom.css | 1913 +---------------- platforms/android/assets/www/index.html | 5 + .../js/device/CC2650/cc2650_accelerometer.js | 10 +- .../www/js/device/CC2650/cc2650_thermopile.js | 68 +- .../assets/www/js/standards/capability.js | 68 +- 28 files changed, 1081 insertions(+), 3963 deletions(-) create mode 100644 app/js/device/fmc/TSL.js create mode 100644 app/js/standards/deviceInformation.js create mode 100644 app/partials/cc2650_barometer.ejs create mode 100644 app/partials/cc2650_thermopile.ejs create mode 100644 app/partials/cc2650_thermopile_dial.ejs create mode 100644 app/partials/tsl.ejs create mode 100644 localserver.js diff --git a/app/css/app.css b/app/css/app.css index 8c9a060..a4231cd 100644 --- a/app/css/app.css +++ b/app/css/app.css @@ -1,8 +1,3 @@ -body { - font-family: Ubuntu, "Helvetica Neue", Helvetica, arial, sans-serif; - - } - #lightR, #projR { color: red !important; } @@ -17,7 +12,6 @@ body { } - .h105 { height: 100px; } @@ -82,57 +76,6 @@ body { /* Smartphones (portrait and landscape) ----------- */ @media only screen and (min-device-width: 320px) and (max-device-width: 480px) { /* Styles */ - .time, .date, .temp { - font-family: 'Ubuntu Condensed', sans-serif; - font-size: 33px; - /*color: #ff0000;*/ - } - - .time { - font-size: 50px; - line-height: 1; - } - - .time span.hour:after { - content: "\a"; - white-space: pre; - } - - .temp { - font-size: 70px; - } - - .temp::after { - content: "°"; - } - - .wd-we { - font-size: 75%; - } - - .mo { - font-size: 85%; - } - - .mo.mo-1, .mo.mo-10 { - font-size: 70%; - } - - .mo.mo-2 { - font-size: 65%; - } - - .mo.mo-8 { - font-size: 80%; - } - - .mo.mo-9 { - font-size: 55%; - } - - .mo.mo-11, .mo.mo-12 { - font-size: 60%; - } } @@ -258,3 +201,13 @@ color:#78909C; { color:#2196F3; } + + +/* svg classes */ + +svg text { + font-family:'Ubuntu Condensed',sans-serif; + font-size:12; + fill: #bad649; + text-align:right; + } diff --git a/app/css/custom.scss b/app/css/custom.scss index 8d1af65..dd9b28a 100644 --- a/app/css/custom.scss +++ b/app/css/custom.scss @@ -1,9 +1,14 @@ @import "app/libs/mui/src/sass/mui/colors"; -$mui-body-bg-color: mui-color('grey', '100'); +$mui-body-bg-color: /*#003F5a*/ mui-color('grey', '800'); +$mui-base-font-color: rgba(#FFF, 0.87) !default; +$mui-base-font-family: Ubuntu, "Helvetica Neue", Helvetica, Arial, Verdana, Tahoma !default; + +$mui-panel-bg-color : /*#004c6d*/ mui-color('grey', '900'); + //$mui-accent-color: #bad649; -$mui-accent-color: #004c6d; +$mui-accent-color: #00aeef; $mui-btn-accent-font-color: #004c6d; //$mui-accent-color-dark: mui-color('green', 'A100'); $mui-accent-color-dark: #004c6d; diff --git a/app/css/mui.custom.css b/app/css/mui.custom.css index 17b163f..9cd48c9 100644 --- a/app/css/mui.custom.css +++ b/app/css/mui.custom.css @@ -1,1912 +1 @@ -/** - * MUI Colors module - */ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ -/** - * 1. Set default font family to sans-serif. - * 2. Prevent iOS and IE text size adjust after device orientation change, - * without disabling user zoom. - */ -html { - font-family: sans-serif; - /* 1 */ - -ms-text-size-adjust: 100%; - /* 2 */ - -webkit-text-size-adjust: 100%; - /* 2 */ } - -/** - * Remove default margin. - */ -body { - margin: 0; } - -/* HTML5 display definitions - ========================================================================== */ -/** - * Correct `block` display not defined for any HTML5 element in IE 8/9. - * Correct `block` display not defined for `details` or `summary` in IE 10/11 - * and Firefox. - * Correct `block` display not defined for `main` in IE 11. - */ -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; } - -/** - * 1. Correct `inline-block` display not defined in IE 8/9. - * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. - */ -audio, -canvas, -progress, -video { - display: inline-block; - /* 1 */ - vertical-align: baseline; - /* 2 */ } - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ -audio:not([controls]) { - display: none; - height: 0; } - -/** - * Address `[hidden]` styling not present in IE 8/9/10. - * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22. - */ -[hidden], -template { - display: none; } - -/* Links - ========================================================================== */ -/** - * Remove the gray background color from active links in IE 10. - */ -a { - background-color: transparent; } - -/** - * Improve readability of focused elements when they are also in an - * active/hover state. - */ -a:active, -a:hover { - outline: 0; } - -/* Text-level semantics - ========================================================================== */ -/** - * Address styling not present in IE 8/9/10/11, Safari, and Chrome. - */ -abbr[title] { - border-bottom: 1px dotted; } - -/** - * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. - */ -b, -strong { - font-weight: bold; } - -/** - * Address styling not present in Safari and Chrome. - */ -dfn { - font-style: italic; } - -/** - * Address variable `h1` font-size and margin within `section` and `article` - * contexts in Firefox 4+, Safari, and Chrome. - */ -h1 { - font-size: 2em; - margin: 0.67em 0; } - -/** - * Address styling not present in IE 8/9. - */ -mark { - background: #ff0; - color: #000; } - -/** - * Address inconsistent and variable font size in all browsers. - */ -small { - font-size: 80%; } - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; } - -sup { - top: -0.5em; } - -sub { - bottom: -0.25em; } - -/* Embedded content - ========================================================================== */ -/** - * Remove border when inside `a` element in IE 8/9/10. - */ -img { - border: 0; } - -/** - * Correct overflow not hidden in IE 9/10/11. - */ -svg:not(:root) { - overflow: hidden; } - -/* Grouping content - ========================================================================== */ -/** - * Address margin not present in IE 8/9 and Safari. - */ -figure { - margin: 1em 40px; } - -/** - * Address differences between Firefox and other browsers. - */ -hr { - box-sizing: content-box; - height: 0; } - -/** - * Contain overflow in all browsers. - */ -pre { - overflow: auto; } - -/** - * Address odd `em`-unit font size rendering in all browsers. - */ -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; } - -/* Forms - ========================================================================== */ -/** - * Known limitation: by default, Chrome and Safari on OS X allow very limited - * styling of `select`, unless a `border` property is set. - */ -/** - * 1. Correct color not being inherited. - * Known issue: affects color of disabled elements. - * 2. Correct font properties not being inherited. - * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. - */ -button, -input, -optgroup, -select, -textarea { - color: inherit; - /* 1 */ - font: inherit; - /* 2 */ - margin: 0; - /* 3 */ } - -/** - * Address `overflow` set to `hidden` in IE 8/9/10/11. - */ -button { - overflow: visible; } - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. - * Correct `select` style inheritance in Firefox. - */ -button, -select { - text-transform: none; } - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - */ -button, -html input[type="button"], -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; - /* 2 */ - cursor: pointer; - /* 3 */ } - -/** - * Re-set default cursor for disabled elements. - */ -button[disabled], -html input[disabled] { - cursor: default; } - -/** - * Remove inner padding and border in Firefox 4+. - */ -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; } - -/** - * Address Firefox 4+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ -input { - line-height: normal; } - -/** - * It's recommended that you don't attempt to style these elements. - * Firefox's implementation doesn't respect box-sizing, padding, or width. - * - * 1. Address box sizing set to `content-box` in IE 8/9/10. - * 2. Remove excess padding in IE 8/9/10. - */ -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; - /* 1 */ - padding: 0; - /* 2 */ } - -/** - * Fix the cursor style for Chrome's increment/decrement buttons. For certain - * `font-size` values of the `input`, it causes the cursor style of the - * decrement button to change from `default` to `text`. - */ -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; } - -/** - * 1. Address `appearance` set to `searchfield` in Safari and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari and Chrome. - */ -input[type="search"] { - -webkit-appearance: textfield; - /* 1 */ - box-sizing: content-box; - /* 2 */ } - -/** - * Remove inner padding and search cancel button in Safari and Chrome on OS X. - * Safari (but not Chrome) clips the cancel button when the search input has - * padding (and `textfield` appearance). - */ -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; } - -/** - * Define consistent border, margin, and padding. - */ -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; } - -/** - * 1. Correct `color` not being inherited in IE 8/9/10/11. - * 2. Remove padding so people aren't caught out if they zero out fieldsets. - */ -legend { - border: 0; - /* 1 */ - padding: 0; - /* 2 */ } - -/** - * Remove default vertical scrollbar in IE 8/9/10/11. - */ -textarea { - overflow: auto; } - -/** - * Don't inherit the `font-weight` (applied by a rule above). - * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. - */ -optgroup { - font-weight: bold; } - -/* Tables - ========================================================================== */ -/** - * Remove most spacing between table cells. - */ -table { - border-collapse: collapse; - border-spacing: 0; } - -td, -th { - padding: 0; } - -/** - * MUI Colors module - */ -/** - * MUI Reboot - */ -* { - box-sizing: border-box; } - -*:before, -*:after { - box-sizing: border-box; } - -html { - font-size: 10px; - -webkit-tap-highlight-color: transparent; } - -body { - font-family: Arial, Verdana, Tahoma; - font-size: 14px; - font-weight: 400; - line-height: 1.429; - color: rgba(0, 0, 0, 0.87); - background-color: #F5F5F5; } - -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; } - -a { - color: #2196F3; - text-decoration: none; } - a:hover, a:focus { - color: #1976D2; - text-decoration: underline; } - a:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; } - -p { - margin: 0 0 10px; } - -ul, -ol { - margin-top: 0; - margin-bottom: 10px; } - -figure { - margin: 0; } - -img { - vertical-align: middle; } - -hr { - margin-top: 20px; - margin-bottom: 20px; - border: 0; - height: 1px; - background-color: rgba(0, 0, 0, 0.12); } - -legend { - display: block; - width: 100%; - padding: 0; - margin-bottom: 10px; - font-size: 21px; - color: rgba(0, 0, 0, 0.87); - line-height: inherit; - border: 0; } - -input[type="search"] { - box-sizing: border-box; - -webkit-appearance: none; } - -input[type="file"]:focus, -input[type="radio"]:focus, -input[type="checkbox"]:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; } - -input[type="radio"]:disabled, -input[type="checkbox"]:disabled { - cursor: not-allowed; } - -strong { - font-weight: 700; } - -abbr[title] { - cursor: help; - border-bottom: 1px dotted #2196F3; } - -h1, h2, h3 { - margin-top: 20px; - margin-bottom: 10px; } - -h4, h5, h6 { - margin-top: 10px; - margin-bottom: 10px; } - -/** - * MUI Appbar - */ -.mui--appbar-height { - height: 56px; } - -.mui--appbar-min-height, .mui-appbar { - min-height: 56px; } - -.mui--appbar-line-height { - line-height: 56px; } - -.mui--appbar-top { - top: 56px; } - -@media (orientation: landscape) and (max-height: 480px) { - .mui--appbar-height { - height: 48px; } - .mui--appbar-min-height, .mui-appbar { - min-height: 48px; } - .mui--appbar-line-height { - line-height: 48px; } - .mui--appbar-top { - top: 48px; } } - -@media (min-width: 480px) { - .mui--appbar-height { - height: 64px; } - .mui--appbar-min-height, .mui-appbar { - min-height: 64px; } - .mui--appbar-line-height { - line-height: 64px; } - .mui--appbar-top { - top: 64px; } } - -.mui-appbar { - background-color: #004c6d; - color: #FFF; } - -/** - * MUI Buttons - */ -.mui-btn { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; - font-weight: 500; - font-size: 14px; - line-height: 18px; - text-transform: uppercase; - color: rgba(0, 0, 0, 0.87); - background-color: #FFF; - transition: all 0.2s ease-in-out; - display: inline-block; - height: 36px; - padding: 0 26px; - margin-top: 6px; - margin-bottom: 6px; - border: none; - border-radius: 2px; - cursor: pointer; - touch-action: manipulation; - background-image: none; - text-align: center; - line-height: 36px; - vertical-align: middle; - white-space: nowrap; - user-select: none; - font-size: 14px; - letter-spacing: 0.03em; - position: relative; - overflow: hidden; } - .mui-btn:hover, .mui-btn:focus, .mui-btn:active { - color: rgba(0, 0, 0, 0.87); - background-color: white; } - .mui-btn[disabled]:hover, .mui-btn[disabled]:focus, .mui-btn[disabled]:active { - color: rgba(0, 0, 0, 0.87); - background-color: #FFF; } - .mui-btn.mui-btn--flat { - color: rgba(0, 0, 0, 0.87); - background-color: transparent; } - .mui-btn.mui-btn--flat:hover, .mui-btn.mui-btn--flat:focus, .mui-btn.mui-btn--flat:active { - color: rgba(0, 0, 0, 0.87); - background-color: #f2f2f2; } - .mui-btn.mui-btn--flat[disabled]:hover, .mui-btn.mui-btn--flat[disabled]:focus, .mui-btn.mui-btn--flat[disabled]:active { - color: rgba(0, 0, 0, 0.87); - background-color: transparent; } - .mui-btn:hover, .mui-btn:focus, .mui-btn:active { - outline: 0; - text-decoration: none; - color: rgba(0, 0, 0, 0.87); } - .mui-btn:hover, .mui-btn:focus { - box-shadow: 0 0px 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-btn:hover, .mui-btn:focus { - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.12), -1px 0px 2px rgba(0, 0, 0, 0.12), 0 0px 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } } - .mui-btn:active { - box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-btn:active { - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.12), -1px 0px 2px rgba(0, 0, 0, 0.12), 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } } - .mui-btn:disabled, .mui-btn.mui--is-disabled { - cursor: not-allowed; - pointer-events: none; - opacity: 0.60; - box-shadow: none; } - -.mui-btn + .mui-btn { - margin-left: 8px; } - -.mui-btn--flat { - background-color: transparent; } - .mui-btn--flat:hover, .mui-btn--flat:focus, .mui-btn--flat:active { - box-shadow: none; - background-color: #f2f2f2; } - -.mui-btn--raised, .mui-btn--fab { - box-shadow: 0 0px 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-btn--raised, .mui-btn--fab { - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.12), -1px 0px 2px rgba(0, 0, 0, 0.12), 0 0px 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } } - .mui-btn--raised:active, .mui-btn--fab:active { - box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-btn--raised:active, .mui-btn--fab:active { - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.12), -1px 0px 2px rgba(0, 0, 0, 0.12), 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } } - -.mui-btn--fab { - position: relative; - padding: 0; - width: 55px; - height: 55px; - line-height: 55px; - border-radius: 50%; - z-index: 1; } - -.mui-btn--primary { - color: #FFF; - background-color: #2196F3; } - .mui-btn--primary:hover, .mui-btn--primary:focus, .mui-btn--primary:active { - color: #FFF; - background-color: #39a1f4; } - .mui-btn--primary[disabled]:hover, .mui-btn--primary[disabled]:focus, .mui-btn--primary[disabled]:active { - color: #FFF; - background-color: #2196F3; } - .mui-btn--primary.mui-btn--flat { - color: #2196F3; - background-color: transparent; } - .mui-btn--primary.mui-btn--flat:hover, .mui-btn--primary.mui-btn--flat:focus, .mui-btn--primary.mui-btn--flat:active { - color: #2196F3; - background-color: #f2f2f2; } - .mui-btn--primary.mui-btn--flat[disabled]:hover, .mui-btn--primary.mui-btn--flat[disabled]:focus, .mui-btn--primary.mui-btn--flat[disabled]:active { - color: #2196F3; - background-color: transparent; } - -.mui-btn--dark { - color: #FFF; - background-color: #424242; } - .mui-btn--dark:hover, .mui-btn--dark:focus, .mui-btn--dark:active { - color: #FFF; - background-color: #4f4f4f; } - .mui-btn--dark[disabled]:hover, .mui-btn--dark[disabled]:focus, .mui-btn--dark[disabled]:active { - color: #FFF; - background-color: #424242; } - .mui-btn--dark.mui-btn--flat { - color: #424242; - background-color: transparent; } - .mui-btn--dark.mui-btn--flat:hover, .mui-btn--dark.mui-btn--flat:focus, .mui-btn--dark.mui-btn--flat:active { - color: #424242; - background-color: #f2f2f2; } - .mui-btn--dark.mui-btn--flat[disabled]:hover, .mui-btn--dark.mui-btn--flat[disabled]:focus, .mui-btn--dark.mui-btn--flat[disabled]:active { - color: #424242; - background-color: transparent; } - -.mui-btn--danger { - color: #FFF; - background-color: #F44336; } - .mui-btn--danger:hover, .mui-btn--danger:focus, .mui-btn--danger:active { - color: #FFF; - background-color: #f55a4e; } - .mui-btn--danger[disabled]:hover, .mui-btn--danger[disabled]:focus, .mui-btn--danger[disabled]:active { - color: #FFF; - background-color: #F44336; } - .mui-btn--danger.mui-btn--flat { - color: #F44336; - background-color: transparent; } - .mui-btn--danger.mui-btn--flat:hover, .mui-btn--danger.mui-btn--flat:focus, .mui-btn--danger.mui-btn--flat:active { - color: #F44336; - background-color: #f2f2f2; } - .mui-btn--danger.mui-btn--flat[disabled]:hover, .mui-btn--danger.mui-btn--flat[disabled]:focus, .mui-btn--danger.mui-btn--flat[disabled]:active { - color: #F44336; - background-color: transparent; } - -.mui-btn--accent { - color: #004c6d; - background-color: #004c6d; } - .mui-btn--accent:hover, .mui-btn--accent:focus, .mui-btn--accent:active { - color: #004c6d; - background-color: #005e87; } - .mui-btn--accent[disabled]:hover, .mui-btn--accent[disabled]:focus, .mui-btn--accent[disabled]:active { - color: #004c6d; - background-color: #004c6d; } - .mui-btn--accent.mui-btn--flat { - color: #004c6d; - background-color: transparent; } - .mui-btn--accent.mui-btn--flat:hover, .mui-btn--accent.mui-btn--flat:focus, .mui-btn--accent.mui-btn--flat:active { - color: #004c6d; - background-color: #f2f2f2; } - .mui-btn--accent.mui-btn--flat[disabled]:hover, .mui-btn--accent.mui-btn--flat[disabled]:focus, .mui-btn--accent.mui-btn--flat[disabled]:active { - color: #004c6d; - background-color: transparent; } - -.mui-btn--small { - height: 30.6px; - line-height: 30.6px; - padding: 0 16px; - font-size: 13px; } - -.mui-btn--large { - height: 54px; - line-height: 54px; - padding: 0 26px; - font-size: 14px; } - -.mui-btn--fab.mui-btn--small { - width: 44px; - height: 44px; - line-height: 44px; } - -.mui-btn--fab.mui-btn--large { - width: 75px; - height: 75px; - line-height: 75px; } - -/** - * MUI Checkboxe and Radio Components - */ -.mui-radio, -.mui-checkbox { - position: relative; - display: block; - margin-top: 10px; - margin-bottom: 10px; } - .mui-radio > label, - .mui-checkbox > label { - min-height: 20px; - padding-left: 20px; - margin-bottom: 0; - font-weight: normal; - cursor: pointer; } - -.mui-radio > label > input[type="radio"], -.mui-radio--inline > label > input[type="radio"], -.mui-checkbox > label > input[type="checkbox"], -.mui-checkbox--inline > label > input[type="checkbox"] { - position: absolute; - margin-left: -20px; - margin-top: 4px; } - -.mui-radio + .mui-radio, -.mui-checkbox + .mui-checkbox { - margin-top: -5px; } - -.mui-radio--inline, -.mui-checkbox--inline { - display: inline-block; - padding-left: 20px; - margin-bottom: 0; - vertical-align: middle; - font-weight: normal; - cursor: pointer; } - .mui-radio--inline > input[type="radio"], - .mui-radio--inline > input[type="checkbox"], - .mui-radio--inline > label > input[type="radio"], - .mui-radio--inline > label > input[type="checkbox"], - .mui-checkbox--inline > input[type="radio"], - .mui-checkbox--inline > input[type="checkbox"], - .mui-checkbox--inline > label > input[type="radio"], - .mui-checkbox--inline > label > input[type="checkbox"] { - margin: 4px 0 0; - line-height: normal; } - -.mui-radio--inline + .mui-radio--inline, -.mui-checkbox--inline + .mui-checkbox--inline { - margin-top: 0; - margin-left: 10px; } - -/** - * MUI Container module - */ -.mui-container { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; } - .mui-container:before, .mui-container:after { - content: " "; - display: table; } - .mui-container:after { - clear: both; } - @media (min-width: 544px) { - .mui-container { - max-width: 570px; } } - @media (min-width: 768px) { - .mui-container { - max-width: 740px; } } - @media (min-width: 992px) { - .mui-container { - max-width: 960px; } } - @media (min-width: 1200px) { - .mui-container { - max-width: 1170px; } } - -.mui-container-fluid { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; } - .mui-container-fluid:before, .mui-container-fluid:after { - content: " "; - display: table; } - .mui-container-fluid:after { - clear: both; } - -/** - * MUI Divider Component and CSS Helpers - */ -.mui-divider { - display: block; - height: 1px; - background-color: rgba(0, 0, 0, 0.12); } - -.mui--divider-top { - border-top: 1px solid rgba(0, 0, 0, 0.12); } - -.mui--divider-bottom { - border-bottom: 1px solid rgba(0, 0, 0, 0.12); } - -.mui--divider-left { - border-left: 1px solid rgba(0, 0, 0, 0.12); } - -.mui--divider-right { - border-right: 1px solid rgba(0, 0, 0, 0.12); } - -/** - * MUI Dropdown module - */ -.mui-dropdown { - display: inline-block; - position: relative; } - -[data-mui-toggle="dropdown"] { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; - outline: 0; } - -.mui-dropdown__menu { - position: absolute; - top: 100%; - left: 0; - display: none; - min-width: 160px; - padding: 5px 0; - margin: 2px 0 0; - list-style: none; - font-size: 14px; - text-align: left; - background-color: #FFF; - border-radius: 2px; - z-index: 1; - background-clip: padding-box; } - .mui-dropdown__menu.mui--is-open { - display: block; } - .mui-dropdown__menu > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: 1.429; - color: rgba(0, 0, 0, 0.87); - white-space: nowrap; } - .mui-dropdown__menu > li > a:hover, .mui-dropdown__menu > li > a:focus { - text-decoration: none; - color: rgba(0, 0, 0, 0.87); - background-color: #EEEEEE; } - .mui-dropdown__menu > .mui--is-disabled > a, .mui-dropdown__menu > .mui--is-disabled > a:hover, .mui-dropdown__menu > .mui--is-disabled > a:focus { - color: #EEEEEE; } - .mui-dropdown__menu > .mui--is-disabled > a:hover, .mui-dropdown__menu > .mui--is-disabled > a:focus { - text-decoration: none; - background-color: transparent; - background-image: none; - cursor: not-allowed; } - -.mui-dropdown__menu--right { - left: auto; - right: 0; } - -/** - * MUI Form Component - */ -@media (min-width: 544px) { - .mui-form--inline > .mui-textfield { - display: inline-block; - margin-bottom: 0; } - .mui-form--inline > .mui-radio, - .mui-form--inline > .mui-checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - vertical-align: middle; } - .mui-form--inline > .mui-radio > label, - .mui-form--inline > .mui-checkbox > label { - padding-left: 0; } - .mui-form--inline > .mui-radio > label > input[type="radio"], - .mui-form--inline > .mui-checkbox > label > input[type="checkbox"] { - position: relative; - margin-left: 0; } - .mui-form--inline > .mui-select { - display: inline-block; } - .mui-form--inline > .mui-btn { - margin-bottom: 0; - margin-top: 0; - vertical-align: bottom; } } - -/** - * MUI Grid module - */ -.mui-row { - margin-left: -15px; - margin-right: -15px; } - .mui-row:before, .mui-row:after { - content: " "; - display: table; } - .mui-row:after { - clear: both; } - -.mui-col-xs-1, .mui-col-sm-1, .mui-col-md-1, .mui-col-lg-1, .mui-col-xs-2, .mui-col-sm-2, .mui-col-md-2, .mui-col-lg-2, .mui-col-xs-3, .mui-col-sm-3, .mui-col-md-3, .mui-col-lg-3, .mui-col-xs-4, .mui-col-sm-4, .mui-col-md-4, .mui-col-lg-4, .mui-col-xs-5, .mui-col-sm-5, .mui-col-md-5, .mui-col-lg-5, .mui-col-xs-6, .mui-col-sm-6, .mui-col-md-6, .mui-col-lg-6, .mui-col-xs-7, .mui-col-sm-7, .mui-col-md-7, .mui-col-lg-7, .mui-col-xs-8, .mui-col-sm-8, .mui-col-md-8, .mui-col-lg-8, .mui-col-xs-9, .mui-col-sm-9, .mui-col-md-9, .mui-col-lg-9, .mui-col-xs-10, .mui-col-sm-10, .mui-col-md-10, .mui-col-lg-10, .mui-col-xs-11, .mui-col-sm-11, .mui-col-md-11, .mui-col-lg-11, .mui-col-xs-12, .mui-col-sm-12, .mui-col-md-12, .mui-col-lg-12 { - min-height: 1px; - padding-left: 15px; - padding-right: 15px; } - -.mui-col-xs-1, .mui-col-xs-2, .mui-col-xs-3, .mui-col-xs-4, .mui-col-xs-5, .mui-col-xs-6, .mui-col-xs-7, .mui-col-xs-8, .mui-col-xs-9, .mui-col-xs-10, .mui-col-xs-11, .mui-col-xs-12 { - float: left; } - -.mui-col-xs-1 { - width: 8.33333%; } - -.mui-col-xs-2 { - width: 16.66667%; } - -.mui-col-xs-3 { - width: 25%; } - -.mui-col-xs-4 { - width: 33.33333%; } - -.mui-col-xs-5 { - width: 41.66667%; } - -.mui-col-xs-6 { - width: 50%; } - -.mui-col-xs-7 { - width: 58.33333%; } - -.mui-col-xs-8 { - width: 66.66667%; } - -.mui-col-xs-9 { - width: 75%; } - -.mui-col-xs-10 { - width: 83.33333%; } - -.mui-col-xs-11 { - width: 91.66667%; } - -.mui-col-xs-12 { - width: 100%; } - -.mui-col-xs-offset-0 { - margin-left: 0%; } - -.mui-col-xs-offset-1 { - margin-left: 8.33333%; } - -.mui-col-xs-offset-2 { - margin-left: 16.66667%; } - -.mui-col-xs-offset-3 { - margin-left: 25%; } - -.mui-col-xs-offset-4 { - margin-left: 33.33333%; } - -.mui-col-xs-offset-5 { - margin-left: 41.66667%; } - -.mui-col-xs-offset-6 { - margin-left: 50%; } - -.mui-col-xs-offset-7 { - margin-left: 58.33333%; } - -.mui-col-xs-offset-8 { - margin-left: 66.66667%; } - -.mui-col-xs-offset-9 { - margin-left: 75%; } - -.mui-col-xs-offset-10 { - margin-left: 83.33333%; } - -.mui-col-xs-offset-11 { - margin-left: 91.66667%; } - -.mui-col-xs-offset-12 { - margin-left: 100%; } - -@media (min-width: 544px) { - .mui-col-sm-1, .mui-col-sm-2, .mui-col-sm-3, .mui-col-sm-4, .mui-col-sm-5, .mui-col-sm-6, .mui-col-sm-7, .mui-col-sm-8, .mui-col-sm-9, .mui-col-sm-10, .mui-col-sm-11, .mui-col-sm-12 { - float: left; } - .mui-col-sm-1 { - width: 8.33333%; } - .mui-col-sm-2 { - width: 16.66667%; } - .mui-col-sm-3 { - width: 25%; } - .mui-col-sm-4 { - width: 33.33333%; } - .mui-col-sm-5 { - width: 41.66667%; } - .mui-col-sm-6 { - width: 50%; } - .mui-col-sm-7 { - width: 58.33333%; } - .mui-col-sm-8 { - width: 66.66667%; } - .mui-col-sm-9 { - width: 75%; } - .mui-col-sm-10 { - width: 83.33333%; } - .mui-col-sm-11 { - width: 91.66667%; } - .mui-col-sm-12 { - width: 100%; } - .mui-col-sm-offset-0 { - margin-left: 0%; } - .mui-col-sm-offset-1 { - margin-left: 8.33333%; } - .mui-col-sm-offset-2 { - margin-left: 16.66667%; } - .mui-col-sm-offset-3 { - margin-left: 25%; } - .mui-col-sm-offset-4 { - margin-left: 33.33333%; } - .mui-col-sm-offset-5 { - margin-left: 41.66667%; } - .mui-col-sm-offset-6 { - margin-left: 50%; } - .mui-col-sm-offset-7 { - margin-left: 58.33333%; } - .mui-col-sm-offset-8 { - margin-left: 66.66667%; } - .mui-col-sm-offset-9 { - margin-left: 75%; } - .mui-col-sm-offset-10 { - margin-left: 83.33333%; } - .mui-col-sm-offset-11 { - margin-left: 91.66667%; } - .mui-col-sm-offset-12 { - margin-left: 100%; } } - -@media (min-width: 768px) { - .mui-col-md-1, .mui-col-md-2, .mui-col-md-3, .mui-col-md-4, .mui-col-md-5, .mui-col-md-6, .mui-col-md-7, .mui-col-md-8, .mui-col-md-9, .mui-col-md-10, .mui-col-md-11, .mui-col-md-12 { - float: left; } - .mui-col-md-1 { - width: 8.33333%; } - .mui-col-md-2 { - width: 16.66667%; } - .mui-col-md-3 { - width: 25%; } - .mui-col-md-4 { - width: 33.33333%; } - .mui-col-md-5 { - width: 41.66667%; } - .mui-col-md-6 { - width: 50%; } - .mui-col-md-7 { - width: 58.33333%; } - .mui-col-md-8 { - width: 66.66667%; } - .mui-col-md-9 { - width: 75%; } - .mui-col-md-10 { - width: 83.33333%; } - .mui-col-md-11 { - width: 91.66667%; } - .mui-col-md-12 { - width: 100%; } - .mui-col-md-offset-0 { - margin-left: 0%; } - .mui-col-md-offset-1 { - margin-left: 8.33333%; } - .mui-col-md-offset-2 { - margin-left: 16.66667%; } - .mui-col-md-offset-3 { - margin-left: 25%; } - .mui-col-md-offset-4 { - margin-left: 33.33333%; } - .mui-col-md-offset-5 { - margin-left: 41.66667%; } - .mui-col-md-offset-6 { - margin-left: 50%; } - .mui-col-md-offset-7 { - margin-left: 58.33333%; } - .mui-col-md-offset-8 { - margin-left: 66.66667%; } - .mui-col-md-offset-9 { - margin-left: 75%; } - .mui-col-md-offset-10 { - margin-left: 83.33333%; } - .mui-col-md-offset-11 { - margin-left: 91.66667%; } - .mui-col-md-offset-12 { - margin-left: 100%; } } - -@media (min-width: 992px) { - .mui-col-lg-1, .mui-col-lg-2, .mui-col-lg-3, .mui-col-lg-4, .mui-col-lg-5, .mui-col-lg-6, .mui-col-lg-7, .mui-col-lg-8, .mui-col-lg-9, .mui-col-lg-10, .mui-col-lg-11, .mui-col-lg-12 { - float: left; } - .mui-col-lg-1 { - width: 8.33333%; } - .mui-col-lg-2 { - width: 16.66667%; } - .mui-col-lg-3 { - width: 25%; } - .mui-col-lg-4 { - width: 33.33333%; } - .mui-col-lg-5 { - width: 41.66667%; } - .mui-col-lg-6 { - width: 50%; } - .mui-col-lg-7 { - width: 58.33333%; } - .mui-col-lg-8 { - width: 66.66667%; } - .mui-col-lg-9 { - width: 75%; } - .mui-col-lg-10 { - width: 83.33333%; } - .mui-col-lg-11 { - width: 91.66667%; } - .mui-col-lg-12 { - width: 100%; } - .mui-col-lg-offset-0 { - margin-left: 0%; } - .mui-col-lg-offset-1 { - margin-left: 8.33333%; } - .mui-col-lg-offset-2 { - margin-left: 16.66667%; } - .mui-col-lg-offset-3 { - margin-left: 25%; } - .mui-col-lg-offset-4 { - margin-left: 33.33333%; } - .mui-col-lg-offset-5 { - margin-left: 41.66667%; } - .mui-col-lg-offset-6 { - margin-left: 50%; } - .mui-col-lg-offset-7 { - margin-left: 58.33333%; } - .mui-col-lg-offset-8 { - margin-left: 66.66667%; } - .mui-col-lg-offset-9 { - margin-left: 75%; } - .mui-col-lg-offset-10 { - margin-left: 83.33333%; } - .mui-col-lg-offset-11 { - margin-left: 91.66667%; } - .mui-col-lg-offset-12 { - margin-left: 100%; } } - -@media (min-width: 1200px) { - .mui-col-xl-1, .mui-col-xl-2, .mui-col-xl-3, .mui-col-xl-4, .mui-col-xl-5, .mui-col-xl-6, .mui-col-xl-7, .mui-col-xl-8, .mui-col-xl-9, .mui-col-xl-10, .mui-col-xl-11, .mui-col-xl-12 { - float: left; } - .mui-col-xl-1 { - width: 8.33333%; } - .mui-col-xl-2 { - width: 16.66667%; } - .mui-col-xl-3 { - width: 25%; } - .mui-col-xl-4 { - width: 33.33333%; } - .mui-col-xl-5 { - width: 41.66667%; } - .mui-col-xl-6 { - width: 50%; } - .mui-col-xl-7 { - width: 58.33333%; } - .mui-col-xl-8 { - width: 66.66667%; } - .mui-col-xl-9 { - width: 75%; } - .mui-col-xl-10 { - width: 83.33333%; } - .mui-col-xl-11 { - width: 91.66667%; } - .mui-col-xl-12 { - width: 100%; } - .mui-col-xl-offset-0 { - margin-left: 0%; } - .mui-col-xl-offset-1 { - margin-left: 8.33333%; } - .mui-col-xl-offset-2 { - margin-left: 16.66667%; } - .mui-col-xl-offset-3 { - margin-left: 25%; } - .mui-col-xl-offset-4 { - margin-left: 33.33333%; } - .mui-col-xl-offset-5 { - margin-left: 41.66667%; } - .mui-col-xl-offset-6 { - margin-left: 50%; } - .mui-col-xl-offset-7 { - margin-left: 58.33333%; } - .mui-col-xl-offset-8 { - margin-left: 66.66667%; } - .mui-col-xl-offset-9 { - margin-left: 75%; } - .mui-col-xl-offset-10 { - margin-left: 83.33333%; } - .mui-col-xl-offset-11 { - margin-left: 91.66667%; } - .mui-col-xl-offset-12 { - margin-left: 100%; } } - -/** - * MUI Panel module - */ -.mui-panel { - padding: 15px; - margin-bottom: 20px; - border-radius: 0; - background-color: #FFF; - box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0px 2px 0 rgba(0, 0, 0, 0.12); } - .mui-panel:before, .mui-panel:after { - content: " "; - display: table; } - .mui-panel:after { - clear: both; } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-panel { - box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, 0.12), -1px 0px 2px 0 rgba(0, 0, 0, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0px 2px 0 rgba(0, 0, 0, 0.12); } } - -/** - * MUI Select Component - */ -.mui-select { - display: block; - padding-top: 15px; - margin-bottom: 20px; - position: relative; } - .mui-select:focus { - outline: 0; } - .mui-select:focus > select { - height: 33px; - margin-bottom: -1px; - border-color: #2196F3; - border-width: 2px; } - .mui-select > select { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; - display: block; - height: 32px; - width: 100%; - appearance: none; - -webkit-appearance: none; - -moz-appearance: none; - outline: none; - border: none; - border-bottom: 1px solid rgba(0, 0, 0, 0.26); - border-radius: 0px; - box-shadow: none; - background-color: transparent; - background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNiIgd2lkdGg9IjEwIj48cG9seWdvbiBwb2ludHM9IjAsMCAxMCwwIDUsNiIgc3R5bGU9ImZpbGw6cmdiYSgwLDAsMCwuMjQpOyIvPjwvc3ZnPg=="); - background-repeat: no-repeat; - background-position: right center; - cursor: pointer; - color: rgba(0, 0, 0, 0.87); - font-size: 16px; - padding: 0 25px 0 0; } - .mui-select > select::-ms-expand { - display: none; } - .mui-select > select:focus { - outline: 0; - height: 33px; - margin-bottom: -1px; - border-color: #2196F3; - border-width: 2px; } - .mui-select > select:disabled { - color: rgba(0, 0, 0, 0.38); - cursor: not-allowed; - background-color: transparent; - opacity: 1; } - -.mui-select__menu { - position: absolute; - z-index: 2; - min-width: 100%; - overflow-y: auto; - padding: 8px 0; - background-color: #FFF; - font-size: 16px; } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-select__menu { - border-left: 1px solid rgba(0, 0, 0, 0.12); - border-top: 1px solid rgba(0, 0, 0, 0.12); } } - .mui-select__menu > div { - padding: 0 22px; - height: 42px; - line-height: 42px; - cursor: pointer; - white-space: nowrap; } - .mui-select__menu > div:hover { - background-color: #E0E0E0; } - .mui-select__menu > div.mui--is-selected { - background-color: #EEEEEE; } - -/** - * MUI Table Component - */ -th { - text-align: left; } - -.mui-table { - width: 100%; - max-width: 100%; - margin-bottom: 20px; } - .mui-table > thead > tr > th, - .mui-table > thead > tr > td, - .mui-table > tbody > tr > th, - .mui-table > tbody > tr > td, - .mui-table > tfoot > tr > th, - .mui-table > tfoot > tr > td { - padding: 10px; - line-height: 1.429; } - .mui-table > thead > tr > th { - border-bottom: 2px solid rgba(0, 0, 0, 0.12); - font-weight: 700; } - .mui-table > tbody + tbody { - border-top: 2px solid rgba(0, 0, 0, 0.12); } - .mui-table.mui-table--bordered > tbody > tr > td { - border-bottom: 1px solid rgba(0, 0, 0, 0.12); } - -/** - * MUI Tabs module - */ -.mui-tabs__bar { - list-style: none; - padding-left: 0; - margin-bottom: 0; - background-color: transparent; - white-space: nowrap; - overflow-x: auto; } - .mui-tabs__bar > li { - display: inline-block; } - .mui-tabs__bar > li > a { - display: block; - white-space: nowrap; - text-transform: uppercase; - font-weight: 500; - font-size: 14px; - color: rgba(255, 255, 255, 0.87); - cursor: default; - height: 48px; - line-height: 48px; - padding-left: 24px; - padding-right: 24px; - user-select: none; } - .mui-tabs__bar > li > a:hover { - text-decoration: none; } - .mui-tabs__bar > li.mui--is-active { - border-bottom: 2px solid #2196F3; } - .mui-tabs__bar > li.mui--is-active > a { - color: #2196F3; } - .mui-tabs__bar.mui-tabs__bar--justified { - display: table; - width: 100%; - table-layout: fixed; } - .mui-tabs__bar.mui-tabs__bar--justified > li { - display: table-cell; } - .mui-tabs__bar.mui-tabs__bar--justified > li > a { - text-align: center; - padding-left: 0px; - padding-right: 0px; } - -.mui-tabs__pane { - display: none; } - .mui-tabs__pane.mui--is-active { - display: block; } - -[data-mui-toggle="tab"] { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; } - -/** - * MUI Textfield Component - */ -.mui-textfield { - display: block; - padding-top: 15px; - margin-bottom: 20px; - position: relative; } - .mui-textfield > label { - position: absolute; - top: 0; - display: block; - width: 100%; - color: rgba(0, 0, 0, 0.54); - font-size: 12px; - font-weight: 400; - line-height: 15px; - overflow-x: hidden; - text-overflow: ellipsis; - white-space: nowrap; } - .mui-textfield > textarea { - padding-top: 5px; } - .mui-textfield > input, - .mui-textfield > textarea { - display: block; } - .mui-textfield > input:focus ~ label, - .mui-textfield > textarea:focus ~ label { - color: #2196F3; } - -.mui-textfield--float-label > label { - position: absolute; - transform: translate(0px, 15px); - font-size: 16px; - line-height: 32px; - color: rgba(0, 0, 0, 0.26); - text-overflow: clip; - cursor: text; - pointer-events: none; } - -.mui-textfield--float-label > input:focus ~ label, -.mui-textfield--float-label > textarea:focus ~ label { - transform: translate(0px, 0px); - font-size: 12px; - line-height: 15px; - text-overflow: ellipsis; } - -.mui-textfield--float-label > input:not(:focus).mui--is-not-empty ~ label, .mui-textfield--float-label > input:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, .mui-textfield--float-label > input:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield--float-label > textarea:not(:focus).mui--is-not-empty ~ label, -.mui-textfield--float-label > textarea:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield--float-label > textarea:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label { - color: rgba(0, 0, 0, 0.54); - font-size: 12px; - line-height: 15px; - transform: translate(0px, 0px); - text-overflow: ellipsis; } - -.mui-textfield--wrap-label { - display: table; - width: 100%; - padding-top: 0px; } - .mui-textfield--wrap-label:not(.mui-textfield--float-label) > label { - display: table-header-group; - position: static; - white-space: normal; - overflow-x: visible; } - -.mui-textfield > input, -.mui-textfield > textarea { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; - display: block; - background-color: transparent; - color: rgba(0, 0, 0, 0.87); - border: none; - border-bottom: 1px solid rgba(0, 0, 0, 0.26); - outline: none; - width: 100%; - font-size: 16px; - padding: 0; - box-shadow: none; - border-radius: 0px; - background-image: none; } - .mui-textfield > input:focus, - .mui-textfield > textarea:focus { - border-color: #2196F3; - border-width: 2px; } - .mui-textfield > input:disabled, .mui-textfield > input:read-only, - .mui-textfield > textarea:disabled, - .mui-textfield > textarea:read-only { - cursor: not-allowed; - background-color: transparent; - opacity: 1; } - .mui-textfield > input::placeholder, - .mui-textfield > textarea::placeholder { - color: rgba(0, 0, 0, 0.26); - opacity: 1; } - -.mui-textfield > input { - height: 32px; } - .mui-textfield > input:focus { - height: 33px; - margin-bottom: -1px; } - -.mui-textfield > textarea { - min-height: 64px; } - .mui-textfield > textarea[rows]:not([rows="2"]):focus { - margin-bottom: -1px; } - -.mui-textfield > input:focus { - height: 33px; - margin-bottom: -1px; } - -.mui-textfield > input:invalid:not(:focus):not(:required), .mui-textfield > input:invalid:not(:focus):required.mui--is-not-empty, .mui-textfield > input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty, .mui-textfield > input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), .mui-textfield > input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > textarea:invalid:not(:focus):not(:required), -.mui-textfield > textarea:invalid:not(:focus):required.mui--is-not-empty, -.mui-textfield > textarea:invalid:not(:focus):required.mui--is-empty.mui--is-dirty, -.mui-textfield > textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > input:not(:focus).mui--is-invalid:not(:required), -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-not-empty, -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty, -.mui-textfield > input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > textarea:not(:focus).mui--is-invalid:not(:required), -.mui-textfield > textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) { - border-color: #F44336; - border-width: 2px; } - -.mui-textfield > input:invalid:not(:focus):not(:required), .mui-textfield > input:invalid:not(:focus):required.mui--is-not-empty, .mui-textfield > input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty, .mui-textfield > input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), .mui-textfield > input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > input:not(:focus).mui--is-invalid:not(:required), -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-not-empty, -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty, -.mui-textfield > input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) { - height: 33px; - margin-bottom: -1px; } - -.mui-textfield > input:invalid:not(:focus):not(:required) ~ label, .mui-textfield > input:invalid:not(:focus):required.mui--is-not-empty ~ label, .mui-textfield > input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, .mui-textfield > input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > textarea:invalid:not(:focus):not(:required) ~ label, -.mui-textfield > textarea:invalid:not(:focus):required.mui--is-not-empty ~ label, -.mui-textfield > textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > input:not(:focus).mui--is-invalid:not(:required) ~ label, -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-not-empty ~ label, -.mui-textfield > input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > textarea:not(:focus).mui--is-invalid:not(:required) ~ label, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty ~ label, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label { - color: #F44336; } - -.mui-textfield:not(.mui-textfield--float-label) > input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty ~ label, -.mui-textfield:not(.mui-textfield--float-label) > textarea:invalid:not(:focus):required.mui--is-empty.mui--is-dirty ~ label, -.mui-textfield:not(.mui-textfield--float-label) > input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty ~ label, -.mui-textfield:not(.mui-textfield--float-label) > textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty ~ label { - color: #F44336; } - -/** - * MUI Helpers module - */ -@keyframes mui-node-inserted { - from { - opacity: 0.99; } - to { - opacity: 1; } } - -.mui--no-transition { - transition: none !important; } - -.mui--no-user-select { - user-select: none; } - -.mui-caret { - display: inline-block; - width: 0; - height: 0; - margin-left: 2px; - vertical-align: middle; - border-top: 4px solid; - border-right: 4px solid transparent; - border-left: 4px solid transparent; } - -.mui--text-left { - text-align: left !important; } - -.mui--text-right { - text-align: right !important; } - -.mui--text-center { - text-align: center !important; } - -.mui--text-justify { - text-align: justify !important; } - -.mui--text-nowrap { - white-space: nowrap !important; } - -.mui--align-baseline { - vertical-align: baseline !important; } - -.mui--align-top { - vertical-align: top !important; } - -.mui--align-middle { - vertical-align: middle !important; } - -.mui--align-bottom { - vertical-align: bottom !important; } - -.mui--text-dark { - color: rgba(0, 0, 0, 0.87); } - -.mui--text-dark-secondary { - color: rgba(0, 0, 0, 0.54); } - -.mui--text-dark-hint { - color: rgba(0, 0, 0, 0.38); } - -.mui--text-light { - color: #FFF; } - -.mui--text-light-secondary { - color: rgba(255, 255, 255, 0.7); } - -.mui--text-light-hint { - color: rgba(255, 255, 255, 0.3); } - -.mui--text-accent { - color: rgba(0, 76, 109, 0.87); } - -.mui--text-accent-secondary { - color: rgba(0, 76, 109, 0.54); } - -.mui--text-accent-hint { - color: rgba(0, 76, 109, 0.38); } - -.mui--text-black { - color: #000; } - -.mui--text-white { - color: #FFF; } - -.mui--text-danger { - color: #F44336; } - -.mui-list--unstyled { - padding-left: 0; - list-style: none; } - -.mui-list--inline { - padding-left: 0; - list-style: none; - margin-left: -5px; } - .mui-list--inline > li { - display: inline-block; - padding-left: 5px; - padding-right: 5px; } - -.mui--z1, .mui-dropdown__menu, .mui-select__menu { - box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); } - -.mui--z2 { - box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23); } - -.mui--z3 { - box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } - -.mui--z4 { - box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22); } - -.mui--z5 { - box-shadow: 0 19px 38px rgba(0, 0, 0, 0.3), 0 15px 12px rgba(0, 0, 0, 0.22); } - -.mui--clearfix:before, .mui--clearfix:after { - content: " "; - display: table; } - -.mui--clearfix:after { - clear: both; } - -.mui--pull-right { - float: right !important; } - -.mui--pull-left { - float: left !important; } - -.mui--hide { - display: none !important; } - -.mui--show { - display: block !important; } - -.mui--invisible { - visibility: hidden; } - -.mui--overflow-hidden { - overflow: hidden !important; } - -.mui--overflow-hidden-x { - overflow-x: hidden !important; } - -.mui--overflow-hidden-y { - overflow-y: hidden !important; } - -.mui--visible-xs-block, -.mui--visible-xs-inline, -.mui--visible-xs-inline-block, -.mui--visible-sm-block, -.mui--visible-sm-inline, -.mui--visible-sm-inline-block, -.mui--visible-md-block, -.mui--visible-md-inline, -.mui--visible-md-inline-block, -.mui--visible-lg-block, -.mui--visible-lg-inline, -.mui--visible-lg-inline-block, -.mui--visible-xl-block, -.mui--visible-xl-inline, -.mui--visible-xl-inline-block { - display: none !important; } - -@media (max-width: 543px) { - .mui-visible-xs { - display: block !important; } - table.mui-visible-xs { - display: table; } - tr.mui-visible-xs { - display: table-row !important; } - th.mui-visible-xs, - td.mui-visible-xs { - display: table-cell !important; } - .mui--visible-xs-block { - display: block !important; } - .mui--visible-xs-inline { - display: inline !important; } - .mui--visible-xs-inline-block { - display: inline-block !important; } } - -@media (min-width: 544px) and (max-width: 767px) { - .mui-visible-sm { - display: block !important; } - table.mui-visible-sm { - display: table; } - tr.mui-visible-sm { - display: table-row !important; } - th.mui-visible-sm, - td.mui-visible-sm { - display: table-cell !important; } - .mui--visible-sm-block { - display: block !important; } - .mui--visible-sm-inline { - display: inline !important; } - .mui--visible-sm-inline-block { - display: inline-block !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .mui-visible-md { - display: block !important; } - table.mui-visible-md { - display: table; } - tr.mui-visible-md { - display: table-row !important; } - th.mui-visible-md, - td.mui-visible-md { - display: table-cell !important; } - .mui--visible-md-block { - display: block !important; } - .mui--visible-md-inline { - display: inline !important; } - .mui--visible-md-inline-block { - display: inline-block !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .mui-visible-lg { - display: block !important; } - table.mui-visible-lg { - display: table; } - tr.mui-visible-lg { - display: table-row !important; } - th.mui-visible-lg, - td.mui-visible-lg { - display: table-cell !important; } - .mui--visible-lg-block { - display: block !important; } - .mui--visible-lg-inline { - display: inline !important; } - .mui--visible-lg-inline-block { - display: inline-block !important; } } - -@media (min-width: 1200px) { - .mui-visible-xl { - display: block !important; } - table.mui-visible-xl { - display: table; } - tr.mui-visible-xl { - display: table-row !important; } - th.mui-visible-xl, - td.mui-visible-xl { - display: table-cell !important; } - .mui--visible-xl-block { - display: block !important; } - .mui--visible-xl-inline { - display: inline !important; } - .mui--visible-xl-inline-block { - display: inline-block !important; } } - -@media (max-width: 543px) { - .mui--hidden-xs { - display: none !important; } } - -@media (min-width: 544px) and (max-width: 767px) { - .mui--hidden-sm { - display: none !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .mui--hidden-md { - display: none !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .mui--hidden-lg { - display: none !important; } } - -@media (min-width: 1200px) { - .mui--hidden-xl { - display: none !important; } } - -body.mui-body--scroll-lock { - overflow: hidden !important; } - -/** - * MUI Overlay module - */ -#mui-overlay { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 99999999; - background-color: rgba(0, 0, 0, 0.2); - overflow: auto; } - -/** - * MUI Ripple module - */ -.mui-ripple-effect { - position: absolute; - border-radius: 50%; - pointer-events: none; - opacity: 0; - animation: mui-ripple-animation 2s; } - -@keyframes mui-ripple-animation { - from { - transform: scale(1); - opacity: 0.4; } - to { - transform: scale(100); - opacity: 0; } } - -.mui-btn > .mui-ripple-effect { - background-color: #a6a6a6; } - -.mui-btn--primary > .mui-ripple-effect { - background-color: #FFF; } - -.mui-btn--dark > .mui-ripple-effect { - background-color: #FFF; } - -.mui-btn--danger > .mui-ripple-effect { - background-color: #FFF; } - -.mui-btn--accent > .mui-ripple-effect { - background-color: #FFF; } - -.mui-btn--flat > .mui-ripple-effect { - background-color: #a6a6a6; } - -/** - * MUI Typography module - */ -.mui--text-display4 { - font-weight: 300; - font-size: 112px; - line-height: 112px; } - -.mui--text-display3 { - font-weight: 400; - font-size: 56px; - line-height: 56px; } - -.mui--text-display2 { - font-weight: 400; - font-size: 45px; - line-height: 48px; } - -.mui--text-display1, h1 { - font-weight: 400; - font-size: 34px; - line-height: 40px; } - -.mui--text-headline, h2 { - font-weight: 400; - font-size: 24px; - line-height: 32px; } - -.mui--text-title, h3 { - font-weight: 400; - font-size: 20px; - line-height: 28px; } - -.mui--text-subhead, h4 { - font-weight: 400; - font-size: 16px; - line-height: 24px; } - -.mui--text-body2, h5 { - font-weight: 500; - font-size: 14px; - line-height: 24px; } - -.mui--text-body1 { - font-weight: 400; - font-size: 14px; - line-height: 20px; } - -.mui--text-caption { - font-weight: 400; - font-size: 12px; - line-height: 16px; } - -.mui--text-menu { - font-weight: 500; - font-size: 13px; - line-height: 17px; } - -.mui--text-button { - font-weight: 500; - font-size: 14px; - line-height: 18px; - text-transform: uppercase; } - +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box}*:before,*:after{box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:Ubuntu,"Helvetica Neue",Helvetica,Arial,Verdana,Tahoma;font-size:14px;font-weight:400;line-height:1.429;color:rgba(255,255,255,0.87);background-color:#424242}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#2196F3;text-decoration:none}a:hover,a:focus{color:#1976D2;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}p{margin:0 0 10px}ul,ol{margin-top:0;margin-bottom:10px}figure{margin:0}img{vertical-align:middle}hr{margin-top:20px;margin-bottom:20px;border:0;height:1px;background-color:rgba(0,0,0,0.12)}legend{display:block;width:100%;padding:0;margin-bottom:10px;font-size:21px;color:rgba(255,255,255,0.87);line-height:inherit;border:0}input[type="search"]{box-sizing:border-box;-webkit-appearance:none}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="radio"]:disabled,input[type="checkbox"]:disabled{cursor:not-allowed}strong{font-weight:700}abbr[title]{cursor:help;border-bottom:1px dotted #2196F3}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}.mui--appbar-height{height:56px}.mui--appbar-min-height,.mui-appbar{min-height:56px}.mui--appbar-line-height{line-height:56px}.mui--appbar-top{top:56px}@media (orientation: landscape) and (max-height: 480px){.mui--appbar-height{height:48px}.mui--appbar-min-height,.mui-appbar{min-height:48px}.mui--appbar-line-height{line-height:48px}.mui--appbar-top{top:48px}}@media (min-width: 480px){.mui--appbar-height{height:64px}.mui--appbar-min-height,.mui-appbar{min-height:64px}.mui--appbar-line-height{line-height:64px}.mui--appbar-top{top:64px}}.mui-appbar{background-color:#004c6d;color:#fff}.mui-btn{animation-duration:0.0001s;animation-name:mui-node-inserted;font-weight:500;font-size:14px;line-height:18px;text-transform:uppercase;color:rgba(255,255,255,0.87);background-color:#fff;transition:all 0.2s ease-in-out;display:inline-block;height:36px;padding:0 26px;margin-top:6px;margin-bottom:6px;border:none;border-radius:2px;cursor:pointer;touch-action:manipulation;background-image:none;text-align:center;line-height:36px;vertical-align:middle;white-space:nowrap;user-select:none;font-size:14px;letter-spacing:0.03em;position:relative;overflow:hidden}.mui-btn:hover,.mui-btn:focus,.mui-btn:active{color:rgba(255,255,255,0.87);background-color:#fff}.mui-btn[disabled]:hover,.mui-btn[disabled]:focus,.mui-btn[disabled]:active{color:rgba(255,255,255,0.87);background-color:#fff}.mui-btn.mui-btn--flat{color:rgba(255,255,255,0.87);background-color:transparent}.mui-btn.mui-btn--flat:hover,.mui-btn.mui-btn--flat:focus,.mui-btn.mui-btn--flat:active{color:rgba(255,255,255,0.87);background-color:#f2f2f2}.mui-btn.mui-btn--flat[disabled]:hover,.mui-btn.mui-btn--flat[disabled]:focus,.mui-btn.mui-btn--flat[disabled]:active{color:rgba(255,255,255,0.87);background-color:transparent}.mui-btn:hover,.mui-btn:focus,.mui-btn:active{outline:0;text-decoration:none;color:rgba(255,255,255,0.87)}.mui-btn:hover,.mui-btn:focus{box-shadow:0 0px 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-btn:hover,.mui-btn:focus{box-shadow:0 -1px 2px rgba(0,0,0,0.12),-1px 0px 2px rgba(0,0,0,0.12),0 0px 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2)}}.mui-btn:active{box-shadow:0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-btn:active{box-shadow:0 -1px 2px rgba(0,0,0,0.12),-1px 0px 2px rgba(0,0,0,0.12),0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}}.mui-btn:disabled,.mui-btn.mui--is-disabled{cursor:not-allowed;pointer-events:none;opacity:0.60;box-shadow:none}.mui-btn+.mui-btn{margin-left:8px}.mui-btn--flat{background-color:transparent}.mui-btn--flat:hover,.mui-btn--flat:focus,.mui-btn--flat:active{box-shadow:none;background-color:#f2f2f2}.mui-btn--raised,.mui-btn--fab{box-shadow:0 0px 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-btn--raised,.mui-btn--fab{box-shadow:0 -1px 2px rgba(0,0,0,0.12),-1px 0px 2px rgba(0,0,0,0.12),0 0px 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2)}}.mui-btn--raised:active,.mui-btn--fab:active{box-shadow:0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-btn--raised:active,.mui-btn--fab:active{box-shadow:0 -1px 2px rgba(0,0,0,0.12),-1px 0px 2px rgba(0,0,0,0.12),0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}}.mui-btn--fab{position:relative;padding:0;width:55px;height:55px;line-height:55px;border-radius:50%;z-index:1}.mui-btn--primary{color:#fff;background-color:#2196F3}.mui-btn--primary:hover,.mui-btn--primary:focus,.mui-btn--primary:active{color:#fff;background-color:#39a1f4}.mui-btn--primary[disabled]:hover,.mui-btn--primary[disabled]:focus,.mui-btn--primary[disabled]:active{color:#fff;background-color:#2196F3}.mui-btn--primary.mui-btn--flat{color:#2196F3;background-color:transparent}.mui-btn--primary.mui-btn--flat:hover,.mui-btn--primary.mui-btn--flat:focus,.mui-btn--primary.mui-btn--flat:active{color:#2196F3;background-color:#f2f2f2}.mui-btn--primary.mui-btn--flat[disabled]:hover,.mui-btn--primary.mui-btn--flat[disabled]:focus,.mui-btn--primary.mui-btn--flat[disabled]:active{color:#2196F3;background-color:transparent}.mui-btn--dark{color:#fff;background-color:#424242}.mui-btn--dark:hover,.mui-btn--dark:focus,.mui-btn--dark:active{color:#fff;background-color:#4f4f4f}.mui-btn--dark[disabled]:hover,.mui-btn--dark[disabled]:focus,.mui-btn--dark[disabled]:active{color:#fff;background-color:#424242}.mui-btn--dark.mui-btn--flat{color:#424242;background-color:transparent}.mui-btn--dark.mui-btn--flat:hover,.mui-btn--dark.mui-btn--flat:focus,.mui-btn--dark.mui-btn--flat:active{color:#424242;background-color:#f2f2f2}.mui-btn--dark.mui-btn--flat[disabled]:hover,.mui-btn--dark.mui-btn--flat[disabled]:focus,.mui-btn--dark.mui-btn--flat[disabled]:active{color:#424242;background-color:transparent}.mui-btn--danger{color:#fff;background-color:#F44336}.mui-btn--danger:hover,.mui-btn--danger:focus,.mui-btn--danger:active{color:#fff;background-color:#f55a4e}.mui-btn--danger[disabled]:hover,.mui-btn--danger[disabled]:focus,.mui-btn--danger[disabled]:active{color:#fff;background-color:#F44336}.mui-btn--danger.mui-btn--flat{color:#F44336;background-color:transparent}.mui-btn--danger.mui-btn--flat:hover,.mui-btn--danger.mui-btn--flat:focus,.mui-btn--danger.mui-btn--flat:active{color:#F44336;background-color:#f2f2f2}.mui-btn--danger.mui-btn--flat[disabled]:hover,.mui-btn--danger.mui-btn--flat[disabled]:focus,.mui-btn--danger.mui-btn--flat[disabled]:active{color:#F44336;background-color:transparent}.mui-btn--accent{color:#004c6d;background-color:#00aeef}.mui-btn--accent:hover,.mui-btn--accent:focus,.mui-btn--accent:active{color:#004c6d;background-color:#0abcff}.mui-btn--accent[disabled]:hover,.mui-btn--accent[disabled]:focus,.mui-btn--accent[disabled]:active{color:#004c6d;background-color:#00aeef}.mui-btn--accent.mui-btn--flat{color:#00aeef;background-color:transparent}.mui-btn--accent.mui-btn--flat:hover,.mui-btn--accent.mui-btn--flat:focus,.mui-btn--accent.mui-btn--flat:active{color:#00aeef;background-color:#f2f2f2}.mui-btn--accent.mui-btn--flat[disabled]:hover,.mui-btn--accent.mui-btn--flat[disabled]:focus,.mui-btn--accent.mui-btn--flat[disabled]:active{color:#00aeef;background-color:transparent}.mui-btn--small{height:30.6px;line-height:30.6px;padding:0 16px;font-size:13px}.mui-btn--large{height:54px;line-height:54px;padding:0 26px;font-size:14px}.mui-btn--fab.mui-btn--small{width:44px;height:44px;line-height:44px}.mui-btn--fab.mui-btn--large{width:75px;height:75px;line-height:75px}.mui-radio,.mui-checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.mui-radio>label,.mui-checkbox>label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.mui-radio>label>input[type="radio"],.mui-radio--inline>label>input[type="radio"],.mui-checkbox>label>input[type="checkbox"],.mui-checkbox--inline>label>input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px}.mui-radio+.mui-radio,.mui-checkbox+.mui-checkbox{margin-top:-5px}.mui-radio--inline,.mui-checkbox--inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.mui-radio--inline>input[type="radio"],.mui-radio--inline>input[type="checkbox"],.mui-radio--inline>label>input[type="radio"],.mui-radio--inline>label>input[type="checkbox"],.mui-checkbox--inline>input[type="radio"],.mui-checkbox--inline>input[type="checkbox"],.mui-checkbox--inline>label>input[type="radio"],.mui-checkbox--inline>label>input[type="checkbox"]{margin:4px 0 0;line-height:normal}.mui-radio--inline+.mui-radio--inline,.mui-checkbox--inline+.mui-checkbox--inline{margin-top:0;margin-left:10px}.mui-container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.mui-container:before,.mui-container:after{content:" ";display:table}.mui-container:after{clear:both}@media (min-width: 544px){.mui-container{max-width:570px}}@media (min-width: 768px){.mui-container{max-width:740px}}@media (min-width: 992px){.mui-container{max-width:960px}}@media (min-width: 1200px){.mui-container{max-width:1170px}}.mui-container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.mui-container-fluid:before,.mui-container-fluid:after{content:" ";display:table}.mui-container-fluid:after{clear:both}.mui-divider{display:block;height:1px;background-color:rgba(0,0,0,0.12)}.mui--divider-top{border-top:1px solid rgba(0,0,0,0.12)}.mui--divider-bottom{border-bottom:1px solid rgba(0,0,0,0.12)}.mui--divider-left{border-left:1px solid rgba(0,0,0,0.12)}.mui--divider-right{border-right:1px solid rgba(0,0,0,0.12)}.mui-dropdown{display:inline-block;position:relative}[data-mui-toggle="dropdown"]{animation-duration:0.0001s;animation-name:mui-node-inserted;outline:0}.mui-dropdown__menu{position:absolute;top:100%;left:0;display:none;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fff;border-radius:2px;z-index:1;background-clip:padding-box}.mui-dropdown__menu.mui--is-open{display:block}.mui-dropdown__menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.429;color:rgba(255,255,255,0.87);white-space:nowrap}.mui-dropdown__menu>li>a:hover,.mui-dropdown__menu>li>a:focus{text-decoration:none;color:rgba(242,242,242,0.87);background-color:#eee}.mui-dropdown__menu>.mui--is-disabled>a,.mui-dropdown__menu>.mui--is-disabled>a:hover,.mui-dropdown__menu>.mui--is-disabled>a:focus{color:#eee}.mui-dropdown__menu>.mui--is-disabled>a:hover,.mui-dropdown__menu>.mui--is-disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;cursor:not-allowed}.mui-dropdown__menu--right{left:auto;right:0}@media (min-width: 544px){.mui-form--inline>.mui-textfield{display:inline-block;margin-bottom:0}.mui-form--inline>.mui-radio,.mui-form--inline>.mui-checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.mui-form--inline>.mui-radio>label,.mui-form--inline>.mui-checkbox>label{padding-left:0}.mui-form--inline>.mui-radio>label>input[type="radio"],.mui-form--inline>.mui-checkbox>label>input[type="checkbox"]{position:relative;margin-left:0}.mui-form--inline>.mui-select{display:inline-block}.mui-form--inline>.mui-btn{margin-bottom:0;margin-top:0;vertical-align:bottom}}.mui-row{margin-left:-15px;margin-right:-15px}.mui-row:before,.mui-row:after{content:" ";display:table}.mui-row:after{clear:both}.mui-col-xs-1,.mui-col-sm-1,.mui-col-md-1,.mui-col-lg-1,.mui-col-xs-2,.mui-col-sm-2,.mui-col-md-2,.mui-col-lg-2,.mui-col-xs-3,.mui-col-sm-3,.mui-col-md-3,.mui-col-lg-3,.mui-col-xs-4,.mui-col-sm-4,.mui-col-md-4,.mui-col-lg-4,.mui-col-xs-5,.mui-col-sm-5,.mui-col-md-5,.mui-col-lg-5,.mui-col-xs-6,.mui-col-sm-6,.mui-col-md-6,.mui-col-lg-6,.mui-col-xs-7,.mui-col-sm-7,.mui-col-md-7,.mui-col-lg-7,.mui-col-xs-8,.mui-col-sm-8,.mui-col-md-8,.mui-col-lg-8,.mui-col-xs-9,.mui-col-sm-9,.mui-col-md-9,.mui-col-lg-9,.mui-col-xs-10,.mui-col-sm-10,.mui-col-md-10,.mui-col-lg-10,.mui-col-xs-11,.mui-col-sm-11,.mui-col-md-11,.mui-col-lg-11,.mui-col-xs-12,.mui-col-sm-12,.mui-col-md-12,.mui-col-lg-12{min-height:1px;padding-left:15px;padding-right:15px}.mui-col-xs-1,.mui-col-xs-2,.mui-col-xs-3,.mui-col-xs-4,.mui-col-xs-5,.mui-col-xs-6,.mui-col-xs-7,.mui-col-xs-8,.mui-col-xs-9,.mui-col-xs-10,.mui-col-xs-11,.mui-col-xs-12{float:left}.mui-col-xs-1{width:8.33333%}.mui-col-xs-2{width:16.66667%}.mui-col-xs-3{width:25%}.mui-col-xs-4{width:33.33333%}.mui-col-xs-5{width:41.66667%}.mui-col-xs-6{width:50%}.mui-col-xs-7{width:58.33333%}.mui-col-xs-8{width:66.66667%}.mui-col-xs-9{width:75%}.mui-col-xs-10{width:83.33333%}.mui-col-xs-11{width:91.66667%}.mui-col-xs-12{width:100%}.mui-col-xs-offset-0{margin-left:0%}.mui-col-xs-offset-1{margin-left:8.33333%}.mui-col-xs-offset-2{margin-left:16.66667%}.mui-col-xs-offset-3{margin-left:25%}.mui-col-xs-offset-4{margin-left:33.33333%}.mui-col-xs-offset-5{margin-left:41.66667%}.mui-col-xs-offset-6{margin-left:50%}.mui-col-xs-offset-7{margin-left:58.33333%}.mui-col-xs-offset-8{margin-left:66.66667%}.mui-col-xs-offset-9{margin-left:75%}.mui-col-xs-offset-10{margin-left:83.33333%}.mui-col-xs-offset-11{margin-left:91.66667%}.mui-col-xs-offset-12{margin-left:100%}@media (min-width: 544px){.mui-col-sm-1,.mui-col-sm-2,.mui-col-sm-3,.mui-col-sm-4,.mui-col-sm-5,.mui-col-sm-6,.mui-col-sm-7,.mui-col-sm-8,.mui-col-sm-9,.mui-col-sm-10,.mui-col-sm-11,.mui-col-sm-12{float:left}.mui-col-sm-1{width:8.33333%}.mui-col-sm-2{width:16.66667%}.mui-col-sm-3{width:25%}.mui-col-sm-4{width:33.33333%}.mui-col-sm-5{width:41.66667%}.mui-col-sm-6{width:50%}.mui-col-sm-7{width:58.33333%}.mui-col-sm-8{width:66.66667%}.mui-col-sm-9{width:75%}.mui-col-sm-10{width:83.33333%}.mui-col-sm-11{width:91.66667%}.mui-col-sm-12{width:100%}.mui-col-sm-offset-0{margin-left:0%}.mui-col-sm-offset-1{margin-left:8.33333%}.mui-col-sm-offset-2{margin-left:16.66667%}.mui-col-sm-offset-3{margin-left:25%}.mui-col-sm-offset-4{margin-left:33.33333%}.mui-col-sm-offset-5{margin-left:41.66667%}.mui-col-sm-offset-6{margin-left:50%}.mui-col-sm-offset-7{margin-left:58.33333%}.mui-col-sm-offset-8{margin-left:66.66667%}.mui-col-sm-offset-9{margin-left:75%}.mui-col-sm-offset-10{margin-left:83.33333%}.mui-col-sm-offset-11{margin-left:91.66667%}.mui-col-sm-offset-12{margin-left:100%}}@media (min-width: 768px){.mui-col-md-1,.mui-col-md-2,.mui-col-md-3,.mui-col-md-4,.mui-col-md-5,.mui-col-md-6,.mui-col-md-7,.mui-col-md-8,.mui-col-md-9,.mui-col-md-10,.mui-col-md-11,.mui-col-md-12{float:left}.mui-col-md-1{width:8.33333%}.mui-col-md-2{width:16.66667%}.mui-col-md-3{width:25%}.mui-col-md-4{width:33.33333%}.mui-col-md-5{width:41.66667%}.mui-col-md-6{width:50%}.mui-col-md-7{width:58.33333%}.mui-col-md-8{width:66.66667%}.mui-col-md-9{width:75%}.mui-col-md-10{width:83.33333%}.mui-col-md-11{width:91.66667%}.mui-col-md-12{width:100%}.mui-col-md-offset-0{margin-left:0%}.mui-col-md-offset-1{margin-left:8.33333%}.mui-col-md-offset-2{margin-left:16.66667%}.mui-col-md-offset-3{margin-left:25%}.mui-col-md-offset-4{margin-left:33.33333%}.mui-col-md-offset-5{margin-left:41.66667%}.mui-col-md-offset-6{margin-left:50%}.mui-col-md-offset-7{margin-left:58.33333%}.mui-col-md-offset-8{margin-left:66.66667%}.mui-col-md-offset-9{margin-left:75%}.mui-col-md-offset-10{margin-left:83.33333%}.mui-col-md-offset-11{margin-left:91.66667%}.mui-col-md-offset-12{margin-left:100%}}@media (min-width: 992px){.mui-col-lg-1,.mui-col-lg-2,.mui-col-lg-3,.mui-col-lg-4,.mui-col-lg-5,.mui-col-lg-6,.mui-col-lg-7,.mui-col-lg-8,.mui-col-lg-9,.mui-col-lg-10,.mui-col-lg-11,.mui-col-lg-12{float:left}.mui-col-lg-1{width:8.33333%}.mui-col-lg-2{width:16.66667%}.mui-col-lg-3{width:25%}.mui-col-lg-4{width:33.33333%}.mui-col-lg-5{width:41.66667%}.mui-col-lg-6{width:50%}.mui-col-lg-7{width:58.33333%}.mui-col-lg-8{width:66.66667%}.mui-col-lg-9{width:75%}.mui-col-lg-10{width:83.33333%}.mui-col-lg-11{width:91.66667%}.mui-col-lg-12{width:100%}.mui-col-lg-offset-0{margin-left:0%}.mui-col-lg-offset-1{margin-left:8.33333%}.mui-col-lg-offset-2{margin-left:16.66667%}.mui-col-lg-offset-3{margin-left:25%}.mui-col-lg-offset-4{margin-left:33.33333%}.mui-col-lg-offset-5{margin-left:41.66667%}.mui-col-lg-offset-6{margin-left:50%}.mui-col-lg-offset-7{margin-left:58.33333%}.mui-col-lg-offset-8{margin-left:66.66667%}.mui-col-lg-offset-9{margin-left:75%}.mui-col-lg-offset-10{margin-left:83.33333%}.mui-col-lg-offset-11{margin-left:91.66667%}.mui-col-lg-offset-12{margin-left:100%}}@media (min-width: 1200px){.mui-col-xl-1,.mui-col-xl-2,.mui-col-xl-3,.mui-col-xl-4,.mui-col-xl-5,.mui-col-xl-6,.mui-col-xl-7,.mui-col-xl-8,.mui-col-xl-9,.mui-col-xl-10,.mui-col-xl-11,.mui-col-xl-12{float:left}.mui-col-xl-1{width:8.33333%}.mui-col-xl-2{width:16.66667%}.mui-col-xl-3{width:25%}.mui-col-xl-4{width:33.33333%}.mui-col-xl-5{width:41.66667%}.mui-col-xl-6{width:50%}.mui-col-xl-7{width:58.33333%}.mui-col-xl-8{width:66.66667%}.mui-col-xl-9{width:75%}.mui-col-xl-10{width:83.33333%}.mui-col-xl-11{width:91.66667%}.mui-col-xl-12{width:100%}.mui-col-xl-offset-0{margin-left:0%}.mui-col-xl-offset-1{margin-left:8.33333%}.mui-col-xl-offset-2{margin-left:16.66667%}.mui-col-xl-offset-3{margin-left:25%}.mui-col-xl-offset-4{margin-left:33.33333%}.mui-col-xl-offset-5{margin-left:41.66667%}.mui-col-xl-offset-6{margin-left:50%}.mui-col-xl-offset-7{margin-left:58.33333%}.mui-col-xl-offset-8{margin-left:66.66667%}.mui-col-xl-offset-9{margin-left:75%}.mui-col-xl-offset-10{margin-left:83.33333%}.mui-col-xl-offset-11{margin-left:91.66667%}.mui-col-xl-offset-12{margin-left:100%}}.mui-panel{padding:15px;margin-bottom:20px;border-radius:0;background-color:#212121;box-shadow:0 2px 2px 0 rgba(0,0,0,0.16),0 0px 2px 0 rgba(0,0,0,0.12)}.mui-panel:before,.mui-panel:after{content:" ";display:table}.mui-panel:after{clear:both}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-panel{box-shadow:0 -1px 2px 0 rgba(0,0,0,0.12),-1px 0px 2px 0 rgba(0,0,0,0.12),0 2px 2px 0 rgba(0,0,0,0.16),0 0px 2px 0 rgba(0,0,0,0.12)}}.mui-select{display:block;padding-top:15px;margin-bottom:20px;position:relative}.mui-select:focus{outline:0}.mui-select:focus>select{height:33px;margin-bottom:-1px;border-color:#2196F3;border-width:2px}.mui-select>select{animation-duration:0.0001s;animation-name:mui-node-inserted;display:block;height:32px;width:100%;appearance:none;-webkit-appearance:none;-moz-appearance:none;outline:none;border:none;border-bottom:1px solid rgba(0,0,0,0.26);border-radius:0px;box-shadow:none;background-color:transparent;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNiIgd2lkdGg9IjEwIj48cG9seWdvbiBwb2ludHM9IjAsMCAxMCwwIDUsNiIgc3R5bGU9ImZpbGw6cmdiYSgwLDAsMCwuMjQpOyIvPjwvc3ZnPg==");background-repeat:no-repeat;background-position:right center;cursor:pointer;color:rgba(255,255,255,0.87);font-size:16px;padding:0 25px 0 0}.mui-select>select::-ms-expand{display:none}.mui-select>select:focus{outline:0;height:33px;margin-bottom:-1px;border-color:#2196F3;border-width:2px}.mui-select>select:disabled{color:rgba(0,0,0,0.38);cursor:not-allowed;background-color:transparent;opacity:1}.mui-select__menu{position:absolute;z-index:2;min-width:100%;overflow-y:auto;padding:8px 0;background-color:#fff;font-size:16px}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-select__menu{border-left:1px solid rgba(0,0,0,0.12);border-top:1px solid rgba(0,0,0,0.12)}}.mui-select__menu>div{padding:0 22px;height:42px;line-height:42px;cursor:pointer;white-space:nowrap}.mui-select__menu>div:hover{background-color:#E0E0E0}.mui-select__menu>div.mui--is-selected{background-color:#eee}th{text-align:left}.mui-table{width:100%;max-width:100%;margin-bottom:20px}.mui-table>thead>tr>th,.mui-table>thead>tr>td,.mui-table>tbody>tr>th,.mui-table>tbody>tr>td,.mui-table>tfoot>tr>th,.mui-table>tfoot>tr>td{padding:10px;line-height:1.429}.mui-table>thead>tr>th{border-bottom:2px solid rgba(0,0,0,0.12);font-weight:700}.mui-table>tbody+tbody{border-top:2px solid rgba(0,0,0,0.12)}.mui-table.mui-table--bordered>tbody>tr>td{border-bottom:1px solid rgba(0,0,0,0.12)}.mui-tabs__bar{list-style:none;padding-left:0;margin-bottom:0;background-color:transparent;white-space:nowrap;overflow-x:auto}.mui-tabs__bar>li{display:inline-block}.mui-tabs__bar>li>a{display:block;white-space:nowrap;text-transform:uppercase;font-weight:500;font-size:14px;color:rgba(255,255,255,0.87);cursor:default;height:48px;line-height:48px;padding-left:24px;padding-right:24px;user-select:none}.mui-tabs__bar>li>a:hover{text-decoration:none}.mui-tabs__bar>li.mui--is-active{border-bottom:2px solid #2196F3}.mui-tabs__bar>li.mui--is-active>a{color:#2196F3}.mui-tabs__bar.mui-tabs__bar--justified{display:table;width:100%;table-layout:fixed}.mui-tabs__bar.mui-tabs__bar--justified>li{display:table-cell}.mui-tabs__bar.mui-tabs__bar--justified>li>a{text-align:center;padding-left:0px;padding-right:0px}.mui-tabs__pane{display:none}.mui-tabs__pane.mui--is-active{display:block}[data-mui-toggle="tab"]{animation-duration:0.0001s;animation-name:mui-node-inserted}.mui-textfield{display:block;padding-top:15px;margin-bottom:20px;position:relative}.mui-textfield>label{position:absolute;top:0;display:block;width:100%;color:rgba(0,0,0,0.54);font-size:12px;font-weight:400;line-height:15px;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}.mui-textfield>textarea{padding-top:5px}.mui-textfield>input,.mui-textfield>textarea{display:block}.mui-textfield>input:focus ~ label,.mui-textfield>textarea:focus ~ label{color:#2196F3}.mui-textfield--float-label>label{position:absolute;transform:translate(0px, 15px);font-size:16px;line-height:32px;color:rgba(0,0,0,0.26);text-overflow:clip;cursor:text;pointer-events:none}.mui-textfield--float-label>input:focus ~ label,.mui-textfield--float-label>textarea:focus ~ label{transform:translate(0px, 0px);font-size:12px;line-height:15px;text-overflow:ellipsis}.mui-textfield--float-label>input:not(:focus).mui--is-not-empty ~ label,.mui-textfield--float-label>input:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield--float-label>input:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield--float-label>textarea:not(:focus).mui--is-not-empty ~ label,.mui-textfield--float-label>textarea:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield--float-label>textarea:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label{color:rgba(0,0,0,0.54);font-size:12px;line-height:15px;transform:translate(0px, 0px);text-overflow:ellipsis}.mui-textfield--wrap-label{display:table;width:100%;padding-top:0px}.mui-textfield--wrap-label:not(.mui-textfield--float-label)>label{display:table-header-group;position:static;white-space:normal;overflow-x:visible}.mui-textfield>input,.mui-textfield>textarea{animation-duration:0.0001s;animation-name:mui-node-inserted;display:block;background-color:transparent;color:rgba(255,255,255,0.87);border:none;border-bottom:1px solid rgba(0,0,0,0.26);outline:none;width:100%;font-size:16px;padding:0;box-shadow:none;border-radius:0px;background-image:none}.mui-textfield>input:focus,.mui-textfield>textarea:focus{border-color:#2196F3;border-width:2px}.mui-textfield>input:disabled,.mui-textfield>input:read-only,.mui-textfield>textarea:disabled,.mui-textfield>textarea:read-only{cursor:not-allowed;background-color:transparent;opacity:1}.mui-textfield>input::placeholder,.mui-textfield>textarea::placeholder{color:rgba(0,0,0,0.26);opacity:1}.mui-textfield>input{height:32px}.mui-textfield>input:focus{height:33px;margin-bottom:-1px}.mui-textfield>textarea{min-height:64px}.mui-textfield>textarea[rows]:not([rows="2"]):focus{margin-bottom:-1px}.mui-textfield>input:focus{height:33px;margin-bottom:-1px}.mui-textfield>input:invalid:not(:focus):not(:required),.mui-textfield>input:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty,.mui-textfield>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:invalid:not(:focus):not(:required),.mui-textfield>textarea:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>textarea:invalid:not(:focus):required.mui--is-empty.mui--is-dirty,.mui-textfield>textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:not(:required),.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty,.mui-textfield>input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:not(:focus).mui--is-invalid:not(:required),.mui-textfield>textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty,.mui-textfield>textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty){border-color:#F44336;border-width:2px}.mui-textfield>input:invalid:not(:focus):not(:required),.mui-textfield>input:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty,.mui-textfield>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:not(:required),.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty,.mui-textfield>input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty){height:33px;margin-bottom:-1px}.mui-textfield>input:invalid:not(:focus):not(:required) ~ label,.mui-textfield>input:invalid:not(:focus):required.mui--is-not-empty ~ label,.mui-textfield>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>textarea:invalid:not(:focus):not(:required) ~ label,.mui-textfield>textarea:invalid:not(:focus):required.mui--is-not-empty ~ label,.mui-textfield>textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>input:not(:focus).mui--is-invalid:not(:required) ~ label,.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-not-empty ~ label,.mui-textfield>input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>textarea:not(:focus).mui--is-invalid:not(:required) ~ label,.mui-textfield>textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty ~ label,.mui-textfield>textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label{color:#F44336}.mui-textfield:not(.mui-textfield--float-label)>input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty ~ label,.mui-textfield:not(.mui-textfield--float-label)>textarea:invalid:not(:focus):required.mui--is-empty.mui--is-dirty ~ label,.mui-textfield:not(.mui-textfield--float-label)>input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty ~ label,.mui-textfield:not(.mui-textfield--float-label)>textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty ~ label{color:#F44336}@keyframes mui-node-inserted{from{opacity:0.99}to{opacity:1}}.mui--no-transition{transition:none !important}.mui--no-user-select{user-select:none}.mui-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.mui--text-left{text-align:left !important}.mui--text-right{text-align:right !important}.mui--text-center{text-align:center !important}.mui--text-justify{text-align:justify !important}.mui--text-nowrap{white-space:nowrap !important}.mui--align-baseline{vertical-align:baseline !important}.mui--align-top{vertical-align:top !important}.mui--align-middle{vertical-align:middle !important}.mui--align-bottom{vertical-align:bottom !important}.mui--text-dark{color:rgba(0,0,0,0.87)}.mui--text-dark-secondary{color:rgba(0,0,0,0.54)}.mui--text-dark-hint{color:rgba(0,0,0,0.38)}.mui--text-light{color:#fff}.mui--text-light-secondary{color:rgba(255,255,255,0.7)}.mui--text-light-hint{color:rgba(255,255,255,0.3)}.mui--text-accent{color:rgba(0,174,239,0.87)}.mui--text-accent-secondary{color:rgba(0,174,239,0.54)}.mui--text-accent-hint{color:rgba(0,174,239,0.38)}.mui--text-black{color:#000}.mui--text-white{color:#fff}.mui--text-danger{color:#F44336}.mui-list--unstyled{padding-left:0;list-style:none}.mui-list--inline{padding-left:0;list-style:none;margin-left:-5px}.mui-list--inline>li{display:inline-block;padding-left:5px;padding-right:5px}.mui--z1,.mui-dropdown__menu,.mui-select__menu{box-shadow:0 1px 3px rgba(0,0,0,0.12),0 1px 2px rgba(0,0,0,0.24)}.mui--z2{box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23)}.mui--z3{box-shadow:0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}.mui--z4{box-shadow:0 14px 28px rgba(0,0,0,0.25),0 10px 10px rgba(0,0,0,0.22)}.mui--z5{box-shadow:0 19px 38px rgba(0,0,0,0.3),0 15px 12px rgba(0,0,0,0.22)}.mui--clearfix:before,.mui--clearfix:after{content:" ";display:table}.mui--clearfix:after{clear:both}.mui--pull-right{float:right !important}.mui--pull-left{float:left !important}.mui--hide{display:none !important}.mui--show{display:block !important}.mui--invisible{visibility:hidden}.mui--overflow-hidden{overflow:hidden !important}.mui--overflow-hidden-x{overflow-x:hidden !important}.mui--overflow-hidden-y{overflow-y:hidden !important}.mui--visible-xs-block,.mui--visible-xs-inline,.mui--visible-xs-inline-block,.mui--visible-sm-block,.mui--visible-sm-inline,.mui--visible-sm-inline-block,.mui--visible-md-block,.mui--visible-md-inline,.mui--visible-md-inline-block,.mui--visible-lg-block,.mui--visible-lg-inline,.mui--visible-lg-inline-block,.mui--visible-xl-block,.mui--visible-xl-inline,.mui--visible-xl-inline-block{display:none !important}@media (max-width: 543px){.mui-visible-xs{display:block !important}table.mui-visible-xs{display:table}tr.mui-visible-xs{display:table-row !important}th.mui-visible-xs,td.mui-visible-xs{display:table-cell !important}.mui--visible-xs-block{display:block !important}.mui--visible-xs-inline{display:inline !important}.mui--visible-xs-inline-block{display:inline-block !important}}@media (min-width: 544px) and (max-width: 767px){.mui-visible-sm{display:block !important}table.mui-visible-sm{display:table}tr.mui-visible-sm{display:table-row !important}th.mui-visible-sm,td.mui-visible-sm{display:table-cell !important}.mui--visible-sm-block{display:block !important}.mui--visible-sm-inline{display:inline !important}.mui--visible-sm-inline-block{display:inline-block !important}}@media (min-width: 768px) and (max-width: 991px){.mui-visible-md{display:block !important}table.mui-visible-md{display:table}tr.mui-visible-md{display:table-row !important}th.mui-visible-md,td.mui-visible-md{display:table-cell !important}.mui--visible-md-block{display:block !important}.mui--visible-md-inline{display:inline !important}.mui--visible-md-inline-block{display:inline-block !important}}@media (min-width: 992px) and (max-width: 1199px){.mui-visible-lg{display:block !important}table.mui-visible-lg{display:table}tr.mui-visible-lg{display:table-row !important}th.mui-visible-lg,td.mui-visible-lg{display:table-cell !important}.mui--visible-lg-block{display:block !important}.mui--visible-lg-inline{display:inline !important}.mui--visible-lg-inline-block{display:inline-block !important}}@media (min-width: 1200px){.mui-visible-xl{display:block !important}table.mui-visible-xl{display:table}tr.mui-visible-xl{display:table-row !important}th.mui-visible-xl,td.mui-visible-xl{display:table-cell !important}.mui--visible-xl-block{display:block !important}.mui--visible-xl-inline{display:inline !important}.mui--visible-xl-inline-block{display:inline-block !important}}@media (max-width: 543px){.mui--hidden-xs{display:none !important}}@media (min-width: 544px) and (max-width: 767px){.mui--hidden-sm{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.mui--hidden-md{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.mui--hidden-lg{display:none !important}}@media (min-width: 1200px){.mui--hidden-xl{display:none !important}}body.mui-body--scroll-lock{overflow:hidden !important}#mui-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999999;background-color:rgba(0,0,0,0.2);overflow:auto}.mui-ripple-effect{position:absolute;border-radius:50%;pointer-events:none;opacity:0;animation:mui-ripple-animation 2s}@keyframes mui-ripple-animation{from{transform:scale(1);opacity:0.4}to{transform:scale(100);opacity:0}}.mui-btn>.mui-ripple-effect{background-color:#a6a6a6}.mui-btn--primary>.mui-ripple-effect{background-color:#fff}.mui-btn--dark>.mui-ripple-effect{background-color:#fff}.mui-btn--danger>.mui-ripple-effect{background-color:#fff}.mui-btn--accent>.mui-ripple-effect{background-color:#fff}.mui-btn--flat>.mui-ripple-effect{background-color:#a6a6a6}.mui--text-display4{font-weight:300;font-size:112px;line-height:112px}.mui--text-display3{font-weight:400;font-size:56px;line-height:56px}.mui--text-display2{font-weight:400;font-size:45px;line-height:48px}.mui--text-display1,h1{font-weight:400;font-size:34px;line-height:40px}.mui--text-headline,h2{font-weight:400;font-size:24px;line-height:32px}.mui--text-title,h3{font-weight:400;font-size:20px;line-height:28px}.mui--text-subhead,h4{font-weight:400;font-size:16px;line-height:24px}.mui--text-body2,h5{font-weight:500;font-size:14px;line-height:24px}.mui--text-body1{font-weight:400;font-size:14px;line-height:20px}.mui--text-caption{font-weight:400;font-size:12px;line-height:16px}.mui--text-menu{font-weight:500;font-size:13px;line-height:17px}.mui--text-button{font-weight:500;font-size:14px;line-height:18px;text-transform:uppercase} diff --git a/app/index.html b/app/index.html index 10cc4ad..d482467 100644 --- a/app/index.html +++ b/app/index.html @@ -92,6 +92,7 @@ + @@ -118,6 +119,10 @@ src="js/device/CC2650/cc2650_humidity.js"> + + + diff --git a/app/js/device/CC2650/cc2650_accelerometer.js b/app/js/device/CC2650/cc2650_accelerometer.js index 8b1cfe8..38b5d44 100644 --- a/app/js/device/CC2650/cc2650_accelerometer.js +++ b/app/js/device/CC2650/cc2650_accelerometer.js @@ -109,7 +109,7 @@ CC2650_ACCEL = function(p) { this.data.mag.y = this.storeData(calcData.mag.y, this.data.mag.y); this.data.mag.z = this.storeData(calcData.mag.z, this.data.mag.z); - // Console.log(JSON.stringify(this.data)); + // console.log(JSON.stringify(this.data)); // Console.log(this.state); }; @@ -298,9 +298,9 @@ CC2650_ACCEL = function(p) { var svg = this.generateBlankGraphBase(_subID,{width: '700',height: 150}); - svg = this.graphAddLine(svg, xlineID, 'rgba(255,0,0,0.5)'); - svg = this.graphAddLine(svg, ylineID, 'rgba(0,255,0,0.5)'); - svg = this.graphAddLine(svg, zlineID, 'rgba(0,0,255,0.5)'); + svg = this.graphAddLine(svg, xlineID, 'rgba(255,0,99,1)'); + svg = this.graphAddLine(svg, ylineID, 'rgba(46,255,0,1)'); + svg = this.graphAddLine(svg, zlineID, 'rgba(0,191,255,1)'); return svg; diff --git a/app/js/device/CC2650/cc2650_thermopile.js b/app/js/device/CC2650/cc2650_thermopile.js index 20ebbf9..335ed4e 100644 --- a/app/js/device/CC2650/cc2650_thermopile.js +++ b/app/js/device/CC2650/cc2650_thermopile.js @@ -87,10 +87,49 @@ var CC2650_TMP = function(p) { }; this.animateGraph = function() { - this.simpleGraph(this.data.temp, 'temp'); - this.simpleGraph(this.data.ambient, 'ambient'); + // This.simpleGraph(this.data.temp, 'temp'); + // debugger; + var arcTemp = this.frameID + 'temp-arc'; + var arcAmbient = this.frameID + 'ambient-arc'; + this.updateArc(this.data.temp, 'temp' , arcTemp); + + this.updateArc(this.data.ambient, 'ambient' , arcAmbient); + + //This.simpleGraph(this.data.ambient, 'ambient'); }; + this.updateArc = function(data, subID, elmID) { + + + var ceilingLimit; + var _subID; + var _data; + var label; + + _data = data || this.data; + + _subID = subID || ''; + + if (_data.length > 0) { + + ceilingLimit = 50; + + var latest = _data[_data.length - 1]; + var scale = 100 / ceilingLimit; + var arcP = scale * latest; + // Var xstep = (280 - 46) / 100; + + label = this.frameID + subID + '-label'; + document.getElementById(elmID).setAttribute('d', this.describeArc(150, 150, 100, 0, this.setArc(arcP))); + // document.getElementById(label).innerText(latest.toFixed(2) + 'ºc'); + } + + + + }; + + + this.insertFrame = function() { var liSetting; @@ -104,7 +143,28 @@ var CC2650_TMP = function(p) { var temp = this.frameID + '-t'; var amb = this.frameID + '-a'; - var row = $('
', {class: 'mui-row'}); + + + var arcB = this.frameID + 'temp-arcB'; + var arcTemp = this.frameID + 'temp-arc'; + + var ambientArcB = this.frameID + 'ambient-arcB'; + var arcAmbient = this.frameID + 'ambient-arc'; + + var settings = {data: {baseID: this.frameID}}; + var html = new EJS({url: './partials/cc2650_thermopile_dial.ejs'}).render(settings); + + this.$id.append(html); + +debugger; + document.getElementById(arcB).setAttribute('d', this.describeArc(150, 150, 100, 0, 240)); + document.getElementById(arcTemp).setAttribute('d', this.describeArc(150, 150, 100, 0, this.setArc(0))); + + document.getElementById(ambientArcB).setAttribute('d', this.describeArc(150, 150, 100, 0, 240)); + document.getElementById(arcAmbient).setAttribute('d', this.describeArc(150, 150, 100, 0, this.setArc(0))); + + + /*Var row = $('
', {class: 'mui-row'}); $('
', {class: 'mui-col-xs-3 mui--text-accent mui--text-right', text: 'Temp:'}).appendTo(row); @@ -152,7 +212,7 @@ var CC2650_TMP = function(p) { this.$id.append($('
',{class: 'mui-tabs__pane',id: (amb + '-pane')}).append(blankChart)); } - +*/ this.$result.temp = $('#' + temp); diff --git a/app/js/device/fmc/TSL.js b/app/js/device/fmc/TSL.js new file mode 100644 index 0000000..11c0ba5 --- /dev/null +++ b/app/js/device/fmc/TSL.js @@ -0,0 +1,440 @@ +/** + * + * User: Martin Donnelly + * Date: 2016-05-20 + * Time: 10:13 + * + */ +/* global CAPABILITY, inheritsFrom, capabilityManager, EJS, ejs */ +/* global ble */ +/* jshint browser: true , devel: true*/ + +var TSL = function(p) { + 'use strict'; + this.name = 'TSL'; + this.deviceID = p.deviceID || null; + this.target = p.target || null; + + // F000BB00-0451-4000-B000-A01D48F70D07 + + this.capabilityID = 'F000BB00-0451-4000-B000-A01D48F70D07'; + this.serviceDef = { + service: 'F000BB00-0451-4000-B000-A01D48F70D07', + enable: 'F000BB01-0451-4000-B000-A01D48F70D07', + control: 'F000BB02-0451-4000-B000-A01D48F70D07', + period: 'F000BB03-0451-4000-B000-A01D48F70D07', + location: 'F000BB04-0451-4000-B000-A01D48F70D07', + historySize: 'F000BB05-0451-4000-B000-A01D48F70D07', + history: 'F000BB06-0451-4000-B000-A01D48F70D07', + historyAck: 'F000BB07-0451-4000-B000-A01D48F70D07', + temp: 'F000BB08-0451-4000-B000-A01D48F70D07', + tempMaximum: 'F000BB09-0451-4000-B000-A01D48F70D07', + tempMinimum: 'F000BB0A-0451-4000-B000-A01D48F70D07', + preValue: 'F000BB0B-0451-4000-B000-A01D48F70D07', + presMaximum: 'F000BB0C-0451-4000-B000-A01D48F70D07', + presMinimum: 'F000BB0D-0451-4000-B000-A01D48F70D07', + humidityValue: 'F000BB0E-0451-4000-B000-A01D48F70D07', + humidityMax: 'F000BB0F-0451-4000-B000-A01D48F70D07', + humidityMin: 'F000BB10-0451-4000-B000-A01D48F70D07', + accelerationMax: 'F000BB11-0451-4000-B000-A01D48F70D07', + velocityMax: 'F000BB12-0451-4000-B000-A01D48F70D07', + loggerId: 'F000BB13-0451-4000-B000-A01D48F70D07', + shockBandwidth: 'F000BB14-0451-4000-B000-A01D48F70D07', + shockThreshold: 'F000BB15-0451-4000-B000-A01D48F70D07', + config: 'F0002902-0451-4000-B000-A01D48F70D07' + + }; + + this.$result = {temp: null, tempMax: null, tempMin: null}; + this.data = []; + this.setFrame(); + this.read = {}; + + this.html = {}; + + this.history = null; + + this.historyloops = 0; + + this.arrayToHex = function(a) { + return a.map(function(i) { + return ('00' + i.toString(16)).slice(-2) + ','; + }); + }; + + this.convertToPercent = function(raw) { + return ((raw[1] << 8) + (raw[0])) / 100; + }; + + this.convertToPressure = function(raw) { + return ((raw[1] << 8) + (raw[0])) ; + }; + + this.convertToHumidity = function(raw) { + return ((raw[1] << 8) + (raw[0])) ; + }; + + /* + This.$result.temp = $('#' + tslTemp); + this.$result.tempMax = $('#' + tslTempMax); + this.$result.tempMin = $('#' + tslTempMin); +*/ + this.onReadVelState = function(d) { + var raw = new Uint8Array(d); + var output = [], signedOutput = new Int16Array(9); + // Var humidity = this.convertToPercent(raw); + console.log('Vel State:', raw); + // This.$result.h.text(humidity.toFixed(2) + '%'); + + /* output.push(((raw[1] << 8) + (raw[0]))); + output.push(((raw[3] << 8) + (raw[2]))); + output.push(((raw[5] << 8) + (raw[4]))); + output.push(((raw[7] << 8) + (raw[6]))); + output.push(((raw[9] << 8) + (raw[8]))); + output.push(((raw[11] << 8) + (raw[10]))); + output.push(((raw[13] << 8) + (raw[12]))); + output.push(((raw[15] << 8) + (raw[14]))); + output.push(((raw[17] << 8) + (raw[16]))); + + + for (var t = 0;t < output.length;t++) { + signedOutput[t] = (output[t] * 1.0) / (32768/ 2); + } + console.log(output); + console.log(signedOutput);*/ + }; + + + this.onReadAccelState = function(d) { + var raw = new Uint8Array(d); + var output = [], signedOutput = new Int16Array(9); + // Var humidity = this.convertToPercent(raw); + console.log('Accel State:', raw); + // This.$result.h.text(humidity.toFixed(2) + '%'); + + output.push(((raw[1] << 8) + (raw[0]))); + output.push(((raw[3] << 8) + (raw[2]))); + output.push(((raw[5] << 8) + (raw[4]))); + output.push(((raw[7] << 8) + (raw[6]))); + output.push(((raw[9] << 8) + (raw[8]))); + output.push(((raw[11] << 8) + (raw[10]))); + output.push(((raw[13] << 8) + (raw[12]))); + output.push(((raw[15] << 8) + (raw[14]))); + output.push(((raw[17] << 8) + (raw[16]))); + + + for (var t = 0;t < output.length;t++) { + signedOutput[t] = (output[t] * 1.0) / (32768/ 2); + } + console.log(output); + console.log(signedOutput); + }; + + + this.onReadHumidityState = function(d) { + var raw = new Uint8Array(d); + var humidity = this.convertToPercent(raw); + console.log('Humidity State:', humidity); + this.$result.h.text(humidity.toFixed(2) + '%'); + }; + + this.onReadHumidityMaxState = function(d) { + var raw = new Uint8Array(d); + var humidity = this.convertToPercent(raw); + console.log('Humidity Max State:', humidity); + this.$result.hMax.text(humidity.toFixed(2) + '%'); + }; + + + this.onReadHumidityMinState = function(d) { + var raw = new Uint8Array(d); + var humidity = this.convertToPercent(raw); + console.log('Humidity Min State:', humidity); + this.$result.hMin.text(humidity.toFixed(2) + '%'); + }; + + this.onReadPressureState = function(d) { + var raw = new Uint8Array(d); + var pressure = this.convertToPressure(raw); + console.log('Pressure State:', pressure); + this.$result.p.text(pressure + 'Pa'); + }; + + this.onReadPressureMaxState = function(d) { + var raw = new Uint8Array(d); + var pressure = this.convertToPressure(raw); + console.log('Pressure Max State:', pressure); + this.$result.pMax.text(pressure + 'Pa'); + }; + + this.onReadPressureMinState = function(d) { + var raw = new Uint8Array(d); + var pressure = this.convertToPressure(raw); + console.log('Pressure Min State:', pressure); + this.$result.pMin.text(pressure + 'Pa'); + }; + + + this.onReadTempState = function(d) { + var raw = new Uint8Array(d); + var temp = this.convertToPercent(raw); + console.log('Temp State:', temp); + this.$result.temp.text(temp.toFixed(2) + '°C'); + + }; + + this.onReadTempMax = function(d) { + var raw = new Uint8Array(d); + var temp = this.convertToPercent(raw); + console.log('Temp Max:', temp); + this.$result.tempMax.text(temp.toFixed(2) + '°C'); + }; + + this.onReadTempMin = function(d) { + var raw = new Uint8Array(d); + var temp = this.convertToPercent(raw); + console.log('Temp Min:', temp); + this.$result.tempMin.text(temp.toFixed(2) + '°C'); + }; + + this.onHistoryAck = function(d) { + var raw = new Uint8Array(d); + var raw16 = new Uint16Array(d); + console.log('History Ack:', raw, raw16); + //this.$result.temp.text(temp.toFixed(2) + '°C'); + + }; + + this.onReadHistory = function(d) { + var raw = new Uint8Array(d); + + console.log('History:', raw); + //this.$result.temp.text(temp.toFixed(2) + '°C'); + this.historyloops++; + this.historyAck(); + + }; + + this.onHistorySize = function(d) { + var raw = new Uint8Array(d); + var raw16 = new Uint16Array(d); + + console.log('History Size:', raw, raw16); + //this.$result.temp.text(temp.toFixed(2) + '°C'); + + this.history = new Uint8Array(raw16[0]); + this.readHistory(); + }; + + this.historySize = function() { + console.log('historySize'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.historySize, + this.onHistorySize.bind(this), + this.onError); + }; + + +this.historyAck = function() { + console.log('historyAck'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.historyAck, + this.onHistoryAck.bind(this), + this.onError); +}; + + this.readHistory = function() { + console.log('readHistory'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.history, + this.onReadHistory.bind(this), + this.onError); + + }; + + this.readAccelState = function() { + console.log('readHumidityState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.accelerationMax, + this.onReadAccelState.bind(this), + this.onError); + }; + + this.readVelState = function() { + console.log('readHumidityState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.velocityMax, + this.onReadVelState.bind(this), + this.onError); + }; + + + this.readHumidityState = function() { + console.log('readHumidityState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.humidityValue, + this.onReadHumidityState.bind(this), + this.onError); + }; + + this.readHumidityMaxState = function() { + console.log('readHumidityState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.humidityMax, + this.onReadHumidityMaxState.bind(this), + this.onError); + }; + + + this.readHumidityMinState = function() { + console.log('readHumidityState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.humidityMin, + this.onReadHumidityMinState.bind(this), + this.onError); + }; + + + this.readPressureState = function() { + console.log('readPressureState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.preValue, + this.onReadPressureState.bind(this), + this.onError); + }; + + this.readPressureMaxState = function() { + console.log('readPressureMaxState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.presMaximum, + this.onReadPressureMaxState.bind(this), + this.onError); + }; + + this.readPressureMinState = function() { + console.log('readPressureMinState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.presMinimum, + this.onReadPressureMinState.bind(this), + this.onError); + }; + + + this.readTempState = function() { + console.log('readTempState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.temp, + this.onReadTempState.bind(this), + this.onError); + }; + + this.readTempMax = function() { + console.log('readTempMax'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.tempMaximum, + this.onReadTempMax.bind(this), + this.onError); + }; + + this.readTempMin = function() { + console.log('readTempMax'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.tempMinimum, + this.onReadTempMin.bind(this), + this.onError); + }; + + this.readServices = function() { + this.readTempState(); + this.readTempMax(); + this.readTempMin(); + this.readPressureState(); + this.readPressureMaxState(); + this.readPressureMinState(); + + this.readHumidityState(); + this.readHumidityMaxState(); + this.readHumidityMinState(); + + this.readAccelState(); +this.readVelState(); + + this.historySize(); + // this.readHistory(); + + // setTimeout(this.readServices.bind(this),20000); + }; + + this.startService = function() { + + if (this.deviceID !== null) { + + console.log('Starting TSL Service on ', this.deviceID); + console.log(this.serviceDef); + this.insertFrame(); + + this.readServices(); + + } + + }; + + this.onTslData = function(data) { + + var raw = new Uint16Array(data); + + console.log(raw); + + }; + + this.animateGraph = function() { + return -1; + }; + + this.insertFrame = function() { + + var self = this; + + // Call the parent displayForm first... + this.superClass_.insertFrame.call(self); + + var tslTemp = this.frameID + '-t'; + var tslP = this.frameID + '-p'; + var tslH = this.frameID + '-h'; + + var settings = {data: {baseID: this.frameID}}; + var html = new EJS({url: './partials/tsl.ejs'}).render(settings); + + this.$id.append(html); + + this.$result.temp = $('#' + tslTemp); + this.$result.tempMax = $('#' + tslTemp + 'max'); + this.$result.tempMin = $('#' + tslTemp + 'min'); + this.$result.p = $('#' + tslP); + this.$result.pMax = $('#' + tslP + 'max'); + this.$result.pMin = $('#' + tslP + 'min'); + + this.$result.h = $('#' + tslH); + this.$result.hMax = $('#' + tslH + 'max'); + this.$result.hMin = $('#' + tslH + 'min'); + + }; + +}; + +inheritsFrom(TSL, CAPABILITY); +capabilityManager.register({id: 'F000BB00-0451-4000-B000-A01D48F70D07', module: TSL}); diff --git a/app/js/standards/capability.js b/app/js/standards/capability.js index 156d349..5020b2c 100644 --- a/app/js/standards/capability.js +++ b/app/js/standards/capability.js @@ -242,6 +242,70 @@ CAPABILITY.prototype.animateGraph = function() { }; +CAPABILITY.prototype.polarToCartesian = function(centerX, centerY, radius, angleInDegrees) { + var angleInRadians = (angleInDegrees - 90) * Math.PI / 180.0; + + return { + x: centerX + (radius * Math.cos(angleInRadians)), + y: centerY + (radius * Math.sin(angleInRadians)) + }; +}; + + +CAPABILITY.prototype.describeArc = function(x, y, radius, startAngle, endAngle) { + + var start = this.polarToCartesian(x, y, radius, endAngle); + var end = this.polarToCartesian(x, y, radius, startAngle); + + var arcSweep = endAngle - startAngle <= 180 ? '0' : '1'; + + var d = [ + 'M', start.x, start.y, + 'A', radius, radius, 0, arcSweep, 0, end.x, end.y + ].join(' '); + + return d; + }; + +CAPABILITY.prototype.setArc = function(percent) { + return (240 / 100) * percent; +}; + +CAPABILITY.prototype.updateArc = function(data, subID, elmID) { + + + var ceilingLimit; + var ceiling; + var _subID; + var _data; + + _data = data || this.data; + + _subID = subID || ''; + + if (_data.length > 0) { + + ceiling = _data.reduce(function(p, v) { + return (Math.abs(p) > Math.abs(v) ? Math.abs(p) : Math.abs(v)); + }); + + ceilingLimit = (Math.ceil((Math.round(ceiling) + 1) / 10) * 10); + if (ceilingLimit > 1000) { + ceilingLimit = (Math.ceil((Math.round(ceiling) + 1) / 50) * 50); + } + + var latest = _data[_data.length-1]; + var scale = 100 / ceilingLimit; + var arcP = scale * latest; + // Var xstep = (280 - 46) / 100; + + document.getElementById(elmID).setAttribute('d', this.describeArc(150, 150, 100, 0, this.setArc(arcP))); + } + + + }; + + CAPABILITY.prototype.simpleGraph = function(data, subID) { var ceilingLimit; @@ -272,8 +336,8 @@ CAPABILITY.prototype.simpleGraph = function(data, subID) { var calcArray = []; -/* - var ceilingLimit = Math.floor(ceiling / 10) * 10; + /* + Var ceilingLimit = Math.floor(ceiling / 10) * 10; if (ceilingLimit < ceiling) { ceilingLimit = Math.floor((ceiling + (ceiling * 0.25)) / 10) * 10; } diff --git a/app/js/standards/deviceInformation.js b/app/js/standards/deviceInformation.js new file mode 100644 index 0000000..6e3a823 --- /dev/null +++ b/app/js/standards/deviceInformation.js @@ -0,0 +1,61 @@ +/** + * + * User: Martin Donnelly + * Date: 2016-05-20 + * Time: 10:13 + * + */ +/* global CAPABILITY, inheritsFrom, capabilityManager */ +/* global ble */ +/* jshint browser: true , devel: true*/ + +var DEVICEINFO = function() { + this.name = 'Device Information'; + this.capabilityID = '180A'; + this.serviceDef = { + service: '180A', manufacturer_name_string: '2A29', model_number_string: '2A24' + }; + + this.onBatteryLevelChange = function(data) { + console.log(data); + var a = new Uint8Array(data); + this.state = a[0]; + console.log('onBatteryLevelChange', this.state); + }; + this.readBatteryState = function() { + console.log('readBatteryState'); + ble.read(this.deviceID, + this.serviceDef.service, + this.serviceDef.level, + this.onReadBatteryLevel.bind(this), + this.onError); + }; + + this.onReadBatteryLevel = function(data) { + console.log(data); + var a = new Uint8Array(data); + this.state = a[0]; + console.log('onReadBatteryLevel', this.state); + }; + + this.startService = function() { + 'use strict'; + if (this.deviceID !== null) { + console.log('Starting Battery Service on ', this.deviceID); + console.log(this.serviceDef); + + this.insertFrame(); + + ble.startNotification(this.deviceID, + this.serviceDef.service, + this.serviceDef.level, + this.onBatteryLevelChange.bind(this), + this.onError); + } + + }; + +}; + +inheritsFrom(BATTERY, CAPABILITY); +capabilityManager.register({id: '180F', module: BATTERY}); diff --git a/app/partials/cc2650_barometer.ejs b/app/partials/cc2650_barometer.ejs new file mode 100644 index 0000000..33547ad --- /dev/null +++ b/app/partials/cc2650_barometer.ejs @@ -0,0 +1,42 @@ +<%= data.baseID + 'pressure-line' %> + +
+
Temp:
+
--
+
Pressure:
+
--
+
+ +
+ + + -- + + 0 + + +
+
+ + + -- + + 0 + + +
diff --git a/app/partials/cc2650_thermopile.ejs b/app/partials/cc2650_thermopile.ejs new file mode 100644 index 0000000..71c3bd1 --- /dev/null +++ b/app/partials/cc2650_thermopile.ejs @@ -0,0 +1,48 @@ +
+
Temp:
+
-- +
+
Ambient:
+
-- +
+
+ +
+ + + -- + + + 0 + + +
+
+ + + -- + + + 0 + + +
diff --git a/app/partials/cc2650_thermopile_dial.ejs b/app/partials/cc2650_thermopile_dial.ejs new file mode 100644 index 0000000..0111acb --- /dev/null +++ b/app/partials/cc2650_thermopile_dial.ejs @@ -0,0 +1,92 @@ +
+
Temp:
+
-- +
+
Ambient:
+
-- +
+
+ +
+ + + + + + + + + + + + + + + + + --ºc + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + --ºc + + + + +
diff --git a/app/partials/tsl.ejs b/app/partials/tsl.ejs new file mode 100644 index 0000000..1e4d009 --- /dev/null +++ b/app/partials/tsl.ejs @@ -0,0 +1,45 @@ +
+
Temp:
+
-- +
+
+
+
TMax:
+
-- +
+
TMin:
+
-- +
+
+
+
Pressure:
+
-- +
+
+
+
PMax:
+
-- +
+
PMin:
+
-- +
+ +
+
Humidity:
+
-- +
+
+
+
HMax:
+
-- +
+
HMin:
+
-- +
+
diff --git a/fonts.list b/fonts.list index 0148dcc..d076695 100644 --- a/fonts.list +++ b/fonts.list @@ -1,2 +1,3 @@ Ubuntu:300,400,500,700 Ubuntu+Condensed + diff --git a/gulpfile.js b/gulpfile.js index d2ad2a4..a37e8ef 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -79,6 +79,14 @@ gulp.task('mui', function() { .pipe(gulp.dest('www/css')); }); +gulp.task('customMUI', function() { + return gulp.src(['app/css/custom.scss']) + .pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError)) + //.pipe(cssnano()) + .pipe(rename('mui.custom.css')) + .pipe(gulp.dest('app/css')); +}); + gulp.task('styles', function() { return gulp.src(['app/css/app.css','app/css/progress.css']) .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4')) @@ -149,3 +157,13 @@ gulp.task('watch',function() { gulp.watch('app/**/*',['copy']); }); + +gulp.task('MUIWatcher', function() { + 'use strict'; + gulp.start('customMUI','watchMUI'); +}); + +gulp.task('watchMUI',function() { + gulp.watch('app/css/custom.scss',['customMUI']); + +}); diff --git a/localserver.js b/localserver.js new file mode 100644 index 0000000..3c643eb --- /dev/null +++ b/localserver.js @@ -0,0 +1,16 @@ +var express = require('express'); +var path = require('path'); + +var app = express(); + +app.use(express.static(path.join(__dirname, 'www'))); + +/* +App.get('/', function (req, res) { + res.send('Hello World!'); +}); +*/ + +app.listen(3000, function() { + console.log('Example app listening on port 3000!'); +}); diff --git a/package.json b/package.json index 25b0e1f..43ec892 100644 --- a/package.json +++ b/package.json @@ -34,5 +34,8 @@ "gulp-watch": "^4.3.6", "jshint": "^2.9.2", "scss": "^0.2.4" + }, + "dependencies": { + "express": "^4.13.4" } } diff --git a/platforms/android/.gradle/2.2.1/taskArtifacts/cache.properties.lock b/platforms/android/.gradle/2.2.1/taskArtifacts/cache.properties.lock index 992f1acbed736b65c7a93c1ae5601b850a6f91d7..2e830696d242547484512e3a7ce9f3920a0bbed3 100644 GIT binary patch literal 17 WcmZQx&{6#8*tO}73?RUAZ9V`&00wRV literal 17 WcmZQx&{6#8*tO}73?RV58x8!!loY8X70snm znoE=BQbYp{^6u+8ajk3L?&tkI&+-2A9>>#hbpP((`t0vDt!u4yuJioveJ94MZpl_% z*ThzY|De-X%jExKga17xw!`__e{Z32#jy6@UH10Qto`?#<{s_S-OF^jWxPYPM>4Hx zzL^rUc5*5biM@MfXf+?sX~o=qa7Fa+*Iqd4)H>s#9w(OV z%O2|;+WRsb99*7pOW%RhTJg*B;g_9b4dCdIOMC;vblK>VP}fn-X2Y>zWqg|9PubL} zOUn(eXu&bJPyCLS>9Wcj+PSk=c7$W@HW@Chij-w8dX2vC`@R_tx~|S>Wv0bxZD0FD zZI-V!IVcjldh_PyS7nVU z{POm3S_g}-xX*mDsAhtLWB6trY-QoQk6xw__Pm z)@?c2w6Q+z)@=R^2VD{}c68jy$vp3U%0D#fEgbY3mC?O(N3m?C!}RTs+gQNC5smo3 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%0A&;6u{#8Io#wW;X z&OXS$QUdwcfULXbkbe~rF}|qkbk8F@~=9s zm*zqKl@fR+4C^r56Y{T=K>jtLe0nkDUnzn7Yw}fRW5~Z!0{PecxaZR$|4IquU)%G# zCXj!n1oE#<8qKtU{HuVF{Oh>(o3bJQN(tm&2YB;kkbk8F@~_1K^PC|6Dj+2PdQ5p@ zA>>~Lgydi697#9{`BzFH{~Fc2{VmA9QUdwc#^ZvHLH?Bz$iGgTW|ju|*E&*@e+}!8qpZ;*ejBQ^O~eP^HBkbkWsHTl=P%}&aYf2|`m`PZl^cS|AvN(tm& zyT6=y9P+P}K>l^iP3;qqf29QSuVXxCwt)OAC6IsBXxVHC!@rP!r3CV?yF>OnK>n2y$iG?zC22wal@gBRUvno6-azuNg8L5S zU(Gb6H5o3dfehFE@edLp!$k>Xxc)SL6$cqEN+84aC&y$wWVk4S3|FsGkE@X3q6Ff- z7k`y6LWYYH$Z+WoJK_f!E=nN7<;g#YfD9KUkl}I+J240{T$DhDt6`ssXCT8x31qmk zo^(%!3>PJk;c9T&y9;EvD1i)@pUTF*kl~^PGF)87j^U8uq69KrgRj3!g$x%Zkm2gP z%QXWsT$DhDOT7H+b;xj00vWE3L8}rV!$k>XxXzAy5eOMBN+82k`Y7H3GF+5EhKtu} z>joJvN+84K+H=8H$Z$~t8Lo2?x>F&;MG0iMPA=5%3K=d+Aj4HGuABlHE=nN7)%@@A z)sW$$1TtKI*Jd4s3>PJk;nECjz5+5_lt6~-z4MJy$Z$~t87{~7a}6NFMG0iMI=L_8 zA;U!pWVnL5ELaB_E=nN7rIGlfImvJdt}MuKsSg?{|4NXac)h?mbF~ORPv?1Wh{MDL z#kLTK3WOq(2wfDGbrv<$7yAj4WrqwUX8Cjv%W=@d*1t4c|s2R zgllcP#>5T~(j>narR$4@X}CC5Jd{r(4@v)%7DwK2jl-Xpmo-U?`q>8_qgDpu)=g+% zs^sON-xY_4fCLi*w10M&c4)1E*hC(aXnQP`g%4#ZKo3)+nc1jjJJB9!23J@~kl- z2Xq4D|J^}Wqh^YEo0cou0ik09a&<@5Lv*i|xUZ#r_Z7Mh_59sx{WIN<(I-v%BPn|# znvq2KPusb7P+z0}Lh#}972Kyt1cHi$vGM4m5px368(_Ynz8*n#hRIu16CtLD~71-#w6sz!E

8Pks{$s>KgGiwoA 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 delta 31728 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 diff --git a/platforms/android/.gradle/2.2.1/taskArtifacts/fileSnapshots.bin b/platforms/android/.gradle/2.2.1/taskArtifacts/fileSnapshots.bin index eeaf64019f5b6414e62f0a0c372ab0dae1d7b04f..fb0510df4a253a8e66c32469aaf149dde2b3e5c4 100644 GIT binary patch delta 23874 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 ZW`%8DSGt9AcEx;e@%xyZwLLxfe*g(a2m1g3 diff --git a/platforms/android/.gradle/2.2.1/taskArtifacts/taskArtifacts.bin b/platforms/android/.gradle/2.2.1/taskArtifacts/taskArtifacts.bin index 350fbd97d4aae72c980cd4bbecd867cda0ee176e..caf6976fb02ed20e8ae63679c2377d13176d3633 100644 GIT binary patch delta 412 zcmaEUhxz#(<_%Np1d5M+@r--i_|3$~^{EBxug*>7s*D1UY#S=NIx=>4uGqd){pkE4 zu;2#$7p=!DS~D1!#GB(kzrMVwT$7Q-ZgxxNX1N6?88@@Gv_;5>QVEV0RF8;mx8nf6&oV0+%a#Ij{|^DWf3tqNKA&3g0sE&CWJyKhvVthiBa za%++Nq+s>U3fsAv1+2}kil6w={rv51oy2Qa=a1r6`Q-Ii#XIX+6MlV?y12QsN*{+x zer6Tb2ALaYj2RfXPXX~E5N2NA@b1y`Jb#<$ zQcZM(a-fh^F@iVLZ zd|YO5#+ZSD`xFo#0%7LedFOr{QTs8qvRXNgcX3_op2-u#6*kB1+r=zcxXZ9CFpkZH wby3hn!&y9!kfcuf-8^UBDYl`&xaQVjMb&JC)Z_~*Sy+1h>l<(8J{F?^0KRLsHUIzs diff --git a/platforms/android/assets/www/css/app.css b/platforms/android/assets/www/css/app.css index 8c9a060..a4231cd 100644 --- a/platforms/android/assets/www/css/app.css +++ b/platforms/android/assets/www/css/app.css @@ -1,8 +1,3 @@ -body { - font-family: Ubuntu, "Helvetica Neue", Helvetica, arial, sans-serif; - - } - #lightR, #projR { color: red !important; } @@ -17,7 +12,6 @@ body { } - .h105 { height: 100px; } @@ -82,57 +76,6 @@ body { /* Smartphones (portrait and landscape) ----------- */ @media only screen and (min-device-width: 320px) and (max-device-width: 480px) { /* Styles */ - .time, .date, .temp { - font-family: 'Ubuntu Condensed', sans-serif; - font-size: 33px; - /*color: #ff0000;*/ - } - - .time { - font-size: 50px; - line-height: 1; - } - - .time span.hour:after { - content: "\a"; - white-space: pre; - } - - .temp { - font-size: 70px; - } - - .temp::after { - content: "°"; - } - - .wd-we { - font-size: 75%; - } - - .mo { - font-size: 85%; - } - - .mo.mo-1, .mo.mo-10 { - font-size: 70%; - } - - .mo.mo-2 { - font-size: 65%; - } - - .mo.mo-8 { - font-size: 80%; - } - - .mo.mo-9 { - font-size: 55%; - } - - .mo.mo-11, .mo.mo-12 { - font-size: 60%; - } } @@ -258,3 +201,13 @@ color:#78909C; { color:#2196F3; } + + +/* svg classes */ + +svg text { + font-family:'Ubuntu Condensed',sans-serif; + font-size:12; + fill: #bad649; + text-align:right; + } diff --git a/platforms/android/assets/www/css/custom.scss b/platforms/android/assets/www/css/custom.scss index 8d1af65..dd9b28a 100644 --- a/platforms/android/assets/www/css/custom.scss +++ b/platforms/android/assets/www/css/custom.scss @@ -1,9 +1,14 @@ @import "app/libs/mui/src/sass/mui/colors"; -$mui-body-bg-color: mui-color('grey', '100'); +$mui-body-bg-color: /*#003F5a*/ mui-color('grey', '800'); +$mui-base-font-color: rgba(#FFF, 0.87) !default; +$mui-base-font-family: Ubuntu, "Helvetica Neue", Helvetica, Arial, Verdana, Tahoma !default; + +$mui-panel-bg-color : /*#004c6d*/ mui-color('grey', '900'); + //$mui-accent-color: #bad649; -$mui-accent-color: #004c6d; +$mui-accent-color: #00aeef; $mui-btn-accent-font-color: #004c6d; //$mui-accent-color-dark: mui-color('green', 'A100'); $mui-accent-color-dark: #004c6d; diff --git a/platforms/android/assets/www/css/mui.custom.css b/platforms/android/assets/www/css/mui.custom.css index 17b163f..9cd48c9 100644 --- a/platforms/android/assets/www/css/mui.custom.css +++ b/platforms/android/assets/www/css/mui.custom.css @@ -1,1912 +1 @@ -/** - * MUI Colors module - */ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ -/** - * 1. Set default font family to sans-serif. - * 2. Prevent iOS and IE text size adjust after device orientation change, - * without disabling user zoom. - */ -html { - font-family: sans-serif; - /* 1 */ - -ms-text-size-adjust: 100%; - /* 2 */ - -webkit-text-size-adjust: 100%; - /* 2 */ } - -/** - * Remove default margin. - */ -body { - margin: 0; } - -/* HTML5 display definitions - ========================================================================== */ -/** - * Correct `block` display not defined for any HTML5 element in IE 8/9. - * Correct `block` display not defined for `details` or `summary` in IE 10/11 - * and Firefox. - * Correct `block` display not defined for `main` in IE 11. - */ -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; } - -/** - * 1. Correct `inline-block` display not defined in IE 8/9. - * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. - */ -audio, -canvas, -progress, -video { - display: inline-block; - /* 1 */ - vertical-align: baseline; - /* 2 */ } - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ -audio:not([controls]) { - display: none; - height: 0; } - -/** - * Address `[hidden]` styling not present in IE 8/9/10. - * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22. - */ -[hidden], -template { - display: none; } - -/* Links - ========================================================================== */ -/** - * Remove the gray background color from active links in IE 10. - */ -a { - background-color: transparent; } - -/** - * Improve readability of focused elements when they are also in an - * active/hover state. - */ -a:active, -a:hover { - outline: 0; } - -/* Text-level semantics - ========================================================================== */ -/** - * Address styling not present in IE 8/9/10/11, Safari, and Chrome. - */ -abbr[title] { - border-bottom: 1px dotted; } - -/** - * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. - */ -b, -strong { - font-weight: bold; } - -/** - * Address styling not present in Safari and Chrome. - */ -dfn { - font-style: italic; } - -/** - * Address variable `h1` font-size and margin within `section` and `article` - * contexts in Firefox 4+, Safari, and Chrome. - */ -h1 { - font-size: 2em; - margin: 0.67em 0; } - -/** - * Address styling not present in IE 8/9. - */ -mark { - background: #ff0; - color: #000; } - -/** - * Address inconsistent and variable font size in all browsers. - */ -small { - font-size: 80%; } - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; } - -sup { - top: -0.5em; } - -sub { - bottom: -0.25em; } - -/* Embedded content - ========================================================================== */ -/** - * Remove border when inside `a` element in IE 8/9/10. - */ -img { - border: 0; } - -/** - * Correct overflow not hidden in IE 9/10/11. - */ -svg:not(:root) { - overflow: hidden; } - -/* Grouping content - ========================================================================== */ -/** - * Address margin not present in IE 8/9 and Safari. - */ -figure { - margin: 1em 40px; } - -/** - * Address differences between Firefox and other browsers. - */ -hr { - box-sizing: content-box; - height: 0; } - -/** - * Contain overflow in all browsers. - */ -pre { - overflow: auto; } - -/** - * Address odd `em`-unit font size rendering in all browsers. - */ -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; } - -/* Forms - ========================================================================== */ -/** - * Known limitation: by default, Chrome and Safari on OS X allow very limited - * styling of `select`, unless a `border` property is set. - */ -/** - * 1. Correct color not being inherited. - * Known issue: affects color of disabled elements. - * 2. Correct font properties not being inherited. - * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. - */ -button, -input, -optgroup, -select, -textarea { - color: inherit; - /* 1 */ - font: inherit; - /* 2 */ - margin: 0; - /* 3 */ } - -/** - * Address `overflow` set to `hidden` in IE 8/9/10/11. - */ -button { - overflow: visible; } - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. - * Correct `select` style inheritance in Firefox. - */ -button, -select { - text-transform: none; } - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - */ -button, -html input[type="button"], -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; - /* 2 */ - cursor: pointer; - /* 3 */ } - -/** - * Re-set default cursor for disabled elements. - */ -button[disabled], -html input[disabled] { - cursor: default; } - -/** - * Remove inner padding and border in Firefox 4+. - */ -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; } - -/** - * Address Firefox 4+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ -input { - line-height: normal; } - -/** - * It's recommended that you don't attempt to style these elements. - * Firefox's implementation doesn't respect box-sizing, padding, or width. - * - * 1. Address box sizing set to `content-box` in IE 8/9/10. - * 2. Remove excess padding in IE 8/9/10. - */ -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; - /* 1 */ - padding: 0; - /* 2 */ } - -/** - * Fix the cursor style for Chrome's increment/decrement buttons. For certain - * `font-size` values of the `input`, it causes the cursor style of the - * decrement button to change from `default` to `text`. - */ -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; } - -/** - * 1. Address `appearance` set to `searchfield` in Safari and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari and Chrome. - */ -input[type="search"] { - -webkit-appearance: textfield; - /* 1 */ - box-sizing: content-box; - /* 2 */ } - -/** - * Remove inner padding and search cancel button in Safari and Chrome on OS X. - * Safari (but not Chrome) clips the cancel button when the search input has - * padding (and `textfield` appearance). - */ -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; } - -/** - * Define consistent border, margin, and padding. - */ -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; } - -/** - * 1. Correct `color` not being inherited in IE 8/9/10/11. - * 2. Remove padding so people aren't caught out if they zero out fieldsets. - */ -legend { - border: 0; - /* 1 */ - padding: 0; - /* 2 */ } - -/** - * Remove default vertical scrollbar in IE 8/9/10/11. - */ -textarea { - overflow: auto; } - -/** - * Don't inherit the `font-weight` (applied by a rule above). - * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. - */ -optgroup { - font-weight: bold; } - -/* Tables - ========================================================================== */ -/** - * Remove most spacing between table cells. - */ -table { - border-collapse: collapse; - border-spacing: 0; } - -td, -th { - padding: 0; } - -/** - * MUI Colors module - */ -/** - * MUI Reboot - */ -* { - box-sizing: border-box; } - -*:before, -*:after { - box-sizing: border-box; } - -html { - font-size: 10px; - -webkit-tap-highlight-color: transparent; } - -body { - font-family: Arial, Verdana, Tahoma; - font-size: 14px; - font-weight: 400; - line-height: 1.429; - color: rgba(0, 0, 0, 0.87); - background-color: #F5F5F5; } - -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; } - -a { - color: #2196F3; - text-decoration: none; } - a:hover, a:focus { - color: #1976D2; - text-decoration: underline; } - a:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; } - -p { - margin: 0 0 10px; } - -ul, -ol { - margin-top: 0; - margin-bottom: 10px; } - -figure { - margin: 0; } - -img { - vertical-align: middle; } - -hr { - margin-top: 20px; - margin-bottom: 20px; - border: 0; - height: 1px; - background-color: rgba(0, 0, 0, 0.12); } - -legend { - display: block; - width: 100%; - padding: 0; - margin-bottom: 10px; - font-size: 21px; - color: rgba(0, 0, 0, 0.87); - line-height: inherit; - border: 0; } - -input[type="search"] { - box-sizing: border-box; - -webkit-appearance: none; } - -input[type="file"]:focus, -input[type="radio"]:focus, -input[type="checkbox"]:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; } - -input[type="radio"]:disabled, -input[type="checkbox"]:disabled { - cursor: not-allowed; } - -strong { - font-weight: 700; } - -abbr[title] { - cursor: help; - border-bottom: 1px dotted #2196F3; } - -h1, h2, h3 { - margin-top: 20px; - margin-bottom: 10px; } - -h4, h5, h6 { - margin-top: 10px; - margin-bottom: 10px; } - -/** - * MUI Appbar - */ -.mui--appbar-height { - height: 56px; } - -.mui--appbar-min-height, .mui-appbar { - min-height: 56px; } - -.mui--appbar-line-height { - line-height: 56px; } - -.mui--appbar-top { - top: 56px; } - -@media (orientation: landscape) and (max-height: 480px) { - .mui--appbar-height { - height: 48px; } - .mui--appbar-min-height, .mui-appbar { - min-height: 48px; } - .mui--appbar-line-height { - line-height: 48px; } - .mui--appbar-top { - top: 48px; } } - -@media (min-width: 480px) { - .mui--appbar-height { - height: 64px; } - .mui--appbar-min-height, .mui-appbar { - min-height: 64px; } - .mui--appbar-line-height { - line-height: 64px; } - .mui--appbar-top { - top: 64px; } } - -.mui-appbar { - background-color: #004c6d; - color: #FFF; } - -/** - * MUI Buttons - */ -.mui-btn { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; - font-weight: 500; - font-size: 14px; - line-height: 18px; - text-transform: uppercase; - color: rgba(0, 0, 0, 0.87); - background-color: #FFF; - transition: all 0.2s ease-in-out; - display: inline-block; - height: 36px; - padding: 0 26px; - margin-top: 6px; - margin-bottom: 6px; - border: none; - border-radius: 2px; - cursor: pointer; - touch-action: manipulation; - background-image: none; - text-align: center; - line-height: 36px; - vertical-align: middle; - white-space: nowrap; - user-select: none; - font-size: 14px; - letter-spacing: 0.03em; - position: relative; - overflow: hidden; } - .mui-btn:hover, .mui-btn:focus, .mui-btn:active { - color: rgba(0, 0, 0, 0.87); - background-color: white; } - .mui-btn[disabled]:hover, .mui-btn[disabled]:focus, .mui-btn[disabled]:active { - color: rgba(0, 0, 0, 0.87); - background-color: #FFF; } - .mui-btn.mui-btn--flat { - color: rgba(0, 0, 0, 0.87); - background-color: transparent; } - .mui-btn.mui-btn--flat:hover, .mui-btn.mui-btn--flat:focus, .mui-btn.mui-btn--flat:active { - color: rgba(0, 0, 0, 0.87); - background-color: #f2f2f2; } - .mui-btn.mui-btn--flat[disabled]:hover, .mui-btn.mui-btn--flat[disabled]:focus, .mui-btn.mui-btn--flat[disabled]:active { - color: rgba(0, 0, 0, 0.87); - background-color: transparent; } - .mui-btn:hover, .mui-btn:focus, .mui-btn:active { - outline: 0; - text-decoration: none; - color: rgba(0, 0, 0, 0.87); } - .mui-btn:hover, .mui-btn:focus { - box-shadow: 0 0px 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-btn:hover, .mui-btn:focus { - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.12), -1px 0px 2px rgba(0, 0, 0, 0.12), 0 0px 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } } - .mui-btn:active { - box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-btn:active { - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.12), -1px 0px 2px rgba(0, 0, 0, 0.12), 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } } - .mui-btn:disabled, .mui-btn.mui--is-disabled { - cursor: not-allowed; - pointer-events: none; - opacity: 0.60; - box-shadow: none; } - -.mui-btn + .mui-btn { - margin-left: 8px; } - -.mui-btn--flat { - background-color: transparent; } - .mui-btn--flat:hover, .mui-btn--flat:focus, .mui-btn--flat:active { - box-shadow: none; - background-color: #f2f2f2; } - -.mui-btn--raised, .mui-btn--fab { - box-shadow: 0 0px 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-btn--raised, .mui-btn--fab { - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.12), -1px 0px 2px rgba(0, 0, 0, 0.12), 0 0px 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } } - .mui-btn--raised:active, .mui-btn--fab:active { - box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-btn--raised:active, .mui-btn--fab:active { - box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.12), -1px 0px 2px rgba(0, 0, 0, 0.12), 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } } - -.mui-btn--fab { - position: relative; - padding: 0; - width: 55px; - height: 55px; - line-height: 55px; - border-radius: 50%; - z-index: 1; } - -.mui-btn--primary { - color: #FFF; - background-color: #2196F3; } - .mui-btn--primary:hover, .mui-btn--primary:focus, .mui-btn--primary:active { - color: #FFF; - background-color: #39a1f4; } - .mui-btn--primary[disabled]:hover, .mui-btn--primary[disabled]:focus, .mui-btn--primary[disabled]:active { - color: #FFF; - background-color: #2196F3; } - .mui-btn--primary.mui-btn--flat { - color: #2196F3; - background-color: transparent; } - .mui-btn--primary.mui-btn--flat:hover, .mui-btn--primary.mui-btn--flat:focus, .mui-btn--primary.mui-btn--flat:active { - color: #2196F3; - background-color: #f2f2f2; } - .mui-btn--primary.mui-btn--flat[disabled]:hover, .mui-btn--primary.mui-btn--flat[disabled]:focus, .mui-btn--primary.mui-btn--flat[disabled]:active { - color: #2196F3; - background-color: transparent; } - -.mui-btn--dark { - color: #FFF; - background-color: #424242; } - .mui-btn--dark:hover, .mui-btn--dark:focus, .mui-btn--dark:active { - color: #FFF; - background-color: #4f4f4f; } - .mui-btn--dark[disabled]:hover, .mui-btn--dark[disabled]:focus, .mui-btn--dark[disabled]:active { - color: #FFF; - background-color: #424242; } - .mui-btn--dark.mui-btn--flat { - color: #424242; - background-color: transparent; } - .mui-btn--dark.mui-btn--flat:hover, .mui-btn--dark.mui-btn--flat:focus, .mui-btn--dark.mui-btn--flat:active { - color: #424242; - background-color: #f2f2f2; } - .mui-btn--dark.mui-btn--flat[disabled]:hover, .mui-btn--dark.mui-btn--flat[disabled]:focus, .mui-btn--dark.mui-btn--flat[disabled]:active { - color: #424242; - background-color: transparent; } - -.mui-btn--danger { - color: #FFF; - background-color: #F44336; } - .mui-btn--danger:hover, .mui-btn--danger:focus, .mui-btn--danger:active { - color: #FFF; - background-color: #f55a4e; } - .mui-btn--danger[disabled]:hover, .mui-btn--danger[disabled]:focus, .mui-btn--danger[disabled]:active { - color: #FFF; - background-color: #F44336; } - .mui-btn--danger.mui-btn--flat { - color: #F44336; - background-color: transparent; } - .mui-btn--danger.mui-btn--flat:hover, .mui-btn--danger.mui-btn--flat:focus, .mui-btn--danger.mui-btn--flat:active { - color: #F44336; - background-color: #f2f2f2; } - .mui-btn--danger.mui-btn--flat[disabled]:hover, .mui-btn--danger.mui-btn--flat[disabled]:focus, .mui-btn--danger.mui-btn--flat[disabled]:active { - color: #F44336; - background-color: transparent; } - -.mui-btn--accent { - color: #004c6d; - background-color: #004c6d; } - .mui-btn--accent:hover, .mui-btn--accent:focus, .mui-btn--accent:active { - color: #004c6d; - background-color: #005e87; } - .mui-btn--accent[disabled]:hover, .mui-btn--accent[disabled]:focus, .mui-btn--accent[disabled]:active { - color: #004c6d; - background-color: #004c6d; } - .mui-btn--accent.mui-btn--flat { - color: #004c6d; - background-color: transparent; } - .mui-btn--accent.mui-btn--flat:hover, .mui-btn--accent.mui-btn--flat:focus, .mui-btn--accent.mui-btn--flat:active { - color: #004c6d; - background-color: #f2f2f2; } - .mui-btn--accent.mui-btn--flat[disabled]:hover, .mui-btn--accent.mui-btn--flat[disabled]:focus, .mui-btn--accent.mui-btn--flat[disabled]:active { - color: #004c6d; - background-color: transparent; } - -.mui-btn--small { - height: 30.6px; - line-height: 30.6px; - padding: 0 16px; - font-size: 13px; } - -.mui-btn--large { - height: 54px; - line-height: 54px; - padding: 0 26px; - font-size: 14px; } - -.mui-btn--fab.mui-btn--small { - width: 44px; - height: 44px; - line-height: 44px; } - -.mui-btn--fab.mui-btn--large { - width: 75px; - height: 75px; - line-height: 75px; } - -/** - * MUI Checkboxe and Radio Components - */ -.mui-radio, -.mui-checkbox { - position: relative; - display: block; - margin-top: 10px; - margin-bottom: 10px; } - .mui-radio > label, - .mui-checkbox > label { - min-height: 20px; - padding-left: 20px; - margin-bottom: 0; - font-weight: normal; - cursor: pointer; } - -.mui-radio > label > input[type="radio"], -.mui-radio--inline > label > input[type="radio"], -.mui-checkbox > label > input[type="checkbox"], -.mui-checkbox--inline > label > input[type="checkbox"] { - position: absolute; - margin-left: -20px; - margin-top: 4px; } - -.mui-radio + .mui-radio, -.mui-checkbox + .mui-checkbox { - margin-top: -5px; } - -.mui-radio--inline, -.mui-checkbox--inline { - display: inline-block; - padding-left: 20px; - margin-bottom: 0; - vertical-align: middle; - font-weight: normal; - cursor: pointer; } - .mui-radio--inline > input[type="radio"], - .mui-radio--inline > input[type="checkbox"], - .mui-radio--inline > label > input[type="radio"], - .mui-radio--inline > label > input[type="checkbox"], - .mui-checkbox--inline > input[type="radio"], - .mui-checkbox--inline > input[type="checkbox"], - .mui-checkbox--inline > label > input[type="radio"], - .mui-checkbox--inline > label > input[type="checkbox"] { - margin: 4px 0 0; - line-height: normal; } - -.mui-radio--inline + .mui-radio--inline, -.mui-checkbox--inline + .mui-checkbox--inline { - margin-top: 0; - margin-left: 10px; } - -/** - * MUI Container module - */ -.mui-container { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; } - .mui-container:before, .mui-container:after { - content: " "; - display: table; } - .mui-container:after { - clear: both; } - @media (min-width: 544px) { - .mui-container { - max-width: 570px; } } - @media (min-width: 768px) { - .mui-container { - max-width: 740px; } } - @media (min-width: 992px) { - .mui-container { - max-width: 960px; } } - @media (min-width: 1200px) { - .mui-container { - max-width: 1170px; } } - -.mui-container-fluid { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; } - .mui-container-fluid:before, .mui-container-fluid:after { - content: " "; - display: table; } - .mui-container-fluid:after { - clear: both; } - -/** - * MUI Divider Component and CSS Helpers - */ -.mui-divider { - display: block; - height: 1px; - background-color: rgba(0, 0, 0, 0.12); } - -.mui--divider-top { - border-top: 1px solid rgba(0, 0, 0, 0.12); } - -.mui--divider-bottom { - border-bottom: 1px solid rgba(0, 0, 0, 0.12); } - -.mui--divider-left { - border-left: 1px solid rgba(0, 0, 0, 0.12); } - -.mui--divider-right { - border-right: 1px solid rgba(0, 0, 0, 0.12); } - -/** - * MUI Dropdown module - */ -.mui-dropdown { - display: inline-block; - position: relative; } - -[data-mui-toggle="dropdown"] { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; - outline: 0; } - -.mui-dropdown__menu { - position: absolute; - top: 100%; - left: 0; - display: none; - min-width: 160px; - padding: 5px 0; - margin: 2px 0 0; - list-style: none; - font-size: 14px; - text-align: left; - background-color: #FFF; - border-radius: 2px; - z-index: 1; - background-clip: padding-box; } - .mui-dropdown__menu.mui--is-open { - display: block; } - .mui-dropdown__menu > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: 1.429; - color: rgba(0, 0, 0, 0.87); - white-space: nowrap; } - .mui-dropdown__menu > li > a:hover, .mui-dropdown__menu > li > a:focus { - text-decoration: none; - color: rgba(0, 0, 0, 0.87); - background-color: #EEEEEE; } - .mui-dropdown__menu > .mui--is-disabled > a, .mui-dropdown__menu > .mui--is-disabled > a:hover, .mui-dropdown__menu > .mui--is-disabled > a:focus { - color: #EEEEEE; } - .mui-dropdown__menu > .mui--is-disabled > a:hover, .mui-dropdown__menu > .mui--is-disabled > a:focus { - text-decoration: none; - background-color: transparent; - background-image: none; - cursor: not-allowed; } - -.mui-dropdown__menu--right { - left: auto; - right: 0; } - -/** - * MUI Form Component - */ -@media (min-width: 544px) { - .mui-form--inline > .mui-textfield { - display: inline-block; - margin-bottom: 0; } - .mui-form--inline > .mui-radio, - .mui-form--inline > .mui-checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - vertical-align: middle; } - .mui-form--inline > .mui-radio > label, - .mui-form--inline > .mui-checkbox > label { - padding-left: 0; } - .mui-form--inline > .mui-radio > label > input[type="radio"], - .mui-form--inline > .mui-checkbox > label > input[type="checkbox"] { - position: relative; - margin-left: 0; } - .mui-form--inline > .mui-select { - display: inline-block; } - .mui-form--inline > .mui-btn { - margin-bottom: 0; - margin-top: 0; - vertical-align: bottom; } } - -/** - * MUI Grid module - */ -.mui-row { - margin-left: -15px; - margin-right: -15px; } - .mui-row:before, .mui-row:after { - content: " "; - display: table; } - .mui-row:after { - clear: both; } - -.mui-col-xs-1, .mui-col-sm-1, .mui-col-md-1, .mui-col-lg-1, .mui-col-xs-2, .mui-col-sm-2, .mui-col-md-2, .mui-col-lg-2, .mui-col-xs-3, .mui-col-sm-3, .mui-col-md-3, .mui-col-lg-3, .mui-col-xs-4, .mui-col-sm-4, .mui-col-md-4, .mui-col-lg-4, .mui-col-xs-5, .mui-col-sm-5, .mui-col-md-5, .mui-col-lg-5, .mui-col-xs-6, .mui-col-sm-6, .mui-col-md-6, .mui-col-lg-6, .mui-col-xs-7, .mui-col-sm-7, .mui-col-md-7, .mui-col-lg-7, .mui-col-xs-8, .mui-col-sm-8, .mui-col-md-8, .mui-col-lg-8, .mui-col-xs-9, .mui-col-sm-9, .mui-col-md-9, .mui-col-lg-9, .mui-col-xs-10, .mui-col-sm-10, .mui-col-md-10, .mui-col-lg-10, .mui-col-xs-11, .mui-col-sm-11, .mui-col-md-11, .mui-col-lg-11, .mui-col-xs-12, .mui-col-sm-12, .mui-col-md-12, .mui-col-lg-12 { - min-height: 1px; - padding-left: 15px; - padding-right: 15px; } - -.mui-col-xs-1, .mui-col-xs-2, .mui-col-xs-3, .mui-col-xs-4, .mui-col-xs-5, .mui-col-xs-6, .mui-col-xs-7, .mui-col-xs-8, .mui-col-xs-9, .mui-col-xs-10, .mui-col-xs-11, .mui-col-xs-12 { - float: left; } - -.mui-col-xs-1 { - width: 8.33333%; } - -.mui-col-xs-2 { - width: 16.66667%; } - -.mui-col-xs-3 { - width: 25%; } - -.mui-col-xs-4 { - width: 33.33333%; } - -.mui-col-xs-5 { - width: 41.66667%; } - -.mui-col-xs-6 { - width: 50%; } - -.mui-col-xs-7 { - width: 58.33333%; } - -.mui-col-xs-8 { - width: 66.66667%; } - -.mui-col-xs-9 { - width: 75%; } - -.mui-col-xs-10 { - width: 83.33333%; } - -.mui-col-xs-11 { - width: 91.66667%; } - -.mui-col-xs-12 { - width: 100%; } - -.mui-col-xs-offset-0 { - margin-left: 0%; } - -.mui-col-xs-offset-1 { - margin-left: 8.33333%; } - -.mui-col-xs-offset-2 { - margin-left: 16.66667%; } - -.mui-col-xs-offset-3 { - margin-left: 25%; } - -.mui-col-xs-offset-4 { - margin-left: 33.33333%; } - -.mui-col-xs-offset-5 { - margin-left: 41.66667%; } - -.mui-col-xs-offset-6 { - margin-left: 50%; } - -.mui-col-xs-offset-7 { - margin-left: 58.33333%; } - -.mui-col-xs-offset-8 { - margin-left: 66.66667%; } - -.mui-col-xs-offset-9 { - margin-left: 75%; } - -.mui-col-xs-offset-10 { - margin-left: 83.33333%; } - -.mui-col-xs-offset-11 { - margin-left: 91.66667%; } - -.mui-col-xs-offset-12 { - margin-left: 100%; } - -@media (min-width: 544px) { - .mui-col-sm-1, .mui-col-sm-2, .mui-col-sm-3, .mui-col-sm-4, .mui-col-sm-5, .mui-col-sm-6, .mui-col-sm-7, .mui-col-sm-8, .mui-col-sm-9, .mui-col-sm-10, .mui-col-sm-11, .mui-col-sm-12 { - float: left; } - .mui-col-sm-1 { - width: 8.33333%; } - .mui-col-sm-2 { - width: 16.66667%; } - .mui-col-sm-3 { - width: 25%; } - .mui-col-sm-4 { - width: 33.33333%; } - .mui-col-sm-5 { - width: 41.66667%; } - .mui-col-sm-6 { - width: 50%; } - .mui-col-sm-7 { - width: 58.33333%; } - .mui-col-sm-8 { - width: 66.66667%; } - .mui-col-sm-9 { - width: 75%; } - .mui-col-sm-10 { - width: 83.33333%; } - .mui-col-sm-11 { - width: 91.66667%; } - .mui-col-sm-12 { - width: 100%; } - .mui-col-sm-offset-0 { - margin-left: 0%; } - .mui-col-sm-offset-1 { - margin-left: 8.33333%; } - .mui-col-sm-offset-2 { - margin-left: 16.66667%; } - .mui-col-sm-offset-3 { - margin-left: 25%; } - .mui-col-sm-offset-4 { - margin-left: 33.33333%; } - .mui-col-sm-offset-5 { - margin-left: 41.66667%; } - .mui-col-sm-offset-6 { - margin-left: 50%; } - .mui-col-sm-offset-7 { - margin-left: 58.33333%; } - .mui-col-sm-offset-8 { - margin-left: 66.66667%; } - .mui-col-sm-offset-9 { - margin-left: 75%; } - .mui-col-sm-offset-10 { - margin-left: 83.33333%; } - .mui-col-sm-offset-11 { - margin-left: 91.66667%; } - .mui-col-sm-offset-12 { - margin-left: 100%; } } - -@media (min-width: 768px) { - .mui-col-md-1, .mui-col-md-2, .mui-col-md-3, .mui-col-md-4, .mui-col-md-5, .mui-col-md-6, .mui-col-md-7, .mui-col-md-8, .mui-col-md-9, .mui-col-md-10, .mui-col-md-11, .mui-col-md-12 { - float: left; } - .mui-col-md-1 { - width: 8.33333%; } - .mui-col-md-2 { - width: 16.66667%; } - .mui-col-md-3 { - width: 25%; } - .mui-col-md-4 { - width: 33.33333%; } - .mui-col-md-5 { - width: 41.66667%; } - .mui-col-md-6 { - width: 50%; } - .mui-col-md-7 { - width: 58.33333%; } - .mui-col-md-8 { - width: 66.66667%; } - .mui-col-md-9 { - width: 75%; } - .mui-col-md-10 { - width: 83.33333%; } - .mui-col-md-11 { - width: 91.66667%; } - .mui-col-md-12 { - width: 100%; } - .mui-col-md-offset-0 { - margin-left: 0%; } - .mui-col-md-offset-1 { - margin-left: 8.33333%; } - .mui-col-md-offset-2 { - margin-left: 16.66667%; } - .mui-col-md-offset-3 { - margin-left: 25%; } - .mui-col-md-offset-4 { - margin-left: 33.33333%; } - .mui-col-md-offset-5 { - margin-left: 41.66667%; } - .mui-col-md-offset-6 { - margin-left: 50%; } - .mui-col-md-offset-7 { - margin-left: 58.33333%; } - .mui-col-md-offset-8 { - margin-left: 66.66667%; } - .mui-col-md-offset-9 { - margin-left: 75%; } - .mui-col-md-offset-10 { - margin-left: 83.33333%; } - .mui-col-md-offset-11 { - margin-left: 91.66667%; } - .mui-col-md-offset-12 { - margin-left: 100%; } } - -@media (min-width: 992px) { - .mui-col-lg-1, .mui-col-lg-2, .mui-col-lg-3, .mui-col-lg-4, .mui-col-lg-5, .mui-col-lg-6, .mui-col-lg-7, .mui-col-lg-8, .mui-col-lg-9, .mui-col-lg-10, .mui-col-lg-11, .mui-col-lg-12 { - float: left; } - .mui-col-lg-1 { - width: 8.33333%; } - .mui-col-lg-2 { - width: 16.66667%; } - .mui-col-lg-3 { - width: 25%; } - .mui-col-lg-4 { - width: 33.33333%; } - .mui-col-lg-5 { - width: 41.66667%; } - .mui-col-lg-6 { - width: 50%; } - .mui-col-lg-7 { - width: 58.33333%; } - .mui-col-lg-8 { - width: 66.66667%; } - .mui-col-lg-9 { - width: 75%; } - .mui-col-lg-10 { - width: 83.33333%; } - .mui-col-lg-11 { - width: 91.66667%; } - .mui-col-lg-12 { - width: 100%; } - .mui-col-lg-offset-0 { - margin-left: 0%; } - .mui-col-lg-offset-1 { - margin-left: 8.33333%; } - .mui-col-lg-offset-2 { - margin-left: 16.66667%; } - .mui-col-lg-offset-3 { - margin-left: 25%; } - .mui-col-lg-offset-4 { - margin-left: 33.33333%; } - .mui-col-lg-offset-5 { - margin-left: 41.66667%; } - .mui-col-lg-offset-6 { - margin-left: 50%; } - .mui-col-lg-offset-7 { - margin-left: 58.33333%; } - .mui-col-lg-offset-8 { - margin-left: 66.66667%; } - .mui-col-lg-offset-9 { - margin-left: 75%; } - .mui-col-lg-offset-10 { - margin-left: 83.33333%; } - .mui-col-lg-offset-11 { - margin-left: 91.66667%; } - .mui-col-lg-offset-12 { - margin-left: 100%; } } - -@media (min-width: 1200px) { - .mui-col-xl-1, .mui-col-xl-2, .mui-col-xl-3, .mui-col-xl-4, .mui-col-xl-5, .mui-col-xl-6, .mui-col-xl-7, .mui-col-xl-8, .mui-col-xl-9, .mui-col-xl-10, .mui-col-xl-11, .mui-col-xl-12 { - float: left; } - .mui-col-xl-1 { - width: 8.33333%; } - .mui-col-xl-2 { - width: 16.66667%; } - .mui-col-xl-3 { - width: 25%; } - .mui-col-xl-4 { - width: 33.33333%; } - .mui-col-xl-5 { - width: 41.66667%; } - .mui-col-xl-6 { - width: 50%; } - .mui-col-xl-7 { - width: 58.33333%; } - .mui-col-xl-8 { - width: 66.66667%; } - .mui-col-xl-9 { - width: 75%; } - .mui-col-xl-10 { - width: 83.33333%; } - .mui-col-xl-11 { - width: 91.66667%; } - .mui-col-xl-12 { - width: 100%; } - .mui-col-xl-offset-0 { - margin-left: 0%; } - .mui-col-xl-offset-1 { - margin-left: 8.33333%; } - .mui-col-xl-offset-2 { - margin-left: 16.66667%; } - .mui-col-xl-offset-3 { - margin-left: 25%; } - .mui-col-xl-offset-4 { - margin-left: 33.33333%; } - .mui-col-xl-offset-5 { - margin-left: 41.66667%; } - .mui-col-xl-offset-6 { - margin-left: 50%; } - .mui-col-xl-offset-7 { - margin-left: 58.33333%; } - .mui-col-xl-offset-8 { - margin-left: 66.66667%; } - .mui-col-xl-offset-9 { - margin-left: 75%; } - .mui-col-xl-offset-10 { - margin-left: 83.33333%; } - .mui-col-xl-offset-11 { - margin-left: 91.66667%; } - .mui-col-xl-offset-12 { - margin-left: 100%; } } - -/** - * MUI Panel module - */ -.mui-panel { - padding: 15px; - margin-bottom: 20px; - border-radius: 0; - background-color: #FFF; - box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0px 2px 0 rgba(0, 0, 0, 0.12); } - .mui-panel:before, .mui-panel:after { - content: " "; - display: table; } - .mui-panel:after { - clear: both; } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-panel { - box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, 0.12), -1px 0px 2px 0 rgba(0, 0, 0, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0px 2px 0 rgba(0, 0, 0, 0.12); } } - -/** - * MUI Select Component - */ -.mui-select { - display: block; - padding-top: 15px; - margin-bottom: 20px; - position: relative; } - .mui-select:focus { - outline: 0; } - .mui-select:focus > select { - height: 33px; - margin-bottom: -1px; - border-color: #2196F3; - border-width: 2px; } - .mui-select > select { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; - display: block; - height: 32px; - width: 100%; - appearance: none; - -webkit-appearance: none; - -moz-appearance: none; - outline: none; - border: none; - border-bottom: 1px solid rgba(0, 0, 0, 0.26); - border-radius: 0px; - box-shadow: none; - background-color: transparent; - background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNiIgd2lkdGg9IjEwIj48cG9seWdvbiBwb2ludHM9IjAsMCAxMCwwIDUsNiIgc3R5bGU9ImZpbGw6cmdiYSgwLDAsMCwuMjQpOyIvPjwvc3ZnPg=="); - background-repeat: no-repeat; - background-position: right center; - cursor: pointer; - color: rgba(0, 0, 0, 0.87); - font-size: 16px; - padding: 0 25px 0 0; } - .mui-select > select::-ms-expand { - display: none; } - .mui-select > select:focus { - outline: 0; - height: 33px; - margin-bottom: -1px; - border-color: #2196F3; - border-width: 2px; } - .mui-select > select:disabled { - color: rgba(0, 0, 0, 0.38); - cursor: not-allowed; - background-color: transparent; - opacity: 1; } - -.mui-select__menu { - position: absolute; - z-index: 2; - min-width: 100%; - overflow-y: auto; - padding: 8px 0; - background-color: #FFF; - font-size: 16px; } - @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .mui-select__menu { - border-left: 1px solid rgba(0, 0, 0, 0.12); - border-top: 1px solid rgba(0, 0, 0, 0.12); } } - .mui-select__menu > div { - padding: 0 22px; - height: 42px; - line-height: 42px; - cursor: pointer; - white-space: nowrap; } - .mui-select__menu > div:hover { - background-color: #E0E0E0; } - .mui-select__menu > div.mui--is-selected { - background-color: #EEEEEE; } - -/** - * MUI Table Component - */ -th { - text-align: left; } - -.mui-table { - width: 100%; - max-width: 100%; - margin-bottom: 20px; } - .mui-table > thead > tr > th, - .mui-table > thead > tr > td, - .mui-table > tbody > tr > th, - .mui-table > tbody > tr > td, - .mui-table > tfoot > tr > th, - .mui-table > tfoot > tr > td { - padding: 10px; - line-height: 1.429; } - .mui-table > thead > tr > th { - border-bottom: 2px solid rgba(0, 0, 0, 0.12); - font-weight: 700; } - .mui-table > tbody + tbody { - border-top: 2px solid rgba(0, 0, 0, 0.12); } - .mui-table.mui-table--bordered > tbody > tr > td { - border-bottom: 1px solid rgba(0, 0, 0, 0.12); } - -/** - * MUI Tabs module - */ -.mui-tabs__bar { - list-style: none; - padding-left: 0; - margin-bottom: 0; - background-color: transparent; - white-space: nowrap; - overflow-x: auto; } - .mui-tabs__bar > li { - display: inline-block; } - .mui-tabs__bar > li > a { - display: block; - white-space: nowrap; - text-transform: uppercase; - font-weight: 500; - font-size: 14px; - color: rgba(255, 255, 255, 0.87); - cursor: default; - height: 48px; - line-height: 48px; - padding-left: 24px; - padding-right: 24px; - user-select: none; } - .mui-tabs__bar > li > a:hover { - text-decoration: none; } - .mui-tabs__bar > li.mui--is-active { - border-bottom: 2px solid #2196F3; } - .mui-tabs__bar > li.mui--is-active > a { - color: #2196F3; } - .mui-tabs__bar.mui-tabs__bar--justified { - display: table; - width: 100%; - table-layout: fixed; } - .mui-tabs__bar.mui-tabs__bar--justified > li { - display: table-cell; } - .mui-tabs__bar.mui-tabs__bar--justified > li > a { - text-align: center; - padding-left: 0px; - padding-right: 0px; } - -.mui-tabs__pane { - display: none; } - .mui-tabs__pane.mui--is-active { - display: block; } - -[data-mui-toggle="tab"] { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; } - -/** - * MUI Textfield Component - */ -.mui-textfield { - display: block; - padding-top: 15px; - margin-bottom: 20px; - position: relative; } - .mui-textfield > label { - position: absolute; - top: 0; - display: block; - width: 100%; - color: rgba(0, 0, 0, 0.54); - font-size: 12px; - font-weight: 400; - line-height: 15px; - overflow-x: hidden; - text-overflow: ellipsis; - white-space: nowrap; } - .mui-textfield > textarea { - padding-top: 5px; } - .mui-textfield > input, - .mui-textfield > textarea { - display: block; } - .mui-textfield > input:focus ~ label, - .mui-textfield > textarea:focus ~ label { - color: #2196F3; } - -.mui-textfield--float-label > label { - position: absolute; - transform: translate(0px, 15px); - font-size: 16px; - line-height: 32px; - color: rgba(0, 0, 0, 0.26); - text-overflow: clip; - cursor: text; - pointer-events: none; } - -.mui-textfield--float-label > input:focus ~ label, -.mui-textfield--float-label > textarea:focus ~ label { - transform: translate(0px, 0px); - font-size: 12px; - line-height: 15px; - text-overflow: ellipsis; } - -.mui-textfield--float-label > input:not(:focus).mui--is-not-empty ~ label, .mui-textfield--float-label > input:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, .mui-textfield--float-label > input:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield--float-label > textarea:not(:focus).mui--is-not-empty ~ label, -.mui-textfield--float-label > textarea:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield--float-label > textarea:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label { - color: rgba(0, 0, 0, 0.54); - font-size: 12px; - line-height: 15px; - transform: translate(0px, 0px); - text-overflow: ellipsis; } - -.mui-textfield--wrap-label { - display: table; - width: 100%; - padding-top: 0px; } - .mui-textfield--wrap-label:not(.mui-textfield--float-label) > label { - display: table-header-group; - position: static; - white-space: normal; - overflow-x: visible; } - -.mui-textfield > input, -.mui-textfield > textarea { - animation-duration: 0.0001s; - animation-name: mui-node-inserted; - display: block; - background-color: transparent; - color: rgba(0, 0, 0, 0.87); - border: none; - border-bottom: 1px solid rgba(0, 0, 0, 0.26); - outline: none; - width: 100%; - font-size: 16px; - padding: 0; - box-shadow: none; - border-radius: 0px; - background-image: none; } - .mui-textfield > input:focus, - .mui-textfield > textarea:focus { - border-color: #2196F3; - border-width: 2px; } - .mui-textfield > input:disabled, .mui-textfield > input:read-only, - .mui-textfield > textarea:disabled, - .mui-textfield > textarea:read-only { - cursor: not-allowed; - background-color: transparent; - opacity: 1; } - .mui-textfield > input::placeholder, - .mui-textfield > textarea::placeholder { - color: rgba(0, 0, 0, 0.26); - opacity: 1; } - -.mui-textfield > input { - height: 32px; } - .mui-textfield > input:focus { - height: 33px; - margin-bottom: -1px; } - -.mui-textfield > textarea { - min-height: 64px; } - .mui-textfield > textarea[rows]:not([rows="2"]):focus { - margin-bottom: -1px; } - -.mui-textfield > input:focus { - height: 33px; - margin-bottom: -1px; } - -.mui-textfield > input:invalid:not(:focus):not(:required), .mui-textfield > input:invalid:not(:focus):required.mui--is-not-empty, .mui-textfield > input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty, .mui-textfield > input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), .mui-textfield > input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > textarea:invalid:not(:focus):not(:required), -.mui-textfield > textarea:invalid:not(:focus):required.mui--is-not-empty, -.mui-textfield > textarea:invalid:not(:focus):required.mui--is-empty.mui--is-dirty, -.mui-textfield > textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > input:not(:focus).mui--is-invalid:not(:required), -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-not-empty, -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty, -.mui-textfield > input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > textarea:not(:focus).mui--is-invalid:not(:required), -.mui-textfield > textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) { - border-color: #F44336; - border-width: 2px; } - -.mui-textfield > input:invalid:not(:focus):not(:required), .mui-textfield > input:invalid:not(:focus):required.mui--is-not-empty, .mui-textfield > input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty, .mui-textfield > input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), .mui-textfield > input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > input:not(:focus).mui--is-invalid:not(:required), -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-not-empty, -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty, -.mui-textfield > input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty), -.mui-textfield > input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) { - height: 33px; - margin-bottom: -1px; } - -.mui-textfield > input:invalid:not(:focus):not(:required) ~ label, .mui-textfield > input:invalid:not(:focus):required.mui--is-not-empty ~ label, .mui-textfield > input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, .mui-textfield > input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > textarea:invalid:not(:focus):not(:required) ~ label, -.mui-textfield > textarea:invalid:not(:focus):required.mui--is-not-empty ~ label, -.mui-textfield > textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > input:not(:focus).mui--is-invalid:not(:required) ~ label, -.mui-textfield > input:not(:focus).mui--is-invalid:required.mui--is-not-empty ~ label, -.mui-textfield > input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > textarea:not(:focus).mui--is-invalid:not(:required) ~ label, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty ~ label, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label, -.mui-textfield > textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label { - color: #F44336; } - -.mui-textfield:not(.mui-textfield--float-label) > input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty ~ label, -.mui-textfield:not(.mui-textfield--float-label) > textarea:invalid:not(:focus):required.mui--is-empty.mui--is-dirty ~ label, -.mui-textfield:not(.mui-textfield--float-label) > input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty ~ label, -.mui-textfield:not(.mui-textfield--float-label) > textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty ~ label { - color: #F44336; } - -/** - * MUI Helpers module - */ -@keyframes mui-node-inserted { - from { - opacity: 0.99; } - to { - opacity: 1; } } - -.mui--no-transition { - transition: none !important; } - -.mui--no-user-select { - user-select: none; } - -.mui-caret { - display: inline-block; - width: 0; - height: 0; - margin-left: 2px; - vertical-align: middle; - border-top: 4px solid; - border-right: 4px solid transparent; - border-left: 4px solid transparent; } - -.mui--text-left { - text-align: left !important; } - -.mui--text-right { - text-align: right !important; } - -.mui--text-center { - text-align: center !important; } - -.mui--text-justify { - text-align: justify !important; } - -.mui--text-nowrap { - white-space: nowrap !important; } - -.mui--align-baseline { - vertical-align: baseline !important; } - -.mui--align-top { - vertical-align: top !important; } - -.mui--align-middle { - vertical-align: middle !important; } - -.mui--align-bottom { - vertical-align: bottom !important; } - -.mui--text-dark { - color: rgba(0, 0, 0, 0.87); } - -.mui--text-dark-secondary { - color: rgba(0, 0, 0, 0.54); } - -.mui--text-dark-hint { - color: rgba(0, 0, 0, 0.38); } - -.mui--text-light { - color: #FFF; } - -.mui--text-light-secondary { - color: rgba(255, 255, 255, 0.7); } - -.mui--text-light-hint { - color: rgba(255, 255, 255, 0.3); } - -.mui--text-accent { - color: rgba(0, 76, 109, 0.87); } - -.mui--text-accent-secondary { - color: rgba(0, 76, 109, 0.54); } - -.mui--text-accent-hint { - color: rgba(0, 76, 109, 0.38); } - -.mui--text-black { - color: #000; } - -.mui--text-white { - color: #FFF; } - -.mui--text-danger { - color: #F44336; } - -.mui-list--unstyled { - padding-left: 0; - list-style: none; } - -.mui-list--inline { - padding-left: 0; - list-style: none; - margin-left: -5px; } - .mui-list--inline > li { - display: inline-block; - padding-left: 5px; - padding-right: 5px; } - -.mui--z1, .mui-dropdown__menu, .mui-select__menu { - box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); } - -.mui--z2 { - box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23); } - -.mui--z3 { - box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); } - -.mui--z4 { - box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22); } - -.mui--z5 { - box-shadow: 0 19px 38px rgba(0, 0, 0, 0.3), 0 15px 12px rgba(0, 0, 0, 0.22); } - -.mui--clearfix:before, .mui--clearfix:after { - content: " "; - display: table; } - -.mui--clearfix:after { - clear: both; } - -.mui--pull-right { - float: right !important; } - -.mui--pull-left { - float: left !important; } - -.mui--hide { - display: none !important; } - -.mui--show { - display: block !important; } - -.mui--invisible { - visibility: hidden; } - -.mui--overflow-hidden { - overflow: hidden !important; } - -.mui--overflow-hidden-x { - overflow-x: hidden !important; } - -.mui--overflow-hidden-y { - overflow-y: hidden !important; } - -.mui--visible-xs-block, -.mui--visible-xs-inline, -.mui--visible-xs-inline-block, -.mui--visible-sm-block, -.mui--visible-sm-inline, -.mui--visible-sm-inline-block, -.mui--visible-md-block, -.mui--visible-md-inline, -.mui--visible-md-inline-block, -.mui--visible-lg-block, -.mui--visible-lg-inline, -.mui--visible-lg-inline-block, -.mui--visible-xl-block, -.mui--visible-xl-inline, -.mui--visible-xl-inline-block { - display: none !important; } - -@media (max-width: 543px) { - .mui-visible-xs { - display: block !important; } - table.mui-visible-xs { - display: table; } - tr.mui-visible-xs { - display: table-row !important; } - th.mui-visible-xs, - td.mui-visible-xs { - display: table-cell !important; } - .mui--visible-xs-block { - display: block !important; } - .mui--visible-xs-inline { - display: inline !important; } - .mui--visible-xs-inline-block { - display: inline-block !important; } } - -@media (min-width: 544px) and (max-width: 767px) { - .mui-visible-sm { - display: block !important; } - table.mui-visible-sm { - display: table; } - tr.mui-visible-sm { - display: table-row !important; } - th.mui-visible-sm, - td.mui-visible-sm { - display: table-cell !important; } - .mui--visible-sm-block { - display: block !important; } - .mui--visible-sm-inline { - display: inline !important; } - .mui--visible-sm-inline-block { - display: inline-block !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .mui-visible-md { - display: block !important; } - table.mui-visible-md { - display: table; } - tr.mui-visible-md { - display: table-row !important; } - th.mui-visible-md, - td.mui-visible-md { - display: table-cell !important; } - .mui--visible-md-block { - display: block !important; } - .mui--visible-md-inline { - display: inline !important; } - .mui--visible-md-inline-block { - display: inline-block !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .mui-visible-lg { - display: block !important; } - table.mui-visible-lg { - display: table; } - tr.mui-visible-lg { - display: table-row !important; } - th.mui-visible-lg, - td.mui-visible-lg { - display: table-cell !important; } - .mui--visible-lg-block { - display: block !important; } - .mui--visible-lg-inline { - display: inline !important; } - .mui--visible-lg-inline-block { - display: inline-block !important; } } - -@media (min-width: 1200px) { - .mui-visible-xl { - display: block !important; } - table.mui-visible-xl { - display: table; } - tr.mui-visible-xl { - display: table-row !important; } - th.mui-visible-xl, - td.mui-visible-xl { - display: table-cell !important; } - .mui--visible-xl-block { - display: block !important; } - .mui--visible-xl-inline { - display: inline !important; } - .mui--visible-xl-inline-block { - display: inline-block !important; } } - -@media (max-width: 543px) { - .mui--hidden-xs { - display: none !important; } } - -@media (min-width: 544px) and (max-width: 767px) { - .mui--hidden-sm { - display: none !important; } } - -@media (min-width: 768px) and (max-width: 991px) { - .mui--hidden-md { - display: none !important; } } - -@media (min-width: 992px) and (max-width: 1199px) { - .mui--hidden-lg { - display: none !important; } } - -@media (min-width: 1200px) { - .mui--hidden-xl { - display: none !important; } } - -body.mui-body--scroll-lock { - overflow: hidden !important; } - -/** - * MUI Overlay module - */ -#mui-overlay { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 99999999; - background-color: rgba(0, 0, 0, 0.2); - overflow: auto; } - -/** - * MUI Ripple module - */ -.mui-ripple-effect { - position: absolute; - border-radius: 50%; - pointer-events: none; - opacity: 0; - animation: mui-ripple-animation 2s; } - -@keyframes mui-ripple-animation { - from { - transform: scale(1); - opacity: 0.4; } - to { - transform: scale(100); - opacity: 0; } } - -.mui-btn > .mui-ripple-effect { - background-color: #a6a6a6; } - -.mui-btn--primary > .mui-ripple-effect { - background-color: #FFF; } - -.mui-btn--dark > .mui-ripple-effect { - background-color: #FFF; } - -.mui-btn--danger > .mui-ripple-effect { - background-color: #FFF; } - -.mui-btn--accent > .mui-ripple-effect { - background-color: #FFF; } - -.mui-btn--flat > .mui-ripple-effect { - background-color: #a6a6a6; } - -/** - * MUI Typography module - */ -.mui--text-display4 { - font-weight: 300; - font-size: 112px; - line-height: 112px; } - -.mui--text-display3 { - font-weight: 400; - font-size: 56px; - line-height: 56px; } - -.mui--text-display2 { - font-weight: 400; - font-size: 45px; - line-height: 48px; } - -.mui--text-display1, h1 { - font-weight: 400; - font-size: 34px; - line-height: 40px; } - -.mui--text-headline, h2 { - font-weight: 400; - font-size: 24px; - line-height: 32px; } - -.mui--text-title, h3 { - font-weight: 400; - font-size: 20px; - line-height: 28px; } - -.mui--text-subhead, h4 { - font-weight: 400; - font-size: 16px; - line-height: 24px; } - -.mui--text-body2, h5 { - font-weight: 500; - font-size: 14px; - line-height: 24px; } - -.mui--text-body1 { - font-weight: 400; - font-size: 14px; - line-height: 20px; } - -.mui--text-caption { - font-weight: 400; - font-size: 12px; - line-height: 16px; } - -.mui--text-menu { - font-weight: 500; - font-size: 13px; - line-height: 17px; } - -.mui--text-button { - font-weight: 500; - font-size: 14px; - line-height: 18px; - text-transform: uppercase; } - +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box}*:before,*:after{box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:Ubuntu,"Helvetica Neue",Helvetica,Arial,Verdana,Tahoma;font-size:14px;font-weight:400;line-height:1.429;color:rgba(255,255,255,0.87);background-color:#424242}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#2196F3;text-decoration:none}a:hover,a:focus{color:#1976D2;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}p{margin:0 0 10px}ul,ol{margin-top:0;margin-bottom:10px}figure{margin:0}img{vertical-align:middle}hr{margin-top:20px;margin-bottom:20px;border:0;height:1px;background-color:rgba(0,0,0,0.12)}legend{display:block;width:100%;padding:0;margin-bottom:10px;font-size:21px;color:rgba(255,255,255,0.87);line-height:inherit;border:0}input[type="search"]{box-sizing:border-box;-webkit-appearance:none}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="radio"]:disabled,input[type="checkbox"]:disabled{cursor:not-allowed}strong{font-weight:700}abbr[title]{cursor:help;border-bottom:1px dotted #2196F3}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}.mui--appbar-height{height:56px}.mui--appbar-min-height,.mui-appbar{min-height:56px}.mui--appbar-line-height{line-height:56px}.mui--appbar-top{top:56px}@media (orientation: landscape) and (max-height: 480px){.mui--appbar-height{height:48px}.mui--appbar-min-height,.mui-appbar{min-height:48px}.mui--appbar-line-height{line-height:48px}.mui--appbar-top{top:48px}}@media (min-width: 480px){.mui--appbar-height{height:64px}.mui--appbar-min-height,.mui-appbar{min-height:64px}.mui--appbar-line-height{line-height:64px}.mui--appbar-top{top:64px}}.mui-appbar{background-color:#004c6d;color:#fff}.mui-btn{animation-duration:0.0001s;animation-name:mui-node-inserted;font-weight:500;font-size:14px;line-height:18px;text-transform:uppercase;color:rgba(255,255,255,0.87);background-color:#fff;transition:all 0.2s ease-in-out;display:inline-block;height:36px;padding:0 26px;margin-top:6px;margin-bottom:6px;border:none;border-radius:2px;cursor:pointer;touch-action:manipulation;background-image:none;text-align:center;line-height:36px;vertical-align:middle;white-space:nowrap;user-select:none;font-size:14px;letter-spacing:0.03em;position:relative;overflow:hidden}.mui-btn:hover,.mui-btn:focus,.mui-btn:active{color:rgba(255,255,255,0.87);background-color:#fff}.mui-btn[disabled]:hover,.mui-btn[disabled]:focus,.mui-btn[disabled]:active{color:rgba(255,255,255,0.87);background-color:#fff}.mui-btn.mui-btn--flat{color:rgba(255,255,255,0.87);background-color:transparent}.mui-btn.mui-btn--flat:hover,.mui-btn.mui-btn--flat:focus,.mui-btn.mui-btn--flat:active{color:rgba(255,255,255,0.87);background-color:#f2f2f2}.mui-btn.mui-btn--flat[disabled]:hover,.mui-btn.mui-btn--flat[disabled]:focus,.mui-btn.mui-btn--flat[disabled]:active{color:rgba(255,255,255,0.87);background-color:transparent}.mui-btn:hover,.mui-btn:focus,.mui-btn:active{outline:0;text-decoration:none;color:rgba(255,255,255,0.87)}.mui-btn:hover,.mui-btn:focus{box-shadow:0 0px 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-btn:hover,.mui-btn:focus{box-shadow:0 -1px 2px rgba(0,0,0,0.12),-1px 0px 2px rgba(0,0,0,0.12),0 0px 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2)}}.mui-btn:active{box-shadow:0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-btn:active{box-shadow:0 -1px 2px rgba(0,0,0,0.12),-1px 0px 2px rgba(0,0,0,0.12),0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}}.mui-btn:disabled,.mui-btn.mui--is-disabled{cursor:not-allowed;pointer-events:none;opacity:0.60;box-shadow:none}.mui-btn+.mui-btn{margin-left:8px}.mui-btn--flat{background-color:transparent}.mui-btn--flat:hover,.mui-btn--flat:focus,.mui-btn--flat:active{box-shadow:none;background-color:#f2f2f2}.mui-btn--raised,.mui-btn--fab{box-shadow:0 0px 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-btn--raised,.mui-btn--fab{box-shadow:0 -1px 2px rgba(0,0,0,0.12),-1px 0px 2px rgba(0,0,0,0.12),0 0px 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2)}}.mui-btn--raised:active,.mui-btn--fab:active{box-shadow:0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-btn--raised:active,.mui-btn--fab:active{box-shadow:0 -1px 2px rgba(0,0,0,0.12),-1px 0px 2px rgba(0,0,0,0.12),0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}}.mui-btn--fab{position:relative;padding:0;width:55px;height:55px;line-height:55px;border-radius:50%;z-index:1}.mui-btn--primary{color:#fff;background-color:#2196F3}.mui-btn--primary:hover,.mui-btn--primary:focus,.mui-btn--primary:active{color:#fff;background-color:#39a1f4}.mui-btn--primary[disabled]:hover,.mui-btn--primary[disabled]:focus,.mui-btn--primary[disabled]:active{color:#fff;background-color:#2196F3}.mui-btn--primary.mui-btn--flat{color:#2196F3;background-color:transparent}.mui-btn--primary.mui-btn--flat:hover,.mui-btn--primary.mui-btn--flat:focus,.mui-btn--primary.mui-btn--flat:active{color:#2196F3;background-color:#f2f2f2}.mui-btn--primary.mui-btn--flat[disabled]:hover,.mui-btn--primary.mui-btn--flat[disabled]:focus,.mui-btn--primary.mui-btn--flat[disabled]:active{color:#2196F3;background-color:transparent}.mui-btn--dark{color:#fff;background-color:#424242}.mui-btn--dark:hover,.mui-btn--dark:focus,.mui-btn--dark:active{color:#fff;background-color:#4f4f4f}.mui-btn--dark[disabled]:hover,.mui-btn--dark[disabled]:focus,.mui-btn--dark[disabled]:active{color:#fff;background-color:#424242}.mui-btn--dark.mui-btn--flat{color:#424242;background-color:transparent}.mui-btn--dark.mui-btn--flat:hover,.mui-btn--dark.mui-btn--flat:focus,.mui-btn--dark.mui-btn--flat:active{color:#424242;background-color:#f2f2f2}.mui-btn--dark.mui-btn--flat[disabled]:hover,.mui-btn--dark.mui-btn--flat[disabled]:focus,.mui-btn--dark.mui-btn--flat[disabled]:active{color:#424242;background-color:transparent}.mui-btn--danger{color:#fff;background-color:#F44336}.mui-btn--danger:hover,.mui-btn--danger:focus,.mui-btn--danger:active{color:#fff;background-color:#f55a4e}.mui-btn--danger[disabled]:hover,.mui-btn--danger[disabled]:focus,.mui-btn--danger[disabled]:active{color:#fff;background-color:#F44336}.mui-btn--danger.mui-btn--flat{color:#F44336;background-color:transparent}.mui-btn--danger.mui-btn--flat:hover,.mui-btn--danger.mui-btn--flat:focus,.mui-btn--danger.mui-btn--flat:active{color:#F44336;background-color:#f2f2f2}.mui-btn--danger.mui-btn--flat[disabled]:hover,.mui-btn--danger.mui-btn--flat[disabled]:focus,.mui-btn--danger.mui-btn--flat[disabled]:active{color:#F44336;background-color:transparent}.mui-btn--accent{color:#004c6d;background-color:#00aeef}.mui-btn--accent:hover,.mui-btn--accent:focus,.mui-btn--accent:active{color:#004c6d;background-color:#0abcff}.mui-btn--accent[disabled]:hover,.mui-btn--accent[disabled]:focus,.mui-btn--accent[disabled]:active{color:#004c6d;background-color:#00aeef}.mui-btn--accent.mui-btn--flat{color:#00aeef;background-color:transparent}.mui-btn--accent.mui-btn--flat:hover,.mui-btn--accent.mui-btn--flat:focus,.mui-btn--accent.mui-btn--flat:active{color:#00aeef;background-color:#f2f2f2}.mui-btn--accent.mui-btn--flat[disabled]:hover,.mui-btn--accent.mui-btn--flat[disabled]:focus,.mui-btn--accent.mui-btn--flat[disabled]:active{color:#00aeef;background-color:transparent}.mui-btn--small{height:30.6px;line-height:30.6px;padding:0 16px;font-size:13px}.mui-btn--large{height:54px;line-height:54px;padding:0 26px;font-size:14px}.mui-btn--fab.mui-btn--small{width:44px;height:44px;line-height:44px}.mui-btn--fab.mui-btn--large{width:75px;height:75px;line-height:75px}.mui-radio,.mui-checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.mui-radio>label,.mui-checkbox>label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.mui-radio>label>input[type="radio"],.mui-radio--inline>label>input[type="radio"],.mui-checkbox>label>input[type="checkbox"],.mui-checkbox--inline>label>input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px}.mui-radio+.mui-radio,.mui-checkbox+.mui-checkbox{margin-top:-5px}.mui-radio--inline,.mui-checkbox--inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.mui-radio--inline>input[type="radio"],.mui-radio--inline>input[type="checkbox"],.mui-radio--inline>label>input[type="radio"],.mui-radio--inline>label>input[type="checkbox"],.mui-checkbox--inline>input[type="radio"],.mui-checkbox--inline>input[type="checkbox"],.mui-checkbox--inline>label>input[type="radio"],.mui-checkbox--inline>label>input[type="checkbox"]{margin:4px 0 0;line-height:normal}.mui-radio--inline+.mui-radio--inline,.mui-checkbox--inline+.mui-checkbox--inline{margin-top:0;margin-left:10px}.mui-container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.mui-container:before,.mui-container:after{content:" ";display:table}.mui-container:after{clear:both}@media (min-width: 544px){.mui-container{max-width:570px}}@media (min-width: 768px){.mui-container{max-width:740px}}@media (min-width: 992px){.mui-container{max-width:960px}}@media (min-width: 1200px){.mui-container{max-width:1170px}}.mui-container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.mui-container-fluid:before,.mui-container-fluid:after{content:" ";display:table}.mui-container-fluid:after{clear:both}.mui-divider{display:block;height:1px;background-color:rgba(0,0,0,0.12)}.mui--divider-top{border-top:1px solid rgba(0,0,0,0.12)}.mui--divider-bottom{border-bottom:1px solid rgba(0,0,0,0.12)}.mui--divider-left{border-left:1px solid rgba(0,0,0,0.12)}.mui--divider-right{border-right:1px solid rgba(0,0,0,0.12)}.mui-dropdown{display:inline-block;position:relative}[data-mui-toggle="dropdown"]{animation-duration:0.0001s;animation-name:mui-node-inserted;outline:0}.mui-dropdown__menu{position:absolute;top:100%;left:0;display:none;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fff;border-radius:2px;z-index:1;background-clip:padding-box}.mui-dropdown__menu.mui--is-open{display:block}.mui-dropdown__menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.429;color:rgba(255,255,255,0.87);white-space:nowrap}.mui-dropdown__menu>li>a:hover,.mui-dropdown__menu>li>a:focus{text-decoration:none;color:rgba(242,242,242,0.87);background-color:#eee}.mui-dropdown__menu>.mui--is-disabled>a,.mui-dropdown__menu>.mui--is-disabled>a:hover,.mui-dropdown__menu>.mui--is-disabled>a:focus{color:#eee}.mui-dropdown__menu>.mui--is-disabled>a:hover,.mui-dropdown__menu>.mui--is-disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;cursor:not-allowed}.mui-dropdown__menu--right{left:auto;right:0}@media (min-width: 544px){.mui-form--inline>.mui-textfield{display:inline-block;margin-bottom:0}.mui-form--inline>.mui-radio,.mui-form--inline>.mui-checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.mui-form--inline>.mui-radio>label,.mui-form--inline>.mui-checkbox>label{padding-left:0}.mui-form--inline>.mui-radio>label>input[type="radio"],.mui-form--inline>.mui-checkbox>label>input[type="checkbox"]{position:relative;margin-left:0}.mui-form--inline>.mui-select{display:inline-block}.mui-form--inline>.mui-btn{margin-bottom:0;margin-top:0;vertical-align:bottom}}.mui-row{margin-left:-15px;margin-right:-15px}.mui-row:before,.mui-row:after{content:" ";display:table}.mui-row:after{clear:both}.mui-col-xs-1,.mui-col-sm-1,.mui-col-md-1,.mui-col-lg-1,.mui-col-xs-2,.mui-col-sm-2,.mui-col-md-2,.mui-col-lg-2,.mui-col-xs-3,.mui-col-sm-3,.mui-col-md-3,.mui-col-lg-3,.mui-col-xs-4,.mui-col-sm-4,.mui-col-md-4,.mui-col-lg-4,.mui-col-xs-5,.mui-col-sm-5,.mui-col-md-5,.mui-col-lg-5,.mui-col-xs-6,.mui-col-sm-6,.mui-col-md-6,.mui-col-lg-6,.mui-col-xs-7,.mui-col-sm-7,.mui-col-md-7,.mui-col-lg-7,.mui-col-xs-8,.mui-col-sm-8,.mui-col-md-8,.mui-col-lg-8,.mui-col-xs-9,.mui-col-sm-9,.mui-col-md-9,.mui-col-lg-9,.mui-col-xs-10,.mui-col-sm-10,.mui-col-md-10,.mui-col-lg-10,.mui-col-xs-11,.mui-col-sm-11,.mui-col-md-11,.mui-col-lg-11,.mui-col-xs-12,.mui-col-sm-12,.mui-col-md-12,.mui-col-lg-12{min-height:1px;padding-left:15px;padding-right:15px}.mui-col-xs-1,.mui-col-xs-2,.mui-col-xs-3,.mui-col-xs-4,.mui-col-xs-5,.mui-col-xs-6,.mui-col-xs-7,.mui-col-xs-8,.mui-col-xs-9,.mui-col-xs-10,.mui-col-xs-11,.mui-col-xs-12{float:left}.mui-col-xs-1{width:8.33333%}.mui-col-xs-2{width:16.66667%}.mui-col-xs-3{width:25%}.mui-col-xs-4{width:33.33333%}.mui-col-xs-5{width:41.66667%}.mui-col-xs-6{width:50%}.mui-col-xs-7{width:58.33333%}.mui-col-xs-8{width:66.66667%}.mui-col-xs-9{width:75%}.mui-col-xs-10{width:83.33333%}.mui-col-xs-11{width:91.66667%}.mui-col-xs-12{width:100%}.mui-col-xs-offset-0{margin-left:0%}.mui-col-xs-offset-1{margin-left:8.33333%}.mui-col-xs-offset-2{margin-left:16.66667%}.mui-col-xs-offset-3{margin-left:25%}.mui-col-xs-offset-4{margin-left:33.33333%}.mui-col-xs-offset-5{margin-left:41.66667%}.mui-col-xs-offset-6{margin-left:50%}.mui-col-xs-offset-7{margin-left:58.33333%}.mui-col-xs-offset-8{margin-left:66.66667%}.mui-col-xs-offset-9{margin-left:75%}.mui-col-xs-offset-10{margin-left:83.33333%}.mui-col-xs-offset-11{margin-left:91.66667%}.mui-col-xs-offset-12{margin-left:100%}@media (min-width: 544px){.mui-col-sm-1,.mui-col-sm-2,.mui-col-sm-3,.mui-col-sm-4,.mui-col-sm-5,.mui-col-sm-6,.mui-col-sm-7,.mui-col-sm-8,.mui-col-sm-9,.mui-col-sm-10,.mui-col-sm-11,.mui-col-sm-12{float:left}.mui-col-sm-1{width:8.33333%}.mui-col-sm-2{width:16.66667%}.mui-col-sm-3{width:25%}.mui-col-sm-4{width:33.33333%}.mui-col-sm-5{width:41.66667%}.mui-col-sm-6{width:50%}.mui-col-sm-7{width:58.33333%}.mui-col-sm-8{width:66.66667%}.mui-col-sm-9{width:75%}.mui-col-sm-10{width:83.33333%}.mui-col-sm-11{width:91.66667%}.mui-col-sm-12{width:100%}.mui-col-sm-offset-0{margin-left:0%}.mui-col-sm-offset-1{margin-left:8.33333%}.mui-col-sm-offset-2{margin-left:16.66667%}.mui-col-sm-offset-3{margin-left:25%}.mui-col-sm-offset-4{margin-left:33.33333%}.mui-col-sm-offset-5{margin-left:41.66667%}.mui-col-sm-offset-6{margin-left:50%}.mui-col-sm-offset-7{margin-left:58.33333%}.mui-col-sm-offset-8{margin-left:66.66667%}.mui-col-sm-offset-9{margin-left:75%}.mui-col-sm-offset-10{margin-left:83.33333%}.mui-col-sm-offset-11{margin-left:91.66667%}.mui-col-sm-offset-12{margin-left:100%}}@media (min-width: 768px){.mui-col-md-1,.mui-col-md-2,.mui-col-md-3,.mui-col-md-4,.mui-col-md-5,.mui-col-md-6,.mui-col-md-7,.mui-col-md-8,.mui-col-md-9,.mui-col-md-10,.mui-col-md-11,.mui-col-md-12{float:left}.mui-col-md-1{width:8.33333%}.mui-col-md-2{width:16.66667%}.mui-col-md-3{width:25%}.mui-col-md-4{width:33.33333%}.mui-col-md-5{width:41.66667%}.mui-col-md-6{width:50%}.mui-col-md-7{width:58.33333%}.mui-col-md-8{width:66.66667%}.mui-col-md-9{width:75%}.mui-col-md-10{width:83.33333%}.mui-col-md-11{width:91.66667%}.mui-col-md-12{width:100%}.mui-col-md-offset-0{margin-left:0%}.mui-col-md-offset-1{margin-left:8.33333%}.mui-col-md-offset-2{margin-left:16.66667%}.mui-col-md-offset-3{margin-left:25%}.mui-col-md-offset-4{margin-left:33.33333%}.mui-col-md-offset-5{margin-left:41.66667%}.mui-col-md-offset-6{margin-left:50%}.mui-col-md-offset-7{margin-left:58.33333%}.mui-col-md-offset-8{margin-left:66.66667%}.mui-col-md-offset-9{margin-left:75%}.mui-col-md-offset-10{margin-left:83.33333%}.mui-col-md-offset-11{margin-left:91.66667%}.mui-col-md-offset-12{margin-left:100%}}@media (min-width: 992px){.mui-col-lg-1,.mui-col-lg-2,.mui-col-lg-3,.mui-col-lg-4,.mui-col-lg-5,.mui-col-lg-6,.mui-col-lg-7,.mui-col-lg-8,.mui-col-lg-9,.mui-col-lg-10,.mui-col-lg-11,.mui-col-lg-12{float:left}.mui-col-lg-1{width:8.33333%}.mui-col-lg-2{width:16.66667%}.mui-col-lg-3{width:25%}.mui-col-lg-4{width:33.33333%}.mui-col-lg-5{width:41.66667%}.mui-col-lg-6{width:50%}.mui-col-lg-7{width:58.33333%}.mui-col-lg-8{width:66.66667%}.mui-col-lg-9{width:75%}.mui-col-lg-10{width:83.33333%}.mui-col-lg-11{width:91.66667%}.mui-col-lg-12{width:100%}.mui-col-lg-offset-0{margin-left:0%}.mui-col-lg-offset-1{margin-left:8.33333%}.mui-col-lg-offset-2{margin-left:16.66667%}.mui-col-lg-offset-3{margin-left:25%}.mui-col-lg-offset-4{margin-left:33.33333%}.mui-col-lg-offset-5{margin-left:41.66667%}.mui-col-lg-offset-6{margin-left:50%}.mui-col-lg-offset-7{margin-left:58.33333%}.mui-col-lg-offset-8{margin-left:66.66667%}.mui-col-lg-offset-9{margin-left:75%}.mui-col-lg-offset-10{margin-left:83.33333%}.mui-col-lg-offset-11{margin-left:91.66667%}.mui-col-lg-offset-12{margin-left:100%}}@media (min-width: 1200px){.mui-col-xl-1,.mui-col-xl-2,.mui-col-xl-3,.mui-col-xl-4,.mui-col-xl-5,.mui-col-xl-6,.mui-col-xl-7,.mui-col-xl-8,.mui-col-xl-9,.mui-col-xl-10,.mui-col-xl-11,.mui-col-xl-12{float:left}.mui-col-xl-1{width:8.33333%}.mui-col-xl-2{width:16.66667%}.mui-col-xl-3{width:25%}.mui-col-xl-4{width:33.33333%}.mui-col-xl-5{width:41.66667%}.mui-col-xl-6{width:50%}.mui-col-xl-7{width:58.33333%}.mui-col-xl-8{width:66.66667%}.mui-col-xl-9{width:75%}.mui-col-xl-10{width:83.33333%}.mui-col-xl-11{width:91.66667%}.mui-col-xl-12{width:100%}.mui-col-xl-offset-0{margin-left:0%}.mui-col-xl-offset-1{margin-left:8.33333%}.mui-col-xl-offset-2{margin-left:16.66667%}.mui-col-xl-offset-3{margin-left:25%}.mui-col-xl-offset-4{margin-left:33.33333%}.mui-col-xl-offset-5{margin-left:41.66667%}.mui-col-xl-offset-6{margin-left:50%}.mui-col-xl-offset-7{margin-left:58.33333%}.mui-col-xl-offset-8{margin-left:66.66667%}.mui-col-xl-offset-9{margin-left:75%}.mui-col-xl-offset-10{margin-left:83.33333%}.mui-col-xl-offset-11{margin-left:91.66667%}.mui-col-xl-offset-12{margin-left:100%}}.mui-panel{padding:15px;margin-bottom:20px;border-radius:0;background-color:#212121;box-shadow:0 2px 2px 0 rgba(0,0,0,0.16),0 0px 2px 0 rgba(0,0,0,0.12)}.mui-panel:before,.mui-panel:after{content:" ";display:table}.mui-panel:after{clear:both}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-panel{box-shadow:0 -1px 2px 0 rgba(0,0,0,0.12),-1px 0px 2px 0 rgba(0,0,0,0.12),0 2px 2px 0 rgba(0,0,0,0.16),0 0px 2px 0 rgba(0,0,0,0.12)}}.mui-select{display:block;padding-top:15px;margin-bottom:20px;position:relative}.mui-select:focus{outline:0}.mui-select:focus>select{height:33px;margin-bottom:-1px;border-color:#2196F3;border-width:2px}.mui-select>select{animation-duration:0.0001s;animation-name:mui-node-inserted;display:block;height:32px;width:100%;appearance:none;-webkit-appearance:none;-moz-appearance:none;outline:none;border:none;border-bottom:1px solid rgba(0,0,0,0.26);border-radius:0px;box-shadow:none;background-color:transparent;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNiIgd2lkdGg9IjEwIj48cG9seWdvbiBwb2ludHM9IjAsMCAxMCwwIDUsNiIgc3R5bGU9ImZpbGw6cmdiYSgwLDAsMCwuMjQpOyIvPjwvc3ZnPg==");background-repeat:no-repeat;background-position:right center;cursor:pointer;color:rgba(255,255,255,0.87);font-size:16px;padding:0 25px 0 0}.mui-select>select::-ms-expand{display:none}.mui-select>select:focus{outline:0;height:33px;margin-bottom:-1px;border-color:#2196F3;border-width:2px}.mui-select>select:disabled{color:rgba(0,0,0,0.38);cursor:not-allowed;background-color:transparent;opacity:1}.mui-select__menu{position:absolute;z-index:2;min-width:100%;overflow-y:auto;padding:8px 0;background-color:#fff;font-size:16px}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mui-select__menu{border-left:1px solid rgba(0,0,0,0.12);border-top:1px solid rgba(0,0,0,0.12)}}.mui-select__menu>div{padding:0 22px;height:42px;line-height:42px;cursor:pointer;white-space:nowrap}.mui-select__menu>div:hover{background-color:#E0E0E0}.mui-select__menu>div.mui--is-selected{background-color:#eee}th{text-align:left}.mui-table{width:100%;max-width:100%;margin-bottom:20px}.mui-table>thead>tr>th,.mui-table>thead>tr>td,.mui-table>tbody>tr>th,.mui-table>tbody>tr>td,.mui-table>tfoot>tr>th,.mui-table>tfoot>tr>td{padding:10px;line-height:1.429}.mui-table>thead>tr>th{border-bottom:2px solid rgba(0,0,0,0.12);font-weight:700}.mui-table>tbody+tbody{border-top:2px solid rgba(0,0,0,0.12)}.mui-table.mui-table--bordered>tbody>tr>td{border-bottom:1px solid rgba(0,0,0,0.12)}.mui-tabs__bar{list-style:none;padding-left:0;margin-bottom:0;background-color:transparent;white-space:nowrap;overflow-x:auto}.mui-tabs__bar>li{display:inline-block}.mui-tabs__bar>li>a{display:block;white-space:nowrap;text-transform:uppercase;font-weight:500;font-size:14px;color:rgba(255,255,255,0.87);cursor:default;height:48px;line-height:48px;padding-left:24px;padding-right:24px;user-select:none}.mui-tabs__bar>li>a:hover{text-decoration:none}.mui-tabs__bar>li.mui--is-active{border-bottom:2px solid #2196F3}.mui-tabs__bar>li.mui--is-active>a{color:#2196F3}.mui-tabs__bar.mui-tabs__bar--justified{display:table;width:100%;table-layout:fixed}.mui-tabs__bar.mui-tabs__bar--justified>li{display:table-cell}.mui-tabs__bar.mui-tabs__bar--justified>li>a{text-align:center;padding-left:0px;padding-right:0px}.mui-tabs__pane{display:none}.mui-tabs__pane.mui--is-active{display:block}[data-mui-toggle="tab"]{animation-duration:0.0001s;animation-name:mui-node-inserted}.mui-textfield{display:block;padding-top:15px;margin-bottom:20px;position:relative}.mui-textfield>label{position:absolute;top:0;display:block;width:100%;color:rgba(0,0,0,0.54);font-size:12px;font-weight:400;line-height:15px;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}.mui-textfield>textarea{padding-top:5px}.mui-textfield>input,.mui-textfield>textarea{display:block}.mui-textfield>input:focus ~ label,.mui-textfield>textarea:focus ~ label{color:#2196F3}.mui-textfield--float-label>label{position:absolute;transform:translate(0px, 15px);font-size:16px;line-height:32px;color:rgba(0,0,0,0.26);text-overflow:clip;cursor:text;pointer-events:none}.mui-textfield--float-label>input:focus ~ label,.mui-textfield--float-label>textarea:focus ~ label{transform:translate(0px, 0px);font-size:12px;line-height:15px;text-overflow:ellipsis}.mui-textfield--float-label>input:not(:focus).mui--is-not-empty ~ label,.mui-textfield--float-label>input:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield--float-label>input:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield--float-label>textarea:not(:focus).mui--is-not-empty ~ label,.mui-textfield--float-label>textarea:not(:focus)[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield--float-label>textarea:not(:focus):not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label{color:rgba(0,0,0,0.54);font-size:12px;line-height:15px;transform:translate(0px, 0px);text-overflow:ellipsis}.mui-textfield--wrap-label{display:table;width:100%;padding-top:0px}.mui-textfield--wrap-label:not(.mui-textfield--float-label)>label{display:table-header-group;position:static;white-space:normal;overflow-x:visible}.mui-textfield>input,.mui-textfield>textarea{animation-duration:0.0001s;animation-name:mui-node-inserted;display:block;background-color:transparent;color:rgba(255,255,255,0.87);border:none;border-bottom:1px solid rgba(0,0,0,0.26);outline:none;width:100%;font-size:16px;padding:0;box-shadow:none;border-radius:0px;background-image:none}.mui-textfield>input:focus,.mui-textfield>textarea:focus{border-color:#2196F3;border-width:2px}.mui-textfield>input:disabled,.mui-textfield>input:read-only,.mui-textfield>textarea:disabled,.mui-textfield>textarea:read-only{cursor:not-allowed;background-color:transparent;opacity:1}.mui-textfield>input::placeholder,.mui-textfield>textarea::placeholder{color:rgba(0,0,0,0.26);opacity:1}.mui-textfield>input{height:32px}.mui-textfield>input:focus{height:33px;margin-bottom:-1px}.mui-textfield>textarea{min-height:64px}.mui-textfield>textarea[rows]:not([rows="2"]):focus{margin-bottom:-1px}.mui-textfield>input:focus{height:33px;margin-bottom:-1px}.mui-textfield>input:invalid:not(:focus):not(:required),.mui-textfield>input:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty,.mui-textfield>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:invalid:not(:focus):not(:required),.mui-textfield>textarea:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>textarea:invalid:not(:focus):required.mui--is-empty.mui--is-dirty,.mui-textfield>textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:not(:required),.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty,.mui-textfield>input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:not(:focus).mui--is-invalid:not(:required),.mui-textfield>textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty,.mui-textfield>textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty){border-color:#F44336;border-width:2px}.mui-textfield>input:invalid:not(:focus):not(:required),.mui-textfield>input:invalid:not(:focus):required.mui--is-not-empty,.mui-textfield>input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty,.mui-textfield>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:not(:required),.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-not-empty,.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty,.mui-textfield>input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty),.mui-textfield>input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty){height:33px;margin-bottom:-1px}.mui-textfield>input:invalid:not(:focus):not(:required) ~ label,.mui-textfield>input:invalid:not(:focus):required.mui--is-not-empty ~ label,.mui-textfield>input:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>input:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>textarea:invalid:not(:focus):not(:required) ~ label,.mui-textfield>textarea:invalid:not(:focus):required.mui--is-not-empty ~ label,.mui-textfield>textarea:invalid:not(:focus):required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>textarea:invalid:not(:focus):required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>input:not(:focus).mui--is-invalid:not(:required) ~ label,.mui-textfield>input:not(:focus).mui--is-invalid:required.mui--is-not-empty ~ label,.mui-textfield>input:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>input:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>textarea:not(:focus).mui--is-invalid:not(:required) ~ label,.mui-textfield>textarea:not(:focus).mui--is-invalid:required.mui--is-not-empty ~ label,.mui-textfield>textarea:not(:focus).mui--is-invalid:required[value]:not([value=""]):not(.mui--is-empty):not(.mui--is-not-empty) ~ label,.mui-textfield>textarea:not(:focus).mui--is-invalid:required:not(:empty):not(.mui--is-empty):not(.mui--is-not-empty) ~ label{color:#F44336}.mui-textfield:not(.mui-textfield--float-label)>input:invalid:not(:focus):required.mui--is-empty.mui--is-dirty ~ label,.mui-textfield:not(.mui-textfield--float-label)>textarea:invalid:not(:focus):required.mui--is-empty.mui--is-dirty ~ label,.mui-textfield:not(.mui-textfield--float-label)>input:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty ~ label,.mui-textfield:not(.mui-textfield--float-label)>textarea:not(:focus).mui--is-invalid:required.mui--is-empty.mui--is-dirty ~ label{color:#F44336}@keyframes mui-node-inserted{from{opacity:0.99}to{opacity:1}}.mui--no-transition{transition:none !important}.mui--no-user-select{user-select:none}.mui-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.mui--text-left{text-align:left !important}.mui--text-right{text-align:right !important}.mui--text-center{text-align:center !important}.mui--text-justify{text-align:justify !important}.mui--text-nowrap{white-space:nowrap !important}.mui--align-baseline{vertical-align:baseline !important}.mui--align-top{vertical-align:top !important}.mui--align-middle{vertical-align:middle !important}.mui--align-bottom{vertical-align:bottom !important}.mui--text-dark{color:rgba(0,0,0,0.87)}.mui--text-dark-secondary{color:rgba(0,0,0,0.54)}.mui--text-dark-hint{color:rgba(0,0,0,0.38)}.mui--text-light{color:#fff}.mui--text-light-secondary{color:rgba(255,255,255,0.7)}.mui--text-light-hint{color:rgba(255,255,255,0.3)}.mui--text-accent{color:rgba(0,174,239,0.87)}.mui--text-accent-secondary{color:rgba(0,174,239,0.54)}.mui--text-accent-hint{color:rgba(0,174,239,0.38)}.mui--text-black{color:#000}.mui--text-white{color:#fff}.mui--text-danger{color:#F44336}.mui-list--unstyled{padding-left:0;list-style:none}.mui-list--inline{padding-left:0;list-style:none;margin-left:-5px}.mui-list--inline>li{display:inline-block;padding-left:5px;padding-right:5px}.mui--z1,.mui-dropdown__menu,.mui-select__menu{box-shadow:0 1px 3px rgba(0,0,0,0.12),0 1px 2px rgba(0,0,0,0.24)}.mui--z2{box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23)}.mui--z3{box-shadow:0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23)}.mui--z4{box-shadow:0 14px 28px rgba(0,0,0,0.25),0 10px 10px rgba(0,0,0,0.22)}.mui--z5{box-shadow:0 19px 38px rgba(0,0,0,0.3),0 15px 12px rgba(0,0,0,0.22)}.mui--clearfix:before,.mui--clearfix:after{content:" ";display:table}.mui--clearfix:after{clear:both}.mui--pull-right{float:right !important}.mui--pull-left{float:left !important}.mui--hide{display:none !important}.mui--show{display:block !important}.mui--invisible{visibility:hidden}.mui--overflow-hidden{overflow:hidden !important}.mui--overflow-hidden-x{overflow-x:hidden !important}.mui--overflow-hidden-y{overflow-y:hidden !important}.mui--visible-xs-block,.mui--visible-xs-inline,.mui--visible-xs-inline-block,.mui--visible-sm-block,.mui--visible-sm-inline,.mui--visible-sm-inline-block,.mui--visible-md-block,.mui--visible-md-inline,.mui--visible-md-inline-block,.mui--visible-lg-block,.mui--visible-lg-inline,.mui--visible-lg-inline-block,.mui--visible-xl-block,.mui--visible-xl-inline,.mui--visible-xl-inline-block{display:none !important}@media (max-width: 543px){.mui-visible-xs{display:block !important}table.mui-visible-xs{display:table}tr.mui-visible-xs{display:table-row !important}th.mui-visible-xs,td.mui-visible-xs{display:table-cell !important}.mui--visible-xs-block{display:block !important}.mui--visible-xs-inline{display:inline !important}.mui--visible-xs-inline-block{display:inline-block !important}}@media (min-width: 544px) and (max-width: 767px){.mui-visible-sm{display:block !important}table.mui-visible-sm{display:table}tr.mui-visible-sm{display:table-row !important}th.mui-visible-sm,td.mui-visible-sm{display:table-cell !important}.mui--visible-sm-block{display:block !important}.mui--visible-sm-inline{display:inline !important}.mui--visible-sm-inline-block{display:inline-block !important}}@media (min-width: 768px) and (max-width: 991px){.mui-visible-md{display:block !important}table.mui-visible-md{display:table}tr.mui-visible-md{display:table-row !important}th.mui-visible-md,td.mui-visible-md{display:table-cell !important}.mui--visible-md-block{display:block !important}.mui--visible-md-inline{display:inline !important}.mui--visible-md-inline-block{display:inline-block !important}}@media (min-width: 992px) and (max-width: 1199px){.mui-visible-lg{display:block !important}table.mui-visible-lg{display:table}tr.mui-visible-lg{display:table-row !important}th.mui-visible-lg,td.mui-visible-lg{display:table-cell !important}.mui--visible-lg-block{display:block !important}.mui--visible-lg-inline{display:inline !important}.mui--visible-lg-inline-block{display:inline-block !important}}@media (min-width: 1200px){.mui-visible-xl{display:block !important}table.mui-visible-xl{display:table}tr.mui-visible-xl{display:table-row !important}th.mui-visible-xl,td.mui-visible-xl{display:table-cell !important}.mui--visible-xl-block{display:block !important}.mui--visible-xl-inline{display:inline !important}.mui--visible-xl-inline-block{display:inline-block !important}}@media (max-width: 543px){.mui--hidden-xs{display:none !important}}@media (min-width: 544px) and (max-width: 767px){.mui--hidden-sm{display:none !important}}@media (min-width: 768px) and (max-width: 991px){.mui--hidden-md{display:none !important}}@media (min-width: 992px) and (max-width: 1199px){.mui--hidden-lg{display:none !important}}@media (min-width: 1200px){.mui--hidden-xl{display:none !important}}body.mui-body--scroll-lock{overflow:hidden !important}#mui-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999999;background-color:rgba(0,0,0,0.2);overflow:auto}.mui-ripple-effect{position:absolute;border-radius:50%;pointer-events:none;opacity:0;animation:mui-ripple-animation 2s}@keyframes mui-ripple-animation{from{transform:scale(1);opacity:0.4}to{transform:scale(100);opacity:0}}.mui-btn>.mui-ripple-effect{background-color:#a6a6a6}.mui-btn--primary>.mui-ripple-effect{background-color:#fff}.mui-btn--dark>.mui-ripple-effect{background-color:#fff}.mui-btn--danger>.mui-ripple-effect{background-color:#fff}.mui-btn--accent>.mui-ripple-effect{background-color:#fff}.mui-btn--flat>.mui-ripple-effect{background-color:#a6a6a6}.mui--text-display4{font-weight:300;font-size:112px;line-height:112px}.mui--text-display3{font-weight:400;font-size:56px;line-height:56px}.mui--text-display2{font-weight:400;font-size:45px;line-height:48px}.mui--text-display1,h1{font-weight:400;font-size:34px;line-height:40px}.mui--text-headline,h2{font-weight:400;font-size:24px;line-height:32px}.mui--text-title,h3{font-weight:400;font-size:20px;line-height:28px}.mui--text-subhead,h4{font-weight:400;font-size:16px;line-height:24px}.mui--text-body2,h5{font-weight:500;font-size:14px;line-height:24px}.mui--text-body1{font-weight:400;font-size:14px;line-height:20px}.mui--text-caption{font-weight:400;font-size:12px;line-height:16px}.mui--text-menu{font-weight:500;font-size:13px;line-height:17px}.mui--text-button{font-weight:500;font-size:14px;line-height:18px;text-transform:uppercase} diff --git a/platforms/android/assets/www/index.html b/platforms/android/assets/www/index.html index 10cc4ad..d482467 100644 --- a/platforms/android/assets/www/index.html +++ b/platforms/android/assets/www/index.html @@ -92,6 +92,7 @@ + @@ -118,6 +119,10 @@ src="js/device/CC2650/cc2650_humidity.js"> + + + diff --git a/platforms/android/assets/www/js/device/CC2650/cc2650_accelerometer.js b/platforms/android/assets/www/js/device/CC2650/cc2650_accelerometer.js index 9d338f4..38b5d44 100644 --- a/platforms/android/assets/www/js/device/CC2650/cc2650_accelerometer.js +++ b/platforms/android/assets/www/js/device/CC2650/cc2650_accelerometer.js @@ -109,7 +109,7 @@ CC2650_ACCEL = function(p) { this.data.mag.y = this.storeData(calcData.mag.y, this.data.mag.y); this.data.mag.z = this.storeData(calcData.mag.z, this.data.mag.z); - // Console.log(JSON.stringify(this.data)); + // console.log(JSON.stringify(this.data)); // Console.log(this.state); }; @@ -298,9 +298,9 @@ CC2650_ACCEL = function(p) { var svg = this.generateBlankGraphBase(_subID,{width: '700',height: 150}); - svg = this.graphAddLine(svg, xlineID, 'rgba(255,0,0,0.5)'); - svg = this.graphAddLine(svg, ylineID, 'rgba(0,255,0,0.5)'); - svg = this.graphAddLine(svg, zlineID, 'rgba(0,0,255,0.5)'); + svg = this.graphAddLine(svg, xlineID, 'rgba(255,0,99,1)'); + svg = this.graphAddLine(svg, ylineID, 'rgba(46,255,0,1)'); + svg = this.graphAddLine(svg, zlineID, 'rgba(0,191,255,1)'); return svg; @@ -338,7 +338,7 @@ CC2650_ACCEL = function(p) { elm.append($('
', { class: 'mui-col-xs-8 mui--text-title mui-ellipsis-2', text: title})); - elm.append($('
', {class: 'mui-col-xs-4 mui--text-right'}).append(button)); + // elm.append($('
', {class: 'mui-col-xs-4 mui--text-right'}).append(button)); frame.append(elm); diff --git a/platforms/android/assets/www/js/device/CC2650/cc2650_thermopile.js b/platforms/android/assets/www/js/device/CC2650/cc2650_thermopile.js index 20ebbf9..335ed4e 100644 --- a/platforms/android/assets/www/js/device/CC2650/cc2650_thermopile.js +++ b/platforms/android/assets/www/js/device/CC2650/cc2650_thermopile.js @@ -87,10 +87,49 @@ var CC2650_TMP = function(p) { }; this.animateGraph = function() { - this.simpleGraph(this.data.temp, 'temp'); - this.simpleGraph(this.data.ambient, 'ambient'); + // This.simpleGraph(this.data.temp, 'temp'); + // debugger; + var arcTemp = this.frameID + 'temp-arc'; + var arcAmbient = this.frameID + 'ambient-arc'; + this.updateArc(this.data.temp, 'temp' , arcTemp); + + this.updateArc(this.data.ambient, 'ambient' , arcAmbient); + + //This.simpleGraph(this.data.ambient, 'ambient'); }; + this.updateArc = function(data, subID, elmID) { + + + var ceilingLimit; + var _subID; + var _data; + var label; + + _data = data || this.data; + + _subID = subID || ''; + + if (_data.length > 0) { + + ceilingLimit = 50; + + var latest = _data[_data.length - 1]; + var scale = 100 / ceilingLimit; + var arcP = scale * latest; + // Var xstep = (280 - 46) / 100; + + label = this.frameID + subID + '-label'; + document.getElementById(elmID).setAttribute('d', this.describeArc(150, 150, 100, 0, this.setArc(arcP))); + // document.getElementById(label).innerText(latest.toFixed(2) + 'ºc'); + } + + + + }; + + + this.insertFrame = function() { var liSetting; @@ -104,7 +143,28 @@ var CC2650_TMP = function(p) { var temp = this.frameID + '-t'; var amb = this.frameID + '-a'; - var row = $('
', {class: 'mui-row'}); + + + var arcB = this.frameID + 'temp-arcB'; + var arcTemp = this.frameID + 'temp-arc'; + + var ambientArcB = this.frameID + 'ambient-arcB'; + var arcAmbient = this.frameID + 'ambient-arc'; + + var settings = {data: {baseID: this.frameID}}; + var html = new EJS({url: './partials/cc2650_thermopile_dial.ejs'}).render(settings); + + this.$id.append(html); + +debugger; + document.getElementById(arcB).setAttribute('d', this.describeArc(150, 150, 100, 0, 240)); + document.getElementById(arcTemp).setAttribute('d', this.describeArc(150, 150, 100, 0, this.setArc(0))); + + document.getElementById(ambientArcB).setAttribute('d', this.describeArc(150, 150, 100, 0, 240)); + document.getElementById(arcAmbient).setAttribute('d', this.describeArc(150, 150, 100, 0, this.setArc(0))); + + + /*Var row = $('
', {class: 'mui-row'}); $('
', {class: 'mui-col-xs-3 mui--text-accent mui--text-right', text: 'Temp:'}).appendTo(row); @@ -152,7 +212,7 @@ var CC2650_TMP = function(p) { this.$id.append($('
',{class: 'mui-tabs__pane',id: (amb + '-pane')}).append(blankChart)); } - +*/ this.$result.temp = $('#' + temp); diff --git a/platforms/android/assets/www/js/standards/capability.js b/platforms/android/assets/www/js/standards/capability.js index 156d349..5020b2c 100644 --- a/platforms/android/assets/www/js/standards/capability.js +++ b/platforms/android/assets/www/js/standards/capability.js @@ -242,6 +242,70 @@ CAPABILITY.prototype.animateGraph = function() { }; +CAPABILITY.prototype.polarToCartesian = function(centerX, centerY, radius, angleInDegrees) { + var angleInRadians = (angleInDegrees - 90) * Math.PI / 180.0; + + return { + x: centerX + (radius * Math.cos(angleInRadians)), + y: centerY + (radius * Math.sin(angleInRadians)) + }; +}; + + +CAPABILITY.prototype.describeArc = function(x, y, radius, startAngle, endAngle) { + + var start = this.polarToCartesian(x, y, radius, endAngle); + var end = this.polarToCartesian(x, y, radius, startAngle); + + var arcSweep = endAngle - startAngle <= 180 ? '0' : '1'; + + var d = [ + 'M', start.x, start.y, + 'A', radius, radius, 0, arcSweep, 0, end.x, end.y + ].join(' '); + + return d; + }; + +CAPABILITY.prototype.setArc = function(percent) { + return (240 / 100) * percent; +}; + +CAPABILITY.prototype.updateArc = function(data, subID, elmID) { + + + var ceilingLimit; + var ceiling; + var _subID; + var _data; + + _data = data || this.data; + + _subID = subID || ''; + + if (_data.length > 0) { + + ceiling = _data.reduce(function(p, v) { + return (Math.abs(p) > Math.abs(v) ? Math.abs(p) : Math.abs(v)); + }); + + ceilingLimit = (Math.ceil((Math.round(ceiling) + 1) / 10) * 10); + if (ceilingLimit > 1000) { + ceilingLimit = (Math.ceil((Math.round(ceiling) + 1) / 50) * 50); + } + + var latest = _data[_data.length-1]; + var scale = 100 / ceilingLimit; + var arcP = scale * latest; + // Var xstep = (280 - 46) / 100; + + document.getElementById(elmID).setAttribute('d', this.describeArc(150, 150, 100, 0, this.setArc(arcP))); + } + + + }; + + CAPABILITY.prototype.simpleGraph = function(data, subID) { var ceilingLimit; @@ -272,8 +336,8 @@ CAPABILITY.prototype.simpleGraph = function(data, subID) { var calcArray = []; -/* - var ceilingLimit = Math.floor(ceiling / 10) * 10; + /* + Var ceilingLimit = Math.floor(ceiling / 10) * 10; if (ceilingLimit < ceiling) { ceilingLimit = Math.floor((ceiling + (ceiling * 0.25)) / 10) * 10; }