diff --git a/.cfignore b/.cfignore old mode 100755 new mode 100644 index 3c3629e6..b512c09d --- a/.cfignore +++ b/.cfignore @@ -1 +1 @@ -node_modules +node_modules \ No newline at end of file diff --git a/.gitignore b/.gitignore index 996415b9..28f1ba75 100755 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,2 @@ node_modules -.DS_Store -VCAP_SERVICES.json -run.sh -env*.sh +.DS_Store \ No newline at end of file diff --git a/LICENSE b/LICENSE deleted file mode 100755 index 7a4a3ea2..00000000 --- a/LICENSE +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. \ No newline at end of file diff --git a/README.md b/README.md index 4f7ecbb2..e93c871f 100755 --- a/README.md +++ b/README.md @@ -1,15 +1,10 @@ -# Tone Analyzer Nodejs Starter Application +# Tone Analyzer Node.js Starter Application The IBM Watson [Tone Analyzer][service_url] service is a cognitive linguistic analysis service used to monitor and identify tones within a piece of writing. It detects three types of tones, including emotions (negative emotions, cheerfulness, anger), social propensities (open, agreeable, and conscientious), and writing styles (analytical, confident and tentative) from people’s writings. Furthermore, it helps people understand how the tones are derived from various linguistic signals. It also offers actionable suggestions to revise the writings for desirable communication tones. -

- -

- - Give it a try! Click the button below to fork into IBM DevOps Services and deploy your own copy of this application on Bluemix. -[![Deploy to Bluemix](https://bluemix.net/deploy/button.png)](https://bluemix.net/deploy) +[![Deploy to Bluemix](https://bluemix.net/deploy/button.png)](https://bluemix.net/deploy?repository=https://github.com/watson-developer-cloud/tone-analyzer-nodejs) ## Getting Started @@ -40,7 +35,7 @@ applications: 5. Create the Personality Insights service in Bluemix ```sh - $ cf create-service tone_analyzer experimental tone-analyzer-service + $ cf create-service tone_analyzer beta tone-analyzer-service ``` 6. Push it live! @@ -73,7 +68,7 @@ See the full [Getting Started][getting_started] documentation for more details, }, "label": "tone_analyzer", "name": "tone-analyzer-service", - "plan": "experimental" + "plan": "beta" }] } } @@ -99,7 +94,6 @@ To troubleshoot your Bluemix app the main useful source of information are the l ## License This sample code is licensed under Apache 2.0. Full license text is available in [LICENSE](LICENSE). - This sample code uses d3 and jquery, both distributed under a MIT license. ## Contributing @@ -111,4 +105,4 @@ To troubleshoot your Bluemix app the main useful source of information are the l [service_url]: http://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/tone-analyzer.html [cloud_foundry]: https://github.com/cloudfoundry/cli [getting_started]: http://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/doc/getting_started/ -[sign_up]: https://apps.admin.ibmcloud.com/manage/trial/bluemix.html?cm_mmc=WatsonDeveloperCloud-_-LandingSiteGetStarted-_-x-_-CreateAnAccountOnBluemixCLI +[sign_up]: https://console.ng.bluemix.net/registration/ diff --git a/app.js b/app.js index 5bf459d5..942913f7 100755 --- a/app.js +++ b/app.js @@ -16,31 +16,27 @@ 'use strict'; -var express = require('express'), - app = express(), - bluemix = require('./config/bluemix'), - extend = require('util')._extend, - watson = require('watson-developer-cloud'); +var express = require('express'), + app = express(), + watson = require('watson-developer-cloud'); // Bootstrap application settings require('./config/express')(app); -var credentials = extend({ - version: 'v2-experimental', - username: '',// - password: ''// -}, bluemix.getServiceCreds('tone_analyzer')); - - // Create the service wrapper -var toneAnalyzer = watson.tone_analyzer(credentials); +var toneAnalyzer = watson.tone_analyzer({ + url: 'https://gateway.watsonplatform.net/tone-analyzer-beta/api/', + username: '', + password: '', + version_date: '2016-11-02', + version: 'v3-beta' +}); -// render index page app.get('/', function(req, res) { res.render('index'); }); -app.post('/tone', function(req, res, next) { +app.post('/api/tone', function(req, res, next) { toneAnalyzer.tone(req.body, function(err, data) { if (err) return next(err); @@ -49,16 +45,7 @@ app.post('/tone', function(req, res, next) { }); }); -app.get('/synonyms', function(req, res, next) { - toneAnalyzer.synonym(req.query, function(err, data) { - if (err) - return next(err); - else - return res.json(data); - }); -}); - -// error-handler settings +// error-handler application settings require('./config/error-handler')(app); var port = process.env.VCAP_APP_PORT || 3000; diff --git a/config/bluemix.js b/config/bluemix.js deleted file mode 100644 index 03fdee22..00000000 --- a/config/bluemix.js +++ /dev/null @@ -1,42 +0,0 @@ -/** - * Copyright 2015 IBM Corp. All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -'use strict'; - -/** - * if VCAP_SERVICES exists then it returns - * username, password and url - * for the first service that stars with 'name' or {} otherwise - * @param String name, service name - * @return [Object] the service credentials or {} if - * name is not found in VCAP_SERVICES - */ -module.exports.getServiceCreds = function(name) { - if (process.env.VCAP_SERVICES) { - var services = JSON.parse(process.env.VCAP_SERVICES); - for (var service_name in services) { - if (service_name.indexOf(name) === 0) { - var service = services[service_name][0]; - return { - url: service.credentials.url, - username: service.credentials.username, - password: service.credentials.password - }; - } - } - } - return {}; -}; diff --git a/config/error-handler.js b/config/error-handler.js old mode 100644 new mode 100755 index 94a6c2f5..9f66a99b --- a/config/error-handler.js +++ b/config/error-handler.js @@ -18,6 +18,14 @@ module.exports = function (app) { + // catch 404 and forward to error handler + app.use(function(req, res, next) { + var err = new Error('Not Found'); + err.code = 404; + err.message = 'Not Found'; + next(err); + }); + // error handler app.use(function(err, req, res, next) { var error = { diff --git a/config/express.js b/config/express.js old mode 100644 new mode 100755 index 7ac65c4c..9baa3478 --- a/config/express.js +++ b/config/express.js @@ -1,5 +1,5 @@ /** - * Copyright 2015 IBM Corp. All Rights Reserved. + * Copyright 2014 IBM Corp. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,23 +18,22 @@ // Module dependencies var express = require('express'), - errorhandler = require('errorhandler'), bodyParser = require('body-parser'); module.exports = function (app) { + app.enable('trust proxy'); // Configure Express + app.set('view engine', 'ejs'); + require('ejs').delimiter = '$'; app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); // Setup static public directory app.use(express.static(__dirname + '/../public')); - app.set('view engine', 'jade'); - app.set('views', __dirname + '/../views'); - // Add error handling in dev - if (!process.env.VCAP_SERVICES) { - app.use(errorhandler()); - } + // Only loaded when SECURE_EXPRESS is `true` + if (process.env.SECURE_EXPRESS) + require('./security')(app); -}; +}; \ No newline at end of file diff --git a/config/security.js b/config/security.js new file mode 100644 index 00000000..680e55a6 --- /dev/null +++ b/config/security.js @@ -0,0 +1,45 @@ +/** + * Copyright 2015 IBM Corp. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +'use strict'; + +// security.js +var secure = require('express-secure-only'), + rateLimit = require('express-rate-limit'), + helmet = require('helmet'); + +module.exports = function (app) { + app.enable('trust proxy'); + + // 1. redirects http to https + app.use(secure()); + + // 2. helmet with defaults + app.use(helmet()); + + // 3. rate limiting + var limiter = rateLimit({ + windowMs: 30 * 1000, // seconds + delayMs: 0, + max: 6, + message: JSON.stringify({ + error:'Too many requests, please try again in 30 seconds.', + code: 429 + }), + }); + + app.use('/api/', limiter); +}; diff --git a/manifest.yml b/manifest.yml old mode 100755 new mode 100644 index bbef3011..618d02d8 --- a/manifest.yml +++ b/manifest.yml @@ -1,14 +1,15 @@ --- declared-services: - tone-analyzer-service-experimental: + tone-analyzer-service: label: tone_analyzer - plan: experimental + plan: beta applications: - services: - - tone-analyzer-service-experimental + - tone-analyzer-service name: tone-analyzer-demo command: node app.js path: . memory: 512MB env: NODE_ENV: production + SECURE_EXPRESS: 1 \ No newline at end of file diff --git a/package.json b/package.json index 3c8de161..46db57b1 100644 --- a/package.json +++ b/package.json @@ -1,41 +1,23 @@ { - "name": "ToneAnalyzerNodejsStarterApp", - "version": "0.1.1", - "description": "A sample nodejs app for Bluemix that use the Tone Analyzer service", - "dependencies": { - "body-parser": "~1.14.1", - "errorhandler": "~1.4.2", - "express": "~4.13.3", - "jade": "~1.11.0", - "watson-developer-cloud": "~1.0.6" - }, - "engines": { - "node": ">=0.10.38" - }, + "name": "tone-analyzer-nodejs", + "version": "3.1.1", + "description": "Web application that uses Tone Analyzer to get the tone from a text message", "repository": { "type": "git", "url": "https://github.com/watson-developer-cloud/tone-analyzer-nodejs.git" }, "author": "IBM Corp.", "contributors": [ - { - "name": "Hernan Badenes", - "email": "hbadenes@ar.ibm.com" - }, - { - "name": "Liang Gou", - "email": "lgou@us.ibm.com" - }, { "name": "James Zhang", "email": "jzhang300@us.ibm.com" }, { - "name": "Kathryn McElroy", - "email": "kemcelroy@us.ibm.com" + "name": "Eva Xiaohui Luo", + "email": "evaluo_xhl@us.ibm.com" }, { - "name": "German Attanasio", + "name": "German Attanasio Ruiz", "email": "germanatt@us.ibm.com" } ], @@ -45,5 +27,14 @@ }, "scripts": { "start": "node app.js" + }, + "dependencies": { + "body-parser": "^1.13.2", + "ejs": "^2.3.4", + "errorhandler": "^1.4.1", + "express": "^4.12.2", + "express-rate-limit": "^2.1.0", + "express-secure-only": "^0.2.1", + "watson-developer-cloud": "^1.2.2" } } diff --git a/public/css/banner.css b/public/css/banner.css deleted file mode 100644 index ba753fad..00000000 --- a/public/css/banner.css +++ /dev/null @@ -1,161 +0,0 @@ -.img-container img { - width: 130px; - height: auto; -} - -.service-container { - margin: auto auto 30px auto; -} -.service-header { - padding: 0px; -} - -.top-nav { - background-color: #323232; - padding-top: 15px; -} -.top-nav .heading { - margin: 0px; - color: #FDFDFD; - font-weight: 200; - font-size: 19px; -} -.top-nav .heading span { - font-weight: 500; -} -.top-nav a { - font-size: 14px; - font-weight: 300; - text-decoration: underline; - color: white; -} -.top-nav a:hover { - color: #E0E0E0; -} -.top-nav .right { - float: right; - margin-right: 20px; -} -.top-nav .heading { - float: left; -} -.top-nav .top-nav--logo-link:hover .top-nav--logo-wdc { - color: #5aaafa; -} -.top-nav--nav { - display: inline-block; - float: right; -} -.top-nav--nav-item { - display: inline-block; - float: left; - margin-left: 1.8rem; - padding-bottom: 1.5rem; -} -.top-nav--nav-item a { - text-decoration: none; - color: #c7c7c7; - font-size: 16px; - font-weight: 400; -} -.top-nav--nav-item a:hover { - color: white; - padding-bottom: calc(1.5rem - 2px); - border-bottom: 4px solid #5aaafa; -} -@media screen and (max-width: 630px) { - .top-nav .heading { - float: none; - } - .top-nav--nav { - display: block; - float: none; - margin-bottom: 0.75rem; - margin-top: 0.75rem; - } - .top-nav--nav-item { - display: block; - float: none; - margin-left: 0rem; - padding-top: 1rem; - padding-bottom: 1rem; - } - .top-nav--nav-item a:hover { - border-bottom: none; - } -} -.header { - padding-bottom:0px; - margin-bottom: 0px; - position: relative; -} -.header h2 { - font-weight: 400; -} -.header h3 { - color: #00b2ef; - font-weight: 400; -} - -.avatar { - padding-right: 0px; - padding-left: 0px; -} - -.header a { - font-size: 14px; - font-weight: 300; - text-decoration: underline; - color: #404041; - display: block; - margin-bottom: 3px; -} -.header a:hover { - color: #777677; -} - -.left { - font-weight: 400; - color: #fdfdfd; - font-size: 1rem; -} - -.header { - background-color: #f4f4f4!important; - border-bottom: 2px solid #ececec!important; -} - -.service-title { - color: #325c80!important; - font-weight: 700; - margin-bottom: 2.5rem; -} - -.service-icon { - margin-top: 1.5rem!important; -} - -.resource { - font-size: 1.5rem; -} - -.link-icon { - width: 1.5rem; - margin-right: 0.5rem; -} - -.resource-item-container { - margin-top: 1rem; - margin-bottom: 2.5rem; - padding-left: 2rem; -} - -.resource-item { - color: #A53725!important; - display: inline-block!important; - margin-right: 2rem; -} - -.no-padding { - padding-left: 0px!important; -} \ No newline at end of file diff --git a/public/css/style.css b/public/css/style.css old mode 100755 new mode 100644 index 21e75084..1ba296d4 --- a/public/css/style.css +++ b/public/css/style.css @@ -1,242 +1,2408 @@ -/* style.css - * This file provides css styles. - */ +@charset "UTF-8"; +body, .base--input, +.base--STYLED input:not([type]), .base--color-input, +.base--STYLED input[type="color"], .base--date-input, +.base--STYLED input[type="date"], .base--datetime-local-input, +.base--STYLED input[type="datetime-local"], .base--email-input, +.base--STYLED input[type="email"], .base--file-input, +.base--STYLED input[type="file"], .base--hidden-input, +.base--STYLED input[type="hidden"], .base--month-input, +.base--STYLED input[type="month"], .base--number-input, +.base--STYLED input[type="number"], .base--password-input, +.base--STYLED input[type="password"], .base--range-input, +.base--STYLED input[type="range"], .base--search-input, +.base--STYLED input[type="search"], .base--tel-input, +.base--STYLED input[type="tel"], .base--text-input, +.base--STYLED input[type="text"], .base--time-input, +.base--STYLED input[type="time"], .base--url-input, +.base--STYLED input[type="url"], .base--week-input, +.base--STYLED input[type="week"], .base--select, +.base--STYLED select, .base--textarea, +.base--STYLED textarea { + font-family: "Helvetica Neue", Helvetica, "Open Sans", Arial, "Lucida Grande", "Roboto", sans-serif; } + +.base--code, +.base--STYLED code, .base--pre, +.base--STYLED pre, pre[class^="language-"], +pre[class*=" language-"], .base--pre code, pre[class^="language-"] code, +pre[class*=" language-"] code, .base--pre .base--code, +.base--STYLED pre .base--code, pre[class^="language-"] .base--code, +pre[class*=" language-"] .base--code { + font-family: "Courier New", "Lucida Console", monospace; } + +.icon { + vertical-align: middle; + display: inline; } + +.base--div:before, +.base--STYLED div:before, +div:before, .base--article:before, +.base--STYLED article:before, +article:before, .base--div:after, +.base--STYLED div:after, +div:after, .base--article:after, +.base--STYLED article:after, +article:after { + content: ''; + display: table; + clear: both; } + +.base--div, +.base--STYLED div, +div, .base--article, +.base--STYLED article, +article { + box-sizing: border-box; } + .base--div:before, + .base--STYLED div:before, + div:before, .base--article:before, + .base--STYLED article:before, + article:before, .base--div:after, + .base--STYLED div:after, + div:after, .base--article:after, + .base--STYLED article:after, + article:after { + box-sizing: border-box; } + +@font-face { + font-family: "icons"; + src: url("../fonts/icon-fonts/icons.eot"); + src: url("../fonts/icon-fonts/icons.eot?#iefix") format("eot"), url("../fonts/icon-fonts/icons.woff") format("woff"), url("../fonts/icon-fonts/icons.ttf") format("truetype"), url("../fonts/icon-fonts/icons.svg#icons") format("svg"); } + +.icon:before { + font-family: "icons"; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + font-style: normal; + font-variant: normal; + font-weight: normal; + /* speak: none; only necessary if not using the private unicode range (firstGlyph option) */ + text-decoration: none; + text-transform: none; } + +.icon-down-arrow:before { + content: "\E001"; } + +.icon-link:before { + content: "\E002"; } + +.icon-reset:before { + content: "\E003"; } + +.icon { + vertical-align: middle; + display: inline; } + +/*! Reset/normalize hybrid with major contributions from normalize.css, html5doctor.com Reset Stylesheet, and http://html5reset.org/ + +* Sam Richard - http://snugug.com/ +* Nicholas Gallagher, Jonathan Neal - http://necolas.github.io/normalize.css/ +* Richard Clark - http://richclarkdesign.com +* Tim Murtaugh - http://monkeydo.biz/ +*/ +abbr, +address, +article, +aside, +audio, +b, +blockquote, +body, +canvas, +caption, +cite, +code, +dd, +del, +details, +dfn, +div, +dl, +dt, +em, +fieldset, +figcaption, +figure, +footer, +form, +h1, +h2, +h3, +h4, +h5, +h6, +header, +hgroup, +html, +i, +iframe, +img, +ins, +kbd, +label, +legend, +li, +mark, +main, +menu, +nav, +object, +ol, +p, +pre, +q, +samp, +section, +small, +span, +strong, +sub, +summary, +sup, +table, +tbody, +td, +tfoot, +th, +thead, +time, +tr, +ul, +var, +video { + background: transparent; + border: 0; + font-size: 100%; + margin: 0; + outline: 0; + padding: 0; + vertical-align: baseline; } html { - position: relative; - min-height: 100%; -} + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; } body { - /* Margin bottom by footer height */ + line-height: 1; } - margin-bottom: 40px; -} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; } -.svg-container { - display: inline-block; - position: relative; - width: 100%; - padding-bottom: 190px; /* aspect ratio */ - vertical-align: top; - overflow: hidden; -} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; } -.svg-content-responsive { - display: inline-block; - position: absolute; - top: 10px; - left: 0; -} +audio:not([controls]) { + display: none; + height: 0; } -.btn, -.btn-block { - margin-bottom: 0em; - padding: 0.75em; - text-decoration: none; -} +[hidden], +template { + display: none; } -.reset-icon { - margin-right: 0.5em; -} +a { + background-color: transparent; + font-size: 100%; + margin: 0; + padding: 0; + vertical-align: baseline; } -.footer { - position: absolute; - bottom: 0; - width: 100%; - /* Set the fixed height of the footer here */ +a:active, +a:hover { + outline: 0; } + +abbr[title], +dfn[title] { + border-bottom: 1px dotted; + cursor: help; } + +ins { + text-decoration: none; } + +del { + text-decoration: line-through; } + +blockquote, +q { + quotes: none; } + +blockquote:before, +blockquote:after, +q:before, +q:after { + content: ''; + content: none; } + +ul { + list-style: none; } + +img { + border: 0; } - height: 40px; - /*background-color: #f5f5f5;*/ -} +svg:not(:root) { + overflow: hidden; } -.footer-content { - background: #00B2EF; - border-radius: none; - border-top: 1px solid #8CC63F; - padding-top: 5px; - padding-bottom: 5px; -} +pre { + overflow: auto; + white-space: pre; + white-space: pre-wrap; + white-space: pre-line; + word-wrap: break-word; } + +code, +kbd, +pre, +samp { + font-size: 1em; + font-family: monospace, sans-serif; } + +hr { + display: block; + height: 1px; + border: 0; + border-top: 1px solid; + margin: 1em 0; + padding: 0; } + +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; } + +button, +input[type="button"] { + overflow: visible; } + +button, +select { + text-transform: none; } + +button, +html input[type="button"], +input[type="file"], +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"] { + padding: 0; } + +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; } + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; } + +legend { + border: 0; + padding: 0; } + +textarea { + overflow: auto; } + +input, +select { + vertical-align: middle; } + +table { + border-collapse: collapse; + border-spacing: 0; } + +td, +th { + padding: 0; } + +html { + box-sizing: border-box; } + +*, *:before, *:after { + box-sizing: inherit; } + +embed, +img, +object, +video { + max-width: 100%; + height: auto; } + +body { + line-height: 1.5; } + +body { + margin: 0; } + body * + * { + margin-top: 1rem; } + +body { + background: #fff; + color: #121212; } -.flag_true { +.base--h1, +.base--STYLED h1 { + font-size: 2.44141em; + font-weight: 700; + color: #325c80; } + @media (min-width: 500px) { + .base--h1, + .base--STYLED h1 { + font-size: 4.20873em; } } + +.base--h2, +.base--STYLED h2 { + font-size: 1.95312em; + font-weight: 700; + color: #d74108; } + +.base--h3, +.base--STYLED h3 { + font-size: 1.5625em; + font-weight: 400; + color: #323232; } + +.base--h4, +.base--STYLED h4 { + font-size: 1.25em; + font-weight: 400; + color: #323232; } + @media (min-width: 500px) { + .base--h4, + .base--STYLED h4 { + font-size: 1.333em; } } + +.base--h5, +.base--STYLED h5 { + font-size: 1em; + font-weight: 700; + color: #5a5a5a; } + +.base--h6, +.base--STYLED h6 { + font-size: 1em; + font-weight: 400; + color: #5a5a5a; } + +.base--input, +.base--STYLED input:not([type]), .base--color-input, +.base--STYLED input[type="color"], .base--date-input, +.base--STYLED input[type="date"], .base--datetime-local-input, +.base--STYLED input[type="datetime-local"], .base--email-input, +.base--STYLED input[type="email"], .base--file-input, +.base--STYLED input[type="file"], .base--hidden-input, +.base--STYLED input[type="hidden"], .base--month-input, +.base--STYLED input[type="month"], .base--number-input, +.base--STYLED input[type="number"], .base--password-input, +.base--STYLED input[type="password"], .base--range-input, +.base--STYLED input[type="range"], .base--search-input, +.base--STYLED input[type="search"], .base--tel-input, +.base--STYLED input[type="tel"], .base--text-input, +.base--STYLED input[type="text"], .base--time-input, +.base--STYLED input[type="time"], .base--url-input, +.base--STYLED input[type="url"], .base--week-input, +.base--STYLED input[type="week"], .base--select, +.base--STYLED select { + width: 100%; + padding: 0.6em 1em; + font-size: 1em; + font-weight: 300; + border: 1px solid #325c80; + background-color: #fff; } + .base--input:focus, + .base--STYLED input:focus:not([type]), .base--color-input:focus, + .base--STYLED input[type="color"]:focus, .base--date-input:focus, + .base--STYLED input[type="date"]:focus, .base--datetime-local-input:focus, + .base--STYLED input[type="datetime-local"]:focus, .base--email-input:focus, + .base--STYLED input[type="email"]:focus, .base--file-input:focus, + .base--STYLED input[type="file"]:focus, .base--hidden-input:focus, + .base--STYLED input[type="hidden"]:focus, .base--month-input:focus, + .base--STYLED input[type="month"]:focus, .base--number-input:focus, + .base--STYLED input[type="number"]:focus, .base--password-input:focus, + .base--STYLED input[type="password"]:focus, .base--range-input:focus, + .base--STYLED input[type="range"]:focus, .base--search-input:focus, + .base--STYLED input[type="search"]:focus, .base--tel-input:focus, + .base--STYLED input[type="tel"]:focus, .base--text-input:focus, + .base--STYLED input[type="text"]:focus, .base--time-input:focus, + .base--STYLED input[type="time"]:focus, .base--url-input:focus, + .base--STYLED input[type="url"]:focus, .base--week-input:focus, + .base--STYLED input[type="week"]:focus, .base--select:focus, + .base--STYLED select:focus { + outline: 2px solid #325c80; + border-color: #325c80; } + .base--input:disabled, + .base--STYLED input:disabled:not([type]), .base--color-input:disabled, + .base--STYLED input[type="color"]:disabled, .base--date-input:disabled, + .base--STYLED input[type="date"]:disabled, .base--datetime-local-input:disabled, + .base--STYLED input[type="datetime-local"]:disabled, .base--email-input:disabled, + .base--STYLED input[type="email"]:disabled, .base--file-input:disabled, + .base--STYLED input[type="file"]:disabled, .base--hidden-input:disabled, + .base--STYLED input[type="hidden"]:disabled, .base--month-input:disabled, + .base--STYLED input[type="month"]:disabled, .base--number-input:disabled, + .base--STYLED input[type="number"]:disabled, .base--password-input:disabled, + .base--STYLED input[type="password"]:disabled, .base--range-input:disabled, + .base--STYLED input[type="range"]:disabled, .base--search-input:disabled, + .base--STYLED input[type="search"]:disabled, .base--tel-input:disabled, + .base--STYLED input[type="tel"]:disabled, .base--text-input:disabled, + .base--STYLED input[type="text"]:disabled, .base--time-input:disabled, + .base--STYLED input[type="time"]:disabled, .base--url-input:disabled, + .base--STYLED input[type="url"]:disabled, .base--week-input:disabled, + .base--STYLED input[type="week"]:disabled, .base--select:disabled, + .base--STYLED select:disabled { + background-color: #ececec; } + +.base--block-label { + display: block; + margin: 1.25em 0 .25em; } + +.base--inline-label, +.base--STYLED label { + display: inline; } + +.base--radio, +.base--STYLED input[type="radio"] { + display: none; } + .base--radio + label, + .base--STYLED input[type="radio"] + label { + position: relative; } + .base--radio + label:before, + .base--STYLED input[type="radio"] + label:before { + display: inline-block; + width: 1em; + height: 1em; + margin-right: 1rem; + vertical-align: middle; + border: 1px solid #aeaeae; + border-radius: 50%; + content: ''; + -webkit-transform: translateY(-0.125em); + transform: translateY(-0.125em); } + .base--radio:checked + label:before, + .base--STYLED input[type="radio"]:checked + label:before { + background: -webkit-radial-gradient(#323232 40%, transparent 40%); + background: radial-gradient(#323232 40%, transparent 40%); } + +.base--color-input, +.base--STYLED input[type="color"] { + height: 3em; + padding: .25em; + background: #fff; } + +.base--range-input, +.base--STYLED input[type="range"] { + height: 0.5em; + padding: 0; + background-color: #fff; + border-radius: 0.5em; + box-shadow: inset 0 0 0 0.125em #325c80; } + .base--range-input:focus, + .base--STYLED input[type="range"]:focus { + outline: 0; + box-shadow: inset 0 0 0 0.125em #325c80; } + .base--range-input:disabled, + .base--STYLED input[type="range"]:disabled { + opacity: .5; } + .base--range-input::-moz-range-track, + .base--STYLED input[type="range"]::-moz-range-track { + height: 0.5em; + padding: 0; + background-color: #fff; + border-radius: 0.5em; + box-shadow: inset 0 0 0 0.125em #325c80; } + .base--range-input::-webkit-slider-thumb, + .base--STYLED input[type="range"]::-webkit-slider-thumb { + -webkit-appearance: none; + width: 1.5em; + height: 1.5em; + background: #fff; + border-radius: 1.5em; + box-shadow: inset 0 0 0 0.1875em #325c80; + -webkit-transition-duration: .5s; + transition-duration: .5s; } + .base--range-input:active::-webkit-slider-thumb, + .base--STYLED input[type="range"]:active::-webkit-slider-thumb { + box-shadow: inset 0 0 0 1.25em #325c80; + width: 1.875em; + height: 1.875em; } + .base--range-input::-moz-range-thumb, + .base--STYLED input[type="range"]::-moz-range-thumb { + -moz-appearance: none; + width: 1.5em; + height: 1.5em; + background: #fff; + border-radius: 1.5em; + box-shadow: inset 0 0 0 0.1875em #325c80; + transition-duration: .5s; } + .base--range-input:active::-moz-range-thumb, + .base--STYLED input[type="range"]:active::-moz-range-thumb { + box-shadow: inset 0 0 0 1.25em #325c80; + width: 1.875em; + height: 1.875em; } + +.base--textarea, +.base--STYLED textarea { + width: 100%; + padding: 0.6em 1em; + font-size: 1em; + font-weight: 300; + border: 2px solid #ececec; + background-color: #fff; } + .base--textarea:focus, + .base--STYLED textarea:focus { + outline: #3B99FC auto 5px; + border-color: #ececec; } + .base--textarea:disabled, + .base--STYLED textarea:disabled { + background-color: #ececec; } + +.base--checkbox, +.base--STYLED input[type="checkbox"] { + display: none; } + .base--checkbox + label, + .base--STYLED input[type="checkbox"] + label { + position: relative; } + .base--checkbox + label:before, + .base--STYLED input[type="checkbox"] + label:before { + display: inline-block; + width: 1em; + height: 1em; + margin-right: 1rem; + vertical-align: middle; + border: 1px solid #aeaeae; + content: ''; + -webkit-transform: translateY(-0.125em); + transform: translateY(-0.125em); } + .base--checkbox:checked + label:before, + .base--STYLED input[type="checkbox"]:checked + label:before { + background: #323232; + box-shadow: inset 0 0 0 0.66667px #fff; } + +.base--select, +.base--STYLED select { + border-radius: 0; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%22%20viewbox%3D%220%200%2014%2014%20true%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpolygon%20fill%3D%22%23325c80%22%20points%3D%220%2C0%206%2E825%2C14%2014%2C0%20%22%2F%3E%3C%2Fsvg%3E"); + background-size: 1em 1em; + background-repeat: no-repeat; + background-position: calc(100% - .3em) 1em; } + +.base--button, +.base--STYLED button { + padding: 0.5em 1em; + color: #a53725; + font-weight: bold; + background-color: transparent; + border: 2px solid #d74108; + display: inline-block; } + .base--button:hover, + .base--STYLED button:hover, .base--button:focus, + .base--STYLED button:focus { + color: #fff; + background-color: #d74108; } + +.base--button[type='submit'], +.base--STYLED button[type='submit'] { + padding: 0.5em 1em; + color: white; + font-weight: bold; + background-color: #325c80; + border: 2px solid #325c80; + display: inline-block; } + .base--button[type='submit']:hover, .base--button[type='submit']:focus, + .base--STYLED button[type='submit']:hover, + .base--STYLED button[type='submit']:focus { + color: #fff; + background-color: #325c80; } + .base--button[type='submit']:focus, .base--button[type='submit']:hover, + .base--STYLED button[type='submit']:focus, + .base--STYLED button[type='submit']:hover { + padding: 0.5em 1em; + color: #a53725; font-weight: bold; - background-color: #cccccc -} - -.logo-img { - width: 45px; - margin-left: 45px; -} - -.header { - padding-bottom: 10px; - background: #00B2EF; - border-bottom: 4px solid #8CC63F; - margin: 0px 0px 10px 0px; -} - -.header h2 { - color: #eee; - font-size: 24px; - margin-top: 9px; -} - -.text-in-box { - fill: #666; -} - -.text-tone-in-box { - fill: #FFF; -} - -.text-above-box { - fill: #666; -} - -.text-bellow-box { - fill: #666; -} - -.text-mixed-positive, -.text-mixed-negative { - opacity: 0; - fill: #FFF; -} -.text-in-box, -.text-above-box, -.text-bellow-box { - font-size: small; -} - - -.text-analytical, -.text-agreeable, -.text-family_c, -.text-causation { - fill: #eee; -} - -.matched-word.replaceable { - /*placeholder*/ -} - -.matched-word.replaceable:hover { - font-style: italic; + background-color: #264a60; + border: 2px solid #264a60; + display: inline-block; } + .base--button[type='submit']:focus:hover, .base--button[type='submit']:focus:focus, .base--button[type='submit']:hover:hover, .base--button[type='submit']:hover:focus, + .base--STYLED button[type='submit']:focus:hover, + .base--STYLED button[type='submit']:focus:focus, + .base--STYLED button[type='submit']:hover:hover, + .base--STYLED button[type='submit']:hover:focus { + color: #fff; + background-color: #264a60; } + +.base--button[type='reset'], +.base--STYLED button[type='reset'] { + background-color: #fff; + border: 3px solid #aeaeae; + color: #5a5a5a; } + .base--button[type='reset']:hover, + .base--STYLED button[type='reset']:hover { + background-color: #5a5a5a; + border: 3px solid #5a5a5a; + color: #fff; } + +.base--hr { + border-top: 2px solid #ececec; } + +.base--hr, +.base--STYLED hr { + border-top: 2px solid #ececec; } + +.base--a, +.base--STYLED a { + color: #a53725; } + .base--a:hover, + .base--STYLED a:hover, .base--a:focus, + .base--STYLED a:focus { + color: #aeaeae; } + +.base--em, +.base--STYLED em { + font-style: italic; } + +.base--strong, +.base--STYLED strong { + font-weight: 700; } + +.base--p, +.base--STYLED p { + font-size: 1em; + color: #5a5a5a; + margin-top: 0; } + +.base--code, +.base--STYLED code { + padding: .2em .5em; + font-size: .8em; + color: #d74108; + outline: 1px solid rgba(119, 118, 119, 0.25); } + +.base--pre, +.base--STYLED pre, pre[class^="language-"], +pre[class*=" language-"], .base--pre code, +.base--STYLED pre code, pre[class^="language-"] code, +pre[class*=" language-"] code, .base--pre .base--code, +.base--STYLED pre .base--code, pre[class^="language-"] .base--code, +pre[class*=" language-"] .base--code { + display: block; + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; + word-spacing: normal; + text-align: left; + word-break: normal; + white-space: pre; + word-wrap: normal; + direction: ltr; + -moz-tab-size: 2; + -o-tab-size: 2; + tab-size: 2; + overflow-y: overlay; } + +.base--pre, +.base--STYLED pre, pre[class^="language-"], +pre[class*=" language-"] { + margin: .5em 0; + overflow: auto; + border: 1px solid rgba(119, 118, 119, 0.25); } + .base--pre code, + .base--STYLED pre code, pre[class^="language-"] code, + pre[class*=" language-"] code, .base--pre .base--code, + .base--STYLED pre .base--code, pre[class^="language-"] .base--code, + pre[class*=" language-"] .base--code { + padding: 1em; + font-size: 1em; + outline: 0; } + +.base--ul, +.base--STYLED ul, .base--ol, +.base--STYLED ol { + display: table; + padding-left: 0; + margin-left: 0; + list-style: none; } + .base--ul li, + .base--STYLED ul li, .base--ol li, + .base--STYLED ol li, .base--ul .base--li, + .base--STYLED ul .base--li, .base--ol .base--li, + .base--STYLED ol .base--li { + display: table-row; + counter-increment: table-ol; } + .base--ul li:before, + .base--STYLED ul li:before, .base--ol li:before, + .base--STYLED ol li:before, .base--ul .base--li:before, + .base--STYLED ul .base--li:before, .base--ol .base--li:before, + .base--STYLED ol .base--li:before { + display: table-cell; + padding-right: .4em; + text-align: right; } + +.base--ul li:before, +.base--STYLED ul li:before, .base--ul .base--li:before, +.base--STYLED ul .base--li:before { + content: "•"; } + +.base--ol li:before, +.base--STYLED ol li:before, .base--ol .base--li:before, +.base--STYLED ol .base--li:before { + content: counter(table-ol) "."; } + +.base--blockquote, +.base--STYLED blockquote { + padding: 0em 1.5em; + margin-right: 1em; + margin-left: 1em; + font-style: italic; + color: #5a5a5a; + border-left: 0.25em solid #6d120f; } + +.base--table, +.base--STYLED table { + width: 100%; } + +.base--thead, +.base--STYLED thead { + font-weight: bold; + color: #fff; + background-color: #325c80; } + +.base--td, +.base--STYLED td { + padding: 1em; } + +.base--tr:nth-of-type(even), +.base--STYLED tr:nth-of-type(even) { + background-color: #ececec; } + +.loader { + width: 100%; } + .smil .loader--fallback { + display: none; } + .no-smil .loader--fallback, + .no-svg .loader--fallback { + display: block; } + .no-svg .loader--svg, + .no-smil .loader--svg { + display: none; } + +.radiogroup { + list-style: none; } + +.radiogroup--item { + margin-bottom: .5em; } + +pre[class^="language-"], +pre[class*=" language-"] { + background: #323232; } + pre[class^="language-"] > code[class^="language-"], + pre[class^="language-"] > code[class*=" language-"], + pre[class*=" language-"] > code[class^="language-"], + pre[class*=" language-"] > code[class*=" language-"] { + color: #e0e0e0; } + +.token.prolog, +.token.doctype, +.token.cdata, +.token.punctuation { + color: #fff; } + +.token.comment { + color: #aeaeae; } + +.token.tag, +.token.constant, +.token.symbol, +.token.deleted, +.token.keyword { + color: #ff71d4; } + +.token.boolean, +.token.number { + color: #d7aaff; } + +.token.selector, +.token.attr-name, +.token.char, +.token.builtin, +.token.inserted, +.token.function { + color: #b4e051; } + +.token.operator, +.token.entity, +.token.url, +.language-css .token.string, +.style .token.string, +.token.variable { + color: #e0e0e0; } + +.token.atrule, +.token.string, +.token.attr-value { + color: #fde876; } + +.token.property { + color: #7cc7ff; } + +.token.regex, +.token.important { + color: #ffa573; } + +.token.important, +.token.bold { + font-weight: bold; } + +.token.italic { + font-style: italic; } + +.token.entity { + cursor: help; } + +.icon-hyperlink--button_BLANK { + background-color: transparent; + border: none; + text-decoration: underline; + padding: 0rem; + margin: 0rem; + color: #a53725; } + .icon-hyperlink--button_BLANK:hover, .icon-hyperlink--button_BLANK:focus { + color: #aeaeae; } + +.icon-hyperlink .icon { + color: #a53725; } + +.icon-hyperlink .icon-reset { + font-size: 1.5em; } + +.base--small { + font-size: 0.825em; } + +.base--small .base--code { + outline: none; + font-size: 1em; + font-weight: bold; } + +.panel { + background-color: #f4f4f4; + border: 2px solid #ececec; + padding: 0 1rem 1rem; } + +.tooltip { + position: absolute; + background-color: #325c80; + padding: 1rem; + width: 20rem; + left: -10rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.5rem); } + .tooltip:after { + content: ''; + position: absolute; + left: 9rem; + border: 1rem solid transparent; + top: 100%; + border-top-color: #325c80; } + .tooltip .base--a { + color: white; } + .tooltip .base--a:hover { + color: #e0e0e0; } + .tooltip--hover-fix { + position: absolute; + height: 30px; + width: 60%; + left: 28%; } + +.hr-title { + margin-top: 3rem; } + .hr-title + .hr-title--title { + margin-top: -1.96rem; + margin-bottom: 0rem; + background: white; + display: inline-block; + position: absolute; + padding-right: 1rem; } + +.wordmark { + cursor: pointer; + margin-top: 1rem; + margin-left: 1rem; + margin-bottom: 0.5rem; + display: inline-block; + font-size: 1.062em; + text-decoration: none; } + .wordmark--left { + color: #fdfdfd; + font-weight: 300; } + .wordmark--right { + color: #ffffff; + font-weight: 500; } + @media (min-width: 700px) { + .wordmark { + margin-bottom: 1rem; + float: left; } } + @media (min-width: 768px) { + .wordmark { + margin-left: 0; } } + +.heading-nav { + margin-right: 0.5rem; + margin-top: 0; } + @media (min-width: 700px) { + .heading-nav { + float: right; } } + @media (min-width: 768px) { + .heading-nav { + margin-right: 0; } } + .heading-nav--li { + display: block; + margin-top: 1rem; } + @media (min-width: 700px) { + .heading-nav--li { + margin-top: 0rem; + display: inline-block; } } + .heading-nav--item { + color: #c7c7c7; + text-decoration: none; cursor: pointer; -} + display: inline-block; + padding-left: 0.75em; + border-left: 0.25em solid #404041; } + .heading-nav--item:focus, .heading-nav--item:hover { + border-left: 0.25em solid #5596E6; + color: #ffffff; } + @media (min-width: 700px) { + .heading-nav--item { + margin-top: 1rem; + padding-bottom: 1rem; + padding-left: 0.5rem; + padding-right: 0.5rem; + border-left: 0; + border-bottom: 0.25em solid #404041; } + .heading-nav--item:focus, .heading-nav--item:hover { + border-left: 0; + border-bottom: 0.25em solid #5596E6; } } -.form-control { - font-size: 14px; -} +.icon-hyperlink button[type="reset"] { + background-color: transparent; + border: none; + text-decoration: underline; + padding: 0rem; + margin: 0rem; + color: #a53725; } + .icon-hyperlink button[type="reset"]:hover, .icon-hyperlink button[type="reset"]:focus { + color: #aeaeae; } -.popover { - max-width: 100%; - /* Max Width of the popover (depending on the container!)*/ +.icon-hyperlink .icon { + color: #a53725; } +.icon-hyperlink .icon-reset { + font-size: 1.5em; } + +.banner { + padding: 1.5rem 1rem; } + @media (min-width: 1200px) { + .banner--service-container { + width: 74.46809%; + margin-left: 0%; + margin-right: 2.12766%; + float: left; + display: block; + margin-top: 0rem; } } + .banner--service-icon { + vertical-align: middle; + margin-top: 0.5rem; } + @media (min-width: 500px) { + .banner--service-icon { + width: 6.25rem; } } + @media (min-width: 700px) { + .banner--service-icon { + width: 8.125rem; } } + .banner--service-icon_INLINE { + vertical-align: middle; + display: inline; + height: 1.25em; + display: none; + margin-top: -0.275em; } + @media (min-width: 500px) { + .banner--service-icon_INLINE { + display: none; } } + .banner--service-icon-container { + width: 100%; + margin-left: 0%; + margin-right: 2.12766%; + float: left; + display: block; + display: none; } + @media (min-width: 700px) { + .banner--service-icon-container { + width: 14.89362%; + margin-left: 0%; + margin-right: 2.12766%; + float: left; + display: block; } } + @media (min-width: 700px) { + .banner--service-info { + width: 82.97872%; + margin-left: 0%; + float: left; + display: block; + margin-top: 0rem; } } + .banner--service-link-item { + display: block; + margin-top: 0; } + @media (min-width: 700px) { + .banner--service-link-item { + display: inline-block; + margin-right: 1rem; } } + @media (min-width: 1200px) { + .banner--service-resource-container { + width: 23.40426%; + margin-left: 0%; + float: left; + display: block; + margin-top: 0rem; + padding-top: 1rem; } } + .banner--service-resource { width: 100%; - left: 0px !important; -} + margin-left: 0%; + float: left; + display: block; } + @media (min-width: 700px) { + .banner--service-resource { + width: 82.97872%; + margin-left: 17.02128%; + float: left; + display: block; } } + .banner--service-links { + width: 100%; + margin-left: 0%; + float: left; + display: block; } + @media (min-width: 700px) { + .banner--service-links { + width: auto; + float: none; + margin-left: 0rem; + margin-right: 0rem; + display: block; + width: 82.97872%; + margin-left: 17.02128%; + float: left; + display: block; } } -.popover > .arrow { +.tab-panels { + background-color: #f4f4f4; + border: 2px solid #ececec; + padding: 0 1rem 1rem; + position: relative; } + .tab-panels--tab-list { + border-bottom: 2px solid #ececec; + margin-top: 0rem; } + .tab-panels--tab-list-item { + display: inline-block; } + .tab-panels--tab { + display: block; + text-decoration: none; + padding: 0 1rem 1rem; } + .tab-panels--tab:focus, .tab-panels--tab:hover { + border-bottom: 6px solid #6d120f; + color: #6d120f; } + .tab-panels--tab.active { + font-weight: 700; + border-bottom: 6px solid #a53725; } + .tab-panels--tab-content .base--textarea { + min-height: 11.7rem; } + .tab-panels--tab-pane { display: none; -} + margin-top: 0rem; } + .tab-panels--tab-pane.active { + display: block; } + +.bar-graph { + display: block; + width: 100%; } + .bar-graph--row { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-flow: flex-start; + -ms-flex-flow: flex-start; + flex-flow: flex-start; + -webkit-box-align: center; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + .bar-graph--label-container { + display: inline-block; + width: 3.5rem; + margin-right: 0.5rem; + vertical-align: middle; } + .bar-graph--bar-container { + display: inline-block; + width: calc(100% - 4rem); + vertical-align: middle; + margin-top: 0rem; } + .bar-graph--label { + font-size: 0.8rem; + text-align: right; + position: relative; } + .bar-graph--bar { + height: 1.25rem; + background-color: #e0e0e0; + position: relative; } + .bar-graph--bar-value { + height: 100%; + width: 0%; + -webkit-transition: 0.2s; + transition: 0.2s; + background-color: #075CD8; } + .bar-graph--threshold { + position: absolute; + top: 0rem; + left: 0%; + height: 100%; + width: 2px; + margin-top: 0rem; + margin-left: -1px; + background-color: #000; } + .bar-graph--tooltip { + position: absolute; + background-color: #325c80; + padding: 1rem; + width: 20rem; + left: -10rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.5rem); + margin-top: 0rem; } + .bar-graph--tooltip:after { + content: ''; + position: absolute; + left: 9rem; + border: 1rem solid transparent; + top: 100%; + border-top-color: #325c80; } + .bar-graph--tooltip .base--a { + color: white; } + .bar-graph--tooltip .base--a:hover { + color: #e0e0e0; } + .bar-graph--bar-tooltip { + position: absolute; + background-color: #325c80; + padding: 1rem; + width: 5.5rem; + left: -2.75rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + text-align: center; + margin-top: 0rem; + -webkit-transition: 0.1s; + transition: 0.1s; } + .bar-graph--bar-tooltip:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #325c80; } + .bar-graph--bar-tooltip .base--a { + color: white; } + .bar-graph--bar-tooltip .base--a:hover { + color: #e0e0e0; } + .bar-graph--bar:hover .bar-graph--bar-tooltip { + visibility: visible; + opacity: 1; } + .bar-graph--bar:hover .bar-graph--bar-tooltip:hover { + visibility: hidden; + opacity: 0; } + .bar-graph--tooltip br { + margin-top: 0rem; } -.badge-neg { - background-color: #F46D43; -} +.input--submit-button { + width: 100%; + margin-left: 0%; + float: left; + display: block; } + @media (min-width: 768px) { + .input--submit-button { + width: auto; + float: none; + margin-left: 0rem; + margin-right: 0rem; + display: block; + width: 65.95745%; + margin-left: 17.02128%; + margin-right: 2.12766%; + float: left; + display: block; } } -.badge-hidden { - display: none; -} +.input--radio-label { + margin-right: 1rem; + display: block; } + @media (min-width: 768px) { + .input--radio-label { + display: inline; } } -.modal-backdrop { - z-index: 0; -} +.input--textarea { + margin-top: 1rem; } -.g-block-mixed-background, -.g-block-mixed-child { - cursor: pointer; -} +.input--description { + margin-top: 1rem; + margin-bottom: 1rem; } -.loader { - width: 150px; - height: 150px; - margin: 0px auto; -} +.input--hr { + margin-top: 2rem; + margin-bottom: 1.5rem; } -.loader img { - width: 100%; - height: auto; -} +.base--radio + .input--radio-label:before, +.base--STYLED input[type="radio"] + .input--radio-label:before { + margin-right: 0.75rem; } -#json { - margin-bottom: 1em; -} +.output { + display: none; + margin-top: 3rem; } + .output--sentence-description { + margin-top: 1rem; } + .output--document-description { + margin-top: 1rem; } + .output--document-title { + margin-top: 2rem; } + .output--sentence-title { + margin-top: 2rem; } + .output--reset { + display: inline-block; + float: right; + margin-top: 0rem; } -#visualization { - overflow: auto; - margin-top: 2.5rem; -} +.loading { + display: none; + text-align: center; } + .loading--loader { + display: inline-block; + width: 9rem; } -.text-output-div { - padding: 1em; - background-color: white; - line-height: 2; -} +.error { + margin-top: 2rem; } + .error--message { + text-align: center; + color: #e71d32; } + +.summary--emotion { + background-color: #f9f9f9; + padding: 1rem; } + @media (min-width: 768px) { + .summary--emotion { + width: 31.91489%; + margin-left: 0%; + margin-right: 2.12766%; + float: left; + display: block; + margin-top: 0rem; } } + +.summary--writing { + background-color: #f9f9f9; + padding: 1rem; + height: 14.78rem; } + @media (min-width: 768px) { + .summary--writing { + width: 31.91489%; + margin-left: 0%; + margin-right: 2.12766%; + float: left; + display: block; + margin-top: 0rem; } } + +.summary--social { + background-color: #f9f9f9; + padding: 1rem; } + @media (min-width: 768px) { + .summary--social { + width: 31.91489%; + margin-left: 0%; + margin-right: 2.12766%; + float: left; + display: block; + margin-top: 0rem; } } + @media (min-width: 768px) { + .summary--social { + width: auto; + float: none; + margin-left: 0rem; + margin-right: 0rem; + display: block; + width: 31.91489%; + margin-left: 0%; + float: left; + display: block; } } + +.summary-emotion-graph--bar-value { + background-color: #1AE5CD; } + .summary-emotion-graph--bar-value_Anger { + background-color: #E80521; } + .summary-emotion-graph--bar-value_Disgust { + background-color: #592684; } + .summary-emotion-graph--bar-value_Fear { + background-color: #325E2B; } + .summary-emotion-graph--bar-value_Joy { + background-color: #FFD629; } + .summary-emotion-graph--bar-value_Sadness { + background-color: #086DB2; } + +.summary-emotion-graph--bar-tooltip_Anger { + position: absolute; + background-color: #E80521; + padding: 1rem; + width: 5.5rem; + left: -2.75rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + color: #ffffff; } + .summary-emotion-graph--bar-tooltip_Anger:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #E80521; } + .summary-emotion-graph--bar-tooltip_Anger .base--a { + color: white; } + .summary-emotion-graph--bar-tooltip_Anger .base--a:hover { + color: #e0e0e0; } + +.summary-emotion-graph--bar-tooltip_Disgust { + position: absolute; + background-color: #592684; + padding: 1rem; + width: 5.5rem; + left: -2.75rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + color: #ffffff; } + .summary-emotion-graph--bar-tooltip_Disgust:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #592684; } + .summary-emotion-graph--bar-tooltip_Disgust .base--a { + color: white; } + .summary-emotion-graph--bar-tooltip_Disgust .base--a:hover { + color: #e0e0e0; } + +.summary-emotion-graph--bar-tooltip_Fear { + position: absolute; + background-color: #325E2B; + padding: 1rem; + width: 5.5rem; + left: -2.75rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + color: #ffffff; } + .summary-emotion-graph--bar-tooltip_Fear:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #325E2B; } + .summary-emotion-graph--bar-tooltip_Fear .base--a { + color: white; } + .summary-emotion-graph--bar-tooltip_Fear .base--a:hover { + color: #e0e0e0; } + +.summary-emotion-graph--bar-tooltip_Joy { + position: absolute; + background-color: #FFD629; + padding: 1rem; + width: 5.5rem; + left: -2.75rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + color: #000000; } + .summary-emotion-graph--bar-tooltip_Joy:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #FFD629; } + .summary-emotion-graph--bar-tooltip_Joy .base--a { + color: white; } + .summary-emotion-graph--bar-tooltip_Joy .base--a:hover { + color: #e0e0e0; } + +.summary-emotion-graph--bar-tooltip_Sadness { + position: absolute; + background-color: #086DB2; + padding: 1rem; + width: 5.5rem; + left: -2.75rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + color: #ffffff; } + .summary-emotion-graph--bar-tooltip_Sadness:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #086DB2; } + .summary-emotion-graph--bar-tooltip_Sadness .base--a { + color: white; } + .summary-emotion-graph--bar-tooltip_Sadness .base--a:hover { + color: #e0e0e0; } -.text-output-div .matched-word { - transition: 0.5s; -} +.summary-writing-graph { + height: calc(100% - 2.5rem); } + .summary-writing-graph--column { + width: calc(33.33333% - 0rem); + margin-right: 0rem; + display: block; + float: left; + margin-top: 0rem; + height: 100%; } + .summary-writing-graph--column:nth-of-type(3n) { + margin-right: 0rem; } + .summary-writing-graph--bar { + width: 1.25rem; + height: calc(100% - 1.6rem); + margin: auto; + background-color: #e0e0e0; + position: relative; } + .summary-writing-graph--bar-value { + background-color: #075CD8; + position: absolute; + bottom: 0rem; + width: 100%; } + .summary-writing-graph--label { + text-align: center; + font-size: 0.8rem; + margin-top: 0.4rem; } + .summary-writing-graph--bar-tooltip { + position: absolute; + background-color: #075CD8; + padding: 1rem; + width: 5.5rem; + left: -2.125rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + text-align: center; + -webkit-transition: 0.1s; + transition: 0.1s; } + .summary-writing-graph--bar-tooltip:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #075CD8; } + .summary-writing-graph--bar-tooltip .base--a { + color: white; } + .summary-writing-graph--bar-tooltip .base--a:hover { + color: #e0e0e0; } + .summary-writing-graph--bar-tooltip:after { + border-bottom: 0rem; } + .summary-writing-graph--bar:hover .summary-writing-graph--bar-tooltip { + visibility: visible; + opacity: 1; } + .summary-writing-graph--bar:hover .summary-writing-graph--bar-tooltip:hover { + visibility: hidden; + opacity: 0; } -.radio-block { +.summary-social-graph { + display: block; + width: 100%; } + .summary-social-graph--row { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-flow: flex-start; + -ms-flex-flow: flex-start; + flex-flow: flex-start; + -webkit-box-align: center; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; } + .summary-social-graph--label-container { + display: inline-block; + width: 8rem; + margin-right: 0.5rem; + vertical-align: middle; } + .summary-social-graph--bar-container { + display: inline-block; + width: calc(100% - 8.5rem); + vertical-align: middle; + margin-top: 0rem; } + .summary-social-graph--label { + font-size: 0.8rem; + text-align: right; + position: relative; } + .summary-social-graph--bar { + height: 1.25rem; + background-color: #e0e0e0; + position: relative; } + .summary-social-graph--bar-value { + height: 100%; + width: 0%; + -webkit-transition: 0.2s; + transition: 0.2s; + background-color: #075CD8; } + .summary-social-graph--threshold { + position: absolute; + top: 0rem; + left: 0%; + height: 100%; + width: 2px; + margin-top: 0rem; + margin-left: -1px; + background-color: #000; } + .summary-social-graph--tooltip { + position: absolute; + background-color: #325c80; + padding: 1rem; + width: 20rem; + left: -10rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.5rem); + margin-top: 0rem; } + .summary-social-graph--tooltip:after { + content: ''; + position: absolute; + left: 9rem; + border: 1rem solid transparent; + top: 100%; + border-top-color: #325c80; } + .summary-social-graph--tooltip .base--a { + color: white; } + .summary-social-graph--tooltip .base--a:hover { + color: #e0e0e0; } + .summary-social-graph--bar-tooltip { + position: absolute; + background-color: #325c80; + padding: 1rem; + width: 5.5rem; + left: -2.75rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + text-align: center; + margin-top: 0rem; + -webkit-transition: 0.1s; + transition: 0.1s; } + .summary-social-graph--bar-tooltip:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #325c80; } + .summary-social-graph--bar-tooltip .base--a { + color: white; } + .summary-social-graph--bar-tooltip .base--a:hover { + color: #e0e0e0; } + .bar-graph--bar:hover .summary-social-graph--bar-tooltip { + visibility: visible; + opacity: 1; } + .bar-graph--bar:hover .summary-social-graph--bar-tooltip:hover { + visibility: hidden; + opacity: 0; } + .summary-social-graph--tooltip br { + margin-top: 0rem; } + .summary-social-graph--bar-value { + background-color: #1AE5CD; } + .summary-social-graph--bar-tooltip { + position: absolute; + background-color: #17ceb9; + padding: 1rem; + width: 5.5rem; + left: -2.75rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.25rem); + color: white; } + .summary-social-graph--bar-tooltip:after { + content: ''; + position: absolute; + left: 2rem; + border: 0.75rem solid transparent; + top: 100%; + border-top-color: #17ceb9; } + .summary-social-graph--bar-tooltip .base--a { + color: white; } + .summary-social-graph--bar-tooltip .base--a:hover { + color: #e0e0e0; } + .summary-social-graph--label-container .bar-graph--tooltip { + position: absolute; + background-color: #17ceb9; + padding: 1rem; + width: 20rem; + left: -5rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.5rem); + text-align: left; + -webkit-transition: 0.1s; + transition: 0.1s; } + .summary-social-graph--label-container .bar-graph--tooltip:after { + content: ''; + position: absolute; + left: 9rem; + border: 1rem solid transparent; + top: 100%; + border-top-color: #17ceb9; } + .summary-social-graph--label-container .bar-graph--tooltip .base--a { + color: white; } + .summary-social-graph--label-container .bar-graph--tooltip .base--a:hover { + color: #e0e0e0; } + .summary-social-graph--label-container .bar-graph--tooltip:after { + border-bottom: 0rem; } + .summary-social-graph--label-container:hover .bar-graph--tooltip { + visibility: visible; + opacity: 1; } + .summary-social-graph--label-container:hover .bar-graph--tooltip:hover { + visibility: hidden; + opacity: 0; } + +.sentences { + min-width: 732px; } + .sentences--filters { + width: 31.91489%; + margin-left: 0%; + float: left; + display: block; } + .sentences--sentence-views { + width: 68.08511%; + margin-left: 0%; + float: left; display: block; -} - -.radio-inline { - padding-left: 0px; -} - -@media screen and (max-width: 525px) { - .radio-block input[type="radio"] { - margin-left: 0px; - } -} - -.tone-radio input[type="radio"] { - float: none; -} - -@media screen and (max-width: 525px) { - .tone-radio { - padding: 0px; - margin-right: 5px; - } - .radio-inline { - margin-left: 0px; - } - .tone-radio input[type="radio"] { - margin: 0.5em 0.5em 0.5em 0em; - } -} - -@media only screen and (max-width : 1199px) { - .svg-container { padding-bottom: 150px; } -} - -@media only screen and (max-width : 768px) { - .svg-container { padding-bottom: 140px; } -} - -#closePopover { - margin-bottom: 1em; -} - -.json-div { + margin-top: 0rem; } + +.filters { + padding: 1.5rem 1.5rem 0rem; + background-color: #ececec; } + .filters--radio { + display: none; } + .filters .base--radio + label:before, .filters .base--STYLED input[type="radio"] + label:before { + display: none; } + .filters--label { + width: calc(100% + 3rem); + margin: 0rem 0rem 0rem -1.5rem; + padding: 0.4rem 0rem 0.4rem 1.5rem; + border-top: 1px solid #e0e0e0; + border-left: 4px solid #ececec; + font-size: 0.9rem; + font-weight: 400; } + .filters--emotion .filters--label:last-child, + .filters--writing .filters--label:last-child, + .filters--social .filters--label:last-child { + border-bottom: 1px solid #e0e0e0; } + .filters--radio#filter-Anger + .filters--label { + border-left-color: #E80521; } + .filters--radio#filter-Anger:checked + .filters--label { + background-color: #E80521; + border-color: #E80521; + color: #ffffff; } + .filters--radio#filter-Disgust + .filters--label { + border-left-color: #592684; } + .filters--radio#filter-Disgust:checked + .filters--label { + background-color: #592684; + border-color: #592684; + color: #ffffff; } + .filters--radio#filter-Fear + .filters--label { + border-left-color: #325E2B; } + .filters--radio#filter-Fear:checked + .filters--label { + background-color: #325E2B; + border-color: #325E2B; + color: #ffffff; } + .filters--radio#filter-Joy + .filters--label { + border-left-color: #FFD629; } + .filters--radio#filter-Joy:checked + .filters--label { + background-color: #FFD629; + border-color: #FFD629; + color: #000000; } + .filters--radio#filter-Sadness + .filters--label { + border-left-color: #086DB2; } + .filters--radio#filter-Sadness:checked + .filters--label { + background-color: #086DB2; + border-color: #086DB2; + color: #ffffff; } + .filters--radio#filter-Analytical + .filters--label { + border-left-color: #075CD8; } + .filters--radio#filter-Analytical:checked + .filters--label { + background-color: #075CD8; + border-color: #075CD8; + color: #ffffff; } + .filters--radio#filter-Confident + .filters--label { + border-left-color: #075CD8; } + .filters--radio#filter-Confident:checked + .filters--label { + background-color: #075CD8; + border-color: #075CD8; + color: #ffffff; } + .filters--radio#filter-Tentative + .filters--label { + border-left-color: #075CD8; } + .filters--radio#filter-Tentative:checked + .filters--label { + background-color: #075CD8; + border-color: #075CD8; + color: #ffffff; } + .filters--radio#filter-Openness + .filters--label { + border-left-color: #1AE5CD; } + .filters--radio#filter-Openness:checked + .filters--label { + background-color: #1AE5CD; + border-color: #1AE5CD; + color: #000000; } + .filters--radio#filter-Conscientiousness + .filters--label { + border-left-color: #1AE5CD; } + .filters--radio#filter-Conscientiousness:checked + .filters--label { + background-color: #1AE5CD; + border-color: #1AE5CD; + color: #000000; } + .filters--radio#filter-Extraversion + .filters--label { + border-left-color: #1AE5CD; } + .filters--radio#filter-Extraversion:checked + .filters--label { + background-color: #1AE5CD; + border-color: #1AE5CD; + color: #000000; } + .filters--radio#filter-Agreeableness + .filters--label { + border-left-color: #1AE5CD; } + .filters--radio#filter-Agreeableness:checked + .filters--label { + background-color: #1AE5CD; + border-color: #1AE5CD; + color: #000000; } + .filters--radio#filter-Emotional-Range + .filters--label { + border-left-color: #1AE5CD; } + .filters--radio#filter-Emotional-Range:checked + .filters--label { + background-color: #1AE5CD; + border-color: #1AE5CD; + color: #000000; } + +.sentence-views--tab-panels { + border: none; + height: 100%; } + +.sentence-views--tab-content { + height: calc(100% - 5rem); } + +.sentence-views--tab-pane { + height: 100%; } + +.original-text { + height: 100%; } + .original-text--legend { + text-align: right; + position: relative; + height: 3.75rem; } + .original-text--legend-bar { + position: absolute; + right: 0rem; + margin: 0rem; } + .original-text--legend-block { + height: 2rem; + width: 1.75rem; + background-color: #e0e0e0; + margin-top: 0rem; + position: absolute; + right: 0rem; } + .original-text--legend-block_low { + right: 3.5rem; } + .original-text--legend-block_med { + right: 1.75rem; } + .original-text--legend-block_high { + right: 0rem; } + .original-text--legend-block_anger-low { + background-color: #FFF; } + .original-text--legend-block_anger-medium { + background-color: #FFA197; } + .original-text--legend-block_anger-high { + background-color: #E80521; } + .original-text--legend-block_disgust-low { + background-color: #FFF; } + .original-text--legend-block_disgust-medium { + background-color: #A779D8; } + .original-text--legend-block_disgust-high { + background-color: #592684; } + .original-text--legend-block_fear-low { + background-color: #FFF; } + .original-text--legend-block_fear-medium { + background-color: #7DB258; } + .original-text--legend-block_fear-high { + background-color: #325E2B; } + .original-text--legend-block_joy-low { + background-color: #FFF; } + .original-text--legend-block_joy-medium { + background-color: #FFF173; } + .original-text--legend-block_joy-high { + background-color: #FFD629; } + .original-text--legend-block_sadness-low { + background-color: #FFF; } + .original-text--legend-block_sadness-medium { + background-color: #69C3E2; } + .original-text--legend-block_sadness-high { + background-color: #086DB2; } + .original-text--legend-block_analytical-low { + background-color: #FFF; } + .original-text--legend-block_analytical-medium { + background-color: #19A3F7; } + .original-text--legend-block_analytical-high { + background-color: #075CD8; } + .original-text--legend-block_confident-low { + background-color: #FFF; } + .original-text--legend-block_confident-medium { + background-color: #19A3F7; } + .original-text--legend-block_confident-high { + background-color: #075CD8; } + .original-text--legend-block_tentative-low { + background-color: #FFF; } + .original-text--legend-block_tentative-medium { + background-color: #19A3F7; } + .original-text--legend-block_tentative-high { + background-color: #075CD8; } + .original-text--legend-block_openness-low { + background-color: #FFF; } + .original-text--legend-block_openness-medium { + background-color: #94FFEF; } + .original-text--legend-block_openness-high { + background-color: #1AE5CD; } + .original-text--legend-block_conscientiousness-low { + background-color: #FFF; } + .original-text--legend-block_conscientiousness-medium { + background-color: #94FFEF; } + .original-text--legend-block_conscientiousness-high { + background-color: #1AE5CD; } + .original-text--legend-block_extraversion-low { + background-color: #FFF; } + .original-text--legend-block_extraversion-medium { + background-color: #94FFEF; } + .original-text--legend-block_extraversion-high { + background-color: #1AE5CD; } + .original-text--legend-block_agreeableness-low { + background-color: #FFF; } + .original-text--legend-block_agreeableness-medium { + background-color: #94FFEF; } + .original-text--legend-block_agreeableness-high { + background-color: #1AE5CD; } + .original-text--legend-block_emotional-range-low { + background-color: #FFF; } + .original-text--legend-block_emotional-range-medium { + background-color: #94FFEF; } + .original-text--legend-block_emotional-range-high { + background-color: #1AE5CD; } + .original-text--legend-label { + margin-top: 0rem; + position: absolute; + top: 2rem; + font-size: 0.8rem; } + .original-text--legend-label_low { + left: calc(100% - 5.25rem); } + .original-text--legend-label_high { + right: 0rem; } + .original-text--texts-container { + background-color: white; + padding: 1rem; + overflow-y: auto; + height: calc(100% - 9.5rem); + margin-top: 0rem; } + .original-text--sentence-container { + margin-top: 0.4rem; + position: relative; + -webkit-transition: 0.3s; + transition: 0.3s; } + .original-text--sentence-container_grayed { + opacity: 0.3; } + .original-text--sentence { + position: relative; + padding: 0.2rem 0.3rem; } + .original-text--sentence_anger-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_anger-medium { + background-color: #FFA197; + color: #000000; } + .original-text--sentence_anger-high { + background-color: #E80521; + color: #ffffff; } + .original-text--sentence_disgust-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_disgust-medium { + background-color: #A779D8; + color: #000000; } + .original-text--sentence_disgust-high { + background-color: #592684; + color: #ffffff; } + .original-text--sentence_fear-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_fear-medium { + background-color: #7DB258; + color: #000000; } + .original-text--sentence_fear-high { + background-color: #325E2B; + color: #ffffff; } + .original-text--sentence_joy-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_joy-medium { + background-color: #FFF173; + color: #000000; } + .original-text--sentence_joy-high { + background-color: #FFD629; + color: #000000; } + .original-text--sentence_sadness-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_sadness-medium { + background-color: #69C3E2; + color: #000000; } + .original-text--sentence_sadness-high { + background-color: #086DB2; + color: #ffffff; } + .original-text--sentence_analytical-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_analytical-medium { + background-color: #19A3F7; + color: #000000; } + .original-text--sentence_analytical-high { + background-color: #075CD8; + color: #ffffff; } + .original-text--sentence_confident-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_confident-medium { + background-color: #19A3F7; + color: #000000; } + .original-text--sentence_confident-high { + background-color: #075CD8; + color: #ffffff; } + .original-text--sentence_tentative-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_tentative-medium { + background-color: #19A3F7; + color: #000000; } + .original-text--sentence_tentative-high { + background-color: #075CD8; + color: #ffffff; } + .original-text--sentence_openness-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_openness-medium { + background-color: #94FFEF; + color: #000000; } + .original-text--sentence_openness-high { + background-color: #1AE5CD; + color: #000000; } + .original-text--sentence_conscientiousness-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_conscientiousness-medium { + background-color: #94FFEF; + color: #000000; } + .original-text--sentence_conscientiousness-high { + background-color: #1AE5CD; + color: #000000; } + .original-text--sentence_extraversion-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_extraversion-medium { + background-color: #94FFEF; + color: #000000; } + .original-text--sentence_extraversion-high { + background-color: #1AE5CD; + color: #000000; } + .original-text--sentence_agreeableness-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_agreeableness-medium { + background-color: #94FFEF; + color: #000000; } + .original-text--sentence_agreeableness-high { + background-color: #1AE5CD; + color: #000000; } + .original-text--sentence_emotional-range-low { + background-color: #FFF; + color: #000000; } + .original-text--sentence_emotional-range-medium { + background-color: #94FFEF; + color: #000000; } + .original-text--sentence_emotional-range-high { + background-color: #1AE5CD; + color: #000000; } + .original-text--tooltip-container { + position: fixed; + top: 10rem; + left: 10rem; + margin-left: -6rem; + margin-top: 0.25rem; + visibility: visible; + opacity: 1; + -webkit-transition: 0.3s opacity; + transition: 0.3s opacity; } + .original-text--tooltip-container_hidden { + visibility: hidden; + opacity: 0; + height: 0rem; + overflow: hidden; } + .original-text--tooltip { + position: absolute; + background-color: #00b4a0; + padding: 1rem; + width: 12rem; + left: 0rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.5rem); + visibility: visible; + opacity: 1; background-color: white; - color: black; - padding: 5px; -} + border: 2px solid #c7c7c7; } + .original-text--tooltip:after { + content: ''; + position: absolute; + left: 5rem; + border: 1rem solid transparent; + top: 100%; + border-top-color: #c7c7c7; } + .original-text--tooltip .base--a { + color: white; } + .original-text--tooltip .base--a:hover { + color: #e0e0e0; } + .original-text--tooltip_social { + position: absolute; + background-color: #00b4a0; + padding: 1rem; + width: 16rem; + left: -2rem; + color: white; + font-size: 1rem; + font-weight: 400; + line-height: 1.2; + visibility: hidden; + opacity: 0; + bottom: calc(100% + 1.5rem); + visibility: visible; + opacity: 1; + background-color: white; + border: 2px solid #c7c7c7; } + .original-text--tooltip_social:after { + content: ''; + position: absolute; + left: 7rem; + border: 1rem solid transparent; + top: 100%; + border-top-color: #c7c7c7; } + .original-text--tooltip_social .base--a { + color: white; } + .original-text--tooltip_social .base--a:hover { + color: #e0e0e0; } + .original-text--tooltip:after { + border-bottom: 0rem; } + .original-text--tooltip-li { + margin-bottom: 1rem; + color: black; } + .original-text--tooltip-li:first-child { + padding-bottom: 1rem; + margin-bottom: 0rem; + border-bottom: 1px solid #c7c7c7; } + .original-text--tooltip-li:last-child { + margin-bottom: 0rem; } + .original-text--tooltip-li_anger { + color: #E80521; } + .original-text--tooltip-li_disgust { + color: #592684; } + .original-text--tooltip-li_fear { + color: #325E2B; } + .original-text--tooltip-li_joy { + color: #FFD629; } + .original-text--tooltip-li_sadness { + color: #086DB2; } + .original-text--tooltip-li_analytical { + color: #075CD8; } + .original-text--tooltip-li_confident { + color: #075CD8; } + .original-text--tooltip-li_tentative { + color: #075CD8; } + .original-text--tooltip-li_openness { + color: #1AE5CD; } + .original-text--tooltip-li_conscientiousness { + color: #1AE5CD; } + .original-text--tooltip-li_extraversion { + color: #1AE5CD; } + .original-text--tooltip-li_agreeableness { + color: #1AE5CD; } + .original-text--tooltip-li_emotional-range { + color: #1AE5CD; } + .original-text--tooltip-score { + display: inline-block; + width: 3rem; + text-align: right; } + .original-text--tooltip-label { + display: inline-block; + margin-top: 0rem; + margin-left: 0.2rem; } + .original-text--small-block { + margin-top: 1rem; } -.synonym-list-item { - cursor: pointer; -} +.sentence-rank { + height: 100%; } + .sentence-rank--table-container { + height: calc(100% - 8.75rem); + overflow: auto; } + .sentence-rank--tr { + background-color: white; + border-bottom: 3px solid #f4f4f4; } + .sentence-rank--tr.base--tr:nth-of-type(even) { + background-color: white; } + .sentence-rank--tr:last-child { + border-bottom: none; } + .sentence-rank--score { + text-align: right; + width: 4.7rem; } + .sentence-rank--score_anger { + color: #E80521; } + .sentence-rank--score_disgust { + color: #592684; } + .sentence-rank--score_fear { + color: #325E2B; } + .sentence-rank--score_joy { + color: #FFD629; } + .sentence-rank--score_sadness { + color: #086DB2; } + .sentence-rank--score_analytical { + color: #075CD8; } + .sentence-rank--score_confident { + color: #075CD8; } + .sentence-rank--score_tentative { + color: #075CD8; } + .sentence-rank--score_openness { + color: #1AE5CD; } + .sentence-rank--score_conscientiousness { + color: #1AE5CD; } + .sentence-rank--score_extraversion { + color: #1AE5CD; } + .sentence-rank--score_agreeableness { + color: #1AE5CD; } + .sentence-rank--score_emotional-range { + color: #1AE5CD; } + .sentence-rank--legend { + text-align: right; } + .sentence-rank--sort { + color: #264a60; + font-weight: 500; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; } + .base--checkbox + .sentence-rank--sort:before, + .base--STYLED input[type="checkbox"] + .sentence-rank--sort:before { + display: none; } + .base--checkbox:checked + .sentence-rank--sort .sentence-rank--sort-ascending { + display: none; } + .base--checkbox:not(:checked) + .sentence-rank--sort .sentence-rank--sort-descending { + display: none; } + .sentence-rank--sort .icon { + margin-left: 0.75rem; + font-size: 7px; + font-weight: 300; + display: inline-block; } + .sentence-rank--sort .icon_flipped { + -webkit-transform: rotate(180deg); + transform: rotate(180deg); } + +.json { + height: 100%; } + .json--pre { + height: 100%; + overflow: auto; } + .json--pre.base--pre { + margin-top: 0rem; } + +pre[class^="language-"], pre[class*=" language-"] { + background: #323232; } + +pre[class^="language-"] > code[class^="language-"], pre[class^="language-"] > code[class*=" language-"], pre[class*=" language-"] > code[class^="language-"], pre[class*=" language-"] > code[class*=" language-"] { + color: #e0e0e0; } + +.token.prolog, .token.doctype, .token.cdata, .token.punctuation { + color: #fff; } + +.token.comment { + color: #aeaeae; } + +.token.tag, .token.constant, .token.symbol, .token.deleted, .token.keyword { + color: #ff71d4; } + +.token.boolean, .token.number { + color: #d7aaff; } + +.token.selector, .token.attr-name, .token.char, .token.builtin, .token.inserted, .token.function { + color: #b4e051; } + +.token.operator, .token.entity, .token.url, .language-css .token.string, .style .token.string, .token.variable { + color: #e0e0e0; } + +.token.atrule, .token.string, .token.attr-value { + color: #fde876; } + +.token.property { + color: #7cc7ff; } + +.token.regex, .token.important { + color: #ffa573; } + +.token.important, .token.bold { + font-weight: bold; } + +.token.italic { + font-style: italic; } + +.token.entity { + cursor: help; } + +@media (min-width: 768px) { + ._demo--container { + width: 760px; + margin: 0rem auto; } } + +@media (min-width: 1200px) { + ._demo--container { + width: 992px; + margin: 0rem auto; } } + +._demo--heading { + background-color: #404041; + margin-top: 0; + padding-bottom: 1rem; } + @media (min-width: 700px) { + ._demo--heading { + padding-bottom: 0; } } + +._demo--banner { + margin-top: 0; + background-color: #f4f4f4; + border-bottom: 2px solid #ececec; } + +._content { + padding: 2rem 1rem; } + @media (min-width: 768px) { + ._content { + padding: 2rem 0rem; } } + ._content--example-section-1 { + margin-top: 2rem; } + @media (min-width: 768px) { + ._content--example-section-1 { + width: 50%; + clear: right; + float: left; + padding-right: 2rem; } } + @media (min-width: 768px) { + ._content--example-section-2 { + width: 49.15254%; + clear: right; + float: left; + margin-left: 0; + margin-right: 1.69492%; } } diff --git a/public/css/watson-bootstrap-dark.css b/public/css/watson-bootstrap-dark.css deleted file mode 100755 index 680c3f72..00000000 --- a/public/css/watson-bootstrap-dark.css +++ /dev/null @@ -1,5562 +0,0 @@ -/*! - * Bootstrap v3.1.1 - * - * Copyright 2014 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - * BootSwatchr built and provided by @DrewStrickland - */ -/*! normalize.css v3.0.0 | MIT License | git.io/normalize */ - - -/* Normalize */ -html { - font-family: sans-serif; - -ms-text-size-adjust: 100%; - -webkit-text-size-adjust: 100%; - overflow-y: scroll; -} -body { - margin: 0; -} -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -nav, -section, -summary { - display: block; -} -audio, -canvas, -progress, -video { - display: inline-block; - vertical-align: baseline; - width: 100%; - margin-top: 1em; - margin-bottom: 2em; -} -audio:not([controls]) { - display: none; - height: 0; -} -[hidden], -template { - display: none; -} -a { - background: 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: 4.209em; - margin: 0.67em 0; -} - -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 { - width: 100%; - height: 2px; - background-color: #E0E0E0; /*gray 10*/ - color: #E0E0E0; /*gray 10*/ - border: 0 none; - margin-bottom: 2em; -} -.hr-tab { - width: 100%; - height: 2px; - background-color: #E0E0E0; /*gray 10*/ - color: #E0E0E0; /*gray 10*/ - border: 0 none; - margin-bottom: 2em; - margin-bottom: 1em; - height: 1.5px; -} -pre { - overflow: auto; -} -code, -kbd, -pre, -samp { - font-family: 'Source Code Pro', Lucida Console, Andale Mono, monospace; - font-size: 1em; -} -button, -input, -optgroup, -select, -textarea { - color: inherit; - font: inherit; - margin: 0; -} -button { - overflow: visible; -} -button, -select { - text-transform: none; -} -select { - /*-webkit-appearance: none;*/ - -webkit-border-radius: 0px; - border-radius: 0px; -} -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; - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; - box-sizing: content-box; -} -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} -fieldset { - border: 1px solid #e0e0e0; /*gray 10*/ - 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; -} -@media print { - * { - text-shadow: none !important; - color: #121212 !important; /*gray 90*/ - background: transparent !important; - box-shadow: none !important; - } - a, - a:visited { - text-decoration: underline; - } - a[href]:after { - content: " (" attr(href) ")"; - } - abbr[title]:after { - content: " (" attr(title) ")"; - } - a[href^="javascript:"]:after, - a[href^="#"]:after { - content: ""; - } - pre, - blockquote { - border: 1px solid #e0e0e0; /*gray 10*/ - page-break-inside: avoid; - } - thead { - display: table-header-group; - } - - tr, - img { - page-break-inside: avoid; - } - img { - max-width: 100% !important; - } - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - h2, - h3 { - page-break-after: avoid; - } - select { - background: #fff !important; - } - .navbar { - display: none; - } - .table td, - .table th { - background-color: #fff !important; - } - .btn > .caret, - .dropup > .btn > .caret { - border-top-color: #121212 !important; /*gray 90*/ - } - .label { - border: 1px solid #121212; /*gray 90*/ - } - .table { - border-collapse: collapse !important; - } - .table-bordered th, - .table-bordered td { - border: 1px solid #fff !important; - } -} -* { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} -*:before, -*:after { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} -html { - font-size: 62.5%; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -} -body { - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 16px; - font-weight: 400; - line-height: 1.4; - color: #121212; /*gray 90*/ - background-color: #fdfdfd; /*neutral 1*/ -} -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; - -} - -textarea { - padding: 1em; - width: 100%; - height: 300px; - border: #fff; -} -a { - color: #A53725; /*orange 70*/ - text-decoration: underline; -} -.no-underline -{ - text-decoration: none; -} - -a:hover, -a:focus { - color: #aeaeae; /*gray 30*/ - text-decoration: underline; -} -a:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} -figure { - margin: 0; -} -img { - vertical-align: middle; -} -.img-responsive, -.thumbnail > img, -.thumbnail a > img, -.carousel-inner > .item > img, -.carousel-inner > .item > a > img { - display: block; - max-width: 100%; - height: auto; -} -.img-rounded { - border-radius: 6px; -} -.img-thumbnail { - padding: 4px; - line-height: 1.428571429; - background-color: #ffffff; - border: 1px solid #e0e0e0; /*gray 10*/ - border-radius: 0px; - -webkit-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; - display: inline-block; - max-width: 100%; - height: auto; -} -.img-circle { - border-radius: 50%; -} -.service-icon { - width: 100px; - margin-right: 1.5em; -} -@media (min-width: 500px) { - .service-icon { - width: 130px; - margin-right: 1.5em; - margin-top: 1.5em; - } -} - -.sr-only { - position: absolute; - width: 1px; - height: 1px; - margin: -1px; - padding: 0; - overflow: hidden; - clip: rect(0, 0, 0, 0); - border: 0; -} -h1, -h2, -h3, -h4, -h5, -h6, -.h1, -.h2, -.h3, -.h4, -.h5, -.h6 { - font-family: inherit; - font-weight: 400; - line-height: 1.2em; - color: inherit; -} -h1 small, -h2 small, -h3 small, -h4 small, -h5 small, -h6 small, -.h1 small, -.h2 small, -.h3 small, -.h4 small, -.h5 small, -.h6 small, -h1 .small, -h2 .small, -h3 .small, -h4 .small, -h5 .small, -h6 .small, -.h1 .small, -.h2 .small, -.h3 .small, -.h4 .small, -.h5 .small, -.h6 .small { - font-weight: normal; - line-height: 1em; - color: inherit; -} -/*h1, -.h1, -h2, -.h2, -h3, -.h3 { - margin-top: 18px; - margin-bottom: 0.6em; -}*/ -h1 small, -.h1 small, -h2 small, -.h2 small, -h3 small, -.h3 small, -h1 .small, -.h1 .small, -h2 .small, -.h2 .small, -h3 .small, -.h3 .small { - font-size: 65%; -} -h4, -.h4, -h5, -.h5, -h6, -.h6 { - margin-top: 9px; - margin-bottom: 9px; -} -h4 small, -.h4 small, -h5 small, -.h5 small, -h6 small, -.h6 small, -h4 .small, -.h4 .small, -h5 .small, -.h5 .small, -h6 .small, -.h6 .small { - font-size: 75%; -} -h1, -.h1 { - font-size: 3.157em; -} -h2, -.h2 { - font-size: 1.953em; -} -@media (min-width: 500px) { - h2 .h2 { - font-size: 2.369em; - } -} -h3, -.h3 { - font-size: 1.563em; - font-weight: 400; - color: #323232; /*gray 80*/ -} -@media (min-width: 500px) { - h3 .h3 { - font-size: 1.777em; - } -} -h4, -.h4 { - font-size: 1.563em; - color: #323232; /*gray 80*/ -} -@media (min-width: 500px) { - h4 .h4 { - font-size: 1.777em; - } -} -h5, -.h5 { - font-size: 1.25em; - font-weight: 700; -} -@media (min-width: 500px) { - h5 .h5 { - font-size: 1.333em; - } -} -h6, -.h6 { - font-size: 12.8px; - line-height: 1.4em; -} -@media (min-width: 500px) { - h6 .h6 { - font-size: 12.03px; - } -} -p { - font-size: 16px; - font-family: font-family: 'Helvetica Neue for IBM', Helvetica, Arial, Roboto, sans-serif; -} -small, -.small { - font-size: 85%; -} -cite { - font-style: normal; -} -.text-left { - text-align: left; -} -.text-right { - text-align: right; -} -.text-center { - text-align: center; -} -.text-justify { - text-align: justify; -} -.text-primary { - color: #325c80; /*blue 60*/ -} -a.text-primary:hover { - color: #264A60; /*blue 70*/ -} -.text-info { - color: #325c80; /*blue 60*/ -} -a.text-info:hover { - color: #325c80; /*blue 60*/ -} -.bg-primary { - color: #fff; - background-color: #325c80; /*blue 60*/ -} -a.bg-primary:hover { - background-color: #325c80; /*blue 60*/ -} -.page-header { - padding-bottom: 8px; - margin: 36px 0 18px; - border-bottom: 1px solid #fff; -} -ul, -ol { - margin-top: 0; - margin-bottom: 9px; -} -ol > li { - font-size: 16px; -} -ul ul, -ol ul, -ul ol, -ol ol { - margin-bottom: 0; -} -.list-bulleted { - list-style-type: circle; -} -.list-bulleted > li { - color: #325c80; /*blue 60*/ -} -.list-unstyled { - padding-left: 0; - list-style: none; -} -.list-inline { - padding-left: 0; - list-style: none; - margin-left: -5px; -} -.list-inline > li { - display: inline-block; - padding-left: 5px; - padding-right: 5px; -} -dl { - margin-top: 0; - margin-bottom: 18px; -} -dt, -dd { - line-height: 1.428571429; -} -dt { - font-weight: bold; -} -dd { - margin-left: 0; -} -.thin-branding { - font-weight: 400; - color:#fdfdfd; /*neutral 1*/ - font-family: "HelveticaNeue Light"; -} -@media (min-width: 768px) { - .dl-horizontal dt { - float: left; - width: 160px; - clear: left; - text-align: right; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - } - .dl-horizontal dd { - margin-left: 180px; - } -} -abbr[title], -abbr[data-original-title] { - cursor: help; - border-bottom: 1px dotted #5a5a5a; /*gray 60*/ -} -.initialism { - font-size: 90%; - text-transform: uppercase; -} - -code, -kbd, -pre, -samp { - font-family: Menlo, "Menlo", Monaco, Consolas, "Courier New", monospace; -} -code { - padding: 2px 4px; - font-size: 90%; - color: #325c80; /*blue 60*/ - background-color: #ececec; /*neutral 4*/ - white-space: nowrap; - border-radius: 0px; -} -kbd { - padding: 2px 4px; - font-size: 90%; - color: #ffffff; - background-color: #323232; /*gray 80*/ - border-radius: 0px; - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); -} -pre { - display: block; - padding: 0px 19px; - margin: 0 0 9px; - font-size: 14px; - line-height: 1.428571429; - word-break: break-all; - word-wrap: break-word; - color: #323232; /*gray 80*/ - background-color: #ececec; /*neutral 4*/ - border: 1px solid #ececec; /*neutral 4*/ - border-radius: 0px; -} -pre code { - padding: 0; - font-size: inherit; - color: inherit; - white-space: pre-wrap; - background-color: transparent; - border-radius: 0; -} -::selection { - background-color: #325c80; /*blue 60*/ - color: #ffffff; -} -.pre-scrollable { - max-width: 340px; - overflow-y: scroll; -} -.container { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; -} -@media (min-width: 768px) { - .container { - width: 760px; - } -} -@media (min-width: 992px) { - .container { - width: 760px; - } -} -@media (min-width: 1200px) { - .container { - width: 992px; - } -} -@media (min-width: 1824px) { - .container { - width: 992px; - } -} -.container-fluid { - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; -} -.row { - margin-left: -15px; - margin-right: -15px; -} -.row .row { - margin-left: 0px; - margin-right: 0px; -} -.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { - position: relative; - min-height: 1px; - padding-left: 15px; - padding-right: 15px; -} -.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { - float: left; -} -.col-xs-12 { - width: 100%; -} -.col-xs-11 { - width: 91.66666666666666%; -} -.col-xs-10 { - width: 83.33333333333334%; -} -.col-xs-9 { - width: 75%; -} -.col-xs-8 { - width: 66.66666666666666%; -} -.col-xs-7 { - width: 58.333333333333336%; -} -.col-xs-6 { - width: 50%; -} -.col-xs-5 { - width: 41.66666666666667%; -} -.col-xs-4 { - width: 33.33333333333333%; -} -.col-xs-3 { - width: 25%; -} -.col-xs-2 { - width: 16.666666666666664%; -} -.col-xs-1 { - width: 8.333333333333332%; -} -.col-xs-pull-12 { - right: 100%; -} -.col-xs-pull-11 { - right: 91.66666666666666%; -} -.col-xs-pull-10 { - right: 83.33333333333334%; -} -.col-xs-pull-9 { - right: 75%; -} -.col-xs-pull-8 { - right: 66.66666666666666%; -} -.col-xs-pull-7 { - right: 58.333333333333336%; -} -.col-xs-pull-6 { - right: 50%; -} -.col-xs-pull-5 { - right: 41.66666666666667%; -} -.col-xs-pull-4 { - right: 33.33333333333333%; -} -.col-xs-pull-3 { - right: 25%; -} -.col-xs-pull-2 { - right: 16.666666666666664%; -} -.col-xs-pull-1 { - right: 8.333333333333332%; -} -.col-xs-pull-0 { - right: 0%; -} -.col-xs-push-12 { - left: 100%; -} -.col-xs-push-11 { - left: 91.66666666666666%; -} -.col-xs-push-10 { - left: 83.33333333333334%; -} -.col-xs-push-9 { - left: 75%; -} -.col-xs-push-8 { - left: 66.66666666666666%; -} -.col-xs-push-7 { - left: 58.333333333333336%; -} -.col-xs-push-6 { - left: 50%; -} -.col-xs-push-5 { - left: 41.66666666666667%; -} -.col-xs-push-4 { - left: 33.33333333333333%; -} -.col-xs-push-3 { - left: 25%; -} -.col-xs-push-2 { - left: 16.666666666666664%; -} -.col-xs-push-1 { - left: 8.333333333333332%; -} -.col-xs-push-0 { - left: 0%; -} -.col-xs-offset-12 { - margin-left: 100%; -} -.col-xs-offset-11 { - margin-left: 91.66666666666666%; -} -.col-xs-offset-10 { - margin-left: 83.33333333333334%; -} -.col-xs-offset-9 { - margin-left: 75%; -} -.col-xs-offset-8 { - margin-left: 66.66666666666666%; -} -.col-xs-offset-7 { - margin-left: 58.333333333333336%; -} -.col-xs-offset-6 { - margin-left: 50%; -} -.col-xs-offset-5 { - margin-left: 41.66666666666667%; -} -.col-xs-offset-4 { - margin-left: 33.33333333333333%; -} -.col-xs-offset-3 { - margin-left: 25%; -} -.col-xs-offset-2 { - margin-left: 16.666666666666664%; -} -.col-xs-offset-1 { - margin-left: 8.333333333333332%; -} -.col-xs-offset-0 { - margin-left: 0%; -} -@media (min-width: 768px) { - .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { - float: left; - } - .col-sm-12 { - width: 100%; - } - .col-sm-11 { - width: 91.66666666666666%; - } - .col-sm-10 { - width: 83.33333333333334%; - } - .col-sm-9 { - width: 75%; - } - .col-sm-8 { - width: 66.66666666666666%; - } - .col-sm-7 { - width: 58.333333333333336%; - } - .col-sm-6 { - width: 50%; - } - .col-sm-5 { - width: 41.66666666666667%; - } - .col-sm-4 { - width: 33.33333333333333%; - } - .col-sm-3 { - width: 25%; - } - .col-sm-2 { - width: 16.666666666666664%; - } - .col-sm-1 { - width: 8.333333333333332%; - } - .col-sm-pull-12 { - right: 100%; - } - .col-sm-pull-11 { - right: 91.66666666666666%; - } - .col-sm-pull-10 { - right: 83.33333333333334%; - } - .col-sm-pull-9 { - right: 75%; - } - .col-sm-pull-8 { - right: 66.66666666666666%; - } - .col-sm-pull-7 { - right: 58.333333333333336%; - } - .col-sm-pull-6 { - right: 50%; - } - .col-sm-pull-5 { - right: 41.66666666666667%; - } - .col-sm-pull-4 { - right: 33.33333333333333%; - } - .col-sm-pull-3 { - right: 25%; - } - .col-sm-pull-2 { - right: 16.666666666666664%; - } - .col-sm-pull-1 { - right: 8.333333333333332%; - } - .col-sm-pull-0 { - right: 0%; - } - .col-sm-push-12 { - left: 100%; - } - .col-sm-push-11 { - left: 91.66666666666666%; - } - .col-sm-push-10 { - left: 83.33333333333334%; - } - .col-sm-push-9 { - left: 75%; - } - .col-sm-push-8 { - left: 66.66666666666666%; - } - .col-sm-push-7 { - left: 58.333333333333336%; - } - .col-sm-push-6 { - left: 50%; - } - .col-sm-push-5 { - left: 41.66666666666667%; - } - .col-sm-push-4 { - left: 33.33333333333333%; - } - .col-sm-push-3 { - left: 25%; - } - .col-sm-push-2 { - left: 16.666666666666664%; - } - .col-sm-push-1 { - left: 8.333333333333332%; - } - .col-sm-push-0 { - left: 0%; - } - .col-sm-offset-12 { - margin-left: 100%; - } - .col-sm-offset-11 { - margin-left: 91.66666666666666%; - } - .col-sm-offset-10 { - margin-left: 83.33333333333334%; - } - .col-sm-offset-9 { - margin-left: 75%; - } - .col-sm-offset-8 { - margin-left: 66.66666666666666%; - } - .col-sm-offset-7 { - margin-left: 58.333333333333336%; - } - .col-sm-offset-6 { - margin-left: 50%; - } - .col-sm-offset-5 { - margin-left: 41.66666666666667%; - } - .col-sm-offset-4 { - margin-left: 33.33333333333333%; - } - .col-sm-offset-3 { - margin-left: 25%; - } - .col-sm-offset-2 { - margin-left: 16.666666666666664%; - } - .col-sm-offset-1 { - margin-left: 8.333333333333332%; - } - .col-sm-offset-0 { - margin-left: 0%; - } -} -@media (min-width: 992px) { - .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { - float: left; - } - .col-md-12 { - width: 100%; - } - .col-md-11 { - width: 91.66666666666666%; - } - .col-md-10 { - width: 83.33333333333334%; - } - .col-md-9 { - width: 75%; - } - .col-md-8 { - width: 66.66666666666666%; - } - .col-md-7 { - width: 58.333333333333336%; - } - .col-md-6 { - width: 50%; - } - .col-md-5 { - width: 41.66666666666667%; - } - .col-md-4 { - width: 33.33333333333333%; - } - .col-md-3 { - width: 25%; - } - .col-md-2 { - width: 16.666666666666664%; - } - .col-md-1 { - width: 8.333333333333332%; - } - .col-md-pull-12 { - right: 100%; - } - .col-md-pull-11 { - right: 91.66666666666666%; - } - .col-md-pull-10 { - right: 83.33333333333334%; - } - .col-md-pull-9 { - right: 75%; - } - .col-md-pull-8 { - right: 66.66666666666666%; - } - .col-md-pull-7 { - right: 58.333333333333336%; - } - .col-md-pull-6 { - right: 50%; - } - .col-md-pull-5 { - right: 41.66666666666667%; - } - .col-md-pull-4 { - right: 33.33333333333333%; - } - .col-md-pull-3 { - right: 25%; - } - .col-md-pull-2 { - right: 16.666666666666664%; - } - .col-md-pull-1 { - right: 8.333333333333332%; - } - .col-md-pull-0 { - right: 0%; - } - .col-md-push-12 { - left: 100%; - } - .col-md-push-11 { - left: 91.66666666666666%; - } - .col-md-push-10 { - left: 83.33333333333334%; - } - .col-md-push-9 { - left: 75%; - } - .col-md-push-8 { - left: 66.66666666666666%; - } - .col-md-push-7 { - left: 58.333333333333336%; - } - .col-md-push-6 { - left: 50%; - } - .col-md-push-5 { - left: 41.66666666666667%; - } - .col-md-push-4 { - left: 33.33333333333333%; - } - .col-md-push-3 { - left: 25%; - } - .col-md-push-2 { - left: 16.666666666666664%; - } - .col-md-push-1 { - left: 8.333333333333332%; - } - .col-md-push-0 { - left: 0%; - } - .col-md-offset-12 { - margin-left: 100%; - } - .col-md-offset-11 { - margin-left: 91.66666666666666%; - } - .col-md-offset-10 { - margin-left: 83.33333333333334%; - } - .col-md-offset-9 { - margin-left: 75%; - } - .col-md-offset-8 { - margin-left: 66.66666666666666%; - } - .col-md-offset-7 { - margin-left: 58.333333333333336%; - } - .col-md-offset-6 { - margin-left: 50%; - } - .col-md-offset-5 { - margin-left: 41.66666666666667%; - } - .col-md-offset-4 { - margin-left: 33.33333333333333%; - } - .col-md-offset-3 { - margin-left: 25%; - } - .col-md-offset-2 { - margin-left: 16.666666666666664%; - } - .col-md-offset-1 { - margin-left: 8.333333333333332%; - } - .col-md-offset-0 { - margin-left: 0%; - } -} -@media (min-width: 1200px) { - .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { - float: left; - } - .col-lg-12 { - width: 100%; - } - .col-lg-11 { - width: 91.66666666666666%; - } - .col-lg-10 { - width: 83.33333333333334%; - } - .col-lg-9 { - width: 75%; - } - .col-lg-8 { - width: 66.66666666666666%; - } - .col-lg-7 { - width: 58.333333333333336%; - } - .col-lg-6 { - width: 50%; - } - .col-lg-5 { - width: 41.66666666666667%; - } - .col-lg-4 { - width: 33.33333333333333%; - } - .col-lg-3 { - width: 25%; - } - .col-lg-2 { - width: 16.666666666666664%; - } - .col-lg-1 { - width: 8.333333333333332%; - } - .col-lg-pull-12 { - right: 100%; - } - .col-lg-pull-11 { - right: 91.66666666666666%; - } - .col-lg-pull-10 { - right: 83.33333333333334%; - } - .col-lg-pull-9 { - right: 75%; - } - .col-lg-pull-8 { - right: 66.66666666666666%; - } - .col-lg-pull-7 { - right: 58.333333333333336%; - } - .col-lg-pull-6 { - right: 50%; - } - .col-lg-pull-5 { - right: 41.66666666666667%; - } - .col-lg-pull-4 { - right: 33.33333333333333%; - } - .col-lg-pull-3 { - right: 25%; - } - .col-lg-pull-2 { - right: 16.666666666666664%; - } - .col-lg-pull-1 { - right: 8.333333333333332%; - } - .col-lg-pull-0 { - right: 0%; - } - .col-lg-push-12 { - left: 100%; - } - .col-lg-push-11 { - left: 91.66666666666666%; - } - .col-lg-push-10 { - left: 83.33333333333334%; - } - .col-lg-push-9 { - left: 75%; - } - .col-lg-push-8 { - left: 66.66666666666666%; - } - .col-lg-push-7 { - left: 58.333333333333336%; - } - .col-lg-push-6 { - left: 50%; - } - .col-lg-push-5 { - left: 41.66666666666667%; - } - .col-lg-push-4 { - left: 33.33333333333333%; - } - .col-lg-push-3 { - left: 25%; - } - .col-lg-push-2 { - left: 16.666666666666664%; - } - .col-lg-push-1 { - left: 8.333333333333332%; - } - .col-lg-push-0 { - left: 0%; - } - .col-lg-offset-12 { - margin-left: 100%; - } - .col-lg-offset-11 { - margin-left: 91.66666666666666%; - } - .col-lg-offset-10 { - margin-left: 83.33333333333334%; - } - .col-lg-offset-9 { - margin-left: 75%; - } - .col-lg-offset-8 { - margin-left: 66.66666666666666%; - } - .col-lg-offset-7 { - margin-left: 58.333333333333336%; - } - .col-lg-offset-6 { - margin-left: 50%; - } - .col-lg-offset-5 { - margin-left: 41.66666666666667%; - } - .col-lg-offset-4 { - margin-left: 33.33333333333333%; - } - .col-lg-offset-3 { - margin-left: 25%; - } - .col-lg-offset-2 { - margin-left: 16.666666666666664%; - } - .col-lg-offset-1 { - margin-left: 8.333333333333332%; - } - .col-lg-offset-0 { - margin-left: 0%; - } -} - -.header { - background: #f4f4f4; /* Neutral 3*/ - border-bottom: 2px solid #ececec; /* Neutral 4*/ - border-radius:none; - padding-top: 1em; - padding-bottom: 1em; - margin:0 0 30px 0; -} -.header h1 { - color:#325c80; - font-size: 2.441em; -} -@media (min-width: 500px) { - .header h1 { - font-size: 4.209em; - } -} - -table { - max-width: 100%; - background-color: transparent; -} -th { - text-align: left; - background-color: #c0e6ff; /* blue 10*/ -/* border-top: 2px solid #325c80;*/ -} -.table { - width: 100%; - margin-bottom: 18px; -} -.table > thead > tr > th, -.table > tbody > tr > th, -.table > tfoot > tr > th, -.table > thead > tr > td, -.table > tbody > tr > td, -.table > tfoot > tr > td { - padding: 8px; - line-height: 1.428571429; - vertical-align: top; -} -.table > thead > tr > th { - vertical-align: bottom; -} -.table > caption + thead > tr:first-child > th, -.table > colgroup + thead > tr:first-child > th, -.table > thead:first-child > tr:first-child > th, -.table > caption + thead > tr:first-child > td, -.table > colgroup + thead > tr:first-child > td, -.table > thead:first-child > tr:first-child > td { - border-top: 0; -} -.table > tbody + tbody { - border-top: 2px solid #f4f4f4; /* Neutral 3*/ -} -.table .table { - background-color: #ffffff; -} -.table-condensed > thead > tr > th, -.table-condensed > tbody > tr > th, -.table-condensed > tfoot > tr > th, -.table-condensed > thead > tr > td, -.table-condensed > tbody > tr > td, -.table-condensed > tfoot > tr > td { - padding: 5px; -} -.table-bordered { - border: 1px solid #f4f4f4; /* Neutral 3*/ -} -.table-bordered > thead > tr > th, -.table-bordered > tbody > tr > th, -.table-bordered > tfoot > tr > th, -.table-bordered > thead > tr > td, -.table-bordered > tbody > tr > td, -.table-bordered > tfoot > tr > td { - border: 1px solid #f4f4f4; /* Neutral 3*/ -} -.table-bordered > thead > tr > th, -.table-bordered > thead > tr > td { - border-bottom-width: 2px; -} -.table-striped > tbody > tr:nth-child(odd) > td, -.table-striped > tbody > tr:nth-child(odd) > th { - background-color: #f4f4f4; /* Neutral 3*/ -} -.table-hover > tbody > tr:hover > td, -.table-hover > tbody > tr:hover > th { - background-color: #C0E6FF; /*blue 10*/ -} -table col[class*="col-"] { - position: static; - float: none; - display: table-column; -} -table td[class*="col-"], -table th[class*="col-"] { - position: static; - float: none; - display: table-cell; -} -.table > thead > tr > td.active, -.table > tbody > tr > td.active, -.table > tfoot > tr > td.active, -.table > thead > tr > th.active, -.table > tbody > tr > th.active, -.table > tfoot > tr > th.active, -.table > thead > tr.active > td, -.table > tbody > tr.active > td, -.table > tfoot > tr.active > td, -.table > thead > tr.active > th, -.table > tbody > tr.active > th, -.table > tfoot > tr.active > th { - background-color: #C0E6FF; /*blue 10*/ -} -.table-hover > tbody > tr > td.active:hover, -.table-hover > tbody > tr > th.active:hover, -.table-hover > tbody > tr.active:hover > td, -.table-hover > tbody > tr.active:hover > th { - background-color: #C0E6FF; /*blue 10*/ -} -.table > thead > tr > td.success, -.table > tbody > tr > td.success, -.table > tfoot > tr > td.success, -.table > thead > tr > th.success, -.table > tbody > tr > th.success, -.table > tfoot > tr > th.success, -.table > thead > tr.success > td, -.table > tbody > tr.success > td, -.table > tfoot > tr.success > td, -.table > thead > tr.success > th, -.table > tbody > tr.success > th, -.table > tfoot > tr.success > th { - background-color: #C8F08F; /*green 10*/ -} -.table-hover > tbody > tr > td.success:hover, -.table-hover > tbody > tr > th.success:hover, -.table-hover > tbody > tr.success:hover > td, -.table-hover > tbody > tr.success:hover > th { - background-color: #C8F08F; /*green 10*/; -} -.table > thead > tr > td.info, -.table > tbody > tr > td.info, -.table > tfoot > tr > td.info, -.table > thead > tr > th.info, -.table > tbody > tr > th.info, -.table > tfoot > tr > th.info, -.table > thead > tr.info > td, -.table > tbody > tr.info > td, -.table > tfoot > tr.info > td, -.table > thead > tr.info > th, -.table > tbody > tr.info > th, -.table > tfoot > tr.info > th { - background-color: #C0E6FF; /*blue 10*/ -} -.table-hover > tbody > tr > td.info:hover, -.table-hover > tbody > tr > th.info:hover, -.table-hover > tbody > tr.info:hover > td, -.table-hover > tbody > tr.info:hover > th { - background-color: #C0E6FF; /*blue 10*/ -} -.table > thead > tr > td.warning, -.table > tbody > tr > td.warning, -.table > tfoot > tr > td.warning, -.table > thead > tr > th.warning, -.table > tbody > tr > th.warning, -.table > tfoot > tr > th.warning, -.table > thead > tr.warning > td, -.table > tbody > tr.warning > td, -.table > tfoot > tr.warning > td, -.table > thead > tr.warning > th, -.table > tbody > tr.warning > th, -.table > tfoot > tr.warning > th { - background-color: #FFD791; /*orange 10*/ -} -.table-hover > tbody > tr > td.warning:hover, -.table-hover > tbody > tr > th.warning:hover, -.table-hover > tbody > tr.warning:hover > td, -.table-hover > tbody > tr.warning:hover > th { - background-color: #FFD791; /*orange 10*/ -} -.table > thead > tr > td.danger, -.table > tbody > tr > td.danger, -.table > tfoot > tr > td.danger, -.table > thead > tr > th.danger, -.table > tbody > tr > th.danger, -.table > tfoot > tr > th.danger, -.table > thead > tr.danger > td, -.table > tbody > tr.danger > td, -.table > tfoot > tr.danger > td, -.table > thead > tr.danger > th, -.table > tbody > tr.danger > th, -.table > tfoot > tr.danger > th { - background-color: #FFD791; /*orange 10*/ -} -.table-hover > tbody > tr > td.danger:hover, -.table-hover > tbody > tr > th.danger:hover, -.table-hover > tbody > tr.danger:hover > td, -.table-hover > tbody > tr.danger:hover > th { - background-color: #FFD791; /*orange 10*/ -} -@media (max-width: 767px) { - .table-responsive { - width: 100%; - margin-bottom: 13.5px; - overflow-y: hidden; - overflow-x: scroll; - -ms-overflow-style: -ms-autohiding-scrollbar; - border: 1px solid #f4f4f4; /* Neutral 3*/ - -webkit-overflow-scrolling: touch; - } - .table-responsive > .table { - margin-bottom: 0; - } - .table-responsive > .table > thead > tr > th, - .table-responsive > .table > tbody > tr > th, - .table-responsive > .table > tfoot > tr > th, - .table-responsive > .table > thead > tr > td, - .table-responsive > .table > tbody > tr > td, - .table-responsive > .table > tfoot > tr > td { - white-space: nowrap; - } - .table-responsive > .table-bordered { - border: 0; - } - .table-responsive > .table-bordered > thead > tr > th:first-child, - .table-responsive > .table-bordered > tbody > tr > th:first-child, - .table-responsive > .table-bordered > tfoot > tr > th:first-child, - .table-responsive > .table-bordered > thead > tr > td:first-child, - .table-responsive > .table-bordered > tbody > tr > td:first-child, - .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; - } - .table-responsive > .table-bordered > thead > tr > th:last-child, - .table-responsive > .table-bordered > tbody > tr > th:last-child, - .table-responsive > .table-bordered > tfoot > tr > th:last-child, - .table-responsive > .table-bordered > thead > tr > td:last-child, - .table-responsive > .table-bordered > tbody > tr > td:last-child, - .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; - } - .table-responsive > .table-bordered > tbody > tr:last-child > th, - .table-responsive > .table-bordered > tfoot > tr:last-child > th, - .table-responsive > .table-bordered > tbody > tr:last-child > td, - .table-responsive > .table-bordered > tfoot > tr:last-child > td { - border-bottom: 0; - } -} - -/*code pen table */ -table { - margin: 2em 0 0 0; - /*border-bottom: 3px solid #c0e6ff;*/ - width: 100%; - padding:0; - border-collapse: collapse; - border-spacing: 0; - color: #5a5a5a; /*gray 60*/ - } - - table tr { - border-bottom: 2px solid #c0e6ff; /*blue 10*/ - padding: 5px; - } - - - table th, table td { - padding: 1em; - text-align: left; - } - - table th { - text-transform: uppercase; - letter-spacing: 1px; - color:#325c80; /*blue 60*/ - } - - @media screen and (max-width: 800px) { - - table { - border: 0; - } - - table thead { - display: none; - } - - table tr { - margin-bottom: 10px; - display: block; - border-top: 3px solid #325c80; /*blue 60*/ - } - - table td { - display: block; - text-align: right; - border-bottom: 2px solid #c0e6ff; /*blue 10*/ - } - - table td:last-child { - border-bottom: 0; - } - - table td:before { - content: attr(data-label); - float: left; - text-transform: uppercase; - font-weight: 700; - color: #325c80; /*blue 60*/ - - } - } - -/*code pen table */ -fieldset { - padding: 0; - margin: 0; - border: 0; - min-width: 0; -} -label { - display: inline-block; - margin-bottom: 5px; -} -input[type="search"] { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} -input[type="radio"], -input[type="checkbox"] { - margin: 1em; - margin-top: 1px \9; - /* IE8-9 */ - line-height: normal; -} -input[type="file"] { - display: block; -} -input[type="range"] { - display: block; - width: 100%; -} -select[multiple], -select[size] { - height: auto; -} -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; -} -.form-control { - display: block; - width: 100%; - height: 2.5em; - padding: 6px 12px; - margin-bottom: 1em; - font-size: 1em; - line-height: 1.428571429; - color: #777677; /*gray 50*/ - background-color: #fff; - background-image: none; - border: 1px solid #e0e0e0; /*gray 10*/ - border-radius: 0px; - -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; - transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; -} -.form-control:focus { - border-color: #325c80; b/*lue 60*/ - outline: 0; -} -.form-control::-moz-placeholder { - color: #777677; /*gray 50*/ - opacity: 1; -} -.form-control:-ms-input-placeholder { - color: #777677; /*gray 50*/ -} -.form-control::-webkit-input-placeholder { - color: #777677; /*gray 50*/ -} -.form-control[disabled], -.form-control[readonly], -fieldset[disabled] .form-control { - cursor: not-allowed; - background-color: #fff; - opacity: 1; -} -textarea.form-control { - height: auto; - resize: vertical; -} -input[type="search"] { - -webkit-appearance: none; -} -input[type="date"] { - line-height: 32px; -} -.radio, -.checkbox { - display: block; - min-height: 18px; - margin-top: 10px; - margin-bottom: 10px; - padding-left: 1em; -} -.radio label, -.checkbox label { - display: inline; - font-weight: normal; - cursor: pointer; -} -.radio input[type="radio"], -.radio-inline input[type="radio"], -.checkbox input[type="checkbox"], -.checkbox-inline input[type="checkbox"] { - float: left; - margin-left: 1em; -} -.radio + .radio, -.checkbox + .checkbox { - margin-top: -5px; -} -.radio-inline, -.checkbox-inline { - display: inline-block; - padding-left: 20px; - margin-bottom: 0; - vertical-align: middle; - font-weight: normal; - cursor: pointer; -} -.radio-inline + .radio-inline, -.checkbox-inline + .checkbox-inline { - margin-top: 0; - margin-left: 1em; -} -input[type="radio"][disabled], -input[type="checkbox"][disabled], -.radio[disabled], -.radio-inline[disabled], -.checkbox[disabled], -.checkbox-inline[disabled], -fieldset[disabled] input[type="radio"], -fieldset[disabled] input[type="checkbox"], -fieldset[disabled] .radio, -fieldset[disabled] .radio-inline, -fieldset[disabled] .checkbox, -fieldset[disabled] .checkbox-inline { - cursor: not-allowed; -} -.input-sm { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 0px; -} -select.input-sm { - height: 30px; - line-height: 30px; -} -textarea.input-sm, -select[multiple].input-sm { - height: auto; -} -.input-lg { - height: 45px; - padding: 10px 16px; - font-size: 17px; - line-height: 1.33; - border-radius: 0px; -} -select.input-lg { - height: 45px; - line-height: 45px; -} -textarea.input-lg, -select[multiple].input-lg { - height: auto; -} -.has-feedback { - position: relative; -} -.has-feedback .form-control { - padding-right: 40px; -} -.has-feedback .form-control-feedback { - position: absolute; - top: 23px; - right: 0; - display: block; - width: 32px; - height: 32px; - line-height: 32px; - text-align: center; -} -.has-success .help-block, -.has-success .control-label, -.has-success .radio, -.has-success .checkbox, -.has-success .radio-inline, -.has-success .checkbox-inline { - color: #325C80; /*blue 60*/ -} -.has-success .form-control { - border-color: #325C80; /*blue 60*/ - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -} -.has-success .form-control:focus { - border-color: #2b542c; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; -} -.has-success .input-group-addon { - color: #325C80; /*blue 60*/ - border-color: #325C80; /*blue 60*/ - background-color: #C0E6FF; /*blue 10*/ -} -.has-success .form-control-feedback { - color: #325C80; -} -.has-warning .help-block, -.has-warning .control-label, -.has-warning .radio, -.has-warning .checkbox, -.has-warning .radio-inline, -.has-warning .checkbox-inline { - color: #A53725; /*orange 60*/ -} -.has-warning .form-control { - border-color: #A53725;/*orange 60*/ - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -} -.has-warning .form-control:focus { - border-color: #A53725;/*orange 60*/ - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #A53725; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #A53725; -} -.has-warning .input-group-addon { - color: #A53725;/*orange 60*/ - border-color: #A53725;/*orange 60*/ - background-color: #FFD791;/*orange 10*/ -} -.has-warning .form-control-feedback { - color: #A53725;/*orange 60*/ -} -.has-error .help-block, -.has-error .control-label, -.has-error .radio, -.has-error .checkbox, -.has-error .radio-inline, -.has-error .checkbox-inline { - color: #AD1625; /*red 60*/ -} -.has-error .form-control { - border-color: #AD1625; #AD1625; /*red 60*/ - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -} -.has-error .form-control:focus { - border-color: #843534; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; -} -.has-error .input-group-addon { - color: #AD1625; #AD1625; /*red 60*/ - border-color: #AD1625; #AD1625; /*red 60*/ - background-color: #f2dede; -} -.has-error .form-control-feedback { - color: #AD1625; #AD1625; /*red 60*/ -} -.form-control-static { - margin-bottom: 0; -} -.help-block { - display: block; - color: #5a5a5a; /*gray 60*/ - padding-bottom: 1em; -} -@media (min-width: 768px) { - .form-inline .form-group { - display: inline-block; - margin-bottom: 1em; - vertical-align: middle; - } - .form-inline .form-control { - display: inline-block; - width: auto; - vertical-align: middle; - } - .form-inline .input-group > .form-control { - width: 100%; - } - .form-inline .control-label { - margin-bottom: 0; - vertical-align: middle; - } - .form-inline .radio, - .form-inline .checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - padding-left: 0; - vertical-align: middle; - } - .form-inline .radio input[type="radio"], - .form-inline .checkbox input[type="checkbox"] { - float: none; - margin-left: 0; - } - .form-inline .has-feedback .form-control-feedback { - top: 0; - } -} -.form-horizontal .control-label, -.form-horizontal .radio, -.form-horizontal .checkbox, -.form-horizontal .radio-inline, -.form-horizontal .checkbox-inline { - margin-top: 0; - margin-bottom: 0; - padding-top: 7px; -} -.form-horizontal .radio, -.form-horizontal .checkbox { - min-height: 25px; -} -.form-horizontal .form-group { - margin-left: -15px; - margin-right: -15px; -/* margin-bottom: 1em;*/ -} -.form-horizontal .form-control-static { - padding-top: 7px; -} -@media (min-width: 768px) { - .form-horizontal .control-label { - text-align: left; - font-size:12px; - } -} -.form-horizontal .has-feedback .form-control-feedback { - top: 0; - right: 1em; -} -.btn { - display: inline-block; - font-weight: 400; - text-align: center; - cursor: pointer; - background-image: none; - border: 2px solid transparent; - white-space: nowrap; - padding: 1em; - line-height: 1.428571429; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - -webkit-transition: .15s; - transition: .15s; - color: #fff; - background-color: #325c80; - margin-bottom: 2em; -} -.btn:focus, -.btn:active:focus, -.btn.active:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} -.btn:hover, -.btn:focus { - text-decoration: none; - color: #fff; - background-color: #264a60; /*blue 70*/ -} -.btn:active, -.btn.active { - outline: 0; - background-image: none; - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); -} -.btn.disabled, -.btn[disabled], -fieldset[disabled] .btn { - cursor: not-allowed; - pointer-events: none; - opacity: 0.65; - filter: alpha(opacity=65); - -webkit-box-shadow: none; - box-shadow: none; -} -.btn-default { - color: #121212; /*gray 90*/ - background-color: transparent; - border: 2px solid #c7c7c7; /*gray 20*/ - width: 100%; - text-align: left; - padding: 1em; -} -.btn-default:hover, -.btn-default:focus, -.btn-default:active, -.btn-default.active, -.open .dropdown-toggle.btn-default { - color: #121212; /*gray 90*/ - background-color: #fff; - border: 2px solid #c7c7c7; /*gray 20*/ - -} -.btn-default:active, -.btn-default.active, -.open .dropdown-toggle.btn-default { - background-image: none; -} -.btn-default.disabled, -.btn-default[disabled], -fieldset[disabled] .btn-default, -.btn-default.disabled:hover, -.btn-default[disabled]:hover, -fieldset[disabled] .btn-default:hover, -.btn-default.disabled:focus, -.btn-default[disabled]:focus, -fieldset[disabled] .btn-default:focus, -.btn-default.disabled:active, -.btn-default[disabled]:active, -fieldset[disabled] .btn-default:active, -.btn-default.disabled.active, -.btn-default[disabled].active, -fieldset[disabled] .btn-default.active { - background-color: transparent; - border-color: #aeaeae; /*gray 30*/ -} -.btn-default .badge { - color: transparent; - background-color: #333333; -} -.btn-primary { - color: #325c80; - background-color: transparent; - border-color: #325c80; -} -.btn-primary:hover, -.btn-primary:focus, -.btn-primary:active, -.btn-primary.active, -.open .dropdown-toggle.btn-primary { - color: #325c80; - background-color: rgba(0, 0, 0, 0); - border-color: #325c80; -} - -.btn-secondary { - display: inline-block; - font-weight: 400; - text-align: center; - cursor: pointer; - background-image: none; - border: 2px solid transparent; - white-space: nowrap; - padding: 1em; - line-height: 1.428571429; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - -webkit-transition: .15s; - transition: .15s; - color: #fff; - background-color: #A53725; /*orange 70*/ - margin-bottom: 2em; -} -.btn-secondary:hover, -.btn-secondary:focus, -.btn-secondary:active, -.btn-secondary.active, -.open .dropdown-toggle.btn-secondary { - background-color: #6D120F; /*orange 80*/ -} -.btn-secondary:active, -.btn-secondary.active, -.open .dropdown-toggle.btn-secondary { - background-image: none; -} -.btn-primary.disabled, -.btn-primary[disabled], -fieldset[disabled] .btn-primary, -.btn-primary.disabled:hover, -.btn-primary[disabled]:hover, -fieldset[disabled] .btn-primary:hover, -.btn-primary.disabled:focus, -.btn-primary[disabled]:focus, -fieldset[disabled] .btn-primary:focus, -.btn-primary.disabled:active, -.btn-primary[disabled]:active, -fieldset[disabled] .btn-primary:active, -.btn-primary.disabled.active, -.btn-primary[disabled].active, -fieldset[disabled] .btn-primary.active { - background-color: transparent; - border-color: #325c80; -} -.btn-primary .badge { - color: transparent; - background-color: #325c80; -} -.btn-success { - color: #ffffff; - background-color: #8cc63f; - border-color: #8cc63f; -} -.btn-success:hover, -.btn-success:focus, -.btn-success:active, -.btn-success.active, -.open .dropdown-toggle.btn-success { - color: #ffffff; - background-color: #77aa32; - border-color: #5e8628; -} -.btn-success:active, -.btn-success.active, -.open .dropdown-toggle.btn-success { - background-image: none; -} -.btn-success.disabled, -.btn-success[disabled], -fieldset[disabled] .btn-success, -.btn-success.disabled:hover, -.btn-success[disabled]:hover, -fieldset[disabled] .btn-success:hover, -.btn-success.disabled:focus, -.btn-success[disabled]:focus, -fieldset[disabled] .btn-success:focus, -.btn-success.disabled:active, -.btn-success[disabled]:active, -fieldset[disabled] .btn-success:active, -.btn-success.disabled.active, -.btn-success[disabled].active, -fieldset[disabled] .btn-success.active { - background-color: #8cc63f; - border-color: #7fb636; -} -.btn-success .badge { - color: #8cc63f; - background-color: #ffffff; -} -.btn-info { - color: #325C80; /*blue 60*/ - background-color: #C0E6FF; /*blue 10*/ - text-decoration: none; - margin: 1em 1em 1em 0; - border: 1px solid #325C80; /*blue 60*/ -} -.btn-info:hover, -.btn-info:focus, -.btn-info:active, -.btn-info.active, -.open .dropdown-toggle.btn-info { - color: #325C80; /*blue 60*/ - background-color: #C0E6FF; /*blue 10*/ - text-decoration: none; - margin: 1em 1em 0 0; - border: 1px solid #325C80; /*blue 60*/ -} -.btn-info:active, -.btn-info.active, -.open .dropdown-toggle.btn-info { - color: #325C80; /*blue 60*/ - background-color: #C0E6FF; /*blue 10*/ - text-decoration: none; - margin: 1em 1em 0 0; - border: 1px solid #325C80; /*blue 60*/ -} -.btn-info.disabled, -.btn-info[disabled], -fieldset[disabled] .btn-info, -.btn-info.disabled:hover, -.btn-info[disabled]:hover, -fieldset[disabled] .btn-info:hover, -.btn-info.disabled:focus, -.btn-info[disabled]:focus, -fieldset[disabled] .btn-info:focus, -.btn-info.disabled:active, -.btn-info[disabled]:active, -fieldset[disabled] .btn-info:active, -.btn-info.disabled.active, -.btn-info[disabled].active, -fieldset[disabled] .btn-info.active { - background-color: transparent; - border-color: #ffffff; -} -.btn-info .badge { - color: transparent; - background-color: #ffffff; -} -.btn-warning { - color: #ffffff; - background-color: #f19027; - border-color: #ef840f; -} -.btn-warning:hover, -.btn-warning:focus, -.btn-warning:active, -.btn-warning.active, -.open .dropdown-toggle.btn-warning { - color: #ffffff; - background-color: #e17c0f; - border-color: #b6640c; -} -.btn-warning:active, -.btn-warning.active, -.open .dropdown-toggle.btn-warning { - background-image: none; -} -.btn-warning.disabled, -.btn-warning[disabled], -fieldset[disabled] .btn-warning, -.btn-warning.disabled:hover, -.btn-warning[disabled]:hover, -fieldset[disabled] .btn-warning:hover, -.btn-warning.disabled:focus, -.btn-warning[disabled]:focus, -fieldset[disabled] .btn-warning:focus, -.btn-warning.disabled:active, -.btn-warning[disabled]:active, -fieldset[disabled] .btn-warning:active, -.btn-warning.disabled.active, -.btn-warning[disabled].active, -fieldset[disabled] .btn-warning.active { - background-color: #f19027; - border-color: #ef840f; -} -.btn-warning .badge { - color: #f19027; - background-color: #ffffff; -} -.btn-danger { - color: #ffffff; - background-color: #f04e37; - border-color: #ee391f; -} -.btn-danger:hover, -.btn-danger:focus, -.btn-danger:active, -.btn-danger.active, -.open .dropdown-toggle.btn-danger { - color: #ffffff; - background-color: #ec2d12; - border-color: #c2250f; -} -.btn-danger:active, -.btn-danger.active, -.open .dropdown-toggle.btn-danger { - background-image: none; -} -.btn-danger.disabled, -.btn-danger[disabled], -fieldset[disabled] .btn-danger, -.btn-danger.disabled:hover, -.btn-danger[disabled]:hover, -fieldset[disabled] .btn-danger:hover, -.btn-danger.disabled:focus, -.btn-danger[disabled]:focus, -fieldset[disabled] .btn-danger:focus, -.btn-danger.disabled:active, -.btn-danger[disabled]:active, -fieldset[disabled] .btn-danger:active, -.btn-danger.disabled.active, -.btn-danger[disabled].active, -fieldset[disabled] .btn-danger.active { - background-color: #f04e37; - border-color: #ee391f; -} -.btn-danger .badge { - color: #f04e37; - background-color: #ffffff; -} -.btn-link { - color: #fff; - font-weight: normal; - cursor: pointer; - border-radius: 0; - background-color: #D74108; -} -.btn-link, -.btn-link:active, -.btn-link[disabled], -fieldset[disabled] .btn-link { - background-color: transparent; - -webkit-box-shadow: none; - box-shadow: none; -} -.btn-link, -.btn-link:hover, -.btn-link:focus, -.btn-link:active { - border-color: transparent; -} -.btn-link:hover, -.btn-link:focus { - color: #999999; - text-decoration: underline; - background-color: transparent; -} -.btn-link[disabled]:hover, -fieldset[disabled] .btn-link:hover, -.btn-link[disabled]:focus, -fieldset[disabled] .btn-link:focus { - color: #999999; - text-decoration: none; -} -.btn-lg, -.btn-group-lg > .btn { - padding: 10px 16px; - font-size: 17px; - line-height: 1.33; - border-radius: 0px; -} -.btn-sm, -.btn-group-sm > .btn { - padding: 5px 10px; - line-height: 1.5; - border-radius: 0px; -} -.btn-sm { - font-size: 12.8px; - line-height: 1.4em; -} -@media (min-width: 500px) { -.btn-sm { - font-size: 12.03px; - } -} -.btn-xs, -.btn-group-xs > .btn { - padding: 1px 5px; - font-size: 12px; - line-height: 1.5; - border-radius: 0px; -} -.btn-block { - display: block; - width: 100%; - margin-bottom: 2em; -} -.btn-block + .btn-block { - margin-top: 5px; -} -input[type="submit"].btn-block, -input[type="reset"].btn-block, -input[type="button"].btn-block { - width: 100%; -} -.fade { - opacity: 0; - -webkit-transition: opacity 0.15s linear; - transition: opacity 0.15s linear; -} -.fade.in { - opacity: 1; -} -.collapse { - display: none; -} -.collapse.in { - display: block; -} -.collapsing { - position: relative; - height: 0; - overflow: hidden; - -webkit-transition: height 0.35s ease; - transition: height 0.35s ease; -} -@font-face { - font-family: 'Glyphicons Halflings'; - src: url('../fonts/glyphicons-halflings-regular.eot'); - src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); -} - -.caret { - display: inline-block; - width: 1em; - height: 1em; - float: right; - background: url('../images/drop-down-arrow.svg') no-repeat; -} -.clear { - clear: both; -} - -.dropdown { - position: relative; - width: 100%; -} - -.dropdown-toggle:focus { - outline: 0; -} -.dropdown-menu { - position: absolute; - top: 100%; - left: 0; - z-index: 1000; - display: none; - float: left; - min-width: 200px; - padding: 5px 0; - margin: -30px 0 0; - list-style: none; - font-size: 16px; - background-color: #ffffff; - border-radius: 0px; - background-clip: padding-box; - border: 1px solid #E0E0E0; /*gray 10*/ -} -.dropdown-menu.pull-right { - right: 0; - left: auto; -} -.dropdown-menu .divider { - height: 1px; - margin: 8px 0; - overflow: hidden; - background-color: #eeeeee; -} -.dropdown-menu > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: 1.428571429; - color: #333333; - white-space: nowrap; -} -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus { - text-decoration: none; - color: #325C80; /*blue 60*/ - background-color: #C0E6FF; /*blue 10*/ -} -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - color: #ffffff; - text-decoration: none; - outline: 0; - background-color: #325c80; -} -.dropdown-menu > .disabled > a, -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - color: #999999; -} -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - text-decoration: none; - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - cursor: not-allowed; -} -.open > .dropdown-menu { - display: block; -} -.open > a { - outline: 0; -} -.dropdown-menu-right { - left: auto; - right: 0; -} -.dropdown-menu-left { - left: 0; - right: auto; -} -.dropdown-header { - display: block; - padding: 3px 20px; - font-size: 12px; - line-height: 1.428571429; - color: #999999; -} -.dropdown-backdrop { - position: fixed; - left: 0; - right: 0; - bottom: 0; - top: 0; - z-index: 990; -} -.pull-right > .dropdown-menu { - right: 0; - left: auto; -} -.dropup .caret, -.navbar-fixed-bottom .dropdown .caret { - border-top: 0; - border-bottom: 4px solid; - content: ""; -} -.dropup .dropdown-menu, -.navbar-fixed-bottom .dropdown .dropdown-menu { - top: auto; - bottom: 100%; - margin-bottom: 1px; -} - -.btn-group, -.btn-group-vertical { - position: relative; - display: inline-block; - vertical-align: middle; -} -.btn-group > .btn, -.btn-group-vertical > .btn { - position: relative; - float: left; -} -.btn-group > .btn:hover, -.btn-group-vertical > .btn:hover, -.btn-group > .btn:focus, -.btn-group-vertical > .btn:focus, -.btn-group > .btn:active, -.btn-group-vertical > .btn:active, -.btn-group > .btn.active, -.btn-group-vertical > .btn.active { - z-index: 2; -} -.btn-group > .btn:focus, -.btn-group-vertical > .btn:focus { - outline: none; -} -.btn-group .btn + .btn, -.btn-group .btn + .btn-group, -.btn-group .btn-group + .btn, -.btn-group .btn-group + .btn-group { - margin-left: -1px; -} -.btn-toolbar { - margin-left: -5px; -} -.btn-toolbar .btn-group, -.btn-toolbar .input-group { - float: left; -} -.btn-toolbar > .btn, -.btn-toolbar > .btn-group, -.btn-toolbar > .input-group { - margin-left: 5px; -} -.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { - border-radius: 0; -} -.btn-group > .btn:first-child { - margin-left: 0; -} -.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { - border-bottom-right-radius: 0; - border-top-right-radius: 0; -} -.btn-group > .btn:last-child:not(:first-child), -.btn-group > .dropdown-toggle:not(:first-child) { - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} -.btn-group > .btn-group { - float: left; -} -.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; -} -.btn-group > .btn-group:first-child > .btn:last-child, -.btn-group > .btn-group:first-child > .dropdown-toggle { - border-bottom-right-radius: 0; - border-top-right-radius: 0; -} -.btn-group > .btn-group:last-child > .btn:first-child { - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} -.btn-group .dropdown-toggle:active, -.btn-group.open .dropdown-toggle { - outline: 0; -} -.btn-group > .btn + .dropdown-toggle { - padding-left: 8px; - padding-right: 8px; -} -.btn-group > .btn-lg + .dropdown-toggle { - padding-left: 12px; - padding-right: 12px; -} -.btn-group.open .dropdown-toggle { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); -} -.btn-group.open .dropdown-toggle.btn-link { - -webkit-box-shadow: none; - box-shadow: none; -} -.btn .caret { -/* margin-left: .75em;*/ -} -.btn-lg .caret { - border-width: 5px 5px 0; - border-bottom-width: 0; -} -.dropup .btn-lg .caret { - border-width: 0 5px 5px; -} -.btn-group-vertical > .btn, -.btn-group-vertical > .btn-group, -.btn-group-vertical > .btn-group > .btn { - display: block; - float: none; - width: 100%; - max-width: 100%; -} -.btn-group-vertical > .btn-group > .btn { - float: none; -} -.btn-group-vertical > .btn + .btn, -.btn-group-vertical > .btn + .btn-group, -.btn-group-vertical > .btn-group + .btn, -.btn-group-vertical > .btn-group + .btn-group { - margin-top: -1px; - margin-left: 0; -} -.btn-group-vertical > .btn:not(:first-child):not(:last-child) { - border-radius: 0; -} -.btn-group-vertical > .btn:first-child:not(:last-child) { - border-top-right-radius: 4px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.btn-group-vertical > .btn:last-child:not(:first-child) { - border-bottom-left-radius: 4px; - border-top-right-radius: 0; - border-top-left-radius: 0; -} -.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; -} -.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, -.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { - border-top-right-radius: 0; - border-top-left-radius: 0; -} -.btn-group-justified { - display: table; - width: 100%; - table-layout: fixed; - border-collapse: separate; -} -.btn-group-justified > .btn, -.btn-group-justified > .btn-group { - float: none; - display: table-cell; - width: 1%; -} -.btn-group-justified > .btn-group .btn { - width: 100%; -} -[data-toggle="buttons"] > .btn > input[type="radio"], -[data-toggle="buttons"] > .btn > input[type="checkbox"] { - display: none; -} -.input-group { - position: relative; - display: table; - border-collapse: separate; -} -.input-group[class*="col-"] { - float: none; - padding-left: 0; - padding-right: 0; -} -.input-group .form-control { - position: relative; - z-index: 2; - float: left; - width: 100%; - margin-bottom: 0; -} -.input-group-lg > .form-control, -.input-group-lg > .input-group-addon, -.input-group-lg > .input-group-btn > .btn { - height: 45px; - padding: 10px 16px; - font-size: 17px; - line-height: 1.33; - border-radius: 0px; -} -select.input-group-lg > .form-control, -select.input-group-lg > .input-group-addon, -select.input-group-lg > .input-group-btn > .btn { - height: 45px; - line-height: 45px; -} -textarea.input-group-lg > .form-control, -textarea.input-group-lg > .input-group-addon, -textarea.input-group-lg > .input-group-btn > .btn, -select[multiple].input-group-lg > .form-control, -select[multiple].input-group-lg > .input-group-addon, -select[multiple].input-group-lg > .input-group-btn > .btn { - height: auto; -} -.input-group-sm > .form-control, -.input-group-sm > .input-group-addon, -.input-group-sm > .input-group-btn > .btn { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 0px; -} -select.input-group-sm > .form-control, -select.input-group-sm > .input-group-addon, -select.input-group-sm > .input-group-btn > .btn { - height: 30px; - line-height: 30px; -} -textarea.input-group-sm > .form-control, -textarea.input-group-sm > .input-group-addon, -textarea.input-group-sm > .input-group-btn > .btn, -select[multiple].input-group-sm > .form-control, -select[multiple].input-group-sm > .input-group-addon, -select[multiple].input-group-sm > .input-group-btn > .btn { - height: auto; -} -.input-group-addon, -.input-group-btn, -.input-group .form-control { - display: table-cell; -} -.input-group-addon:not(:first-child):not(:last-child), -.input-group-btn:not(:first-child):not(:last-child), -.input-group .form-control:not(:first-child):not(:last-child) { - border-radius: 0; -} -.input-group-addon, -.input-group-btn { - width: 1%; - white-space: nowrap; - vertical-align: middle; -} -.input-group-addon { - padding: 6px 12px; - font-size: 13px; - font-weight: normal; - line-height: 1; - color: #555555; - text-align: center; - background-color: #fff; - border: 1px solid #222222; - border-radius: 0px; -} -.input-group-addon.input-sm { - padding: 5px 10px; - font-size: 12px; - border-radius: 0px; -} -.input-group-addon.input-lg { - padding: 10px 16px; - font-size: 17px; - border-radius: 0px; -} -.input-group-addon input[type="radio"], -.input-group-addon input[type="checkbox"] { - margin-top: 0; -} -.input-group .form-control:first-child, -.input-group-addon:first-child, -.input-group-btn:first-child > .btn, -.input-group-btn:first-child > .btn-group > .btn, -.input-group-btn:first-child > .dropdown-toggle, -.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), -.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { - border-bottom-right-radius: 0; - border-top-right-radius: 0; -} -.input-group-addon:first-child { - border-right: 0; -} -.input-group .form-control:last-child, -.input-group-addon:last-child, -.input-group-btn:last-child > .btn, -.input-group-btn:last-child > .btn-group > .btn, -.input-group-btn:last-child > .dropdown-toggle, -.input-group-btn:first-child > .btn:not(:first-child), -.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} -.input-group-addon:last-child { - border-left: 0; -} -.input-group-btn { - position: relative; - font-size: 0; - white-space: nowrap; -} -.input-group-btn > .btn { - position: relative; -} -.input-group-btn > .btn + .btn { - margin-left: -1px; -} -.input-group-btn > .btn:hover, -.input-group-btn > .btn:focus, -.input-group-btn > .btn:active { - z-index: 2; -} -.input-group-btn:first-child > .btn, -.input-group-btn:first-child > .btn-group { - margin-right: -1px; -} -.input-group-btn:last-child > .btn, -.input-group-btn:last-child > .btn-group { - margin-left: -1px; -} -.nav { - margin-bottom: 0; - padding-left: 0; - list-style: none; -} -.nav > li { - position: relative; - display: block; -} -.nav > li > a { - position: relative; - display: block; - padding: 0 1em 1em 1em; - text-decoration: none; -} -.nav > li > a:hover, -.nav > li > a:focus { - text-decoration: none; -} -.nav > li.disabled > a { - color: #999999; -} -.nav > li.disabled > a:hover, -.nav > li.disabled > a:focus { - color: #999999; - text-decoration: none; - background-color: transparent; - cursor: not-allowed; -} -.nav .open > a, -.nav .open > a:hover, -.nav .open > a:focus { - background-color: #404041; - border-color: #325c80; -} -.nav .nav-divider { - height: 1px; - margin: 8px 0; - overflow: hidden; - background-color: #e5e5e5; -} -.nav > li > a > img { - max-width: none; -} -.nav-tabs > li { - float: left; - margin-bottom: -1px; -} -.nav-tabs > li > a { - color: #A53725;; /*orange 60*/ - margin-right: 2px; - line-height: 1.428571429; - border-radius: 0; -} -.nav-tabs > li > a:hover { - color: #6D120F; /*orange 80*/ - border-bottom: 6px solid #6D120F; /*orange 80*/ -} -.nav-tabs > li.active > a, -.nav-tabs > li.active > a:hover, -.nav-tabs > li.active > a:focus { - color: #A53725; /*orange 60*/ - background-color: #f4f4f4; - border-bottom: 6px solid #A53725; /*orange 60*/ - cursor: default; -} -.nav-tabs > li.active > a { - font-weight: 700; -} -.nav-tabs > li.active > a:hover { - color: #A53725; /*orange 60*/ - text-decoration: none; - border-bottom: 6px solid #A53725; /*orange 60*/ -} -.nav-tabs.nav-justified { - width: 100%; - border-bottom: 0; -} -.nav-tabs.nav-justified > li { - float: none; -} -.nav-tabs.nav-justified > li > a { - text-align: center; - margin-bottom: 5px; -} -.nav-tabs.nav-justified > .dropdown .dropdown-menu { - top: auto; - left: auto; -} - -.nav-tabs.nav-justified > li > a { - margin-right: 0; - border-radius: 0px; -} -.nav-tabs.nav-justified > .active > a, -.nav-tabs.nav-justified > .active > a:hover, -.nav-tabs.nav-justified > .active > a:focus { - border: 1px solid #dddddd; -} - -.nav-pills > li { - float: left; -} -.nav-pills > li > a { - border-radius: 0px; -} -.nav-pills > li + li { - margin-left: 2px; -} -.nav-pills > li.active > a, -.nav-pills > li.active > a:hover, -.nav-pills > li.active > a:focus { - color: #ffffff; - background-color: #325c80; -} -.nav-stacked > li { - float: none; -} -.nav-stacked > li + li { - margin-top: 2px; - margin-left: 0; -} -.nav-justified { - width: 100%; -} -.nav-justified > li { - float: none; -} -.nav-justified > li > a { - text-align: center; - margin-bottom: 5px; -} -.nav-justified > .dropdown .dropdown-menu { - top: auto; - left: auto; -} -@media (min-width: 768px) { - .nav-justified > li { - display: table-cell; - width: 1%; - } - .nav-justified > li > a { - margin-bottom: 0; - } -} -.nav-tabs-justified { - border-bottom: 0; -} -.nav-tabs-justified > li > a { - margin-right: 0; - border-radius: 0px; -} -.nav-tabs-justified > .active > a, -.nav-tabs-justified > .active > a:hover, -.nav-tabs-justified > .active > a:focus { - border: 1px solid #dddddd; -} -@media (min-width: 768px) { - .nav-tabs-justified > li > a { - border-bottom: 1px solid #dddddd; - border-radius: 0; - } - .nav-tabs-justified > .active > a, - .nav-tabs-justified > .active > a:hover, - .nav-tabs-justified > .active > a:focus { - border-bottom-color: #ffffff; - } -} -.fixed-nav { - position: fixed; - width: 230px; - margin-top: 86px; - margin-left: 44px; - font-family: "HelveticaNeue Light"; -} -.fixed-nav nav { - width: 100%; -} -.fixed-nav nav ul { - width: 100%; - padding: 0px; - margin: 0px; - -webkit-transform: translate3d(0, 0, 0); - -moz-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); -} -.fixed-nav nav ul li { - width: 100%; - margin-bottom: 5px; -} -.fixed-nav nav ul li > * { - word-wrap: break-word; -} -.fixed-nav ul { - list-style-type: none; -} -.fixed-nav ul > ul, .fixed-nav nav ul > .fixed-nav ul { - padding-left: 15px; - border-left: 1px solid #D0CFCE; -} -.fixed-nav ul > li p { - margin: 0px; -} -.navbar-fixed-top .container { - width: 96%; -} -.anchor{ - display: block; - height: 55px; /*same height as header*/ - margin-top: -55px; /*same height as header*/ - visibility: hidden; -} -.tab-content > .tab-pane { - display: none; -} -.tab-content > .active { - display: block; -} -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-right-radius: 0; - border-top-left-radius: 0; -} -.navbar { - position: relative; - min-height: 3.45em; -} -@media (min-width: 768px) { - .navbar { - border-radius: 0px; - } -} -@media (min-width: 768px) { - .navbar-header { - float: left; - } -} -.navbar-collapse { - max-height: 340px; - overflow-x: visible; - border-top: 1px solid transparent; - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); - -webkit-overflow-scrolling: touch; -} -.navbar-collapse.in { - overflow-y: auto; -} -@media (min-width: 768px) { - .navbar-collapse { - width: auto; - border-top: 0; - box-shadow: none; - } - .navbar-collapse.collapse { - display: block !important; - height: auto !important; - padding-bottom: 0; - overflow: visible !important; - } - .navbar-collapse.in { - overflow-y: visible; - } - .navbar-fixed-top .navbar-collapse, - .navbar-static-top .navbar-collapse, - .navbar-fixed-bottom .navbar-collapse { - padding-left: 0; - padding-right: 0; - } -} -.container > .navbar-header, -.container-fluid > .navbar-header, -.container > .navbar-collapse, -.container-fluid > .navbar-collapse { - margin-right: -15px; - margin-left: -15px; -} -@media (min-width: 768px) { - .container > .navbar-header, - .container-fluid > .navbar-header, - .container > .navbar-collapse, - .container-fluid > .navbar-collapse { - margin-right: 0; - margin-left: 0; - } -} -.navbar-static-top { - border-width: 0 0 1px; -} -@media (min-width: 768px) { - .navbar-static-top { - border-radius: 0; - } -} -.navbar-fixed-top, -.navbar-fixed-bottom { - position: relative; - right: 0; - left: 0; -/* z-index: 1030;*/ -} -@media (min-width: 768px) { - .navbar-fixed-top, - .navbar-fixed-bottom { - border-radius: 0; - } -} -.navbar-fixed-top { - top: 0; - border-width: 0 0 1px; -} -.after-navbar { - margin-top: 50px; -} -.navbar-fixed-bottom { - bottom: 0; - margin-bottom: 0; - border-width: 1px 0 0; -} -.navbar-brand { - float: left; - padding: 20px 15px; - font-size: 17px; - line-height: 18px; - height: 50px; - font-family: "HelveticaNeue Medium"; -} -.navbar-brand:hover, -.navbar-brand:focus { - text-decoration: none; -} -@media (min-width: 768px) { - .navbar > .container .navbar-brand, - .navbar > .container-fluid .navbar-brand { - margin-left: -15px; - } -} -.navbar-toggle { - position: relative; - float: right; - margin-right: 15px; - padding: 9px 10px; - margin-top: 8px; - margin-bottom: 8px; -} -.navbar-toggle:focus { - outline: none; -} -.navbar-toggle .icon-bar { - display: block; - width: 22px; - height: 2px; -} -.navbar-toggle .icon-bar + .icon-bar { - margin-top: 4px; -} -@media (min-width: 768px) { - .navbar-toggle { - display: none; - } -} -.navbar-nav { - margin: 8px -15px; -} -.navbar-nav > li > a { - padding-top: 10px; - padding-bottom: 10px; - line-height: 18px; -} -@media (max-width: 767px) { - .navbar-nav .open .dropdown-menu { - position: static; - float: none; - width: auto; - margin-top: 0; - border: 0; - box-shadow: none; - } - .navbar-nav .open .dropdown-menu > li > a, - .navbar-nav .open .dropdown-menu .dropdown-header { - padding: 5px 15px 5px 25px; - } - .navbar-nav .open .dropdown-menu > li > a { - line-height: 18px; - } - .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-nav .open .dropdown-menu > li > a:focus { - background-image: none; - } -} -@media (min-width: 768px) { - .navbar-nav { - margin: 0; - } - .navbar-nav > li { - float: left; - } - .navbar-nav.navbar-right:last-child { - margin-right: -15px; - } -} -@media (min-width: 768px) { - .navbar-left { - float: left !important; - } - .navbar-right { - float: right !important; - } -} -.navbar-form { - margin-left: -15px; - margin-right: -15px; - padding: 10px 15px; - border-top: 1px solid transparent; - border-bottom: 1px solid transparent; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); - margin-top: 9px; - margin-bottom: 9px; -} -@media (min-width: 768px) { - .navbar-form .form-group { - display: inline-block; - margin-bottom: 2em; - vertical-align: middle; - } - .navbar-form .form-control { - display: inline-block; - width: auto; - vertical-align: middle; - } - .navbar-form .input-group > .form-control { - width: 100%; - } - .navbar-form .control-label { - margin-bottom: 0; - vertical-align: middle; - } - .navbar-form .radio, - .navbar-form .checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - padding-left: 0; - vertical-align: middle; - } - .navbar-form .radio input[type="radio"], - .navbar-form .checkbox input[type="checkbox"] { - float: none; - margin-left: 0; - } - .navbar-form .has-feedback .form-control-feedback { - top: 0; - } -} -@media (max-width: 767px) { - .navbar-form .form-group { - margin-bottom: 2em; - } -} -@media (min-width: 768px) { - .navbar-form { - width: auto; - border: 0; - margin-left: 0; - margin-right: 0; - padding-top: 0; - padding-bottom: 0; - -webkit-box-shadow: none; - box-shadow: none; - } - .navbar-form.navbar-right:last-child { - margin-right: -15px; - } -} -.navbar-nav > li > .dropdown-menu { - margin-top: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; -} -.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.navbar-btn { - margin-top: 9px; - margin-bottom: 9px; -} -.navbar-btn.btn-sm { - margin-top: 10px; - margin-bottom: 10px; -} -.navbar-btn.btn-xs { - margin-top: 14px; - margin-bottom: 14px; -} -.navbar-text { -/* margin-top: .5em; - margin-bottom: .5em;*/ -} -.navbar-text > li > a { - color: #ffffff; -/* padding-right: 2em;*/ - text-decoration: none; -} -.nav-inverse-color:hover { - background-color: #4178BE;/*gray 50*/ -} - -.nav-inverse-color { - padding: 5px 0; - text-align: center; - display: inline-block; - width: 50%; -} -@media (min-width: 768px) { - .nav-inverse-color { - width: 25%; - } -} - -.navbar-text > li { - list-style: none; -/* display: inline-block; - width: 25%*/ -} - -.navbar-text:hover > li { - list-style: none; - display: inline-block; -} - -@media (min-width: 768px) { - .navbar-text { -/* float: left; - margin-left: nav-inverse-color1em; - margin-right: 15px;*/ - } - .navbar-text.navbar-right:last-child { - margin-right: 0; - } -} -.navbar-default { - background-color: #323232; /*gray 80*/ - border-color: none; -} -.navbar-default .navbar-brand { - color: #ffffff; -} -.navbar-default .navbar-brand:hover, -.navbar-default .navbar-brand:focus { - color: #5aaafa; /*blue 30*/ -} -.navbar-default .navbar-text { - color: #ffffff; -} -.navbar-default .navbar-nav > li > a { - color: #c7c7c7; -} -.navbar-default .navbar-nav > li > a:hover, -.navbar-default .navbar-nav > li > a:focus { - color: #fff; - border-bottom: 4px solid #5aaafa; /*blue 30*/ -} -.navbar-default .navbar-nav > .active > a, -.navbar-default .navbar-nav > .active > a:hover, -.navbar-default .navbar-nav > .active > a:focus { - color: #fafafa; -} -.navbar-default .navbar-nav > .disabled > a, -.navbar-default .navbar-nav > .disabled > a:hover, -.navbar-default .navbar-nav > .disabled > a:focus { - color: #666; -} -.navbar-default .navbar-toggle { - border-color: #dddddd; -} -.navbar-default .navbar-toggle:hover, -.navbar-default .navbar-toggle:focus { - background-color: #dddddd; -} -.navbar-default .navbar-toggle .icon-bar { - background-color: #888888; -} -.navbar-default .navbar-collapse, -.navbar-default .navbar-form { - border-color: none; -} -.navbar-default .navbar-nav > .open > a, -.navbar-default .navbar-nav > .open > a:hover, -.navbar-default .navbar-nav > .open > a:focus { - color: #fafafa; -} -@media (max-width: 767px) { - .navbar-default .navbar-nav .open .dropdown-menu > li > a { - color: #888888; - } - .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { - color: #333333; - } - .navbar-default .navbar-nav .open .dropdown-menu > .active > a, - .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #333333; - } - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #cccccc; - } -} -.navbar-default .navbar-link { - color: #888888; -} -.navbar-default .navbar-link:hover { - color: #333333; -} -.navbar-inverse { - background-color: #325c80; /*blue 60*/ -/* border-color: #325c80;/*blue 60*/*/ -} - -.navbar-inverse .navbar-brand { - color: #999999; -} -.navbar-inverse .navbar-brand:hover, -.navbar-inverse .navbar-brand:focus { - color: #ffffff; - background-color: transparent; -} -.navbar-inverse .navbar-text { - color: #999999; -} -.navbar-inverse .navbar-nav > li > a { - color: #999999; -} -.navbar-inverse .navbar-nav > li > a:hover, -.navbar-inverse .navbar-nav > li > a:focus { - color: #ffffff; - background-color: transparent; -} -.navbar-inverse .navbar-nav > .active > a, -.navbar-inverse .navbar-nav > .active > a:hover, -.navbar-inverse .navbar-nav > .active > a:focus { - color: #ffffff; - background-color: #080808; -} -.navbar-inverse .navbar-nav > .disabled > a, -.navbar-inverse .navbar-nav > .disabled > a:hover, -.navbar-inverse .navbar-nav > .disabled > a:focus { - color: #444444; - background-color: transparent; -} -.navbar-inverse .navbar-toggle { - border-color: #333333; -} -.navbar-inverse .navbar-toggle:hover, -.navbar-inverse .navbar-toggle:focus { - background-color: #333333; -} -.navbar-inverse .navbar-toggle .icon-bar { - background-color: #ffffff; -} -.navbar-inverse .navbar-collapse, -.navbar-inverse .navbar-form { - border-color: #101010; -} -.navbar-inverse .navbar-nav > .open > a, -.navbar-inverse .navbar-nav > .open > a:hover, -.navbar-inverse .navbar-nav > .open > a:focus { - background-color: #080808; - color: #ffffff; -} -@media (max-width: 767px) { - .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { - border-color: #080808; - } - .navbar-inverse .navbar-nav .open .dropdown-menu .divider { - background-color: #080808; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { - color: #999999; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { - color: #ffffff; - background-color: transparent; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #ffffff; - background-color: #080808; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #444444; - background-color: transparent; - } -} -.navbar-inverse .navbar-link { - color: #999999; -} -.navbar-inverse .navbar-link:hover { - color: #ffffff; -} -.breadcrumb { - padding: 8px 15px; - margin-bottom: 18px; - list-style: none; - background-color: #fafafa; - border-radius: 0px; -} -.resources { - margin-left: 1.5em; -} -.resources > a { - padding-right: 1em; -} -/*.resources > a { - font-size: 12.8px; - line-height: 1.4em; -} -@media (min-width: 500px) { -.resources > a{ - font-size: 12.03px; - } -}*/ -.breadcrumb > li { - display: inline-block; -} -.breadcrumb > li + li:before { - content: "/\00a0"; - padding: 0 5px; - color: #cccccc; -} -.breadcrumb > .active { - color: #999999; -} -.pagination { - display: inline-block; - padding-left: 0; - margin: 18px 0; - border-radius: 0px; -} -.pagination > li { - display: inline; -} -.pagination > li > a, -.pagination > li > span { - position: relative; - float: left; - padding: 6px 12px; - line-height: 1.428571429; - text-decoration: none; - color: #325c80; - background-color: #ffffff; - border: 1px solid transparent; - margin-left: -1px; -} -.pagination > li:first-child > a, -.pagination > li:first-child > span { - margin-left: 0; - border-bottom-left-radius: 4px; - border-top-left-radius: 4px; -} -.pagination > li:last-child > a, -.pagination > li:last-child > span { - border-bottom-right-radius: 4px; - border-top-right-radius: 4px; -} -.pagination > li > a:hover, -.pagination > li > span:hover, -.pagination > li > a:focus, -.pagination > li > span:focus { - color: #999999; - background-color: none; - border-color: none; -} -.pagination > .active > a, -.pagination > .active > span, -.pagination > .active > a:hover, -.pagination > .active > span:hover, -.pagination > .active > a:focus, -.pagination > .active > span:focus { - z-index: 2; - color: #999999; - background-color: none; - border-color: none; - cursor: default; -} -.pagination > .disabled > span, -.pagination > .disabled > span:hover, -.pagination > .disabled > span:focus, -.pagination > .disabled > a, -.pagination > .disabled > a:hover, -.pagination > .disabled > a:focus { - color: #999999; - background-color: #ffffff; - border-color: #dddddd; - cursor: not-allowed; -} -.pagination-lg > li > a, -.pagination-lg > li > span { - padding: 10px 16px; - font-size: 17px; -} -.pagination-lg > li:first-child > a, -.pagination-lg > li:first-child > span { - border-bottom-left-radius: 6px; - border-top-left-radius: 6px; -} -.pagination-lg > li:last-child > a, -.pagination-lg > li:last-child > span { - border-bottom-right-radius: 6px; - border-top-right-radius: 6px; -} -.pagination-sm > li > a, -.pagination-sm > li > span { - padding: 5px 10px; - font-size: 12px; -} -.pagination-sm > li:first-child > a, -.pagination-sm > li:first-child > span { - border-bottom-left-radius: 2px; - border-top-left-radius: 2px; -} -.pagination-sm > li:last-child > a, -.pagination-sm > li:last-child > span { - border-bottom-right-radius: 2px; - border-top-right-radius: 2px; -} -.pager { - padding-left: 0; - margin: 18px 0; - list-style: none; - text-align: center; -} -.pager li { - display: inline; -} -.pager li > a, -.pager li > span { - display: inline-block; - padding: 5px 14px; - background-color: #ffffff; - border: 1px solid #cccccc; - border-radius: 0px; -} -.pager li > a:hover, -.pager li > a:focus { - text-decoration: none; - background-color: none; -} -.pager .next > a, -.pager .next > span { - float: right; -} -.pager .previous > a, -.pager .previous > span { - float: left; -} -.pager .disabled > a, -.pager .disabled > a:hover, -.pager .disabled > a:focus, -.pager .disabled > span { - color: #999999; - background-color: #ffffff; - cursor: not-allowed; -} -.label { - display: inline; - padding: .2em .6em .3em; - font-size: 75%; - font-weight: bold; - line-height: 1; - color: #ffffff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: 0em; -} -.label[href]:hover, -.label[href]:focus { - color: #ffffff; - text-decoration: none; - cursor: pointer; -} -.label:empty { - display: none; -} -.btn .label { - position: relative; - top: -1px; -} -.label-default { - background-color: #999999; -} -.label-default[href]:hover, -.label-default[href]:focus { - background-color: #808080; -} -.label-primary { - background-color: #325c80; -} -.label-primary[href]:hover, -.label-primary[href]:focus { - background-color: #008cbc; -} -.label-success { - background-color: #8cc63f; -} -.label-success[href]:hover, -.label-success[href]:focus { - background-color: #71a230; -} -.label-info { - background-color: #5bc0de; -} -.label-info[href]:hover, -.label-info[href]:focus { - background-color: #31b0d5; -} -.label-warning { - background-color: #f19027; -} -.label-warning[href]:hover, -.label-warning[href]:focus { - background-color: #d7760e; -} -.label-danger { - background-color: #f04e37; -} -.label-danger[href]:hover, -.label-danger[href]:focus { - background-color: #e32b11; -} -.badge { - display: inline-block; - min-width: 10px; - padding: 3px 7px; - font-size: 12px; - font-weight: normal; - color: #ffffff; - line-height: 1; - vertical-align: baseline; - white-space: nowrap; - text-align: center; - background-color: #325c80; - border-radius: 0; -} -.badge:empty { - display: none; -} -.btn .badge { - position: relative; - top: -1px; -} -.btn-xs .badge { - top: 0; - padding: 1px 5px; -} -a.badge:hover, -a.badge:focus { - color: #999999; - text-decoration: none; - cursor: pointer; -} -a.list-group-item.active > .badge, -.nav-pills > .active > a > .badge { - color: #325c80; - background-color: #ffffff; -} -.nav-pills > li > a > .badge { - margin-left: 3px; -} -.jumbotron { - padding: 30px; - margin-bottom: 30px; - color: inherit; - background-color: #fafafa; - - border: 1px solid #eee; - border-bottom: 2px solid #325c80; - border-top: 2px solid #325c80; -} -.jumbotron h1, -.jumbotron .h1 { - color:#325c80; -} -.jumbotron p { - margin-bottom: 15px; - font-size: 20px; - font-weight: 200; -} -.container .jumbotron { - border-radius: 0px; -} -.jumbotron .container { - max-width: 100%; -} -@media screen and (min-width: 768px) { - .jumbotron { - padding-top: 48px; - padding-bottom: 48px; - } - .container .jumbotron { - padding-left: 60px; - padding-right: 60px; - } - .jumbotron h1, - .jumbotron .h1 { - font-size: 58.5px; - } -} -.thumbnail { - display: block; - padding: 4px; - margin-bottom: 18px; - line-height: 1.428571429; - background-color: #ffffff; - border: 1px solid #dddddd; - border-radius: 0px; - -webkit-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; -} -.thumbnail > img, -.thumbnail a > img { - margin-left: auto; - margin-right: auto; -} -a.thumbnail:hover, -a.thumbnail:focus, -a.thumbnail.active { - border-color: #325c80; -} -.thumbnail .caption { - padding: 9px; - color: #333333; -} -.alert { - padding: 15px; - margin-bottom: 18px; - border: 1px solid transparent; - border-radius: 0px; -} -.alert h4 { - margin-top: 0; - color: inherit; -} -.alert .alert-link { - font-weight: bold; -} -.alert > p, -.alert > ul { - margin-bottom: 0; -} -.alert > p + p { - margin-top: 5px; -} -.alert-dismissable { - padding-right: 35px; -} -.alert-dismissable .close { - position: relative; - top: -2px; - right: -21px; - color: inherit; -} -.alert-success { - background-color: #dff0d8; - border-color: #d6e9c6; - color: #325C80; -} -.alert-success hr { - border-top-color: #c9e2b3; -} -.alert-success .alert-link { - color: #2b542c; -} -.alert-info { - background-color: #d9edf7; - border-color: #bce8f1; - color: #31708f; -} -.alert-info hr { - border-top-color: #a6e1ec; -} -.alert-info .alert-link { - color: #245269; -} -.alert-warning { - background-color: #fcf8e3; - border-color: #faebcc; - color: #A53725; -} -.alert-warning hr { - border-top-color: #f7e1b5; -} -.alert-warning .alert-link { - color: #66512c; -} -.alert-danger { - background-color: #f2dede; - border-color: #ebccd1; - color: #AD1625; -} -.alert-danger hr { - border-top-color: #e4b9c0; -} -.alert-danger .alert-link { - color: #843534; -} -@-webkit-keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} -@keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} -.progress { - overflow: hidden; - height: 18px; - margin-bottom: 18px; - background-color: #fafafa; - border-radius: 0px; - -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); - box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); -} -.progress-bar { - float: left; - width: 0%; - height: 100%; - font-size: 12px; - line-height: 18px; - color: #ffffff; - text-align: center; - background-color: #325c80; - -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); - -webkit-transition: width 0.6s ease; - transition: width 0.6s ease; -} -.progress-striped .progress-bar { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-size: 40px 40px; -} -.progress.active .progress-bar { - -webkit-animation: progress-bar-stripes 2s linear infinite; - animation: progress-bar-stripes 2s linear infinite; -} -.progress-bar-success { - background-color: #8cc63f; -} -.progress-striped .progress-bar-success { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -} -.progress-bar-info { - background-color: #5bc0de; -} -.progress-striped .progress-bar-info { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -} -.progress-bar-warning { - background-color: #f19027; -} -.progress-striped .progress-bar-warning { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -} -.progress-bar-danger { - background-color: #f04e37; -} -.progress-striped .progress-bar-danger { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -} -.media, -.media-body { - overflow: hidden; - zoom: 1; -} -.media, -.media .media { - margin-top: 15px; -} -.media:first-child { - margin-top: 0; -} -.media-object { - display: block; -} -.media-heading { - margin: 0 0 5px; -} -.media > .pull-left { - margin-right: 10px; -} -.media > .pull-right { - margin-left: 10px; -} -.media-list { - padding-left: 0; - list-style: none; -} -.list-group { - margin-bottom: 20px; - padding-left: 0; -} -.list-group-item { - position: relative; - display: block; - padding: 10px 15px; - margin-bottom: -1px; - background-color: #ffffff; - border: 1px solid #dddddd; -} -.list-group-item:first-child { - border-top-right-radius: 4px; - border-top-left-radius: 4px; -} -.list-group-item:last-child { - margin-bottom: 0; - border-bottom-right-radius: 4px; - border-bottom-left-radius: 4px; -} -.list-group-item > .badge { - float: right; -} -.list-group-item > .badge + .badge { - margin-right: 5px; -} -a.list-group-item { - color: #555555; -} -a.list-group-item .list-group-item-heading { - color: #333333; -} -a.list-group-item:hover, -a.list-group-item:focus { - text-decoration: none; - background-color: #f5f5f5; -} -a.list-group-item.active, -a.list-group-item.active:hover, -a.list-group-item.active:focus { - z-index: 2; - color: #ffffff; - background-color: #325c80; - border-color: #325c80; -} -a.list-group-item.active .list-group-item-heading, -a.list-group-item.active:hover .list-group-item-heading, -a.list-group-item.active:focus .list-group-item-heading { - color: inherit; -} -a.list-group-item.active .list-group-item-text, -a.list-group-item.active:hover .list-group-item-text, -a.list-group-item.active:focus .list-group-item-text { - color: #bceeff; -} -.list-group-item-success { - color: #325C80; - background-color: #dff0d8; -} -a.list-group-item-success { - color: #325C80; -} -a.list-group-item-success .list-group-item-heading { - color: inherit; -} -a.list-group-item-success:hover, -a.list-group-item-success:focus { - color: #325C80; - background-color: #d0e9c6; -} -a.list-group-item-success.active, -a.list-group-item-success.active:hover, -a.list-group-item-success.active:focus { - color: #fff; - background-color: #325C80; - border-color: #325C80; -} -.list-group-item-info { - color: #31708f; - background-color: #d9edf7; -} -a.list-group-item-info { - color: #31708f; -} -a.list-group-item-info .list-group-item-heading { - color: inherit; -} -a.list-group-item-info:hover, -a.list-group-item-info:focus { - color: #31708f; - background-color: #c4e3f3; -} -a.list-group-item-info.active, -a.list-group-item-info.active:hover, -a.list-group-item-info.active:focus { - color: #fff; - background-color: #31708f; - border-color: #31708f; -} -.list-group-item-warning { - color: #A53725; - background-color: #fcf8e3; -} -a.list-group-item-warning { - color: #A53725; -} -a.list-group-item-warning .list-group-item-heading { - color: inherit; -} -a.list-group-item-warning:hover, -a.list-group-item-warning:focus { - color: #A53725; - background-color: #faf2cc; -} -a.list-group-item-warning.active, -a.list-group-item-warning.active:hover, -a.list-group-item-warning.active:focus { - color: #fff; - background-color: #A53725; - border-color: #A53725; -} -.list-group-item-danger { - color: #AD1625; - background-color: #f2dede; -} -a.list-group-item-danger { - color: #AD1625; -} -a.list-group-item-danger .list-group-item-heading { - color: inherit; -} -a.list-group-item-danger:hover, -a.list-group-item-danger:focus { - color: #AD1625; - background-color: #ebcccc; -} -a.list-group-item-danger.active, -a.list-group-item-danger.active:hover, -a.list-group-item-danger.active:focus { - color: #fff; - background-color: #AD1625; - border-color: #AD1625; -} -.list-group-item-heading { - margin-top: 0; - margin-bottom: 5px; -} -.list-group-item-text { - margin-bottom: 0; - line-height: 1.3; -} -.panel { - margin-bottom: 18px; -} -.panel-body { -/* padding: 15px;*/ -} -.panel-heading { - margin-top: 1em; - border-top: 4px solid #4178BE; /*blue 50*/ - border-top-right-radius: 0px; - border-top-left-radius: 0px; - border-bottom: 4px solid #4178BE; /*blue 50*/ -} -.panel-heading > .dropdown .dropdown-toggle { - color: inherit; -} -.panel-title { - margin-top: 0; - margin-bottom: 0; - font-size: 15px; - color: inherit; -} -.panel-title > a { - color: inherit; -} -.panel-footer { - padding: 10px 15px; - background-color: #fafafa; - border-top: 1px solid #dddddd; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} -.panel > .list-group { - margin-bottom: 0; -} -.panel > .list-group .list-group-item { - border-width: 1px 0; - border-radius: 0; -} -.panel > .list-group:first-child .list-group-item:first-child { - border-top: 0; - border-top-right-radius: 3px; - border-top-left-radius: 3px; -} -.panel > .list-group:last-child .list-group-item:last-child { - border-bottom: 0; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} -.panel-heading + .list-group .list-group-item:first-child { - border-top-width: 0; -} -.panel > .table, -.panel > .table-responsive > .table { - margin-bottom: 0; -} -.panel > .table:first-child, -.panel > .table-responsive:first-child > .table:first-child { - border-top-right-radius: 3px; - border-top-left-radius: 3px; -} -.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, -.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, -.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, -.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { - border-top-left-radius: 3px; -} -.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, -.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, -.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, -.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { - border-top-right-radius: 3px; -} -.panel > .table:last-child, -.panel > .table-responsive:last-child > .table:last-child { - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} -.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, -.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { - border-bottom-left-radius: 3px; -} -.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, -.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { - border-bottom-right-radius: 3px; -} -.panel > .panel-body + .table, -.panel > .panel-body + .table-responsive { - border-top: 1px solid #eeeeee; -} -.panel > .table > tbody:first-child > tr:first-child th, -.panel > .table > tbody:first-child > tr:first-child td { - border-top: 0; -} -.panel > .table-bordered, -.panel > .table-responsive > .table-bordered { - border: 0; -} -.panel > .table-bordered > thead > tr > th:first-child, -.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, -.panel > .table-bordered > tbody > tr > th:first-child, -.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, -.panel > .table-bordered > tfoot > tr > th:first-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, -.panel > .table-bordered > thead > tr > td:first-child, -.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, -.panel > .table-bordered > tbody > tr > td:first-child, -.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, -.panel > .table-bordered > tfoot > tr > td:first-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; -} -.panel > .table-bordered > thead > tr > th:last-child, -.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, -.panel > .table-bordered > tbody > tr > th:last-child, -.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, -.panel > .table-bordered > tfoot > tr > th:last-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, -.panel > .table-bordered > thead > tr > td:last-child, -.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, -.panel > .table-bordered > tbody > tr > td:last-child, -.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, -.panel > .table-bordered > tfoot > tr > td:last-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; -} -.panel > .table-bordered > thead > tr:first-child > td, -.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, -.panel > .table-bordered > tbody > tr:first-child > td, -.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, -.panel > .table-bordered > thead > tr:first-child > th, -.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, -.panel > .table-bordered > tbody > tr:first-child > th, -.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { - border-bottom: 0; -} -.panel > .table-bordered > tbody > tr:last-child > td, -.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, -.panel > .table-bordered > tfoot > tr:last-child > td, -.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, -.panel > .table-bordered > tbody > tr:last-child > th, -.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, -.panel > .table-bordered > tfoot > tr:last-child > th, -.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { - border-bottom: 0; -} -.panel > .table-responsive { - border: 0; - margin-bottom: 0; -} -.panel-group { - margin-bottom: 18px; -} -.panel-group .panel { - margin-bottom: 0; - border-radius: 0px; - overflow: hidden; -} -.panel-group .panel + .panel { - margin-top: 5px; -} -.panel-group .panel-heading { - border-bottom: 0; -} -.panel-group .panel-heading + .panel-collapse .panel-body { - border-top: 1px solid #dddddd; -} -.panel-group .panel-footer { - border-top: 0; -} -.panel-group .panel-footer + .panel-collapse .panel-body { - border-bottom: 1px solid #dddddd; -} -.panel-default { - border-color: #dddddd; -} -.panel-default > .panel-heading { - color: #333333; - background-color: #fdfdfd; -} -.panel-default > .panel-heading + .panel-collapse .panel-body { - border-top-color: #dddddd; -} -.panel-default > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #dddddd; -} -.panel-primary { - border-color: #325c80; -} -.panel-primary > .panel-heading { - color: #ffffff; - background-color: #325c80; - border-color: #325c80; -} -.panel-primary > .panel-heading + .panel-collapse .panel-body { - border-top-color: #325c80; -} -.panel-primary > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #325c80; -} -.panel-success { - border-color: #d6e9c6; -} -.panel-success > .panel-heading { - color: #325C80; - background-color: #dff0d8; - border-color: #d6e9c6; -} -.panel-success > .panel-heading + .panel-collapse .panel-body { - border-top-color: #d6e9c6; -} -.panel-success > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #d6e9c6; -} -.panel-info { - border-color: #bce8f1; -} -.panel-info > .panel-heading { - color: #31708f; - background-color: #d9edf7; - border-color: #bce8f1; -} -.panel-info > .panel-heading + .panel-collapse .panel-body { - border-top-color: #bce8f1; -} -.panel-info > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #bce8f1; -} -.panel-warning { - border-color: #faebcc; -} -.panel-warning > .panel-heading { - color: #A53725; - background-color: #fcf8e3; - border-color: #faebcc; -} -.panel-warning > .panel-heading + .panel-collapse .panel-body { - border-top-color: #faebcc; -} -.panel-warning > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #faebcc; -} -.panel-danger { - border-color: #ebccd1; -} -.panel-danger > .panel-heading { - color: #AD1625; - background-color: #f2dede; - border-color: #ebccd1; -} -.panel-danger > .panel-heading + .panel-collapse .panel-body { - border-top-color: #ebccd1; -} -.panel-danger > .panel-footer + .panel-collapse .panel-body { - border-bottom-color: #ebccd1; -} -.well { - min-height: 20px; - padding: 19px; - margin-bottom: 1em; -background-color: #f4f4f4; - border: 2px solid #ececec; - border-radius: 0px; - // -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); - // box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); -} -.well blockquote { - border-color: #ddd; - border-color: rgba(0, 0, 0, 0.15); -} -.well-lg { - padding: 24px; - border-radius: 0px; -} -.well-sm { - padding: 9px; - border-radius: 0px; -} -.close { - float: right; - font-size: 19.5px; - font-weight: bold; - line-height: 1; - color: #121212; /*gray 90*/ - text-shadow: 0 1px 0 #ffffff; - opacity: 0.2; - filter: alpha(opacity=20); -} -.close:hover, -.close:focus { - color: #121212; /*gray 90*/ - text-decoration: none; - cursor: pointer; - opacity: 0.5; - filter: alpha(opacity=50); -} -button.close { - padding: 0; - cursor: pointer; - background: transparent; - border: 0; - -webkit-appearance: none; -} -.modal-open { - overflow: hidden; -} -.modal { - display: none; - overflow: auto; - overflow-y: scroll; - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1050; - -webkit-overflow-scrolling: touch; - outline: 0; -} -.modal.fade .modal-dialog { - -webkit-transform: translate(0, -25%); - -ms-transform: translate(0, -25%); - transform: translate(0, -25%); - -webkit-transition: -webkit-transform 0.3s ease-out; - -moz-transition: -moz-transform 0.3s ease-out; - -o-transition: -o-transform 0.3s ease-out; - transition: transform 0.3s ease-out; -} -.modal.in .modal-dialog { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - transform: translate(0, 0); -} -.modal-dialog { - position: relative; - width: auto; - margin: 10px; -} -.modal-content { - position: relative; - background-color: #ffffff; - border: 1px solid #999999; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 0px; - -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); - box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); - background-clip: padding-box; - outline: none; -} -.modal-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1040; - background-color: #121212; /*gray 90*/ -} -.modal-backdrop.fade { - opacity: 0; - filter: alpha(opacity=0); -} -.modal-backdrop.in { - opacity: 0.5; - filter: alpha(opacity=50); -} -.modal-header { - padding: 15px; - border-bottom: 1px solid #e5e5e5; - min-height: 16.428571429px; -} -.modal-header .close { - margin-top: -2px; -} -.modal-title { - margin: 0; - line-height: 1.428571429; -} -.modal-body { - position: relative; - padding: 20px; -} -.modal-footer { - margin-top: 15px; - padding: 19px 20px 20px; - text-align: right; - border-top: 1px solid #e5e5e5; -} -.modal-footer .btn + .btn { - margin-left: 5px; - margin-bottom: 0; -} -.modal-footer .btn-group .btn + .btn { - margin-left: -1px; -} -.modal-footer .btn-block + .btn-block { - margin-left: 0; -} -@media (min-width: 768px) { - .modal-dialog { - width: 600px; - margin: 30px auto; - } - .modal-content { - -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); - box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); - } - .modal-sm { - width: 300px; - } -} -@media (min-width: 992px) { - .modal-lg { - width: 900px; - } -} -.tooltip { - position: absolute; - z-index: 1030; - display: block; - visibility: visible; - font-size: 12px; - line-height: 1.4; - opacity: 0; - filter: alpha(opacity=0); -} -.tooltip.in { - opacity: 0.9; - filter: alpha(opacity=90); -} -.tooltip.top { - margin-top: -3px; - padding: 5px 0; -} -.tooltip.right { - margin-left: 3px; - padding: 0 5px; -} -.tooltip.bottom { - margin-top: 3px; - padding: 5px 0; -} -.tooltip.left { - margin-left: -3px; - padding: 0 5px; -} -.tooltip-inner { - max-width: 200px; - padding: 3px 8px; - color: #ffffff; - text-align: center; - text-decoration: none; - background-color: #121212; /*gray 90*/ - border-radius: 0px; -} -.tooltip-arrow { - position: absolute; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} -.tooltip.top .tooltip-arrow { - bottom: 0; - left: 50%; - margin-left: -5px; - border-width: 5px 5px 0; - border-top-color: #121212; /*gray 90*/ -} -.tooltip.top-left .tooltip-arrow { - bottom: 0; - left: 5px; - border-width: 5px 5px 0; - border-top-color: #121212; /*gray 90*/ -} -.tooltip.top-right .tooltip-arrow { - bottom: 0; - right: 5px; - border-width: 5px 5px 0; - border-top-color: #121212; /*gray 90*/ -} -.tooltip.right .tooltip-arrow { - top: 50%; - left: 0; - margin-top: -5px; - border-width: 5px 5px 5px 0; - border-right-color: #121212; /*gray 90*/ -} -.tooltip.left .tooltip-arrow { - top: 50%; - right: 0; - margin-top: -5px; - border-width: 5px 0 5px 5px; - border-left-color: #121212; /*gray 90*/ -} -.tooltip.bottom .tooltip-arrow { - top: 0; - left: 50%; - margin-left: -5px; - border-width: 0 5px 5px; - border-bottom-color: #121212; /*gray 90*/ -} -.tooltip.bottom-left .tooltip-arrow { - top: 0; - left: 5px; - border-width: 0 5px 5px; - border-bottom-color: #121212; /*gray 90*/ -} -.tooltip.bottom-right .tooltip-arrow { - top: 0; - right: 5px; - border-width: 0 5px 5px; - border-bottom-color: #121212; /*gray 90*/ -} -.popover { - position: absolute; - top: 0; - left: 0; - z-index: 1010; - display: none; - max-width: 276px; - padding: 1px; - text-align: left; - background-color: #ffffff; - background-clip: padding-box; - border: 1px solid #cccccc; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 0px; - -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); - box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); - white-space: normal; -} -.popover.top { - margin-top: -10px; -} -.popover.right { - margin-left: 10px; -} -.popover.bottom { - margin-top: 10px; -} -.popover.left { - margin-left: -10px; -} -.popover-title { - margin: 0; - padding: 8px 14px; - font-size: 13px; - font-weight: normal; - line-height: 18px; - background-color: #f7f7f7; - border-bottom: 1px solid #ebebeb; - border-radius: 0; -} -.popover-content { - padding: 9px 14px; -} -.popover > .arrow, -.popover > .arrow:after { - position: absolute; - display: block; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} -.popover > .arrow { - border-width: 11px; -} -.popover > .arrow:after { - border-width: 10px; - content: ""; -} -.popover.top > .arrow { - left: 50%; - margin-left: -11px; - border-bottom-width: 0; - border-top-color: #999999; - border-top-color: rgba(0, 0, 0, 0.25); - bottom: -11px; -} -.popover.top > .arrow:after { - content: " "; - bottom: 1px; - margin-left: -10px; - border-bottom-width: 0; - border-top-color: #ffffff; -} -.popover.right > .arrow { - top: 50%; - left: -11px; - margin-top: -11px; - border-left-width: 0; - border-right-color: #999999; - border-right-color: rgba(0, 0, 0, 0.25); -} -.popover.right > .arrow:after { - content: " "; - left: 1px; - bottom: -10px; - border-left-width: 0; - border-right-color: #ffffff; -} -.popover.bottom > .arrow { - left: 50%; - margin-left: -11px; - border-top-width: 0; - border-bottom-color: #999999; - border-bottom-color: rgba(0, 0, 0, 0.25); - top: -11px; -} -.popover.bottom > .arrow:after { - content: " "; - top: 1px; - margin-left: -10px; - border-top-width: 0; - border-bottom-color: #ffffff; -} -.popover.left > .arrow { - top: 50%; - right: -11px; - margin-top: -11px; - border-right-width: 0; - border-left-color: #999999; - border-left-color: rgba(0, 0, 0, 0.25); -} -.popover.left > .arrow:after { - content: " "; - right: 1px; - border-right-width: 0; - border-left-color: #ffffff; - bottom: -10px; -} -.carousel { - position: relative; -} -.carousel-inner { - position: relative; - overflow: hidden; - width: 100%; -} -.carousel-inner > .item { - display: none; - position: relative; - -webkit-transition: 0.6s ease-in-out left; - transition: 0.6s ease-in-out left; -} -.carousel-inner > .item > img, -.carousel-inner > .item > a > img { - line-height: 1; -} -.carousel-inner > .active, -.carousel-inner > .next, -.carousel-inner > .prev { - display: block; -} -.carousel-inner > .active { - left: 0; -} -.carousel-inner > .next, -.carousel-inner > .prev { - position: absolute; - top: 0; - width: 100%; -} -.carousel-inner > .next { - left: 100%; -} -.carousel-inner > .prev { - left: -100%; -} -.carousel-inner > .next.left, -.carousel-inner > .prev.right { - left: 0; -} -.carousel-inner > .active.left { - left: -100%; -} -.carousel-inner > .active.right { - left: 100%; -} -.carousel-control { - position: absolute; - top: 0; - left: 0; - bottom: 0; - width: 15%; - opacity: 0.5; - filter: alpha(opacity=50); - font-size: 20px; - color: #ffffff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); -} -.carousel-control.left { - background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0%), color-stop(rgba(0, 0, 0, 0.0001) 100%)); - background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#12121200000', GradientType=1); -} -.carousel-control.right { - left: auto; - right: 0; - background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0%), color-stop(rgba(0, 0, 0, 0.5) 100%)); - background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#12121200000', endColorstr='#80000000', GradientType=1); -} -.carousel-control:hover, -.carousel-control:focus { - outline: none; - color: #ffffff; - text-decoration: none; - opacity: 0.9; - filter: alpha(opacity=90); -} -.carousel-control .icon-prev, -.carousel-control .icon-next, -.carousel-control .glyphicon-chevron-left, -.carousel-control .glyphicon-chevron-right { - position: absolute; - top: 50%; - z-index: 5; - display: inline-block; -} -.carousel-control .icon-prev, -.carousel-control .glyphicon-chevron-left { - left: 50%; -} -.carousel-control .icon-next, -.carousel-control .glyphicon-chevron-right { - right: 50%; -} -.carousel-control .icon-prev, -.carousel-control .icon-next { - width: 20px; - height: 20px; - margin-top: -10px; - margin-left: -10px; - font-family: serif; -} -.carousel-control .icon-prev:before { - content: '\2039'; -} -.carousel-control .icon-next:before { - content: '\203a'; -} -.carousel-indicators { - position: absolute; - bottom: 10px; - left: 50%; - z-index: 15; - width: 60%; - margin-left: -30%; - padding-left: 0; - list-style: none; - text-align: center; -} -.carousel-indicators li { - display: inline-block; - width: 10px; - height: 10px; - margin: 1px; - text-indent: -999px; - border: 1px solid #ffffff; - border-radius: 10px; - cursor: pointer; - background-color: #121212; /*gray 90*/ - background-color: rgba(0, 0, 0, 0); -} -.carousel-indicators .active { - margin: 0; - width: 12px; - height: 12px; - background-color: #ffffff; -} -.carousel-caption { - position: absolute; - left: 15%; - right: 15%; - bottom: 20px; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: #ffffff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); -} -.carousel-caption .btn { - text-shadow: none; -} -@media screen and (min-width: 768px) { - .carousel-control .glyphicon-chevron-left, - .carousel-control .glyphicon-chevron-right, - .carousel-control .icon-prev, - .carousel-control .icon-next { - width: 30px; - height: 30px; - margin-top: -15px; - margin-left: -15px; - font-size: 30px; - } - .carousel-caption { - left: 20%; - right: 20%; - padding-bottom: 30px; - } - .carousel-indicators { - bottom: 20px; - } -} -.clearfix:before, -.clearfix:after, -.container:before, -.container:after, -.container-fluid:before, -.container-fluid:after, -.row:before, -.row:after, -.form-horizontal .form-group:before, -.form-horizontal .form-group:after, -.btn-toolbar:before, -.btn-toolbar:after, -.btn-group-vertical > .btn-group:before, -.btn-group-vertical > .btn-group:after, -.nav:before, -.nav:after, -.navbar:before, -.navbar:after, -.navbar-header:before, -.navbar-header:after, -.navbar-collapse:before, -.navbar-collapse:after, -.pager:before, -.pager:after, -.panel-body:before, -.panel-body:after, -.modal-footer:before, -.modal-footer:after { - content: " "; - display: table; -} -.clearfix:after, -.container:after, -.container-fluid:after, -.row:after, -.form-horizontal .form-group:after, -.btn-toolbar:after, -.btn-group-vertical > .btn-group:after, -.nav:after, -.navbar:after, -.navbar-header:after, -.navbar-collapse:after, -.pager:after, -.panel-body:after, -.modal-footer:after { - clear: both; -} -.float-right { - float: left; -} -@media (min-width: 768px) { - .float-right { - float: right; - } -} -.center-block { - display: block; - margin-left: auto; - margin-right: auto; -} -.pull-right { - float: right !important; -} -.pull-left { - float: left !important; -} -.hide { - display: none !important; -} -.show { - display: block !important; -} -.invisible { - visibility: hidden; -} -.text-hide { - font: 0/0 a; - color: transparent; - text-shadow: none; - background-color: transparent; - border: 0; -} -.hidden { - display: none !important; - visibility: hidden !important; -} -.affix { - position: fixed; -} -@-ms-viewport { - width: device-width; -} -.visible-xs, -.visible-sm, -.visible-md, -.visible-lg { - display: none !important; -} -@media (max-width: 767px) { - .visible-xs { - display: block !important; - } - table.visible-xs { - display: table; - } - tr.visible-xs { - display: table-row !important; - } - th.visible-xs, - td.visible-xs { - display: table-cell !important; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm { - display: block !important; - } - table.visible-sm { - display: table; - } - tr.visible-sm { - display: table-row !important; - } - th.visible-sm, - td.visible-sm { - display: table-cell !important; - } -} -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md { - display: block !important; - } - table.visible-md { - display: table; - } - tr.visible-md { - display: table-row !important; - } - th.visible-md, - td.visible-md { - display: table-cell !important; - } -} -@media (min-width: 1200px) { - .visible-lg { - display: block !important; - } - table.visible-lg { - display: table; - } - tr.visible-lg { - display: table-row !important; - } - th.visible-lg, - td.visible-lg { - display: table-cell !important; - } -} -@media (max-width: 767px) { - .hidden-xs { - display: none !important; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .hidden-sm { - display: none !important; - } -} -@media (min-width: 992px) and (max-width: 1199px) { - .hidden-md { - display: none !important; - } -} -@media (min-width: 1200px) { - .hidden-lg { - display: none !important; - } -} -.visible-print { - display: none !important; -} -@media print { - .visible-print { - display: block !important; - } - table.visible-print { - display: table; - } - tr.visible-print { - display: table-row !important; - } - th.visible-print, - td.visible-print { - display: table-cell !important; - } -} -@media print { - .hidden-print { - display: none !important; - } -} -h1 { - color: #325c80; - font-weight: 700; -} -h2 { - color: #d74108; - font-weight: 700; -} -table.table, -.table tr td { - border: 0; -} - -.glyph { - width: 1em; - margin-right: 8px; -} - -.icon { - width: 2em; - margin: 8px 0px; -} -.icon-text { - clear: both; - display: inline; - font-weight: 700; -} -.icon-text > a { - color: #325c80; /*blue 60*/ -} -.med-icon { - width: 4em; - margin: 8px; -} - -.btn-lg, -.btn-group-lg > .btn { - border: 2px solid; -} -.btn-default:hover { - color: #121212; /*gray 90*/ - background-color: #fff; - border-color: #aeaeae; /*gray 30*/ -} - -.btn-primary:hover { - background-color: #325c80; - color: #fff; - border-color: #325c80; -} -.btn-success:hover { - background-color: #fff; - color: #8cc63f; - border-color: #8cc63f; -} - -.navbar { - border-bottom: 1px solid #404041; - color:#F9F9F9; -} -.navbar .active { - border-bottom: 4px solid #00b4a0; -} -.navbar-form input { - font-weight: 200; - background-color: #fff; - border: 1px solid #999999; -} -.pagination { - font-weight: 200; -} -.pagination .active { - font-weight: 800; -} -.label { - border-radius: 0; -} -.label-default { - border-bottom: 2px solid #999999; - color: #999999; - background-color: #ffffff; -} -.label-primary { - border-bottom: 2px solid #325c80; - color: #325c80; - background-color: #d6f4ff; -} -.label-success { - border-bottom: 2px solid #8cc63f; - color: #8cc63f; - background-color: #f6fbf0; -} -.label-info { - border-bottom: 2px solid #5bc0de; - color: #5bc0de; - background-color: #f0f9fc; -} -.label-warning { - border-bottom: 2px solid #f19027; - color: #f19027; - background-color: #fdf2e7; -} -.label-danger { - border-bottom: 2px solid #f04e37; - color: #f04e37; - background-color: #fef6f5; -} -.progress { - height: 10px; -} -.panel-heading { - font-weight: 700; -} -.breadcrumb .active { - color: #333333; -} - - -/*Sidebar Nav */ - -.sidebar { - top:50px; - background: #231F20; - background: linear-gradient(45deg, #231F20 50%, #333 95%); - position: fixed; - height: 100%; - overflow-y: auto; - z-index: 1000; - - font-size:16px; - font-weight:500; - border-right:1px solid #666; - box-shadow: 2px 0px 4px rgba(200,200,200,0.6); -} - -#page-content-wrapper { - width: 100%; -} - -.sidebar-nav { - list-style: none; - margin: 0; - padding: 50px 0 0; -} - -.sidebar-nav li { - line-height: 40px; - text-indent: 20px; -} - -.sidebar-nav li a { - color: #c7c7c7; - display: block; - text-decoration: none; -} - -.sidebar-nav li a:hover { - color: #fafafa; - text-decoration: none; -} - -.sidebar-nav li a:active, -.sidebar-nav li a:focus { - text-decoration: none; -} - -.sidebar-nav > .sidebar-brand { - height: 65px; - line-height: 50px; - font-size: 18px; -} - -.sidebar-nav > .sidebar-brand a { - color: #999999; -} - -.sidebar-nav > .sidebar-brand a:hover { - color: #fff; - background: none; -} - -.content-header { - height: 65px; - line-height: 65px; -} - -.content-header h1 { - margin: 0; - margin-left: 20px; - line-height: 65px; - display: inline-block; -} - -#menu-toggle { - display: none; -} - -.inset { - padding: 20px; -} - -@media (max-width:767px) { - -#wrapper { - padding-left: 0; -} - -#sidebar-wrapper { - left: 0; -} - -#wrapper.active { - position: relative; - left: 250px; -} - -#wrapper.active #sidebar-wrapper { - left: 235px; - width: 235px; - transition: all 0.4s ease 0s; -} - -#menu-toggle { - display: inline-block; -} - -.inset { - padding: 15px; -} \ No newline at end of file diff --git a/public/data/README.md b/public/data/README.md new file mode 100644 index 00000000..65f41a2b --- /dev/null +++ b/public/data/README.md @@ -0,0 +1 @@ +This folder should contain any data used for things like visualizations and stuff. \ No newline at end of file diff --git a/public/data/corporate-announcement.txt b/public/data/corporate-announcement.txt new file mode 100644 index 00000000..1cd561fe --- /dev/null +++ b/public/data/corporate-announcement.txt @@ -0,0 +1,8 @@ +ARMONK, N.Y. - 11 Jan 2012: IBM (NYSE: IBM) today announced that it set a new U.S. patent record in 2011, marking the 19th consecutive year that the company has led the annual list of patent recipients. IBM inventors earned a record 6,180 U.S. patents in 2011, more than quadrupling Hewlett-Packard’s issuances and exceeding by six times those of Oracle/Sun. + +More than 8,000 IBMers living in 46 different U.S. states and 36 countries are responsible for the company's record-breaking 2011 patent tally. In fact, IBM inventors who do not reside in the U.S. contributed to more than 26% of the company's 2011 patents. + +The more than 6,000 patents IBMers received in 2011 represent a range of inventions that enable new innovations and add significant value to the company's products, services, including smarter solutions for retail, banking, healthcare, transportation and other industries. These patented inventions span a wide range of computing technologies poised to support a new generation of distinctly cognitive, intelligent and insight-driven systems, processes and infrastructures for smarter commerce, shopping, medicine, transportation, and more. + +"IBM's firm commitment to invention and scientific exploration is unmatched in any industry and the results of this dedication to enabling innovation is evidenced in our nearly two decades of U.S. patent leadership,” said Ken King, general manager, Intellectual Property and vice president, Research Business Development, IBM. “Indeed, these inventions we patent each year, deliver significant value to IBM, our clients and partners and demonstrate a measurable return on our approximately $6 billion annual investment in research and development." + diff --git a/public/data/customer-call.txt b/public/data/customer-call.txt new file mode 100644 index 00000000..15af8a79 --- /dev/null +++ b/public/data/customer-call.txt @@ -0,0 +1,67 @@ +You are now connected to Customer Service. +Customer: Hello. +Agent: Hello. +Agent: How can I help you today? +Customer: Someone created an account using my email account. +Customer: This is not my account. +Customer: How can I delete this account? +Agent: Okay, let me check this out for you. +Agent: One moment please. +Customer: Okay. +Customer: ? +Agent: Yeah. +Agent: I'm here. +Agent: I'm so sorry for taking a long time on this. +Agent: Okay, I'll reset your password. +Agent: Just check the link on it, so you can have your new password. +Customer: No. +Customer: I don't need you to reset my password. +Agent: Oh okay. +Agent: Sorry about that. +Customer: I need you to delete this fake account because it is not mine. +Customer: Please don't change my password. +Agent: Ah okay, yeah sure. +Agent: I'm not going to change your password ma'am. +Customer: Ma'am? +Customer: What is going on here? +Agent: Oh so sorry to call you Ma'am. +Agent: It's okay. +Agent: I got misinformation in here, but let me handle this for you. +Customer: Can you delete the fake account or not? +Agent: Okay. +Agent: Please give me another moment again. +Agent: Okay? +Customer: Okay. +Customer: Do you understand the problem I am having or is this a lost cause? +Customer: Can you please just let me know if this is a problem you can help resolve? +Agent: I recommend that you delete the e-mail. +Agent: For your protection, do not respond to it, and do not open any attachments or click any links it contains okay? +Customer: Delete my email? +Customer: Did you say delete my email? +Customer: Hello? +Customer: ????? +Agent: One moment please let me check on this for you. +Customer: One moment?! +Customer: Not sure what your definition of a moment is but this has been going on for a long time and you obviously have no idea what you are doing! +Customer: This is ridiculous! +Customer: You can't spell. +Customer: You aren't listening to my problem. +Customer: You keep asking me to wait a moment. +Customer: Ten minutes each time. +Customer: You suggest that I delete my email account, how the hell does that help? +Customer: You are very unhelpful. +Customer: I will ask one last time. +Customer: Can you delete this account or not? +Customer: Simple question. +Agent: Okay, I will refer you to our account specialist so this account gets deleted okay? +Customer: Read what you just typed. +Customer: It doesn't make sense. +Agent: I am really so sorry about this inconvenience but our account specialist will handle this for you okay? +Customer: Yes please put me in touch with someone. +Customer: ANYONE. +Agent: Okay, I will refer you to our account specialist so this account gets deleted okay? +Agent: That was a mistake so sorry about that. +Customer: Okay. +Customer: Please connect me with an account specialist. +Agent: I do apologize that this is taking longer than usual, however, let me go ahead right now and look for another available rep to call you. +Agent: Thank you for your patience and understanding! diff --git a/public/data/personal-email.txt b/public/data/personal-email.txt new file mode 100644 index 00000000..6db8d1ea --- /dev/null +++ b/public/data/personal-email.txt @@ -0,0 +1,11 @@ +Hi Team, + +I know the times are difficult! Our sales have been disappointing for the past three quarters for our data analytics product suite. We have a competitive data analytics product suite in the industry. But we need to do our job selling it! + +We need to acknowledge and fix our sales challenges. We can’t blame the economy for our lack of execution! We are missing critical sales opportunities. Our product is in no way inferior to the competitor products. Our clients are hungry for analytical tools to improve their business outcomes. Economy has nothing to do with it. In fact, it is in times such as this, our clients want to get the insights they need to turn their businesses around. Let’s buckle up and execute. + +In summary, we have a competitive product, and a hungry market. We have to do our job to close the deals. + +Jennifer Baker +Sales Leader, North-East Geo +Data Analytics Inc. diff --git a/public/data/threshold_v0.1.1.json b/public/data/threshold_v0.1.1.json new file mode 100644 index 00000000..390886b3 --- /dev/null +++ b/public/data/threshold_v0.1.1.json @@ -0,0 +1,32 @@ +{ + "doc": { + "Joy":[0.33, 0.66], + "Disgust":[0.33, 0.66], + "Fear":[0.33, 0.66], + "Anger":[0.33, 0.66], + "Sadness":[0.33, 0.66], + "Openness": [0.50, 0.75], + "Conscientiousness": [0.50, 0.75], + "Extraversion": [0.50, 0.75], + "Agreeableness": [0.50, 0.75], + "Emotional Range": [0.50, 0.75], + "Confident": [0.50, 0.75], + "Analytical": [0.50, 0.75], + "Tentative": [0.50, 0.75] + }, + "sentence": { + "Joy":[0.33, 0.66], + "Disgust":[0.33, 0.66], + "Fear":[0.33, 0.66], + "Anger":[0.33, 0.66], + "Sadness":[0.33, 0.66], + "Openness": [0.50, 0.75], + "Conscientiousness": [0.50, 0.75], + "Extraversion": [0.50, 0.75], + "Agreeableness": [0.50, 0.75], + "Emotional Range": [0.50, 0.75], + "Confident": [0.50, 0.75], + "Analytical": [0.50, 0.75], + "Tentative": [0.50, 0.75] + } +} diff --git a/public/fonts/icon-fonts/README.md b/public/fonts/icon-fonts/README.md new file mode 100755 index 00000000..da0b6eef --- /dev/null +++ b/public/fonts/icon-fonts/README.md @@ -0,0 +1 @@ +Icon Fonts are compiled here. \ No newline at end of file diff --git a/public/fonts/icon-fonts/icons.eot b/public/fonts/icon-fonts/icons.eot new file mode 100644 index 00000000..48afe7ba Binary files /dev/null and b/public/fonts/icon-fonts/icons.eot differ diff --git a/public/fonts/icon-fonts/icons.svg b/public/fonts/icon-fonts/icons.svg new file mode 100644 index 00000000..c2620295 --- /dev/null +++ b/public/fonts/icon-fonts/icons.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + diff --git a/public/fonts/icon-fonts/icons.ttf b/public/fonts/icon-fonts/icons.ttf new file mode 100644 index 00000000..fd55cd5a Binary files /dev/null and b/public/fonts/icon-fonts/icons.ttf differ diff --git a/public/fonts/icon-fonts/icons.woff b/public/fonts/icon-fonts/icons.woff new file mode 100644 index 00000000..c6c619cd Binary files /dev/null and b/public/fonts/icon-fonts/icons.woff differ diff --git a/public/images/app.png b/public/images/app.png deleted file mode 100644 index b473885c..00000000 Binary files a/public/images/app.png and /dev/null differ diff --git a/public/images/icons/down-arrow.svg b/public/images/icons/down-arrow.svg new file mode 100644 index 00000000..88ca4825 --- /dev/null +++ b/public/images/icons/down-arrow.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/public/images/link.svg b/public/images/icons/link.svg old mode 100644 new mode 100755 similarity index 98% rename from public/images/link.svg rename to public/images/icons/link.svg index 39affedb..1db8d325 --- a/public/images/link.svg +++ b/public/images/icons/link.svg @@ -1,14 +1,14 @@ - - - - - - + + + + + + diff --git a/public/images/reset.svg b/public/images/icons/reset.svg similarity index 98% rename from public/images/reset.svg rename to public/images/icons/reset.svg index a1677825..059c5e17 100644 --- a/public/images/reset.svg +++ b/public/images/icons/reset.svg @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/public/images/loading-indicator.gif b/public/images/loading-indicator.gif index 9c606dc6..7a40d5c9 100644 Binary files a/public/images/loading-indicator.gif and b/public/images/loading-indicator.gif differ diff --git a/public/images/service-icon.svg b/public/images/service-icon.svg new file mode 100644 index 00000000..a5929384 --- /dev/null +++ b/public/images/service-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/js/components/App.js b/public/js/components/App.js new file mode 100644 index 00000000..7983b1b8 --- /dev/null +++ b/public/js/components/App.js @@ -0,0 +1,422 @@ +/** + * Copyright 2015 IBM Corp. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* global $:false, normalize, move */ + +/** + * This is a JS constructor that controls this application's model and state + * logic. + * @param {Object} document tone data + * @param {Array} sentence tone array + * @param {Object} threshold data + * @param {String} selected sample id + * @return {Object} exposed functions that interact with application state logic + */ +function App(documentTones, sentences, thresholds, selectedSample) { + var _selectedFilter = 'Anger', + _selectedTone = 'Emotion Tone', + _selectedSample = selectedSample || 'customer-call', + _lowToHigh = false, + _currentHoveredOriginalSentence = document.querySelector('body'), + _rankedSentences = sentences, + _originalSentences, + _documentTones = documentTones, + _thresholds = thresholds, + _isHoveringOriginalText = false, + _socialToneHoverTexts, + _toneHash, + TONE_CATEGORIES_RESET = [{ + tones: [{ + score: 0, + tone_id: 'Anger', + tone_name: 'Anger', + tone_category_id: 'emotion_tone', + tone_category_name: 'Emotion Tone' + }, { + score: 0, + tone_id: 'Disgust', + tone_name: 'Disgust', + tone_category_id: 'emotion_tone', + tone_category_name: 'Emotion Tone' + }, { + score: 0, + tone_id: 'Fear', + tone_name: 'Fear', + tone_category_id: 'emotion_tone', + tone_category_name: 'Emotion Tone' + }, { + score: 0, + tone_id: 'Joy', + tone_name: 'Joy', + tone_category_id: 'emotion_tone', + tone_category_name: 'Emotion Tone' + }, { + score: 0, + tone_id: 'Sadness', + tone_name: 'Sadness', + tone_category_id: 'emotion_tone', + tone_category_name: 'Emotion Tone' + }], + category_id: 'emotion_tone', + category_name: 'Emotion Tone' + }, { + tones: [{ + score: 0, + tone_id: 'Analytical', + tone_name: 'Analytical', + tone_category_id: 'writing_tone', + tone_category_name: 'Writing Tone' + }, { + score: 0, + tone_id: 'Confident', + tone_name: 'Confident', + tone_category_id: 'writing_tone', + tone_category_name: 'Writing Tone' + }, { + score: 0, + tone_id: 'Tentative', + tone_name: 'Tentative', + tone_category_id: 'writing_tone', + tone_category_name: 'Writing Tone' + }], + category_id: 'writing_tone', + category_name: 'Writing Tone' + }, { + tones: [{ + score: 0, + tone_id: 'Openness_Big5', + tone_name: 'Openness', + tone_category_id: 'social_tone', + tone_category_name: 'Social Tone' + }, { + score: 0, + tone_id: 'Conscientiousness_Big5', + tone_name: 'Conscientiousness', + tone_category_id: 'social_tone', + tone_category_name: 'Social Tone' + }, { + score: 0, + tone_id: 'Extraversion_Big5', + tone_name: 'Extraversion', + tone_category_id: 'social_tone', + tone_category_name: 'Social Tone' + }, { + score: 0, + tone_id: 'Agreeableness_Big5', + tone_name: 'Agreeableness', + tone_category_id: 'social_tone', + tone_category_name: 'Social Tone' + }, { + score: 0, + tone_id: 'Neuroticism_Big5', + tone_name: 'Emotional Range', + tone_category_id: 'social_tone', + tone_category_name: 'Social Tone' + }], + category_id: 'social_tone', + category_name: 'Social Tone' + }], SCORE_DECIMAL_PLACE = 2, + PERCENTAGE_DECIMAL_PLACE = 1, + SOCIAL_TONE_MIN_RANGE = -1, + SOCIAL_TONE_MAX_RANGE = 1, + output = {}; + + /** + * Make sure sentences have proper tone data values. + * Mutates _rankedSentences + */ + function _cleanSentences() { + // look for empty tone_categories and set tone_categories to 0 values + _rankedSentences.forEach(function(item) { + if (item.tone_categories.length === 0) + item.tone_categories = TONE_CATEGORIES_RESET.slice(0); + }); + } + + /** + * Get index of a tone + * @param {String} tone name as key + * @return {int} index positioning of tone + */ + function _searchIndex(key) { + return _toneHash[key].index; + } + + /** + * This is a helper function to determine which classname to use by + * comparing tone score with thresholds. + * @param {String} tone name as key + * @param {int} tone score to evaluate + * @param {String} class name type + * @return {String} resulting class name + */ + function _toneLevel(toneKey, score, classNameType) { + var output, + toneValue = _toneHash[toneKey], + newScore = score, + baseThreshold = 0; + + if (newScore <= baseThreshold) + output = ''; + else if (newScore < toneValue.low.score) + output = toneValue.low[classNameType]; + else if (newScore > toneValue.high.score) + output = toneValue.high[classNameType]; + else + output = toneValue.medium[classNameType]; + + return output; + } + + /** + * Percentagify + * @param {float} decimal score + * @return {String} percentage score in PERCENTAGE_DECIMAL_PLACE placements + */ + function _percentagify(score) { + return (score * 100).toFixed(PERCENTAGE_DECIMAL_PLACE); + } + + /** + * Getter / Setter for _selectedFilter + * Also sets _selectedTone appropriately + * @param {String} setter tone name + * @return (getter) {String} _selectedFilter + * or + * @return (setter) {Object} Constructor returned object + */ + output.selectedFilter = function(str) { + if (!arguments.length) return _selectedFilter; + _selectedFilter = str; + _selectedTone = _toneHash[_selectedFilter].tone; + + return output; + }; + + /** + * Getter for _selectedTone + * @return {String} _selectedTone + */ + output.selectedTone = function() { + return _selectedTone; + }; + + /** + * Getter for _toneHash + * @return {Object} _toneHash + */ + output.toneHash = function() { + return _toneHash; + }; + + /** + * Getter / Setter for _lowToHigh + * @param {bool} setter boolean + * @return (getter) {bool} _lowToHigh + * or + * @return (setter) {Object} Constructor returned object + */ + output.lowToHigh = function(bool) { + if (!arguments.length) return _lowToHigh; + _lowToHigh = bool; + return output; + }; + + /** + * Switch bool value of _lowToHigh + * @return {Object} Constructor returned object + */ + output.toggleLowToHigh = function() { + _lowToHigh = !_lowToHigh; + return output; + }; + + /** + * Getter / Setter for _isHoveringOriginalText + * @param {bool} setter boolean + * @return (getter) {bool} _isHoveringOriginalText + * or + * @return (setter) {Object} Constructor returned object + */ + output.isHoveringOriginalText = function(bool) { + if (!arguments.length) return _isHoveringOriginalText; + _isHoveringOriginalText = bool; + return output; + }; + + /** + * Getter for _thresholds + * @return {Object} _thresholds + */ + output.thresholds = function() { + return _thresholds; + }; + + /** + * Getter / Setter for _currentHoveredOriginalSentence + * @param {DOMElement} setter element + * @return (getter) {DOMElement} _currentHoveredOriginalSentence + * or + * @return (setter) {Object} Constructor returned object + */ + output.currentHoveredOriginalSentence = function(element) { + if (!arguments.length) return _currentHoveredOriginalSentence; + _currentHoveredOriginalSentence = element; + return output; + }; + + /** + * Export an adaptation of _rankedSentences model + * @return {Array} array of {Object} sentence data + */ + output.updateRankedSentences = function() { + var sort = _lowToHigh ? + function(a, b) { + return a.tone_categories[_searchIndex(_selectedTone)].tones[_searchIndex(_selectedFilter)].score + - b.tone_categories[_searchIndex(_selectedTone)].tones[_searchIndex(_selectedFilter)].score; + } : + function(a, b) { + return b.tone_categories[_searchIndex(_selectedTone)].tones[_searchIndex(_selectedFilter)].score + - a.tone_categories[_searchIndex(_selectedTone)].tones[_searchIndex(_selectedFilter)].score; + }, + map = function(item) { + var score = item.tone_categories[_searchIndex(_selectedTone)].tones[_searchIndex(_selectedFilter)].score.toFixed(SCORE_DECIMAL_PLACE); + return { + text: item.text, + score: score, + className: 'sentence-rank--score_' + normalize(_selectedFilter) + }; + }, + filter = (_selectedTone === 'Social Tone') ? + function(item) { + return item.score >= -1; + } : + function(item) { + return item.score > 0; + }; + return _rankedSentences.sort(sort).map(map); + }; + + /** + * Export an adaptation of _originalSentences model + * @return {Array} array of {Object} sentence data + */ + output.updateOriginalSentences = function() { + var map = function(item) { + var result = item; + result.className = _toneLevel(_selectedFilter, item.tone_categories[_searchIndex(_selectedTone)].tones[_searchIndex(_selectedFilter)].score, 'className_OT'); + result.text = result.text.replace(/\r?\n/g, '
'); + return result; + }; + return _originalSentences.map(map); + }; + + /** + * Export an adaptation of original sentences tooltip model + * @param {int} sentence index + * @return {Array} array of {Object} sentence data + */ + output.updateOriginalSentencesTooltips = function(sentenceIndex) { + var map = function(item) { + var result = item; + result.score_percentage = item.score.toFixed(SCORE_DECIMAL_PLACE); + result.className = 'original-text--tooltip-li_' + normalize(result.tone_name); + return result; + }; + + return move( + _originalSentences[sentenceIndex].tone_categories[_searchIndex(_selectedTone)].tones.slice(0).map(map), + _searchIndex(_selectedFilter), + 0); + }; + + /** + * Select initial filter depending on sample text picked + */ + output.selectFilterBySample = function() { + var sample = { + 'customer-call': 'Anger', + 'email': 'Openness', + 'corporate-announcement': 'Analytical', + 'own-text': (function() { + var highestTone = 'Anger', + highestScore = 0; + _documentTones.tone_categories[0].tones.forEach(function(item) { + if (highestScore < item.score) { + highestScore = item.score; + highestTone = item.tone_name; + } + }); + return highestTone; + })(), + }; + + if (_selectedSample in sample) + output.selectedFilter(sample[_selectedSample]); + }; + + /** + * Expose {Function} _percentagify + */ + output.percentagify = _percentagify; + + // cleaning and setting up everything + _cleanSentences(_rankedSentences); + _originalSentences = _rankedSentences.slice(0); + _socialToneHoverTexts = { + 'Agreeableness': 'Higher: Tone of communication more likely to be perceived as caring, sympathetic, cooperative, compromising, trustworthy, and/or humble.

Lower: Tone more likely to be perceived as selfish, uncaring, uncooperative, self-interested, confrontational, skeptical, and/or arrogant.', + 'Emotional Range': '**This demo cannot diagnose a mental illness.**

Higher: Tone of communication more likely to be perceived as concerned, frustrated, angry, passionate, upset, stressed, insecure, or impulsive. Augments any Emotion Tones.

Lower: Tone more likely to be perceived as calm, bland, content, relaxed, unconcerned, or careful.', + 'Openness': 'Higher: Tone of communication more likely to be perceived as intellectual, curious, emotionally-aware, imaginative, willing to try new things, appreciating beauty, and/or open to change.

Lower: Tone more likely to be perceived as no-nonsense, straightforward, blunt, and/or preferring tradition and the obvious over the complex, ambiguous, and subtle.', + 'Conscientiousness': 'Higher: Tone of communication more likely to be perceived as disciplined, dutiful, achievement-striving, confident, driven, and/or organized.

Lower: Tone more likely to be perceived as spontaneous, laid-back, reckless, unmethodical, remiss, and/or disorganized.', + 'Extraversion': 'Higher: Tone of communication more likely to be perceived as engaging, seeking attention, needy, assertive, outgoing, sociable, cheerful, excitement-seeking, and/or busy.

Lower: Tone more likely to be perceived as independent, timid, introverted, restrained, boring, and/or dreary.' + }; + + // Constructing the _toneHash hashmap + _toneHash = sentences[0].tone_categories.reduce(function(prevVal, curVal, curIndex) { + prevVal = curVal.tones.reduce(function(prevVal2, curVal2, curIndex2) { + prevVal2[curVal2.tone_name] = { + index: curIndex2, + tone: curVal.category_name, + low: { + score: _thresholds.sentence[curVal2.tone_name][0], + className_OT: 'original-text--sentence_' + normalize(curVal2.tone_name) + '-low', + className_SR: 'sentence-rank--score_' + normalize(curVal2.tone_name) + '-low' + }, + medium: { + className_OT: 'original-text--sentence_' + normalize(curVal2.tone_name) + '-medium', + className_SR: 'sentence-rank--score_' + normalize(curVal2.tone_name) + '-medium' + }, + high: { + score: _thresholds.sentence[curVal2.tone_name][1], + className_OT: 'original-text--sentence_' + normalize(curVal2.tone_name) + '-high', + className_SR: 'sentence-rank--score_' + normalize(curVal2.tone_name) + '-high' + } + }; + + if (curVal.category_name === 'Social Tone') + prevVal2[curVal2.tone_name].tooltip = _socialToneHoverTexts[curVal2.tone_name]; + + return prevVal2; + }, prevVal); + prevVal[curVal.category_name] = { + index: curIndex, + tone: curVal.category_name + }; + return prevVal; + }, {}); + + return output; +} diff --git a/public/js/components/helpers.js b/public/js/components/helpers.js new file mode 100644 index 00000000..64ea4261 --- /dev/null +++ b/public/js/components/helpers.js @@ -0,0 +1,83 @@ +/** + * Copyright 2015 IBM Corp. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + /* global $:false */ + +'use strict'; + +/** + * Get range transformation of @param value + * @param {float} value + * @param {float} min + * @param {float} max + * @return {float} projected value + */ +function range(value, min, max) { + return (value - min) / (max - min); +} + +/** + * Get range transformation of @param value in percent + * @param {float} value + * @param {float} min + * @param {float} max + * @return {float} projected value in percent + */ +function rangeToPercent(value, min, max) { + return Math.round(100 * range(value, min, max)); +} + +/** + * Cleans up string + * @param {String} str + * @return {String} normalized string + */ +function normalize(str) { + return str.replace(/\s+/g, '-').toLowerCase(); +} + +/** + * Scrolls page to @param element + * @param {$element} element + */ +function scrollTo(element) { + $('html, body').animate({ scrollTop: element.offset().top }, 'fast'); +} + +/** + * Move element in @param arr from @param old_index to @param new_index. + * Mutates @param arr + * @param {Array} arr + * @param {int} old_index + * @param {int} new_index + * @return {Array} arr + */ +function move(arr, old_index, new_index) { + while (old_index < 0) { + old_index += arr.length; + } + while (new_index < 0) { + new_index += arr.length; + } + if (new_index >= arr.length) { + var k = new_index - arr.length; + while ((k--) + 1) { + arr.push(undefined); + } + } + arr.splice(new_index, 0, arr.splice(old_index, 1)[0]); + return arr; +} diff --git a/public/js/components/tab-panels.js b/public/js/components/tab-panels.js new file mode 100644 index 00000000..bbeabcf9 --- /dev/null +++ b/public/js/components/tab-panels.js @@ -0,0 +1,16 @@ +/* +Tabbed Panels js +*/ +(function() { + $('.tab-panels--tab').click(function(e){ + e.preventDefault(); + var self = $(this); + var inputGroup = self.closest('.tab-panels'); + var idName = null; + + inputGroup.find('.active').removeClass('active'); + self.addClass('active'); + idName = self.attr('href'); + $(idName).addClass('active'); + }); +})(); \ No newline at end of file diff --git a/public/js/config.js b/public/js/config.js deleted file mode 100644 index b0e1c488..00000000 --- a/public/js/config.js +++ /dev/null @@ -1,56 +0,0 @@ -/** - * Copyright 2015 IBM Corp. All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -'use strict'; - -var HIGHLIGHT_ANIMATION_DURATION = 500, - TOP_N_WEIGHTED_POSITIVE_LIWC = 3, - TOP_N_WEIGHTED_NEGATIVE_LIWC = 3, - WORD_TRAIT_CORR_TYPE = { - positive: 'positive', - negative: 'negative' - }; - -var COLOR_SCHEMA = { - 'emotion_tone': '#FF5003', - 'Anger': '#AD1625', - 'sadness': '#562f72', - 'anxiety': '#311a41', - 'Negative': '#d74108', - 'Cheerfulness': '#db2780', - 'writing_tone': '#5aa700', - 'causation': '#3690C0', - 'Analytical': '#4b8400', - 'Tentative': '#0a3c02', - 'insight': '#023858', - 'certainty': '#A6BDDB', - 'Confident': '#2d660A', - 'social_tone': '#5596e6', - 'family_c': '#a6d96a', - 'Conscientiousness_Big5': '#264a60', - 'friends': '#74c476', - 'Openness_Big5': '#4178be', - 'leisure': '#238b45', - 'Agreeableness_Big5': '#325c80', - 'refs_to_others': '#006d2c', - 'distant': '#006d2c' -}; - -var SAMPLE_TEXT = '' + 'Hi Team, \n\n' + - 'I know the times are difficult! Our sales have been disappointing for the past three quarters for our data analytics product suite. We have a competitive data analytics product suite in the industry. But we need to do our job selling it! \n\n' + - 'We need to acknowledge and fix our sales challenges. We can’t blame the economy for our lack of execution! We are missing critical sales opportunities. Our product is in no way inferior to the competitor products. Our clients are hungry for analytical tools to improve their business outcomes. Economy has nothing to do with it. In fact, it is in times such as this, our clients want to get the insights they need to turn their businesses around. Let’s buckle up and execute. \n\n' + - 'In summary, we have a competitive product, and a hungry market. We have to do our job to close the deals.\n\n' + - 'Jennifer Baker\n' + 'Sales Leader, North-East Geo,\n' + 'Data Analytics Inc.'; \ No newline at end of file diff --git a/public/js/demo.js b/public/js/demo.js new file mode 100755 index 00000000..ce4f415e --- /dev/null +++ b/public/js/demo.js @@ -0,0 +1,405 @@ +/** + * Copyright 2015 IBM Corp. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + /* global $:false, _, normalize, scrollTo, move, Application */ + +'use strict'; +/* + * JQuery on ready callback function + */ +function ready() { + // load all json data first + $.when( + $.ajax('/data/threshold_v0.1.1.json'), + $.ajax('/data/customer-call.txt'), + $.ajax('/data/corporate-announcement.txt'), + $.ajax('/data/personal-email.txt')) + .done(function(thresholds, customerCall, corporateAnnouncement, personalEmail) { + var sampleText = { + 'customer-call': customerCall[0], + 'corporate-announcement': corporateAnnouncement[0], + 'email': personalEmail[0], + 'own-text': '' + }; + allReady(thresholds[0], sampleText); + }); +} + +/** + * Load application after initial json data is loaded + * @param {Object} thresholds json + * @param {Object} collection of sample text json + */ +function allReady(thresholds, sampleText) { + var $input = $('.input'), + $output = $('.output'), + $loading = $('.loading'), + $error = $('.error'), + $errorMessage = $('.error--message'), + $inputRadio = $('.input--radio'), + $textarea = $('.input--textarea'), + $submitButton = $('.input--submit-button'), + $emotionGraph = $('.summary-emotion-graph'), + $writingGraph = $('.summary-writing-graph'), + $socialGraph = $('.summary-social-graph'), + $emotionFilters = $('.filters--emotion'), + $writingFilters = $('.filters--writing'), + $socialFilters = $('.filters--social'), + $originalText = $('.original-text'), + $originalTexts = $('.original-text--texts'), + $originalTextTooltipContainer = $('.original-text--tooltip-container'), + $legend = $('.original-text--legend'), + $sentenceRankTable = $('.sentence-rank--table'), + $jsonCode = $('.json--code'), + $outputResetButton = $('.output--reset-button'), + barGraph_template = barGraphTemplate.innerHTML, + verticalBarGraph_template = verticalBarGraphTemplate.innerHTML, + filters_template = filtersTemplate.innerHTML, + originalText_template = originalTextTemplate.innerHTML, + sentenceRank_template = sentenceRankTemplate.innerHTML, + originalTextTooltip_template = originalTextTooltipTemplate.innerHTML, + originalTextLegend_template = originalTextLegendTemplate.innerHTML; + + /** + * Callback function for AJAX post to get tone analyzer data + * @param {Object} response data from api + */ + function toneCallback(data) { + + $input.show(); + $loading.hide(); + $error.hide(); + $output.show(); + scrollTo($output); + + var emotionTone = data.document_tone.tone_categories[0].tones, + writingTone = data.document_tone.tone_categories[1].tones, + socialTone = data.document_tone.tone_categories[2].tones, + selectedSample = $('input[name=rb]:checked').val(), + selectedSampleText = $textarea.val(), + sentences, + app; + + // if only one sentence, sentences will not exist, so mutate sentences_tone manually + if (data.sentences_tone === undefined) { + data.sentences_tone = [{ + sentence_id: 0, + text: selectedSampleText, + tone_categories: data.document_tone.tone_categories + }]; + } + sentences = data.sentences_tone; + app = new App(data.document_tone, sentences.slice(0), thresholds, selectedSample); // clone sentences + + /** + * Map Callback function for emotion document tones + * @param {Object} current iterating element + * @return {Object} label, score, threshold + */ + function emotionMap(item) { + return { + label: item.tone_name, + score: app.percentagify(item.score, 'Emotion Tone'), + threshold: app.percentagify(app.thresholds().doc[item.tone_name][0]) + }; + } + + /** + * Map Callback function for writing document tones + * @param {Object} current iterating element + * @return {Object} label, score + */ + function writingMap(item) { + return { + label: item.tone_name, + score: app.percentagify(item.score, 'Writing Tone') + }; + } + + /** + * Map Callback function for social document tones + * @param {Object} current iterating element + * @return {Object} label, score, threshold percent, tooltip text + */ + function socialMap(item) { + return { + label: item.tone_name, + score: app.percentagify(item.score, 'Social Tone'), + threshold: app.percentagify(app.thresholds().doc[item.tone_name][1]), + tooltip: app.toneHash()[item.tone_name].tooltip + }; + } + + /** + * Make sure height of sentences view is same as filters view + */ + function matchSentenceViewsHeight() { + $('.sentences--sentence-views').css('height', $('.sentences--filters')[0].getBoundingClientRect().height + 'px'); + } + + /** + * Toggle sentence rank, Emit view update + */ + function toggleSort() { + app.toggleLowToHigh(); + updateSentenceRank(); + } + + /** + * Select tone, Emit view update + * @param {String} tone name + */ + function clickFilter(tone_name) { + app.selectedFilter(tone_name); + updateOriginalText(); + updateSentenceRank(); + updateLegend(); + } + + /** + * Select right filter + */ + function updateFilters() { + $('.filters--radio[data-id=' + app.selectedFilter() + ']').prop('checked', true); + } + + /** + * Emit view update for original text view + */ + function updateOriginalText() { + $originalTexts.html(_.template(originalText_template, { + items: app.updateOriginalSentences() + })); + } + + /** + * Emit view update for sentence rank view + */ + function updateSentenceRank() { + $sentenceRankTable.html(_.template(sentenceRank_template, { + items: app.updateRankedSentences() + })); + } + + /** + * Update original text tooltip positioning + * @param {Object} event data object + */ + function positionOriginalTextTooltip(e) { + var element = app.currentHoveredOriginalSentence(), + box = element.getBoundingClientRect(), + originalText = document.querySelector('.original-text'), + top = box.top, + left = box.left + originalText.getBoundingClientRect().width * 0.05; + + if (e !== undefined) + left = e.clientX; + $originalTextTooltipContainer.css({ + 'top': top, + 'left': left + }); + } + + /** + * Emit view update for original text tooltip view + * @param {int} index of currently hovering original sentence element + */ + function updateOriginalTextTooltip(index) { + $originalTextTooltipContainer.html(_.template(originalTextTooltip_template, { + items: app.updateOriginalSentencesTooltips(index), + isSocialTone: app.selectedTone() + })); + } + + /** + * Emit view update for legend view + */ + function updateLegend() { + $legend.html(_.template(originalTextLegend_template, { + className: normalize(app.selectedFilter()) + })); + } + + /** + * Bind original text view hover events for original text tooltip + * interactions + */ + function bindOriginalTextHoverEvents() { + $('.original-text--sentence-container').hover(function(e) { + var id = $(this).data('index'); + app.currentHoveredOriginalSentence(this); + updateOriginalTextTooltip(id); + $originalTextTooltipContainer.removeClass('original-text--tooltip-container_hidden'); + app.isHoveringOriginalText(true); + $('.original-text--sentence-container').not('[data-index="'+id+'"]').addClass('original-text--sentence-container_grayed'); + }, function(e) { + $originalTextTooltipContainer.addClass('original-text--tooltip-container_hidden'); + app.isHoveringOriginalText(false); + $('.original-text--sentence-container').removeClass('original-text--sentence-container_grayed'); + }); + + $(document).scroll(function(e) { + positionOriginalTextTooltip(e); + }); + + $originalText.scroll(function(e) { + positionOriginalTextTooltip(e); + if (app.isHoveringOriginalText()) + $originalTextTooltipContainer.addClass('original-text--tooltip-container_hidden'); + }); + + $originalText.mousemove(function(e) { + positionOriginalTextTooltip(e); + }); + } + + /** + * Emit view update for json view + * @param {Object} data + */ + function updateJSON(data) { + $jsonCode.empty(); + $jsonCode.html(JSON.stringify(data, null, 2)); + } + + app.selectFilterBySample(); + + emotionTone = emotionTone.map(emotionMap); + writingTone = writingTone.map(writingMap); + socialTone = socialTone.map(socialMap); + + $emotionGraph.html(_.template(barGraph_template, { + items: emotionTone, + className: 'emotion' + })); + + $writingGraph.html(_.template(verticalBarGraph_template, { + items: writingTone, + className: 'writing' + })); + + $socialGraph.html(_.template(barGraph_template, { + items: socialTone, + className: 'social' + })); + + $emotionFilters.html(_.template(filters_template, { + items: emotionTone + })); + + $writingFilters.html(_.template(filters_template, { + items: writingTone + })); + + $socialFilters.html(_.template(filters_template, { + items: socialTone + })); + + updateFilters(); + matchSentenceViewsHeight(); + updateOriginalText(); + updateSentenceRank(); + updateLegend(); + bindOriginalTextHoverEvents(); + + $jsonCode.html(JSON.stringify(data, null, 2)); + + $('.filters--radio').on('click', function() { + clickFilter($(this).data('id')); + bindOriginalTextHoverEvents(); + }); + + $('.sentence-rank--checkbox').on('change', function() { + toggleSort(); + }); + } + + /** + * AJAX Post request on error callback + * @param {Object} error + */ + function _error(error) { + console.log(); + var message = typeof error.responseJSON.error === 'string' ? + error.responseJSON.error : + 'Error code ' + error.responseJSON.error.code + ': ' + error.responseJSON.error.message; + $errorMessage.text(message); + $input.show(); + $loading.hide(); + $output.hide(); + $error.show(); + scrollTo($error); + } + + /** + * AJAX Post request for tone analyzer api + * @param {String} request body text + */ + function getToneAnalysis(text) { + $.post('/api/tone', {'text': text }, toneCallback) + .fail(_error); + } + + /** + * Emit view update for input text area view + * @param {String} sample text id + */ + function updateTextarea(value) { + $textarea.val(sampleText[value]); + } + + /** + * Reset views to beginning state + */ + function reset() { + $input.show(); + $loading.hide(); + $output.hide(); + $error.hide(); + scrollTo($input); + $('#input-customer-call').trigger('click'); + } + + /** + * Submit button click event + */ + $submitButton.click(function() { + $input.show(); + $loading.show(); + $output.hide(); + $error.hide(); + scrollTo($loading); + getToneAnalysis($textarea.val()); + }); + + /** + * Input radio button click event + */ + $inputRadio.click(function() { + updateTextarea($(this).val()); + }); + + /** + * Reset button click event + */ + $outputResetButton.click(function() { + reset(); + }); + + updateTextarea($('.input--radio:checked').val()); +} + +$(document).ready(ready); diff --git a/public/js/index.js b/public/js/index.js deleted file mode 100644 index e6374590..00000000 --- a/public/js/index.js +++ /dev/null @@ -1,543 +0,0 @@ -/** - * Copyright 2015 IBM Corp. All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* global - SAMPLE_TEXT:false, umviz:false, d3:false, $:false, - WORD_TRAIT_CORR_TYPE:false, HIGHLIGHT_ANIMATION_DURATION:false, - COLOR_SCHEMA:false -*/ - -'use strict'; - -// DOM id for the tone visualization -var vizId = '#visualization'; - -/** @type {d3.map()} global word - category mapping data structure for highlighting interaction */ -var WORD_TO_CATEGORY = d3.map(), - CATEGORY_TO_WORD = d3.map(); - -var SYNONYM_HOPS = 1, - SYNONYM_LIMITS = 6; - -// Visualization -var toneGenomeViz = new umviz.models.toneGenome() - .width(880) - .height(190) - .margin({ top: -15, right: 50, bottom: 100, left: 45 }) - .layoutMetric('percentile') - .colorSchema(COLOR_SCHEMA); - -// Visualization container -var mainViz = d3.select(vizId) - .append('div') - .classed('svg-container', true) //container class to make it responsive - .append('svg') - .attr('preserveAspectRatio', 'xMinYMin meet') - //responsive SVG needs these 2 attributes and no width and height attr - .attr('viewBox', '0 0 '+ toneGenomeViz.width() + ' ' + toneGenomeViz.height()) - //class to make it responsive - .classed('svg-content-responsive', true); - -// startup -$(document).ready(function() { - var $text = $('#textArea'), - $loading = $('#loading'), - $analyzeBtn = $('.analyze-btn'), - $results = $('.results'), - $jsonTab = $('.json-div'), - $outputText = $('.text-output-div'), - $outputTextLabel = $('.text-output-label'), - $error = $('.error'), - $errorMsg = $('.errorMsg'), - $visualization = $(vizId); - - var CURRENT_TEXT = null; // current analyzed text - var CURRENT_TONE = null; // current results - var REPLACEABLE = null; - - // set initial text - $text.val(SAMPLE_TEXT); - - function onAPIError(xhr) { - var error; - try { - error = JSON.parse(xhr.responseText || {}); - } catch(e) {} - - showError(error ? (error.error || error): ''); - } - - $analyzeBtn.click(function() { - $loading.show(); - $results.hide(); - - /** - * send the data to the Tone Analyzer API to get words - * matched with LIWC categories; - */ - var text = $text.val(); - - $('.output-div')[0].scrollIntoView(true); // Boolean arguments - - $.post('/tone', {'text': text }) - .done(function(response) { - // save the json response in the JSON tab - $jsonTab.html(JSON.stringify(response, null, 2)); - - //prepare the data - processData(response); - response.id = 'root'; - CURRENT_TONE = response; - doToneCheck(response, text); - }) - .fail(onAPIError) - .always (function(){ - $loading.hide(); - // scroll to bottom - $('.output-div')[0].scrollIntoView(true); // Boolean arguments - - }); - }); - - /** - * Display an error or a default message - * @param {String} error The error - */ - function showError(error) { - var defaultErrorMsg = 'Error processing the request, please try again later.'; - $error.show(); - $errorMsg.text(error || defaultErrorMsg); - } - - /** - * Updates the visualization with the tone analyzer results - * - * @param {Object} toneResponse: tone scores with linguistic evidence - * @param {String} analyzedText: analyzed text - */ - function doToneCheck(toneResponse, analyzedText) { - // If the list of words with any synonym in the system is available, keep it - if (toneResponse.replaceable_words) { - REPLACEABLE = {}; - toneResponse.replaceable_words.forEach(function(w) { - REPLACEABLE[w.toLowerCase()] = true; - }); - } else { - REPLACEABLE = null; - } - $results.show(); - - CURRENT_TEXT = analyzedText; - // normalize text - var analyzedHtmlText = analyzedText.replace(/\r\n/g, '
').replace(/[\r\n]/g, '
'); - - // call visualization component - - mainViz.datum(toneResponse).call(toneGenomeViz); - - // add higlight span html tags for all matched words: - WORD_TO_CATEGORY.keys().forEach(function(wd) { - var cates = WORD_TO_CATEGORY.get(wd); - if (cates !== undefined && cates instanceof Array) - analyzedHtmlText = addPropertySpan(analyzedHtmlText, wd, cates.join(' ')); - }); - - - $outputText.html(analyzedHtmlText); - - //add highlight css for different categories - CATEGORY_TO_WORD.keys().reverse().forEach(function(ele) { - var cateName; - if (ele.indexOf('_' + WORD_TRAIT_CORR_TYPE.positive) > 0) - cateName = ele.substring(0, ele.indexOf('_' + WORD_TRAIT_CORR_TYPE.positive)); - if (ele.indexOf('_' + WORD_TRAIT_CORR_TYPE.negative) > 0) - cateName = ele.substring(0, ele.indexOf('_' + WORD_TRAIT_CORR_TYPE.negative)); - - $('.' + ele).css('color', COLOR_SCHEMA[cateName]); - $('.' + ele).css('border', "1px solid "+COLOR_SCHEMA[cateName]); - $('.' + ele).css('padding', '0.2em 0.5em 0.2em 0.5em'); - $('.' + ele + ".replaceable").css('background-color', COLOR_SCHEMA[cateName]); - $('.' + ele + ".replaceable").css('color', 'white'); - }); - - $('.matched-word').mouseover(function() { - highlightToneGenome($(this).attr('categories')); - }); - - $('.matched-word').mouseout(function() { - unhighlightToneGenome($(this).attr('categories')); - }); - - setupSynonymExpansion(); - } - - - function addPropertySpan(data, search, stylecls) { - var searchRgp = new RegExp('\\b(' + (search) + ')\\b', 'gi'); - var match, matchIdxs = []; //store matches in the original text. - var counter = -1; - - while ((match = searchRgp.exec(CURRENT_TEXT)) !== null) { - matchIdxs.push(match.index); - } - - function replacer(matchstr) { - counter++; - var replaceable = REPLACEABLE && REPLACEABLE[matchstr.toLowerCase()]; - //console.log("replacer", matchstr, replaceable); - return '' + matchstr + ''; - } - - return data.replace(searchRgp, replacer); - } - - /** - * A function to get the context (array and idx) of a word in a text - * @param {String} word the word to search - * @param {int} offset - * @return {Object} context array and offset - */ - function getContext(word, offset) { - var result = { context: [], offset: -1 }, - data = CURRENT_TEXT, - pref = [], - suf = [], - contextHops = 2; - - //a reg exp alphanumeric, space or tab - var charWithSpaceReg = /[\w\s\t]/i, - wordBreakerReg = /[\s\t]/i; - - if (data !== null && data.length > 1) { - var token = ''; - var counter = 0; - var c = 0; - //search prefix context: - if (offset > 0) { - var i = offset - 1; - counter = 0; - c = data.charAt(i); - while (i >= 0 && counter < contextHops && (charWithSpaceReg.exec(c) !== null)) { - if (wordBreakerReg.exec(c) !== null && token.length > 0) { - pref.unshift(token); - counter++; - token = ''; - } - if (wordBreakerReg.exec(c) === null) token = c + token; - c = data.charAt(--i); - } - } - token = ''; - //serarch suffix context: - if (offset < (data.length - word.length)) { - var j = parseInt(offset) + parseInt(word.length); - counter = 0; - c = data.charAt(j); - while (j <= (data.length - 1) && - counter < contextHops && - (charWithSpaceReg.exec(c) !== null)) { - - if (wordBreakerReg.exec(c) !== null && token.length > 0) { - suf.push(token); - counter++; - token = ''; - } - if (wordBreakerReg.exec(c) === null) token = token.concat(c); - c = data.charAt(++j); - } - } - } - - if (pref.length > 0 || suf.length > 0) - result.context = pref.concat([word], suf); - result.offset = pref.length; - - return result; - } - - function setupSynonymExpansion() { - // on synonym word click - $('.matched-word').click(function(event) { - var _this = $(this); - var cates = _this.attr('categories'), - offset = _this.attr('offset'), - word = _this.html().toLowerCase(); - - if ($(this).hasClass('suggested')) { - event.preventDefault(); - _this.popover('disable'); - return; - } - - word = (word === 'challenges' ? 'challenge' : word); - - //clean other pop-ups - $('.pop').popover('hide') - .removeClass('pop'); - //get the context of this word: - var cntxt = getContext(word, offset); - - $.ajax({ - type: 'GET', - data: { - word: word, - limit: SYNONYM_LIMITS, - context: cntxt.context.join(' '), - index: cntxt.offset, - hops: SYNONYM_HOPS - }, - url: 'synonyms', - dataType: 'json', - contentType: 'application/json', - success: function(response) { - $error.hide(); - processSynonym(response, cates); - }, - error: onAPIError - }); - - function processSynonym(response, cates) { - var allSyns = response.synonyms; - var $synonymTab = $('#synonymTabs'), - $synonymContent = $('#synonymTabContent'); - - //clean the content first: - $synonymContent.empty(); - $synonymTab.empty(); - - - //get synonym list for current categories - var curTraitSyns = []; - allSyns.forEach(function(e) { - if (cates.toLowerCase().indexOf(e.trait.toLowerCase()) >= 0) curTraitSyns.push(e); - }); - - if (!curTraitSyns.length) { - _this.popover({ - title: '

No synonyms available for ' + '' + word + '

', - placement: 'bottom', - content: $('#synonymDiv').html(), - html:true, - }); - - //show the popover - _this.popover('show').addClass('pop'); - - $('#closePopover').click(function() { - _this.popover('hide') - .removeClass('pop'); - }); - - $('.popover')[0].scrollIntoView(); - return; - } - - curTraitSyns.forEach(function(ele) { - var existingSyns = [], - tabNaviTempl = '
  • TRAIT_ID_TO_REPLACE
  • ', - tabContentTempl = '
    TAB_CONTENT_TO_REPLACE
    '; - - //generate tab nav - $synonymTab.append(tabNaviTempl.replace(/TRAIT_ID_TO_REPLACE/g, ele.trait)); - - //generate tab content - var synsListTempl = '
    LIST_CONTENT_TO_REPLACE
    ', - synsListItemTempl = ' SYNONYM_WEIGHTSYNONYM_CONTENT', - synsListItemContent = '', - synsListGroup = ''; - - ele.synonyms.forEach(function(syn) { - if (existingSyns.indexOf(syn.word) < 0) { - existingSyns.push(syn.word); - synsListItemContent += synsListItemTempl - .replace(/SYNONYM_CONTENT/g, syn.word) - .replace(/SYNONYM_WEIGHT/g, syn.weight.toFixed(2)); - } - }); - - synsListGroup = synsListTempl.replace(/LIST_CONTENT_TO_REPLACE/g, synsListItemContent); - - $synonymContent.append(tabContentTempl - .replace(/TRAIT_ID_TO_REPLACE/g, ele.trait) - .replace(/TAB_CONTENT_TO_REPLACE/g, synsListGroup)); - }); - - _this.popover({ - html: true, - title: '

    Suggested synonyms for ' + '' + word + ' :

    ', - content: $('#synonymDiv').html(), - placement: 'bottom' - }); - //show the popover - _this.popover('show').addClass('pop'); - //show the first tab by default - $('#synonymTabs a:first').tab('show'); - - $('.badge').each(function() { - if (parseFloat($(this).html()) < 0) $(this).attr('class', 'badge badge-hidden badge-neg'); - }); - - $('.synonym-list-item').click(function() { - var synSelected = $(this).clone() //clone the element - .children() //select all the children - .remove() //remove all the children - .end() //again go back to selected element - .text(); - $('div.modal-body').html('Are you sure you want to replace ' + word + - ' with ' + synSelected + - '?'); - - $('#useSynModal').modal('show'); - $('#confirmUseSyn').click(function() { - $('#useSynModal').modal('hide'); - _this.attr('orgWord', word); - _this.css('background-color', '#ddd'); - _this.css('color', 'black'); - _this.addClass('suggested'); - _this.html(synSelected); - _this.popover('hide').removeClass('pop'); - }); - - }); - - _this[0].scrollIntoView(); - - $('#closePopover').click(function() { - _this.popover('hide') - .removeClass('pop'); - }); - } //processSynonym - }); - } - - function highlightToneGenome(_cates) { - var trait_cates = _cates.trim().split(' '); - - d3.select(vizId).selectAll('.g-block') - .filter(function(sel) { - // not in both positive(WORD_TRAIT_CORR_TYPE.positive) or - // negative(WORD_TRAIT_CORR_TYPE.negative) categories - return ($.inArray(sel.id + '_' + WORD_TRAIT_CORR_TYPE.positive, trait_cates) === -1) && - ($.inArray(sel.id + '_' + WORD_TRAIT_CORR_TYPE.negative, trait_cates) === -1) ? true : false; - }) - .transition() - .duration(HIGHLIGHT_ANIMATION_DURATION) - .style('opacity', 0.1); - - d3.select(vizId).selectAll('.g-block-mixed-child') - .filter(function(sel) { - var _this = d3.select(this); - - if (($.inArray(sel.id + '_' + WORD_TRAIT_CORR_TYPE.negative, trait_cates) !== -1) && - (_this.attr('corr') === WORD_TRAIT_CORR_TYPE.negative)) return false; - - if (($.inArray(sel.id + '_' + WORD_TRAIT_CORR_TYPE.positive, trait_cates) !== -1) && - (_this.attr('corr') === WORD_TRAIT_CORR_TYPE.positive)) return false; - - return true; - }) - - .transition() - .duration(HIGHLIGHT_ANIMATION_DURATION) - .style('opacity', 0.1); - } - - function unhighlightToneGenome() { - d3.select(vizId).selectAll('.g-block') - .transition() - .duration(HIGHLIGHT_ANIMATION_DURATION) - .style('opacity', 1); - d3.select(vizId).selectAll('.g-block-mixed-child') - .transition() - .duration(HIGHLIGHT_ANIMATION_DURATION) - .style('opacity', 1); - } - - function processData(traits) { - if (traits.children === undefined) { - //leaf node - traits.mixedNode = traits.linguistic_evidence.length > 1 ? true : false; - - //use the score to calculate layout - traits.linguistic_evidence.forEach(function(el) { - - if (el.correlation === WORD_TRAIT_CORR_TYPE.positive) { - //extract trait-word mapping - CATEGORY_TO_WORD.set(traits.id + '_' + WORD_TRAIT_CORR_TYPE.positive, el.words); - //extract word-trait mapping - if (el.words) { - el.words.forEach(function(w) { - var curCates = WORD_TO_CATEGORY.get(w); - if (curCates === undefined) - WORD_TO_CATEGORY.set(w, [traits.id + '_' + WORD_TRAIT_CORR_TYPE.positive]); - else if ($.inArray(traits.id + '_' + WORD_TRAIT_CORR_TYPE.positive, curCates) === -1) { - //not existing - curCates.push(traits.id + '_' + WORD_TRAIT_CORR_TYPE.positive); - WORD_TO_CATEGORY.set(w, curCates); - } - }); - } - } - - if (el.correlation === WORD_TRAIT_CORR_TYPE.negative) { - //extract trait-word mapping - CATEGORY_TO_WORD.set(traits.id + '_' + WORD_TRAIT_CORR_TYPE.negative, el.words); - //extract word-trait mapping - el.words.forEach(function(w) { - var curCates = WORD_TO_CATEGORY.get(w); - if (curCates === undefined) - WORD_TO_CATEGORY.set(w, [traits.id + '_' + WORD_TRAIT_CORR_TYPE.negative]); - else - if ($.inArray(traits.id + '_' + WORD_TRAIT_CORR_TYPE.negative, curCates) === -1) { - //not existing - curCates.push(traits.id + '_' + WORD_TRAIT_CORR_TYPE.negative); - WORD_TO_CATEGORY.set(w, curCates); - } - }); - } - }); - } else { - //recursive do the data process - traits.children.forEach(processData); - } - } - - $('.metric-count').click(function setMetricCount() { - toneGenomeViz.layoutMetric('count'); - mainViz.datum(CURRENT_TONE).call(toneGenomeViz); - }); - - $('.metric-percentile').click(function setMetricPercentile() { - toneGenomeViz.layoutMetric('percentile'); - mainViz.datum(CURRENT_TONE).call(toneGenomeViz); - }); - - $('.nav-tabs a').click(function() { - setTimeout(function() { - if ($('#json').hasClass('active')) { - $visualization.hide(); - $outputTextLabel.hide(); - $outputText.hide(); - } else { - $visualization.show(); - $outputTextLabel.show(); - $outputText.show(); - } - }, 30); - }); - -}); diff --git a/public/js/lib/bootstrap.min.js b/public/js/lib/bootstrap.min.js deleted file mode 100755 index 61fea500..00000000 --- a/public/js/lib/bootstrap.min.js +++ /dev/null @@ -1,12 +0,0 @@ -/*! - * Bootstrap v3.3.1 (http://getbootstrap.com) - * Copyright 2011-2014 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ - -/*! - * Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=02b71420c751cb65fb65) - * Config saved to config.json and https://gist.github.com/02b71420c751cb65fb65 - */ -if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(t){var e=t.fn.jquery.split(" ")[0].split(".");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher")}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),s=i.data("bs.alert");s||i.data("bs.alert",s=new o(this)),"string"==typeof e&&s[e].call(i)})}var i='[data-dismiss="alert"]',o=function(e){t(e).on("click",i,this.close)};o.VERSION="3.3.1",o.TRANSITION_DURATION=150,o.prototype.close=function(e){function i(){a.detach().trigger("closed.bs.alert").remove()}var s=t(this),n=s.attr("data-target");n||(n=s.attr("href"),n=n&&n.replace(/.*(?=#[^\s]*$)/,""));var a=t(n);e&&e.preventDefault(),a.length||(a=s.closest(".alert")),a.trigger(e=t.Event("close.bs.alert")),e.isDefaultPrevented()||(a.removeClass("in"),t.support.transition&&a.hasClass("fade")?a.one("bsTransitionEnd",i).emulateTransitionEnd(o.TRANSITION_DURATION):i())};var s=t.fn.alert;t.fn.alert=e,t.fn.alert.Constructor=o,t.fn.alert.noConflict=function(){return t.fn.alert=s,this},t(document).on("click.bs.alert.data-api",i,o.prototype.close)}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),s=o.data("bs.button"),n="object"==typeof e&&e;s||o.data("bs.button",s=new i(this,n)),"toggle"==e?s.toggle():e&&s.setState(e)})}var i=function(e,o){this.$element=t(e),this.options=t.extend({},i.DEFAULTS,o),this.isLoading=!1};i.VERSION="3.3.1",i.DEFAULTS={loadingText:"loading..."},i.prototype.setState=function(e){var i="disabled",o=this.$element,s=o.is("input")?"val":"html",n=o.data();e+="Text",null==n.resetText&&o.data("resetText",o[s]()),setTimeout(t.proxy(function(){o[s](null==n[e]?this.options[e]:n[e]),"loadingText"==e?(this.isLoading=!0,o.addClass(i).attr(i,i)):this.isLoading&&(this.isLoading=!1,o.removeClass(i).removeAttr(i))},this),0)},i.prototype.toggle=function(){var t=!0,e=this.$element.closest('[data-toggle="buttons"]');if(e.length){var i=this.$element.find("input");"radio"==i.prop("type")&&(i.prop("checked")&&this.$element.hasClass("active")?t=!1:e.find(".active").removeClass("active")),t&&i.prop("checked",!this.$element.hasClass("active")).trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active"));t&&this.$element.toggleClass("active")};var o=t.fn.button;t.fn.button=e,t.fn.button.Constructor=i,t.fn.button.noConflict=function(){return t.fn.button=o,this},t(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(i){var o=t(i.target);o.hasClass("btn")||(o=o.closest(".btn")),e.call(o,"toggle"),i.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(e){t(e.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(e.type))})}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),s=o.data("bs.carousel"),n=t.extend({},i.DEFAULTS,o.data(),"object"==typeof e&&e),a="string"==typeof e?e:n.slide;s||o.data("bs.carousel",s=new i(this,n)),"number"==typeof e?s.to(e):a?s[a]():n.interval&&s.pause().cycle()})}var i=function(e,i){this.$element=t(e),this.$indicators=this.$element.find(".carousel-indicators"),this.options=i,this.paused=this.sliding=this.interval=this.$active=this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",t.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",t.proxy(this.pause,this)).on("mouseleave.bs.carousel",t.proxy(this.cycle,this))};i.VERSION="3.3.1",i.TRANSITION_DURATION=600,i.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},i.prototype.keydown=function(t){if(!/input|textarea/i.test(t.target.tagName)){switch(t.which){case 37:this.prev();break;case 39:this.next();break;default:return}t.preventDefault()}},i.prototype.cycle=function(e){return e||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(t.proxy(this.next,this),this.options.interval)),this},i.prototype.getItemIndex=function(t){return this.$items=t.parent().children(".item"),this.$items.index(t||this.$active)},i.prototype.getItemForDirection=function(t,e){var i="prev"==t?-1:1,o=this.getItemIndex(e),s=(o+i)%this.$items.length;return this.$items.eq(s)},i.prototype.to=function(t){var e=this,i=this.getItemIndex(this.$active=this.$element.find(".item.active"));return t>this.$items.length-1||0>t?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){e.to(t)}):i==t?this.pause().cycle():this.slide(t>i?"next":"prev",this.$items.eq(t))},i.prototype.pause=function(e){return e||(this.paused=!0),this.$element.find(".next, .prev").length&&t.support.transition&&(this.$element.trigger(t.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},i.prototype.next=function(){return this.sliding?void 0:this.slide("next")},i.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},i.prototype.slide=function(e,o){var s=this.$element.find(".item.active"),n=o||this.getItemForDirection(e,s),a=this.interval,r="next"==e?"left":"right",l="next"==e?"first":"last",h=this;if(!n.length){if(!this.options.wrap)return;n=this.$element.find(".item")[l]()}if(n.hasClass("active"))return this.sliding=!1;var d=n[0],p=t.Event("slide.bs.carousel",{relatedTarget:d,direction:r});if(this.$element.trigger(p),!p.isDefaultPrevented()){if(this.sliding=!0,a&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var c=t(this.$indicators.children()[this.getItemIndex(n)]);c&&c.addClass("active")}var f=t.Event("slid.bs.carousel",{relatedTarget:d,direction:r});return t.support.transition&&this.$element.hasClass("slide")?(n.addClass(e),n[0].offsetWidth,s.addClass(r),n.addClass(r),s.one("bsTransitionEnd",function(){n.removeClass([e,r].join(" ")).addClass("active"),s.removeClass(["active",r].join(" ")),h.sliding=!1,setTimeout(function(){h.$element.trigger(f)},0)}).emulateTransitionEnd(i.TRANSITION_DURATION)):(s.removeClass("active"),n.addClass("active"),this.sliding=!1,this.$element.trigger(f)),a&&this.cycle(),this}};var o=t.fn.carousel;t.fn.carousel=e,t.fn.carousel.Constructor=i,t.fn.carousel.noConflict=function(){return t.fn.carousel=o,this};var s=function(i){var o,s=t(this),n=t(s.attr("data-target")||(o=s.attr("href"))&&o.replace(/.*(?=#[^\s]+$)/,""));if(n.hasClass("carousel")){var a=t.extend({},n.data(),s.data()),r=s.attr("data-slide-to");r&&(a.interval=!1),e.call(n,a),r&&n.data("bs.carousel").to(r),i.preventDefault()}};t(document).on("click.bs.carousel.data-api","[data-slide]",s).on("click.bs.carousel.data-api","[data-slide-to]",s),t(window).on("load",function(){t('[data-ride="carousel"]').each(function(){var i=t(this);e.call(i,i.data())})})}(jQuery),+function(t){"use strict";function e(e){e&&3===e.which||(t(s).remove(),t(n).each(function(){var o=t(this),s=i(o),n={relatedTarget:this};s.hasClass("open")&&(s.trigger(e=t.Event("hide.bs.dropdown",n)),e.isDefaultPrevented()||(o.attr("aria-expanded","false"),s.removeClass("open").trigger("hidden.bs.dropdown",n)))}))}function i(e){var i=e.attr("data-target");i||(i=e.attr("href"),i=i&&/#[A-Za-z]/.test(i)&&i.replace(/.*(?=#[^\s]*$)/,""));var o=i&&t(i);return o&&o.length?o:e.parent()}function o(e){return this.each(function(){var i=t(this),o=i.data("bs.dropdown");o||i.data("bs.dropdown",o=new a(this)),"string"==typeof e&&o[e].call(i)})}var s=".dropdown-backdrop",n='[data-toggle="dropdown"]',a=function(e){t(e).on("click.bs.dropdown",this.toggle)};a.VERSION="3.3.1",a.prototype.toggle=function(o){var s=t(this);if(!s.is(".disabled, :disabled")){var n=i(s),a=n.hasClass("open");if(e(),!a){"ontouchstart"in document.documentElement&&!n.closest(".navbar-nav").length&&t('