[[admin/manage/ip-blacklist:lead]]
diff --git a/src/views/admin/manage/registration.tpl b/src/views/admin/manage/registration.tpl
index f8504fb31d..961d4863f7 100644
--- a/src/views/admin/manage/registration.tpl
+++ b/src/views/admin/manage/registration.tpl
@@ -1,109 +1,121 @@
-
-
- [[admin/manage/registration:queue]]
-
-
-
- [[admin/manage/registration:description, {config.relative_path}/admin/settings/user]]
-
-
-
-
-
- | [[admin/manage/registration:list.name]] |
- [[admin/manage/registration:list.email]] |
- [[admin/manage/registration:list.ip]] |
- [[admin/manage/registration:list.time]] |
-
- {customHeaders.label} |
-
- |
-
-
-
- |
-
-
-
-
-
- {users.username}
- |
-
-
-
-
-
-
- {users.email}
- |
-
-
-
-
-
-
- {users.ip}
-
-
-
-
-
- {users.ipMatch.icon:text}
-
- {users.ipMatch.username}
-
- |
-
-
- |
-
-
- {users.customRows.value} |
-
-
-
-
-
-
-
- |
-
-
-
-
+
+
+
+
+ [[admin/manage/registration:queue]]
+
+
+
+ [[admin/manage/registration:description, {config.relative_path}/admin/settings/user]]
+
+
+
+
+
+
+ | [[admin/manage/registration:list.name]] |
+ [[admin/manage/registration:list.email]] |
+ [[admin/manage/registration:list.ip]] |
+ [[admin/manage/registration:list.time]] |
+
+ {customHeaders.label} |
+
+ |
+
+
+
+
+
+ |
+
+
+
+
+
+ {users.username}
+ |
+
+
+
+
+
+
+ {users.email}
+ |
+
+
+
+
+
+
+ {users.ip}
+
+
+
+
+
+ {users.ipMatch.icon:text}
+
+ {users.ipMatch.username}
+
+ |
+
+
+ |
-
-
+
+ {users.customRows.value} |
+
-
-
- [[admin/manage/registration:invitations]]
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ [[admin/manage/registration:invitations]]
+
+
+ [[admin/manage/registration:invitations.description]]
+
+
+
+
+
+ | [[admin/manage/registration:invitations.inviter-username]] |
+ [[admin/manage/registration:invitations.invitee-email]] |
+ [[admin/manage/registration:invitations.invitee-username]] |
+
+
+
+
+
+
+ | {invites.username} |
+ {invites.invitations.email} |
+ {invites.invitations.username}
+
+
+
+ |
+
+
+
+
+
+
+
-
- [[admin/manage/registration:invitations.description]]
-
-
-
-
- | [[admin/manage/registration:invitations.inviter-username]] |
- [[admin/manage/registration:invitations.invitee-email]] |
- [[admin/manage/registration:invitations.invitee-username]] |
-
-
-
-
- | {invites.username} |
- {invites.invitations.email} |
- {invites.invitations.username}
-
-
-
- |
-
-
-
-
-
-
+
\ No newline at end of file
diff --git a/src/views/admin/manage/tags.tpl b/src/views/admin/manage/tags.tpl
index d2b3310f81..41851df893 100644
--- a/src/views/admin/manage/tags.tpl
+++ b/src/views/admin/manage/tags.tpl
@@ -1,5 +1,4 @@
diff --git a/src/views/admin/manage/users.tpl b/src/views/admin/manage/users.tpl
index 356870d604..7d7fdbbe28 100644
--- a/src/views/admin/manage/users.tpl
+++ b/src/views/admin/manage/users.tpl
@@ -71,37 +71,41 @@
From aea40902b01db62159b3780f4f84ca17e82b4f45 Mon Sep 17 00:00:00 2001
From: pichalite
Date: Thu, 23 Feb 2017 00:28:54 +0000
Subject: [PATCH 22/39] Fix markup in category privileges template
---
.../admin/partials/categories/privileges.tpl | 196 +++++++++---------
1 file changed, 102 insertions(+), 94 deletions(-)
diff --git a/src/views/admin/partials/categories/privileges.tpl b/src/views/admin/partials/categories/privileges.tpl
index f15d207d6c..2ec8fa2026 100644
--- a/src/views/admin/partials/categories/privileges.tpl
+++ b/src/views/admin/partials/categories/privileges.tpl
@@ -1,101 +1,109 @@
-
-
- | [[admin/manage/categories:privileges.section-user]] |
-
- {privileges.labels.users.name} |
-
-
-
-
-
-
-
-
-
- {../icon:text}
-
- |
- {privileges.users.username} |
- {function.spawnPrivilegeStates, privileges.users.username, privileges}
-
-
-
- |
-
- |
-
-
-
- |
- [[admin/manage/categories:privileges.no-users]]
-
- |
-
-
+
+
+
+ | [[admin/manage/categories:privileges.section-user]] |
+
+ {privileges.labels.users.name} |
+
+
+
+
+
+
+
+
+
+
+
+ {../icon:text}
+
+ |
+ {privileges.users.username} |
+ {function.spawnPrivilegeStates, privileges.users.username, privileges}
+
+
+
+ |
+
+ |
+
+
+
+ |
+ [[admin/manage/categories:privileges.no-users]]
+
+ |
+
+
+
-
-
- | [[admin/manage/categories:privileges.section-group]] |
-
- {privileges.labels.groups.name} |
-
-
-
-
- |
-
-
-
- {privileges.groups.name}
- |
- |
- {function.spawnPrivilegeStates, name, privileges}
-
-
-
- |
-
-
-
-
-
- |
-
+
+
+
+ | [[admin/manage/categories:privileges.section-group]] |
+
+ {privileges.labels.groups.name} |
+
+
+
+
+
+
+ |
+
+
+
+ {privileges.groups.name}
+ |
+ |
+ {function.spawnPrivilegeStates, name, privileges}
+
+
+
+ |
+
+
+
+
+
+ |
+
+
[[admin/manage/categories:privileges.inherit]]
From 02cc988ae7c8dc0db0a46411e3ea0617e51aa500 Mon Sep 17 00:00:00 2001
From: "Misty (Bot)"
Date: Thu, 23 Feb 2017 09:22:14 +0000
Subject: [PATCH 23/39] Latest translations and fallbacks
---
public/language/ja/unread.json | 2 +-
public/language/ru/admin/advanced/cache.json | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/public/language/ja/unread.json b/public/language/ja/unread.json
index 47909bf086..feaef7879f 100644
--- a/public/language/ja/unread.json
+++ b/public/language/ja/unread.json
@@ -1,6 +1,6 @@
{
"title": "未読",
- "no_unread_topics": "未読のスレッドがあります。",
+ "no_unread_topics": "未読のスレッドはありません。",
"load_more": "もっと見る",
"mark_as_read": "既読にする",
"selected": "選択済み",
diff --git a/public/language/ru/admin/advanced/cache.json b/public/language/ru/admin/advanced/cache.json
index 208775f991..c0487f399b 100644
--- a/public/language/ru/admin/advanced/cache.json
+++ b/public/language/ru/admin/advanced/cache.json
@@ -1,11 +1,11 @@
{
"post-cache": "Кэш записи",
"posts-in-cache": "Записей в кэше",
- "average-post-size": "Average Post Size",
- "length-to-max": "Length / Max",
+ "average-post-size": "Средний размер записи",
+ "length-to-max": "Длина / Максимальная",
"percent-full": "%1% Full",
- "post-cache-size": "Post Cache Size",
+ "post-cache-size": "Размер записи в кэше",
"items-in-cache": "Items in Cache",
- "control-panel": "Control Panel",
- "update-settings": "Update Cache Settings"
+ "control-panel": "Панель управления",
+ "update-settings": "Обновить настройки кэша"
}
\ No newline at end of file
From 4cd4414d197046c0434834a19f6d683f6ac5c0e7 Mon Sep 17 00:00:00 2001
From: barisusakli
Date: Thu, 23 Feb 2017 15:29:35 +0300
Subject: [PATCH 24/39] small change
---
src/meta/blacklist.js | 2 +-
src/meta/js.js | 42 ++++++++++++++++++------------------------
2 files changed, 19 insertions(+), 25 deletions(-)
diff --git a/src/meta/blacklist.js b/src/meta/blacklist.js
index c02f6fb198..a078b89815 100644
--- a/src/meta/blacklist.js
+++ b/src/meta/blacklist.js
@@ -44,8 +44,8 @@ Blacklist.save = function (rules, callback) {
db.set('ip-blacklist-rules', rules, next);
},
function (next) {
+ Blacklist.load(next);
pubsub.publish('blacklist:reload');
- next();
}
], callback);
};
diff --git a/src/meta/js.js b/src/meta/js.js
index 969239f0a8..90f757361a 100644
--- a/src/meta/js.js
+++ b/src/meta/js.js
@@ -129,10 +129,10 @@ module.exports = function (Meta) {
});
}, callback);
};
-
+
function linkModules(callback) {
var modules = Meta.js.scripts.modules;
-
+
async.eachLimit(Object.keys(modules), 1000, function (relPath, next) {
var filePath = path.join(__dirname, '../../', modules[relPath]);
var destPath = path.join(__dirname, '../../build/public/src/modules', relPath);
@@ -177,41 +177,35 @@ module.exports = function (Meta) {
next();
});
}, function (err) {
- if (err) {
- return callback(err);
- }
-
- callback(null, modules);
+ callback(err, modules);
});
}
-
+
function clearModules(callback) {
var builtPaths = moduleDirs.map(function (p) {
return '../../build/public/src/' + p;
});
async.each(builtPaths, function (builtPath, next) {
rimraf(path.join(__dirname, builtPath), next);
- }, callback);
+ }, function (err) {
+ callback(err);
+ });
}
Meta.js.buildModules = function (callback) {
- clearModules(function (err) {
- if (err) {
- return callback(err);
- }
-
- if (global.env === 'development') {
- return linkModules(callback);
- }
-
- getModuleList(function (err, modules) {
- if (err) {
- return callback(err);
+ async.waterfall([
+ clearModules,
+ function (next) {
+ if (global.env === 'development') {
+ return linkModules(callback);
}
- minifyModules(modules, callback);
- });
- });
+ getModuleList(next);
+ },
+ function (modules, next) {
+ minifyModules(modules, next);
+ }
+ ], callback);
};
Meta.js.linkStatics = function (callback) {
From 09d0ce4778b3d61246718f1253f5f75fbdfcc74d Mon Sep 17 00:00:00 2001
From: barisusakli
Date: Thu, 23 Feb 2017 17:02:54 +0300
Subject: [PATCH 25/39] post tests
---
src/socket.io/posts.js | 39 ++++++------
test/posts.js | 138 +++++++++++++++++++++++++++++++++++++++++
test/topics.js | 7 +++
3 files changed, 165 insertions(+), 19 deletions(-)
diff --git a/src/socket.io/posts.js b/src/socket.io/posts.js
index fe729a5c11..6b1e5ce71b 100644
--- a/src/socket.io/posts.js
+++ b/src/socket.io/posts.js
@@ -31,25 +31,26 @@ SocketPosts.reply = function (socket, data, callback) {
data.req = websockets.reqFromSocket(socket);
data.timestamp = Date.now();
- topics.reply(data, function (err, postData) {
- if (err) {
- return callback(err);
+ async.waterfall([
+ function (next) {
+ topics.reply(data, next);
+ },
+ function (postData, next) {
+ var result = {
+ posts: [postData],
+ 'reputation:disabled': parseInt(meta.config['reputation:disabled'], 10) === 1,
+ 'downvote:disabled': parseInt(meta.config['downvote:disabled'], 10) === 1,
+ };
+
+ next(null, postData);
+
+ websockets.in('uid_' + socket.uid).emit('event:new_post', result);
+
+ user.updateOnlineUsers(socket.uid);
+
+ socketHelpers.notifyNew(socket.uid, 'newPost', result);
}
-
- var result = {
- posts: [postData],
- 'reputation:disabled': parseInt(meta.config['reputation:disabled'], 10) === 1,
- 'downvote:disabled': parseInt(meta.config['downvote:disabled'], 10) === 1,
- };
-
- callback(null, postData);
-
- websockets.in('uid_' + socket.uid).emit('event:new_post', result);
-
- user.updateOnlineUsers(socket.uid);
-
- socketHelpers.notifyNew(socket.uid, 'newPost', result);
- });
+ ], callback);
};
SocketPosts.getRawPost = function (socket, pid, callback) {
@@ -120,7 +121,7 @@ SocketPosts.getPidIndex = function (socket, data, callback) {
SocketPosts.getReplies = function (socket, pid, callback) {
if (!utils.isNumber(pid)) {
- return callback(new Error('[[error:invalid-data]'));
+ return callback(new Error('[[error:invalid-data]]'));
}
var postPrivileges;
async.waterfall([
diff --git a/test/posts.js b/test/posts.js
index 84b5934724..42ebbde345 100644
--- a/test/posts.js
+++ b/test/posts.js
@@ -755,6 +755,144 @@ describe('Post\'s', function () {
});
});
+ describe('socket methods', function () {
+
+ var pid;
+ before(function (done) {
+ topics.reply({
+ uid: voterUid,
+ tid: topicData.tid,
+ timestamp: Date.now(),
+ content: 'raw content'
+ }, function (err, postData) {
+ assert.ifError(err);
+ pid = postData.pid;
+ privileges.categories.rescind(['read'], cid, 'guests', done);
+ });
+ });
+
+ var socketPosts = require('../src/socket.io/posts');
+ it('should error with invalid data', function (done) {
+ socketPosts.reply({uid: 0}, null, function (err) {
+ assert.equal(err.message, '[[error:invalid-data]]');
+ done();
+ });
+ });
+
+ it('should error with invalid tid', function (done) {
+ socketPosts.reply({uid: 0}, {tid: 0, content: 'derp'}, function (err) {
+ assert.equal(err.message, '[[error:invalid-data]]');
+ done();
+ });
+ });
+
+ it('should fail to get raw post because of privilege', function (done) {
+ socketPosts.getRawPost({uid: 0}, pid, function (err) {
+ assert.equal(err.message, '[[error:no-privileges]]');
+ done();
+ });
+ });
+
+ it('should fail to get raw post because post is deleted', function (done) {
+ posts.setPostField(pid, 'deleted', 1, function (err) {
+ assert.ifError(err);
+ socketPosts.getRawPost({uid: voterUid}, pid, function (err) {
+ assert.equal(err.message, '[[error:no-post]]');
+ done();
+ });
+ });
+ });
+
+ it('should get raw post content', function (done) {
+ posts.setPostField(pid, 'deleted', 0, function (err) {
+ assert.ifError(err);
+ socketPosts.getRawPost({uid: voterUid}, pid, function (err, postContent) {
+ assert.ifError(err);
+ assert.equal(postContent, 'raw content');
+ done();
+ });
+ });
+ });
+
+ it('should get post', function (done) {
+ socketPosts.getPost({uid: voterUid}, pid, function (err, postData) {
+ assert.ifError(err);
+ assert(postData);
+ done();
+ });
+ });
+
+ it('shold error with invalid data', function (done) {
+ socketPosts.loadMoreBookmarks({uid: voterUid}, {uid: voterUid, after: null}, function (err, postData) {
+ assert.equal(err.message, '[[error:invalid-data]]');
+ done();
+ });
+ });
+
+ it('should load more bookmarks', function (done) {
+ socketPosts.loadMoreBookmarks({uid: voterUid}, {uid: voterUid, after: 0}, function (err, data) {
+ assert.ifError(err);
+ assert(data);
+ done();
+ });
+ });
+
+ it('should load more user posts', function (done) {
+ socketPosts.loadMoreUserPosts({uid: voterUid}, {uid: voterUid, after: 0}, function (err, data) {
+ assert.ifError(err);
+ assert(data);
+ done();
+ });
+ });
+
+ it('should load more best posts', function (done) {
+ socketPosts.loadMoreBestPosts({uid: voterUid}, {uid: voterUid, after: 0}, function (err, data) {
+ assert.ifError(err);
+ assert(data);
+ done();
+ });
+ });
+
+ it('should load more up voted posts', function (done) {
+ socketPosts.loadMoreUpVotedPosts({uid: voterUid}, {uid: voterUid, after: 0}, function (err, data) {
+ assert.ifError(err);
+ assert(data);
+ done();
+ });
+ });
+
+ it('should load more down voted posts', function (done) {
+ socketPosts.loadMoreDownVotedPosts({uid: voterUid}, {uid: voterUid, after: 0}, function (err, data) {
+ assert.ifError(err);
+ assert(data);
+ done();
+ });
+ });
+
+ it('should get post category', function (done) {
+ socketPosts.getCategory({uid: voterUid}, pid, function (err, postCid) {
+ assert.ifError(err);
+ assert.equal(cid, postCid);
+ done();
+ });
+ });
+
+ it('should error with invalid data', function (done) {
+ socketPosts.getPidIndex({uid: voterUid}, null, function (err) {
+ assert.equal(err.message, '[[error:invalid-data]]');
+ done();
+ });
+ });
+
+ it('should get pid index', function (done) {
+ socketPosts.getPidIndex({uid: voterUid}, {pid: pid, tid: topicData.tid, topicPostSort: 'oldest-to-newest'}, function (err, index) {
+ assert.ifError(err);
+ assert.equal(index, 2);
+ done();
+ });
+ });
+ });
+
after(function (done) {
db.emptydb(done);
});
diff --git a/test/topics.js b/test/topics.js
index 01af1f5f2e..1ade4de261 100644
--- a/test/topics.js
+++ b/test/topics.js
@@ -130,6 +130,13 @@ describe('Topic\'s', function () {
});
});
+ it('should error if pid is not a number', function (done) {
+ socketPosts.getReplies({uid: 0}, 'abc', function (err) {
+ assert.equal(err.message, '[[error:invalid-data]]');
+ done();
+ });
+ });
+
it('should fail to create new reply with invalid user id', function (done) {
topics.reply({uid: null, content: 'test post', tid: newTopic.tid}, function (err) {
assert.equal(err.message, '[[error:no-privileges]]');
From 0de21cb3ffdb63fa1a95324396624940086805ea Mon Sep 17 00:00:00 2001
From: barisusakli
Date: Thu, 23 Feb 2017 17:12:46 +0300
Subject: [PATCH 26/39] fix tab
---
src/socket.io/posts.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/socket.io/posts.js b/src/socket.io/posts.js
index 6b1e5ce71b..8ded335780 100644
--- a/src/socket.io/posts.js
+++ b/src/socket.io/posts.js
@@ -1,6 +1,6 @@
"use strict";
-var async = require('async');
+var async = require('async');
var posts = require('../posts');
var privileges = require('../privileges');
From d4c2fc3bc8f5b96feb932d17169820746e025be1 Mon Sep 17 00:00:00 2001
From: Julian Lam
Date: Thu, 23 Feb 2017 11:54:46 -0500
Subject: [PATCH 27/39] closes #5472
---
src/socket.io/index.js | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/src/socket.io/index.js b/src/socket.io/index.js
index 58e31a78ea..f4732d9d9e 100644
--- a/src/socket.io/index.js
+++ b/src/socket.io/index.js
@@ -33,6 +33,28 @@ Sockets.init = function (server) {
io.on('connection', onConnection);
+ /*
+ * Restrict socket.io listener to cookie domain. If none is set, infer based on url.
+ * Production only so you don't get accidentally locked out.
+ * Can be overridden via config (socket.io:origins)
+ */
+ if (process.env.NODE_ENV !== 'development') {
+ var domain = nconf.get('cookieDomain');
+ var parsedUrl = url.parse(nconf.get('url'));
+ var override = nconf.get('socket.io:origins');
+ if (!domain) {
+ domain = parsedUrl.hostname; // cookies don't provide isolation by port: http://stackoverflow.com/a/16328399/122353
+ }
+
+ if (!override) {
+ io.set('origins', parsedUrl.protocol + '//' + domain + ':*');
+ winston.info('[socket.io] Restricting access to origin: ' + parsedUrl.protocol + '//' + domain + ':*');
+ } else {
+ io.set('origins', override);
+ winston.info('[socket.io] Restricting access to origin: ' + override);
+ }
+ }
+
io.listen(server, {
transports: nconf.get('socket.io:transports')
});
From 458cbfd603155470c7e71913c34f597b732555c0 Mon Sep 17 00:00:00 2001
From: psychobunny
Date: Thu, 23 Feb 2017 12:14:20 -0500
Subject: [PATCH 28/39] show dashboard notice if forum is running in dev mode
---
public/language/en-GB/admin/general/dashboard.json | 1 +
src/controllers/admin/dashboard.js | 8 ++++++++
2 files changed, 9 insertions(+)
diff --git a/public/language/en-GB/admin/general/dashboard.json b/public/language/en-GB/admin/general/dashboard.json
index a70dda322e..02046bd17a 100644
--- a/public/language/en-GB/admin/general/dashboard.json
+++ b/public/language/en-GB/admin/general/dashboard.json
@@ -21,6 +21,7 @@
"upgrade-available": "A new version (v%1) has been released. Consider upgrading your NodeBB.
",
"prerelease-upgrade-available": "This is an outdated pre-release version of NodeBB. A new version (v%1) has been released. Consider upgrading your NodeBB.
",
"prerelease-warning": "This is a pre-release version of NodeBB. Unintended bugs may occur.
",
+ "running-in-development": "Forum is running in development mode. The forum may be open to potential vulnerabilities; please contact your system administrator.",
"notices": "Notices",
"restart-not-required": "Restart not required",
diff --git a/src/controllers/admin/dashboard.js b/src/controllers/admin/dashboard.js
index 09c2838d73..2ffbea0e98 100644
--- a/src/controllers/admin/dashboard.js
+++ b/src/controllers/admin/dashboard.js
@@ -30,6 +30,14 @@ dashboardController.get = function (req, res, next) {
link:'/admin/extend/plugins'
}
];
+
+ if (global.env !== 'production') {
+ notices.push({
+ done: false,
+ notDoneText: '[[admin/general/dashboard:running-in-development]]'
+ });
+ }
+
plugins.fireHook('filter:admin.notices', notices, next);
}
}, function (err, results) {
From 9079ee5b143db78d1186eb8ef2466c46b1b9291b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?=
Date: Thu, 23 Feb 2017 20:44:14 +0300
Subject: [PATCH 29/39] style
---
src/middleware/header.js | 211 ++++++++++++++++++++-------------------
1 file changed, 109 insertions(+), 102 deletions(-)
diff --git a/src/middleware/header.js b/src/middleware/header.js
index 5e78416a0a..0c33e621e5 100644
--- a/src/middleware/header.js
+++ b/src/middleware/header.js
@@ -59,115 +59,122 @@ module.exports = function (middleware) {
};
templateValues.configJSON = JSON.stringify(res.locals.config);
-
- async.parallel({
- scripts: function (next) {
- plugins.fireHook('filter:scripts.get', [], next);
+ async.waterfall([
+ function (next) {
+ async.parallel({
+ scripts: function (next) {
+ plugins.fireHook('filter:scripts.get', [], next);
+ },
+ isAdmin: function (next) {
+ user.isAdministrator(req.uid, next);
+ },
+ isGlobalMod: function (next) {
+ user.isGlobalModerator(req.uid, next);
+ },
+ isModerator: function (next) {
+ user.isModeratorOfAnyCategory(req.uid, next);
+ },
+ user: function (next) {
+ var userData = {
+ uid: 0,
+ username: '[[global:guest]]',
+ userslug: '',
+ email: '',
+ picture: meta.config.defaultAvatar,
+ status: 'offline',
+ reputation: 0,
+ 'email:confirmed': false
+ };
+ if (req.uid) {
+ user.getUserFields(req.uid, Object.keys(userData), next);
+ } else {
+ next(null, userData);
+ }
+ },
+ isEmailConfirmSent: function (next) {
+ if (!meta.config.requireEmailConfirmation || !req.uid) {
+ return next(null, false);
+ }
+ db.get('uid:' + req.uid + ':confirm:email:sent', next);
+ },
+ navigation: async.apply(navigation.get),
+ tags: async.apply(meta.tags.parse, res.locals.metaTags, res.locals.linkTags),
+ banned: async.apply(user.isBanned, req.uid),
+ banReason: async.apply(user.getBannedReason, req.uid)
+ }, next);
},
- isAdmin: function (next) {
- user.isAdministrator(req.uid, next);
- },
- isGlobalMod: function (next) {
- user.isGlobalModerator(req.uid, next);
- },
- isModerator: function (next) {
- user.isModeratorOfAnyCategory(req.uid, next);
- },
- user: function (next) {
- var userData = {
- uid: 0,
- username: '[[global:guest]]',
- userslug: '',
- email: '',
- picture: meta.config.defaultAvatar,
- status: 'offline',
- reputation: 0,
- 'email:confirmed': false
- };
- if (req.uid) {
- user.getUserFields(req.uid, Object.keys(userData), next);
- } else {
- next(null, userData);
- }
- },
- isEmailConfirmSent: function (next) {
- if (!meta.config.requireEmailConfirmation || !req.uid) {
- return next(null, false);
- }
- db.get('uid:' + req.uid + ':confirm:email:sent', next);
- },
- navigation: async.apply(navigation.get),
- tags: async.apply(meta.tags.parse, res.locals.metaTags, res.locals.linkTags),
- banned: async.apply(user.isBanned, req.uid),
- banReason: async.apply(user.getBannedReason, req.uid)
- }, function (err, results) {
- if (err) {
- return callback(err);
- }
-
- if (results.banned) {
- req.logout();
- return res.redirect('/?banned=' + (results.banReason || 'no-reason'));
- }
-
- results.user.isAdmin = results.isAdmin;
- results.user.isGlobalMod = results.isGlobalMod;
- results.user.isMod = !!results.isModerator;
- results.user.uid = parseInt(results.user.uid, 10);
- results.user.email = String(results.user.email).replace(/\\/g, '\\\\').replace(/"/g, '\\"');
- results.user['email:confirmed'] = parseInt(results.user['email:confirmed'], 10) === 1;
- results.user.isEmailConfirmSent = !!results.isEmailConfirmSent;
-
- if (res.locals.config && parseInt(meta.config.disableCustomUserSkins, 10) !== 1 && res.locals.config.bootswatchSkin !== 'default') {
- templateValues.bootswatchCSS = '//maxcdn.bootstrapcdn.com/bootswatch/latest/' + res.locals.config.bootswatchSkin + '/bootstrap.min.css';
- }
-
- templateValues.browserTitle = controllers.helpers.buildTitle(data.title);
- templateValues.navigation = results.navigation;
- templateValues.metaTags = results.tags.meta;
- templateValues.linkTags = results.tags.link;
- templateValues.isAdmin = results.user.isAdmin;
- templateValues.isGlobalMod = results.user.isGlobalMod;
- templateValues.showModMenu = results.user.isAdmin || results.user.isGlobalMod || results.user.isMod;
- templateValues.user = results.user;
- templateValues.userJSON = JSON.stringify(results.user);
- templateValues.useCustomCSS = parseInt(meta.config.useCustomCSS, 10) === 1 && meta.config.customCSS;
- templateValues.customCSS = templateValues.useCustomCSS ? (meta.config.renderedCustomCSS || '') : '';
- templateValues.useCustomJS = parseInt(meta.config.useCustomJS, 10) === 1;
- templateValues.customJS = templateValues.useCustomJS ? meta.config.customJS : '';
- templateValues.maintenanceHeader = parseInt(meta.config.maintenanceMode, 10) === 1 && !results.isAdmin;
- templateValues.defaultLang = meta.config.defaultLang || 'en-GB';
- templateValues.privateUserInfo = parseInt(meta.config.privateUserInfo, 10) === 1;
- templateValues.privateTagListing = parseInt(meta.config.privateTagListing, 10) === 1;
-
- templateValues.template = {name: res.locals.template};
- templateValues.template[res.locals.template] = true;
-
- templateValues.scripts = results.scripts.map(function (script) {
- return {src: script};
- });
-
- if (req.route && req.route.path === '/') {
- modifyTitle(templateValues);
- }
-
- plugins.fireHook('filter:middleware.renderHeader', {templateValues: templateValues, req: req, res: res}, function (err, data) {
- if (err) {
- return callback(err);
+ function (results, next) {
+ if (results.banned) {
+ req.logout();
+ return res.redirect('/?banned=' + (results.banReason || 'no-reason'));
}
- req.app.render('header', data.templateValues, callback);
- });
- });
+ results.user.isAdmin = results.isAdmin;
+ results.user.isGlobalMod = results.isGlobalMod;
+ results.user.isMod = !!results.isModerator;
+ results.user.uid = parseInt(results.user.uid, 10);
+ results.user.email = String(results.user.email).replace(/\\/g, '\\\\').replace(/"/g, '\\"');
+ results.user['email:confirmed'] = parseInt(results.user['email:confirmed'], 10) === 1;
+ results.user.isEmailConfirmSent = !!results.isEmailConfirmSent;
+
+ if (res.locals.config && parseInt(meta.config.disableCustomUserSkins, 10) !== 1 && res.locals.config.bootswatchSkin !== 'default') {
+ templateValues.bootswatchCSS = '//maxcdn.bootstrapcdn.com/bootswatch/latest/' + res.locals.config.bootswatchSkin + '/bootstrap.min.css';
+ }
+
+ templateValues.browserTitle = controllers.helpers.buildTitle(data.title);
+ templateValues.navigation = results.navigation;
+ templateValues.metaTags = results.tags.meta;
+ templateValues.linkTags = results.tags.link;
+ templateValues.isAdmin = results.user.isAdmin;
+ templateValues.isGlobalMod = results.user.isGlobalMod;
+ templateValues.showModMenu = results.user.isAdmin || results.user.isGlobalMod || results.user.isMod;
+ templateValues.user = results.user;
+ templateValues.userJSON = JSON.stringify(results.user);
+ templateValues.useCustomCSS = parseInt(meta.config.useCustomCSS, 10) === 1 && meta.config.customCSS;
+ templateValues.customCSS = templateValues.useCustomCSS ? (meta.config.renderedCustomCSS || '') : '';
+ templateValues.useCustomJS = parseInt(meta.config.useCustomJS, 10) === 1;
+ templateValues.customJS = templateValues.useCustomJS ? meta.config.customJS : '';
+ templateValues.maintenanceHeader = parseInt(meta.config.maintenanceMode, 10) === 1 && !results.isAdmin;
+ templateValues.defaultLang = meta.config.defaultLang || 'en-GB';
+ templateValues.privateUserInfo = parseInt(meta.config.privateUserInfo, 10) === 1;
+ templateValues.privateTagListing = parseInt(meta.config.privateTagListing, 10) === 1;
+
+ templateValues.template = {name: res.locals.template};
+ templateValues.template[res.locals.template] = true;
+
+ templateValues.scripts = results.scripts.map(function (script) {
+ return {src: script};
+ });
+
+ if (req.route && req.route.path === '/') {
+ modifyTitle(templateValues);
+ }
+
+ plugins.fireHook('filter:middleware.renderHeader', {
+ req: req,
+ res: res,
+ templateValues: templateValues
+ }, next);
+ },
+ function (data, next) {
+ req.app.render('header', data.templateValues, next);
+ }
+ ], callback);
};
middleware.renderFooter = function (req, res, data, callback) {
- plugins.fireHook('filter:middleware.renderFooter', {templateValues: data, req: req, res: res}, function (err, data) {
- if (err) {
- return callback(err);
+ async.waterfall([
+ function (next) {
+ plugins.fireHook('filter:middleware.renderFooter', {
+ req: req,
+ res: res,
+ templateValues: data,
+ }, next);
+ },
+ function (data, next) {
+ req.app.render('footer', data.templateValues, next);
}
- req.app.render('footer', data.templateValues, callback);
- });
+ ], callback);
};
function modifyTitle(obj) {
From c1b1ff5c6ec5a35ed1e127edc5ccfc06dd04c5c2 Mon Sep 17 00:00:00 2001
From: Julian Lam
Date: Thu, 23 Feb 2017 12:46:59 -0500
Subject: [PATCH 30/39] adding origin to new local ioConfig var, as per
@barisusakli, re: #5472
---
src/socket.io/index.js | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/src/socket.io/index.js b/src/socket.io/index.js
index f4732d9d9e..4ddf638e9e 100644
--- a/src/socket.io/index.js
+++ b/src/socket.io/index.js
@@ -22,6 +22,10 @@ Sockets.init = function (server) {
var SocketIO = require('socket.io');
var socketioWildcard = require('socketio-wildcard')();
+ var ioConfig = {
+ transports: nconf.get('socket.io:transports')
+ };
+
io = new SocketIO({
path: nconf.get('relative_path') + '/socket.io'
});
@@ -47,17 +51,15 @@ Sockets.init = function (server) {
}
if (!override) {
- io.set('origins', parsedUrl.protocol + '//' + domain + ':*');
+ ioConfig.origins = parsedUrl.protocol + '//' + domain + ':*';
winston.info('[socket.io] Restricting access to origin: ' + parsedUrl.protocol + '//' + domain + ':*');
} else {
- io.set('origins', override);
+ ioConfig.origins = override;
winston.info('[socket.io] Restricting access to origin: ' + override);
}
}
- io.listen(server, {
- transports: nconf.get('socket.io:transports')
- });
+ io.listen(server, ioConfig);
Sockets.server = io;
};
From c168ed43d4d27b68d75cd805f3113062a1712a25 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?=
Date: Thu, 23 Feb 2017 21:25:20 +0300
Subject: [PATCH 31/39] up build timeout
---
test/build.js | 1 +
1 file changed, 1 insertion(+)
diff --git a/test/build.js b/test/build.js
index 404176d3df..5fe95561ba 100644
--- a/test/build.js
+++ b/test/build.js
@@ -7,6 +7,7 @@ var db = require('./mocks/databasemock');
describe('Build', function () {
it('should build all assets', function (done) {
+ this.timeout(50000);
var build = require('../src/meta/build');
build.buildAll(function (err) {
assert.ifError(err);
From 91d3ce1abcb06321690ca168d6a89aefc7b5212a Mon Sep 17 00:00:00 2001
From: Julian Lam
Date: Thu, 23 Feb 2017 13:10:38 -0500
Subject: [PATCH 32/39] Revert "adding origin to new local ioConfig var, as per
@barisusakli, re: #5472"
This reverts commit c1b1ff5c6ec5a35ed1e127edc5ccfc06dd04c5c2.
---
src/socket.io/index.js | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/src/socket.io/index.js b/src/socket.io/index.js
index 4ddf638e9e..f4732d9d9e 100644
--- a/src/socket.io/index.js
+++ b/src/socket.io/index.js
@@ -22,10 +22,6 @@ Sockets.init = function (server) {
var SocketIO = require('socket.io');
var socketioWildcard = require('socketio-wildcard')();
- var ioConfig = {
- transports: nconf.get('socket.io:transports')
- };
-
io = new SocketIO({
path: nconf.get('relative_path') + '/socket.io'
});
@@ -51,15 +47,17 @@ Sockets.init = function (server) {
}
if (!override) {
- ioConfig.origins = parsedUrl.protocol + '//' + domain + ':*';
+ io.set('origins', parsedUrl.protocol + '//' + domain + ':*');
winston.info('[socket.io] Restricting access to origin: ' + parsedUrl.protocol + '//' + domain + ':*');
} else {
- ioConfig.origins = override;
+ io.set('origins', override);
winston.info('[socket.io] Restricting access to origin: ' + override);
}
}
- io.listen(server, ioConfig);
+ io.listen(server, {
+ transports: nconf.get('socket.io:transports')
+ });
Sockets.server = io;
};
From 25f629382175f559de0345e5b35d28322a6011f0 Mon Sep 17 00:00:00 2001
From: Julian Lam
Date: Thu, 23 Feb 2017 13:26:49 -0500
Subject: [PATCH 33/39] using io.origins instead
---
src/socket.io/index.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/socket.io/index.js b/src/socket.io/index.js
index f4732d9d9e..01a520585d 100644
--- a/src/socket.io/index.js
+++ b/src/socket.io/index.js
@@ -47,10 +47,10 @@ Sockets.init = function (server) {
}
if (!override) {
- io.set('origins', parsedUrl.protocol + '//' + domain + ':*');
+ io.origins(parsedUrl.protocol + '//' + domain + ':*');
winston.info('[socket.io] Restricting access to origin: ' + parsedUrl.protocol + '//' + domain + ':*');
} else {
- io.set('origins', override);
+ io.origins(override);
winston.info('[socket.io] Restricting access to origin: ' + override);
}
}
From 743f758f75fc2b74f0b14087207a7a0539af32c1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?=
Date: Thu, 23 Feb 2017 21:29:28 +0300
Subject: [PATCH 34/39] set origin header to url
---
test/helpers/index.js | 2 ++
test/socket.io.js | 1 +
2 files changed, 3 insertions(+)
diff --git a/test/helpers/index.js b/test/helpers/index.js
index edae035b66..a0624a69d6 100644
--- a/test/helpers/index.js
+++ b/test/helpers/index.js
@@ -40,6 +40,7 @@ helpers.loginUser = function (username, password, callback) {
this.open = function () {
stdOpen.apply(this, arguments);
this.setRequestHeader('Cookie', res.headers['set-cookie'][0].split(';')[0]);
+ this.setRequestHeader('Origin', nconf.get('url'));
};
};
@@ -74,6 +75,7 @@ helpers.initSocketIO = function (callback) {
this.open = function () {
stdOpen.apply(this, arguments);
this.setRequestHeader('Cookie', res.headers['set-cookie'][0].split(';')[0]);
+ this.setRequestHeader('Origin', nconf.get('url'));
};
};
diff --git a/test/socket.io.js b/test/socket.io.js
index ac8170225c..4182522b2b 100644
--- a/test/socket.io.js
+++ b/test/socket.io.js
@@ -75,6 +75,7 @@ describe('socket.io', function () {
this.open = function () {
stdOpen.apply(this, arguments);
this.setRequestHeader('Cookie', res.headers['set-cookie'][0].split(';')[0]);
+ this.setRequestHeader('Origin', nconf.get('url'));
};
};
From b4a32ee96f3bfa616f1e9e4d9fdabd06f4fecdf9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?=
Date: Thu, 23 Feb 2017 22:42:45 +0300
Subject: [PATCH 35/39] style changes
---
src/topics/posts.js | 262 ++++++++++++++++++++++----------------------
1 file changed, 133 insertions(+), 129 deletions(-)
diff --git a/src/topics/posts.js b/src/topics/posts.js
index aadf6bd76b..97b6f71162 100644
--- a/src/topics/posts.js
+++ b/src/topics/posts.js
@@ -28,23 +28,23 @@ module.exports = function (Topics) {
};
Topics.getTopicPosts = function (tid, set, start, stop, uid, reverse, callback) {
- callback = callback || function () {};
- async.parallel({
- posts: function (next) {
- posts.getPostsFromSet(set, start, stop, uid, reverse, next);
+ async.waterfall([
+ function (next) {
+ async.parallel({
+ posts: function (next) {
+ posts.getPostsFromSet(set, start, stop, uid, reverse, next);
+ },
+ postCount: function (next) {
+ Topics.getTopicField(tid, 'postcount', next);
+ }
+ }, next);
},
- postCount: function (next) {
- Topics.getTopicField(tid, 'postcount', next);
- }
- }, function (err, results) {
- if (err) {
- return callback(err);
- }
+ function (results, next) {
+ Topics.calculatePostIndices(results.posts, start, stop, results.postCount, reverse);
- Topics.calculatePostIndices(results.posts, start, stop, results.postCount, reverse);
-
- Topics.addPostData(results.posts, uid, callback);
- });
+ Topics.addPostData(results.posts, uid, next);
+ }
+ ], callback);
};
Topics.addPostData = function (postData, uid, callback) {
@@ -59,88 +59,82 @@ module.exports = function (Topics) {
return callback(null, []);
}
- async.parallel({
- bookmarks: function (next) {
- posts.hasBookmarked(pids, uid, next);
- },
- voteData: function (next) {
- posts.getVoteStatusByPostIDs(pids, uid, next);
- },
- userData: function (next) {
- var uids = [];
+ function getPostUserData(field, method, callback) {
+ var uids = [];
- for(var i = 0; i < postData.length; ++i) {
- if (postData[i] && uids.indexOf(postData[i].uid) === -1) {
- uids.push(postData[i].uid);
- }
+ postData.forEach(function (postData) {
+ if (postData && postData[field] && uids.indexOf(postData[field]) === -1) {
+ uids.push(postData[field]);
}
+ });
- posts.getUserInfoForPosts(uids, uid, function (err, users) {
- if (err) {
- return next(err);
- }
-
+ async.waterfall([
+ function (next) {
+ method(uids, next);
+ },
+ function (users, next) {
var userData = {};
users.forEach(function (user, index) {
userData[uids[index]] = user;
});
-
next(null, userData);
- });
- },
- editors: function (next) {
- var editors = [];
- for(var i = 0; i < postData.length; ++i) {
- if (postData[i] && postData[i].editor && editors.indexOf(postData[i].editor) === -1) {
- editors.push(postData[i].editor);
- }
}
+ ], callback);
+ }
- user.getUsersFields(editors, ['uid', 'username', 'userslug'], function (err, editors) {
- if (err) {
- return next(err);
+ async.waterfall([
+ function (next) {
+ async.parallel({
+ bookmarks: function (next) {
+ posts.hasBookmarked(pids, uid, next);
+ },
+ voteData: function (next) {
+ posts.getVoteStatusByPostIDs(pids, uid, next);
+ },
+ userData: function (next) {
+ getPostUserData('uid', function (uids, next) {
+ posts.getUserInfoForPosts(uids, uid, next);
+ }, next);
+
+ },
+ editors: function (next) {
+ getPostUserData('editor', function (uids, next) {
+ user.getUsersFields(uids, ['uid', 'username', 'userslug'], next);
+ }, next);
+ },
+ parents: function (next) {
+ Topics.addParentPosts(postData, next);
}
- var editorData = {};
- editors.forEach(function (editor) {
- editorData[editor.uid] = editor;
- });
- next(null, editorData);
- });
+ }, next);
},
- parents: function (next) {
- Topics.addParentPosts(postData, next);
- }
- }, function (err, results) {
- if (err) {
- return callback(err);
- }
+ function (results, next) {
+ postData.forEach(function (postObj, i) {
+ if (postObj) {
+ postObj.deleted = parseInt(postObj.deleted, 10) === 1;
+ postObj.user = parseInt(postObj.uid, 10) ? results.userData[postObj.uid] : _.clone(results.userData[postObj.uid]);
+ postObj.editor = postObj.editor ? results.editors[postObj.editor] : null;
+ postObj.bookmarked = results.bookmarks[i];
+ postObj.upvoted = results.voteData.upvotes[i];
+ postObj.downvoted = results.voteData.downvotes[i];
+ postObj.votes = postObj.votes || 0;
+ postObj.replies = postObj.replies || 0;
+ postObj.selfPost = !!parseInt(uid, 10) && parseInt(uid, 10) === parseInt(postObj.uid, 10);
- postData.forEach(function (postObj, i) {
- if (postObj) {
- postObj.deleted = parseInt(postObj.deleted, 10) === 1;
- postObj.user = parseInt(postObj.uid, 10) ? results.userData[postObj.uid] : _.clone(results.userData[postObj.uid]);
- postObj.editor = postObj.editor ? results.editors[postObj.editor] : null;
- postObj.bookmarked = results.bookmarks[i];
- postObj.upvoted = results.voteData.upvotes[i];
- postObj.downvoted = results.voteData.downvotes[i];
- postObj.votes = postObj.votes || 0;
- postObj.replies = postObj.replies || 0;
- postObj.selfPost = !!parseInt(uid, 10) && parseInt(uid, 10) === parseInt(postObj.uid, 10);
-
- // Username override for guests, if enabled
- if (parseInt(meta.config.allowGuestHandles, 10) === 1 && parseInt(postObj.uid, 10) === 0 && postObj.handle) {
- postObj.user.username = validator.escape(String(postObj.handle));
+ // Username override for guests, if enabled
+ if (parseInt(meta.config.allowGuestHandles, 10) === 1 && parseInt(postObj.uid, 10) === 0 && postObj.handle) {
+ postObj.user.username = validator.escape(String(postObj.handle));
+ }
}
- }
- });
-
- plugins.fireHook('filter:topics.addPostData', {
- posts: postData,
- uid: uid
- }, function (err, data) {
- callback(err, data ? data.posts : null);
- });
- });
+ });
+ plugins.fireHook('filter:topics.addPostData', {
+ posts: postData,
+ uid: uid
+ }, next);
+ },
+ function (data, next) {
+ next(null, data.posts);
+ }
+ ], callback);
};
Topics.modifyPostsByPrivilege = function (topicData, topicPrivileges) {
@@ -173,7 +167,9 @@ module.exports = function (Topics) {
async.apply(posts.getPostsFields, parentPids, ['uid']),
function (_parentPosts, next) {
parentPosts = _parentPosts;
- var parentUids = parentPosts.map(function (postObj) { return parseInt(postObj.uid, 10); }).filter(function (uid, idx, users) {
+ var parentUids = parentPosts.map(function (postObj) {
+ return parseInt(postObj.uid, 10);
+ }).filter(function (uid, idx, users) {
return users.indexOf(uid) === idx;
});
@@ -232,31 +228,31 @@ module.exports = function (Topics) {
var done = false;
var latestPid = null;
var index = 0;
+ var pids;
async.doWhilst(
function (next) {
- db.getSortedSetRevRange('tid:' + tid + ':posts', index, index, function (err, pids) {
- if (err) {
- return next(err);
- }
-
- if (!Array.isArray(pids) || !pids.length) {
- done = true;
- return next();
- }
-
- posts.getPostField(pids[0], 'deleted', function (err, deleted) {
- if (err) {
- return next(err);
+ async.waterfall([
+ function (_next) {
+ db.getSortedSetRevRange('tid:' + tid + ':posts', index, index, _next);
+ },
+ function (_pids, _next) {
+ pids = _pids;
+ if (!Array.isArray(pids) || !pids.length) {
+ done = true;
+ return next();
}
+ posts.getPostField(pids[0], 'deleted', _next);
+ },
+ function (deleted, _next) {
isDeleted = parseInt(deleted, 10) === 1;
if (!isDeleted) {
latestPid = pids[0];
}
++index;
- next();
- });
- });
+ _next();
+ }
+ ], next);
},
function () {
return isDeleted && !done;
@@ -318,22 +314,24 @@ module.exports = function (Topics) {
};
Topics.getPids = function (tid, callback) {
- async.parallel({
- mainPid: function (next) {
- Topics.getTopicField(tid, 'mainPid', next);
+ async.waterfall([
+ function (next) {
+ async.parallel({
+ mainPid: function (next) {
+ Topics.getTopicField(tid, 'mainPid', next);
+ },
+ pids: function (next) {
+ db.getSortedSetRange('tid:' + tid + ':posts', 0, -1, next);
+ }
+ }, next);
},
- pids: function (next) {
- db.getSortedSetRange('tid:' + tid + ':posts', 0, -1, next);
+ function (results, next) {
+ if (results.mainPid) {
+ results.pids = [results.mainPid].concat(results.pids);
+ }
+ next(null, results.pids);
}
- }, function (err, results) {
- if (err) {
- return callback(err);
- }
- if (results.mainPid) {
- results.pids = [results.mainPid].concat(results.pids);
- }
- callback(null, results.pids);
- });
+ ], callback);
};
Topics.increasePostCount = function (tid, callback) {
@@ -350,12 +348,14 @@ module.exports = function (Topics) {
function incrementFieldAndUpdateSortedSet(tid, field, by, set, callback) {
callback = callback || function () {};
- db.incrObjectFieldBy('topic:' + tid, field, by, function (err, value) {
- if (err) {
- return callback(err);
+ async.waterfall([
+ function (next) {
+ db.incrObjectFieldBy('topic:' + tid, field, by, next);
+ },
+ function (value, next) {
+ db.sortedSetAdd(set, value, tid, next);
}
- db.sortedSetAdd(set, value, tid, callback);
- });
+ ], callback);
}
Topics.getTitleByPid = function (pid, callback) {
@@ -363,21 +363,25 @@ module.exports = function (Topics) {
};
Topics.getTopicFieldByPid = function (field, pid, callback) {
- posts.getPostField(pid, 'tid', function (err, tid) {
- if (err) {
- return callback(err);
+ async.waterfall([
+ function (next) {
+ posts.getPostField(pid, 'tid', next);
+ },
+ function (tid, next) {
+ Topics.getTopicField(tid, field, next);
}
- Topics.getTopicField(tid, field, callback);
- });
+ ], callback);
};
Topics.getTopicDataByPid = function (pid, callback) {
- posts.getPostField(pid, 'tid', function (err, tid) {
- if (err) {
- return callback(err);
+ async.waterfall([
+ function (next) {
+ posts.getPostField(pid, 'tid', next);
+ },
+ function (tid, next) {
+ Topics.getTopicData(tid, next);
}
- Topics.getTopicData(tid, callback);
- });
+ ], callback);
};
Topics.getPostCount = function (tid, callback) {
From 14398a2d90bd1278abdaec31d8d9a3041d42a85d Mon Sep 17 00:00:00 2001
From: Julian Lam
Date: Thu, 23 Feb 2017 14:54:49 -0500
Subject: [PATCH 36/39] up markdown
---
package.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/package.json b/package.json
index 9bfacb03d9..cc7276c158 100644
--- a/package.json
+++ b/package.json
@@ -56,7 +56,7 @@
"nodebb-plugin-dbsearch": "1.0.5",
"nodebb-plugin-emoji-extended": "1.1.1",
"nodebb-plugin-emoji-one": "1.1.5",
- "nodebb-plugin-markdown": "7.1.0",
+ "nodebb-plugin-markdown": "7.1.1",
"nodebb-plugin-mentions": "1.1.3",
"nodebb-plugin-soundpack-default": "1.0.0",
"nodebb-plugin-spam-be-gone": "0.4.10",
From 35ff71c37d71546f29eb9aa2816cc61c282bb964 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?=
Date: Thu, 23 Feb 2017 23:05:51 +0300
Subject: [PATCH 37/39] more tests
---
test/topics.js | 21 ++++++++++++++++++---
1 file changed, 18 insertions(+), 3 deletions(-)
diff --git a/test/topics.js b/test/topics.js
index 1ade4de261..9f430c995a 100644
--- a/test/topics.js
+++ b/test/topics.js
@@ -182,12 +182,27 @@ describe('Topic\'s', function () {
});
});
- describe('.getTopicData', function () {
- it('should not receive errors', function (done) {
- topics.getTopicData(newTopic.tid, done);
+
+ it('should not receive errors', function (done) {
+ topics.getTopicData(newTopic.tid, done);
+ });
+
+ it('should get topic title by pid', function (done) {
+ topics.getTitleByPid(newPost.pid, function (err, title) {
+ assert.ifError(err);
+ assert.equal(title, topic.title);
+ done();
});
});
+ it('should get topic data by pid', function (done) {
+ topics.getTopicDataByPid(newPost.pid, function (err, data) {
+ assert.ifError(err);
+ assert.equal(data.tid, newTopic.tid);
+ done();
+ });
+ });
+
describe('.getTopicWithPosts', function () {
it('should get a topic with posts and other data', function (done) {
topics.getTopicData(newTopic.tid, function (err, topicData) {
From 1d5b3cc73f1275f80fa06d59e412a7c0a0c08491 Mon Sep 17 00:00:00 2001
From: pichalite
Date: Thu, 23 Feb 2017 20:45:05 +0000
Subject: [PATCH 38/39] ACP manage tags page UI changes
---
public/less/admin/manage/tags.less | 25 +-
public/src/admin/manage/tags.js | 24 +-
public/vendor/mdl/{mdl.css => material.css} | 2508 ++++++++++++++++---
public/vendor/mdl/mdl.min.css | 1 -
src/meta/css.js | 13 +-
src/views/admin/header.tpl | 7 +-
src/views/admin/manage/tags.tpl | 9 +-
7 files changed, 2162 insertions(+), 425 deletions(-)
rename public/vendor/mdl/{mdl.css => material.css} (78%)
delete mode 100644 public/vendor/mdl/mdl.min.css
diff --git a/public/less/admin/manage/tags.less b/public/less/admin/manage/tags.less
index 34075816b1..fc4ea9f2e1 100644
--- a/public/less/admin/manage/tags.less
+++ b/public/less/admin/manage/tags.less
@@ -25,30 +25,7 @@
}
}
- .tag-item {
- border: solid 1px @gray-light;
- background-color: transparent;
- color: @gray-light;
- padding: .2em .6em .3em;
- font-size: 75%;
- font-weight: 700;
- white-space: nowrap;
- }
-
.tag-topic-count {
- border: solid 1px lighten(@brand-primary, 20%);
- background-color: lighten(@brand-primary, 20%);
- padding: 6px;
- font-size: 75%;
- font-weight: 700;
- white-space: nowrap;
- border-left: none;
- padding-right: 5px;
- padding-left: 5px;
- border-width: 1px 1px 2px medium;
-
- a {
- color: #FFFFFF;
- }
+ font-size: 14px;
}
}
\ No newline at end of file
diff --git a/public/src/admin/manage/tags.js b/public/src/admin/manage/tags.js
index 9984c8182d..9ead604c3f 100644
--- a/public/src/admin/manage/tags.js
+++ b/public/src/admin/manage/tags.js
@@ -6,7 +6,7 @@ define('admin/manage/tags', [
'admin/modules/selectable',
'admin/modules/colorpicker'
], function (infinitescroll, selectable, colorpicker) {
- var Tags = {},
+ var Tags = {},
timeoutId = 0;
Tags.init = function () {
@@ -61,12 +61,16 @@ define('admin/manage/tags', [
}
timeoutId = setTimeout(function () {
- socket.emit('topics.searchAndLoadTags', {query: $('#tag-search').val()}, function (err, result) {
+ socket.emit('topics.searchAndLoadTags', {
+ query: $('#tag-search').val()
+ }, function (err, result) {
if (err) {
return app.alertError(err.message);
}
- app.parseAndTranslate('admin/manage/tags', 'tags', {tags: result.tags}, function (html) {
+ app.parseAndTranslate('admin/manage/tags', 'tags', {
+ tags: result.tags
+ }, function (html) {
$('.tag-list').html(html);
utils.makeNumbersHumanReadable(html.find('.human-readable-number'));
timeoutId = 0;
@@ -86,10 +90,10 @@ define('admin/manage/tags', [
}
var firstTag = $(tagsToModify[0]),
- title = tagsToModify.length > 1 ? '[[admin/manage/tags:alerts.editing-multiple]]' : '[[admin/manage/tags:alerts.editing-x, ' + firstTag.find('.tag-item').text() + ']]';
+ title = tagsToModify.length > 1 ? '[[admin/manage/tags:alerts.editing-multiple]]' : '[[admin/manage/tags:alerts.editing-x, ' + firstTag.find('.tag-item').attr('data-tag') + ']]';
var modal = bootbox.dialog({
- title: title,
+ title: title,
message: firstTag.find('.tag-modal').html(),
buttons: {
success: {
@@ -133,7 +137,9 @@ define('admin/manage/tags', [
tagsToDelete.each(function (index, el) {
tags.push($(el).attr('data-tag'));
});
- socket.emit('admin.tags.deleteTags', {tags: tags}, function (err) {
+ socket.emit('admin.tags.deleteTags', {
+ tags: tags
+ }, function (err) {
if (err) {
return app.alertError(err.message);
}
@@ -155,8 +161,8 @@ define('admin/manage/tags', [
function save(tag) {
var data = {
tag: tag.attr('data-tag'),
- bgColor : tag.find('[data-name="bgColor"]').val(),
- color : tag.find('[data-name="color"]').val()
+ bgColor: tag.find('[data-name="bgColor"]').val(),
+ color: tag.find('[data-name="color"]').val()
};
socket.emit('admin.tags.update', data, function (err) {
@@ -169,4 +175,4 @@ define('admin/manage/tags', [
}
return Tags;
-});
\ No newline at end of file
+});
diff --git a/public/vendor/mdl/mdl.css b/public/vendor/mdl/material.css
similarity index 78%
rename from public/vendor/mdl/mdl.css
rename to public/vendor/mdl/material.css
index c037532647..74b6b7b71f 100644
--- a/public/vendor/mdl/mdl.css
+++ b/public/vendor/mdl/material.css
@@ -1,6 +1,6 @@
/**
* material-design-lite - Material Design Components in CSS, JS and HTML
- * @version v1.0.3
+ * @version v1.3.0
* @license Apache-2.0
* @copyright 2015 Google, Inc.
* @link https://github.com/google/material-design-lite
@@ -62,6 +62,15 @@
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -113,6 +122,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -161,7 +171,10 @@
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -180,6 +193,7 @@
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -250,6 +264,15 @@
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -301,6 +324,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -349,7 +373,10 @@
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/*
* What follows is the result of much research on cross-browser styling.
* Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
@@ -496,6 +523,12 @@ textarea {
These examples override the primary ('mobile first') styles.
Modify as content requires.
========================================================================== */
+@media only screen and (min-width: 35em) {
+ /* Style adjustments for viewports that meet the condition */ }
+
+@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
+ /* Style adjustments for high resolution devices */ }
+
/* ==========================================================================
Print styles.
Inlined to avoid the additional HTTP request:
@@ -505,13 +538,11 @@ textarea {
*,
*:before,
*:after,
- *:first-letter,
- *:first-line {
+ *:first-letter {
background: transparent !important;
color: #000 !important;
/* Black prints faster: http://www.sanbeiji.com/archives/953 */
- box-shadow: none !important;
- text-shadow: none !important; }
+ box-shadow: none !important; }
a,
a:visited {
text-decoration: underline; }
@@ -660,6 +691,15 @@ main {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -711,6 +751,7 @@ main {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -759,7 +800,10 @@ main {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -778,6 +822,7 @@ main {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
/*html, body {
font-family: "Helvetica", "Arial", sans-serif;
font-size: 14px;
@@ -1160,6 +1205,21 @@ ul, ol {
.mdl-typography--font-black {
font-weight: 900 !important; }
+.material-icons {
+ font-family: 'Material Icons';
+ font-weight: normal;
+ font-style: normal;
+ font-size: 24px;
+ line-height: 1;
+ letter-spacing: normal;
+ text-transform: none;
+ display: inline-block;
+ word-wrap: normal;
+ -moz-font-feature-settings: 'liga';
+ font-feature-settings: 'liga';
+ -webkit-font-feature-settings: 'liga';
+ -webkit-font-smoothing: antialiased; }
+
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -1215,6 +1275,15 @@ ul, ol {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -1266,6 +1335,7 @@ ul, ol {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -1314,7 +1384,10 @@ ul, ol {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-color-text--red {
color: rgb(244,67,54) !important; }
@@ -3050,6 +3123,15 @@ ul, ol {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -3101,6 +3183,7 @@ ul, ol {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -3149,7 +3232,10 @@ ul, ol {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-ripple {
background: rgb(0,0,0);
border-radius: 50%;
@@ -3160,13 +3246,13 @@ ul, ol {
position: absolute;
top: 0;
-webkit-transform: translate(-50%, -50%);
- -ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: 50px;
overflow: hidden; }
.mdl-ripple.is-animating {
- -webkit-transition: -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1), width 0.3s cubic-bezier(0, 0, 0.2, 1), height 0.3s cubic-bezier(0, 0, 0.2, 1), opacity 0.6s cubic-bezier(0, 0, 0.2, 1);
- transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1), width 0.3s cubic-bezier(0, 0, 0.2, 1), height 0.3s cubic-bezier(0, 0, 0.2, 1), opacity 0.6s cubic-bezier(0, 0, 0.2, 1); }
+ transition: width 0.3s cubic-bezier(0, 0, 0.2, 1), height 0.3s cubic-bezier(0, 0, 0.2, 1), opacity 0.6s cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1);
+ transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1), width 0.3s cubic-bezier(0, 0, 0.2, 1), height 0.3s cubic-bezier(0, 0, 0.2, 1), opacity 0.6s cubic-bezier(0, 0, 0.2, 1);
+ transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1), width 0.3s cubic-bezier(0, 0, 0.2, 1), height 0.3s cubic-bezier(0, 0, 0.2, 1), opacity 0.6s cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0, 0, 0.2, 1); }
.mdl-ripple.is-visible {
opacity: 0.3; }
@@ -3225,6 +3311,15 @@ ul, ol {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -3276,6 +3371,7 @@ ul, ol {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -3324,22 +3420,21 @@ ul, ol {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-animation--default {
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
.mdl-animation--fast-out-slow-in {
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
.mdl-animation--linear-out-slow-in {
- -webkit-transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0, 0, 0.2, 1); }
+ transition-timing-function: cubic-bezier(0, 0, 0.2, 1); }
.mdl-animation--fast-out-linear-in {
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 1, 1); }
+ transition-timing-function: cubic-bezier(0.4, 0, 1, 1); }
/**
* Copyright 2015 Google Inc. All Rights Reserved.
@@ -3396,6 +3491,15 @@ ul, ol {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -3447,6 +3551,7 @@ ul, ol {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -3495,7 +3600,10 @@ ul, ol {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-badge {
position: relative;
white-space: nowrap;
@@ -3504,26 +3612,21 @@ ul, ol {
margin-right: auto; }
.mdl-badge[data-badge]:after {
content: attr(data-badge);
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-orient: horizontal;
- -webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
- -webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-align-content: center;
-ms-flex-line-pack: center;
align-content: center;
- -webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
@@ -3545,6 +3648,10 @@ ul, ol {
color: rgb(255,64,129);
background: rgba(255,255,255,0.2);
box-shadow: 0 0 1px gray; }
+ .mdl-badge.mdl-badge--overlap {
+ margin-right: 10px; }
+ .mdl-badge.mdl-badge--overlap:after {
+ right: -10px; }
/**
* Copyright 2015 Google Inc. All Rights Reserved.
@@ -3601,6 +3708,15 @@ ul, ol {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -3652,6 +3768,7 @@ ul, ol {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -3700,7 +3817,10 @@ ul, ol {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -3719,6 +3839,7 @@ ul, ol {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
.mdl-button {
background: transparent;
border: none;
@@ -3726,8 +3847,9 @@ ul, ol {
color: rgb(0,0,0);
position: relative;
height: 36px;
+ margin: 0;
min-width: 64px;
- padding: 0 8px;
+ padding: 0 16px;
display: inline-block;
font-family: "Roboto", "Helvetica", "Arial", sans-serif;
font-size: 14px;
@@ -3736,9 +3858,8 @@ ul, ol {
line-height: 1;
letter-spacing: 0;
overflow: hidden;
- will-change: box-shadow, transform;
- -webkit-transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
- transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
+ will-change: box-shadow;
+ transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
outline: none;
cursor: pointer;
text-decoration: none;
@@ -3800,7 +3921,6 @@ input.mdl-button[type="submit"] {
top: 50%;
left: 50%;
-webkit-transform: translate(-12px, -12px);
- -ms-transform: translate(-12px, -12px);
transform: translate(-12px, -12px);
line-height: 24px;
width: 24px; }
@@ -3846,7 +3966,6 @@ input.mdl-button[type="submit"] {
top: 50%;
left: 50%;
-webkit-transform: translate(-12px, -12px);
- -ms-transform: translate(-12px, -12px);
transform: translate(-12px, -12px);
line-height: 24px;
width: 24px; }
@@ -3890,26 +4009,21 @@ input.mdl-button[type="submit"] {
color: rgb(255,255,255);
background-color: rgb(255,64,129); }
-.mdl-button[disabled][disabled],
-.mdl-button.mdl-button--disabled.mdl-button--disabled {
+.mdl-button[disabled][disabled], .mdl-button.mdl-button--disabled.mdl-button--disabled {
color: rgba(0,0,0, 0.26);
- cursor: auto;
+ cursor: default;
background-color: transparent; }
-.mdl-button--fab[disabled][disabled],
-.mdl-button--fab.mdl-button--disabled.mdl-button--disabled {
+.mdl-button--fab[disabled][disabled], .mdl-button--fab.mdl-button--disabled.mdl-button--disabled {
+ background-color: rgba(0,0,0, 0.12);
+ color: rgba(0,0,0, 0.26); }
+
+.mdl-button--raised[disabled][disabled], .mdl-button--raised.mdl-button--disabled.mdl-button--disabled {
background-color: rgba(0,0,0, 0.12);
color: rgba(0,0,0, 0.26);
- box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
+ box-shadow: none; }
-.mdl-button--raised[disabled][disabled],
-.mdl-button--raised.mdl-button--disabled.mdl-button--disabled {
- background-color: rgba(0,0,0, 0.12);
- color: rgba(0,0,0, 0.26);
- box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
-
-.mdl-button--colored[disabled][disabled],
-.mdl-button--colored.mdl-button--disabled.mdl-button--disabled {
+.mdl-button--colored[disabled][disabled], .mdl-button--colored.mdl-button--disabled.mdl-button--disabled {
color: rgba(0,0,0, 0.26); }
.mdl-button .material-icons {
@@ -3970,6 +4084,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -4021,6 +4144,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -4069,14 +4193,14 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-card {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
@@ -4101,17 +4225,14 @@ input.mdl-button[type="submit"] {
box-sizing: border-box; }
.mdl-card__title {
- -webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
color: rgb(0,0,0);
display: block;
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-pack: stretch;
-webkit-justify-content: stretch;
-ms-flex-pack: stretch;
justify-content: stretch;
@@ -4120,7 +4241,6 @@ input.mdl-button[type="submit"] {
-webkit-perspective-origin: 165px 56px;
perspective-origin: 165px 56px;
-webkit-transform-origin: 165px 56px;
- -ms-transform-origin: 165px 56px;
transform-origin: 165px 56px;
box-sizing: border-box; }
.mdl-card__title.mdl-card--border {
@@ -4132,7 +4252,6 @@ input.mdl-button[type="submit"] {
align-self: flex-end;
color: inherit;
display: block;
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
@@ -4141,22 +4260,23 @@ input.mdl-button[type="submit"] {
line-height: normal;
overflow: hidden;
-webkit-transform-origin: 149px 48px;
- -ms-transform-origin: 149px 48px;
transform-origin: 149px 48px;
margin: 0; }
.mdl-card__subtitle-text {
font-size: 14px;
- color: grey;
+ color: rgba(0,0,0, 0.54);
margin: 0; }
.mdl-card__supporting-text {
color: rgba(0,0,0, 0.54);
- font-size: 13px;
+ font-size: 1rem;
line-height: 18px;
overflow: hidden;
padding: 16px 16px;
width: 90%; }
+ .mdl-card__supporting-text.mdl-card--border {
+ border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
.mdl-card__actions {
font-size: 16px;
@@ -4169,7 +4289,6 @@ input.mdl-button[type="submit"] {
border-top: 1px solid rgba(0, 0, 0, 0.1); }
.mdl-card--expand {
- -webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1; }
@@ -4234,6 +4353,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -4285,6 +4413,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -4333,7 +4462,10 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -4352,6 +4484,7 @@ input.mdl-button[type="submit"] {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
.mdl-checkbox {
position: relative;
z-index: 1;
@@ -4396,6 +4529,7 @@ input.mdl-button[type="submit"] {
z-index: 2; }
.mdl-checkbox.is-checked .mdl-checkbox__box-outline {
border: 2px solid rgb(63,81,181); }
+ fieldset[disabled] .mdl-checkbox .mdl-checkbox__box-outline,
.mdl-checkbox.is-disabled .mdl-checkbox__box-outline {
border: 2px solid rgba(0,0,0, 0.26);
cursor: auto; }
@@ -4426,14 +4560,12 @@ input.mdl-button[type="submit"] {
-webkit-mask: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8ZGVmcz4KICAgIDxjbGlwUGF0aCBpZD0iY2xpcCI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIDAsMSAxLDEgMSwwIDAsMCB6IE0gMC44NTM0Mzc1LDAuMTY3MTg3NSAwLjk1OTY4NzUsMC4yNzMxMjUgMC40MjkzNzUsMC44MDM0Mzc1IDAuMzIzMTI1LDAuOTA5Njg3NSAwLjIxNzE4NzUsMC44MDM0Mzc1IDAuMDQwMzEyNSwwLjYyNjg3NSAwLjE0NjU2MjUsMC41MjA2MjUgMC4zMjMxMjUsMC42OTc1IDAuODUzNDM3NSwwLjE2NzE4NzUgeiIKICAgICAgICAgc3R5bGU9ImZpbGw6I2ZmZmZmZjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8bWFzayBpZD0ibWFzayIgbWFza1VuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgbWFza0NvbnRlbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCAwLDEgMSwxIDEsMCAwLDAgeiBNIDAuODUzNDM3NSwwLjE2NzE4NzUgMC45NTk2ODc1LDAuMjczMTI1IDAuNDI5Mzc1LDAuODAzNDM3NSAwLjMyMzEyNSwwLjkwOTY4NzUgMC4yMTcxODc1LDAuODAzNDM3NSAwLjA0MDMxMjUsMC42MjY4NzUgMC4xNDY1NjI1LDAuNTIwNjI1IDAuMzIzMTI1LDAuNjk3NSAwLjg1MzQzNzUsMC4xNjcxODc1IHoiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmUiIC8+CiAgICA8L21hc2s+CiAgPC9kZWZzPgogIDxyZWN0CiAgICAgd2lkdGg9IjEiCiAgICAgaGVpZ2h0PSIxIgogICAgIHg9IjAiCiAgICAgeT0iMCIKICAgICBjbGlwLXBhdGg9InVybCgjY2xpcCkiCiAgICAgc3R5bGU9ImZpbGw6IzAwMDAwMDtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZSIgLz4KPC9zdmc+Cg==");
mask: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8ZGVmcz4KICAgIDxjbGlwUGF0aCBpZD0iY2xpcCI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIDAsMSAxLDEgMSwwIDAsMCB6IE0gMC44NTM0Mzc1LDAuMTY3MTg3NSAwLjk1OTY4NzUsMC4yNzMxMjUgMC40MjkzNzUsMC44MDM0Mzc1IDAuMzIzMTI1LDAuOTA5Njg3NSAwLjIxNzE4NzUsMC44MDM0Mzc1IDAuMDQwMzEyNSwwLjYyNjg3NSAwLjE0NjU2MjUsMC41MjA2MjUgMC4zMjMxMjUsMC42OTc1IDAuODUzNDM3NSwwLjE2NzE4NzUgeiIKICAgICAgICAgc3R5bGU9ImZpbGw6I2ZmZmZmZjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8bWFzayBpZD0ibWFzayIgbWFza1VuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgbWFza0NvbnRlbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCAwLDEgMSwxIDEsMCAwLDAgeiBNIDAuODUzNDM3NSwwLjE2NzE4NzUgMC45NTk2ODc1LDAuMjczMTI1IDAuNDI5Mzc1LDAuODAzNDM3NSAwLjMyMzEyNSwwLjkwOTY4NzUgMC4yMTcxODc1LDAuODAzNDM3NSAwLjA0MDMxMjUsMC42MjY4NzUgMC4xNDY1NjI1LDAuNTIwNjI1IDAuMzIzMTI1LDAuNjk3NSAwLjg1MzQzNzUsMC4xNjcxODc1IHoiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmUiIC8+CiAgICA8L21hc2s+CiAgPC9kZWZzPgogIDxyZWN0CiAgICAgd2lkdGg9IjEiCiAgICAgaGVpZ2h0PSIxIgogICAgIHg9IjAiCiAgICAgeT0iMCIKICAgICBjbGlwLXBhdGg9InVybCgjY2xpcCkiCiAgICAgc3R5bGU9ImZpbGw6IzAwMDAwMDtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZSIgLz4KPC9zdmc+Cg==");
background: transparent;
- -webkit-transition-duration: 0.28s;
- transition-duration: 0.28s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- -webkit-transition-property: background;
- transition-property: background; }
+ transition-duration: 0.28s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-property: background; }
.mdl-checkbox.is-checked .mdl-checkbox__tick-outline {
background: rgb(63,81,181) url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8cGF0aAogICAgIGQ9Ik0gMC4wNDAzODA1OSwwLjYyNjc3NjcgMC4xNDY0NDY2MSwwLjUyMDcxMDY4IDAuNDI5Mjg5MzIsMC44MDM1NTMzOSAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IE0gMC4yMTcxNTcyOSwwLjgwMzU1MzM5IDAuODUzNTUzMzksMC4xNjcxNTcyOSAwLjk1OTYxOTQxLDAuMjczMjIzMyAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IgogICAgIGlkPSJyZWN0Mzc4MCIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgo8L3N2Zz4K"); }
+ fieldset[disabled] .mdl-checkbox.is-checked .mdl-checkbox__tick-outline,
.mdl-checkbox.is-checked.is-disabled .mdl-checkbox__tick-outline {
background: rgba(0,0,0, 0.26) url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8cGF0aAogICAgIGQ9Ik0gMC4wNDAzODA1OSwwLjYyNjc3NjcgMC4xNDY0NDY2MSwwLjUyMDcxMDY4IDAuNDI5Mjg5MzIsMC44MDM1NTMzOSAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IE0gMC4yMTcxNTcyOSwwLjgwMzU1MzM5IDAuODUzNTUzMzksMC4xNjcxNTcyOSAwLjk1OTYxOTQxLDAuMjczMjIzMyAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IgogICAgIGlkPSJyZWN0Mzc4MCIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgo8L3N2Zz4K"); }
@@ -4443,6 +4575,7 @@ input.mdl-button[type="submit"] {
font-size: 16px;
line-height: 24px;
margin: 0; }
+ fieldset[disabled] .mdl-checkbox .mdl-checkbox__label,
.mdl-checkbox.is-disabled .mdl-checkbox__label {
color: rgba(0,0,0, 0.26);
cursor: auto; }
@@ -4461,8 +4594,10 @@ input.mdl-button[type="submit"] {
-webkit-mask-image: -webkit-radial-gradient(circle, white, black); }
.mdl-checkbox__ripple-container .mdl-ripple {
background: rgb(63,81,181); }
+ fieldset[disabled] .mdl-checkbox .mdl-checkbox__ripple-container,
.mdl-checkbox.is-disabled .mdl-checkbox__ripple-container {
cursor: auto; }
+ fieldset[disabled] .mdl-checkbox .mdl-checkbox__ripple-container .mdl-ripple,
.mdl-checkbox.is-disabled .mdl-checkbox__ripple-container .mdl-ripple {
background: transparent; }
@@ -4521,6 +4656,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -4572,6 +4716,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -4620,7 +4765,10 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -4639,6 +4787,249 @@ input.mdl-button[type="submit"] {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
+.mdl-chip {
+ height: 32px;
+ font-family: "Roboto", "Helvetica", "Arial", sans-serif;
+ line-height: 32px;
+ padding: 0 12px;
+ border: 0;
+ border-radius: 16px;
+ background-color: #dedede;
+ display: inline-block;
+ color: rgba(0,0,0, 0.87);
+ margin: 2px 0;
+ font-size: 0;
+ white-space: nowrap; }
+ .mdl-chip__text {
+ font-size: 13px;
+ vertical-align: middle;
+ display: inline-block; }
+ .mdl-chip__action {
+ height: 24px;
+ width: 24px;
+ background: transparent;
+ opacity: 0.54;
+ display: inline-block;
+ cursor: pointer;
+ text-align: center;
+ vertical-align: middle;
+ padding: 0;
+ margin: 0 0 0 4px;
+ font-size: 13px;
+ text-decoration: none;
+ color: rgba(0,0,0, 0.87);
+ border: none;
+ outline: none;
+ overflow: hidden; }
+ .mdl-chip__contact {
+ height: 32px;
+ width: 32px;
+ border-radius: 16px;
+ display: inline-block;
+ vertical-align: middle;
+ margin-right: 8px;
+ overflow: hidden;
+ text-align: center;
+ font-size: 18px;
+ line-height: 32px; }
+ .mdl-chip:focus {
+ outline: 0;
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
+ .mdl-chip:active {
+ background-color: #d6d6d6; }
+ .mdl-chip--deletable {
+ padding-right: 4px; }
+ .mdl-chip--contact {
+ padding-left: 0; }
+
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/*------------------------------------* $CONTENTS
+\*------------------------------------*/
+/**
+ * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
+ * -----Typography
+ * -----Colors
+ * -----Textfield
+ * -----Switch
+ * -----Spinner
+ * -----Radio
+ * -----Menu
+ * -----List
+ * -----Layout
+ * -----Icon toggles
+ * -----Footer
+ * -----Column
+ * -----Checkbox
+ * -----Card
+ * -----Button
+ * -----Animation
+ * -----Progress
+ * -----Badge
+ * -----Shadows
+ * -----Grid
+ * -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
+ */
+/* ========== TYPOGRAPHY ========== */
+/* We're splitting fonts into "preferred" and "performance" in order to optimize
+ page loading. For important text, such as the body, we want it to load
+ immediately and not wait for the web font load, whereas for other sections,
+ such as headers and titles, we're OK with things taking a bit longer to load.
+ We do have some optional classes and parameters in the mixins, in case you
+ definitely want to make sure you're using the preferred font and don't mind
+ the performance hit.
+ We should be able to improve on this once CSS Font Loading L3 becomes more
+ widely available.
+*/
+/* ========== COLORS ========== */
+/**
+*
+* Material design color palettes.
+* @see http://www.google.com/design/spec/style/color.html
+*
+**/
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* ========== Color Palettes ========== */
+/* colors.scss */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* ========== IMAGES ========== */
+/* ========== Color & Themes ========== */
+/* ========== Typography ========== */
+/* ========== Components ========== */
+/* ========== Standard Buttons ========== */
+/* ========== Icon Toggles ========== */
+/* ========== Radio Buttons ========== */
+/* ========== Ripple effect ========== */
+/* ========== Layout ========== */
+/* ========== Content Tabs ========== */
+/* ========== Checkboxes ========== */
+/* ========== Switches ========== */
+/* ========== Spinner ========== */
+/* ========== Text fields ========== */
+/* ========== Card ========== */
+/* ========== Sliders ========== */
+/* ========== Progress ========== */
+/* ========== List ========== */
+/* ========== Item ========== */
+/* ========== Dropdown menu ========== */
+/* ========== Tooltips ========== */
+/* ========== Footer ========== */
+/* TEXTFIELD */
+/* SWITCH */
+/* SPINNER */
+/* RADIO */
+/* MENU */
+/* LIST */
+/* LAYOUT */
+/* ICON TOGGLE */
+/* FOOTER */
+/*mega-footer*/
+/*mini-footer*/
+/* CHECKBOX */
+/* CARD */
+/* Card dimensions */
+/* Cover image */
+/* BUTTON */
+/**
+ *
+ * Dimensions
+ *
+ */
+/* ANIMATION */
+/* PROGRESS */
+/* BADGE */
+/* SHADOWS */
+/* GRID */
+/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
+/* TOOLTIP */
+/* CHIP */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* Typography */
+/* Shadows */
+/* Animations */
+/* Dialog */
.mdl-data-table {
position: relative;
border: 1px solid rgba(0, 0, 0, 0.12);
@@ -4653,18 +5044,15 @@ input.mdl-button[type="submit"] {
.mdl-data-table tbody tr {
position: relative;
height: 48px;
- -webkit-transition-duration: 0.28s;
- transition-duration: 0.28s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- -webkit-transition-property: background-color;
- transition-property: background-color; }
+ transition-duration: 0.28s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-property: background-color; }
.mdl-data-table tbody tr.is-selected {
background-color: #e0e0e0; }
.mdl-data-table tbody tr:hover {
background-color: #eeeeee; }
.mdl-data-table td, .mdl-data-table th {
- padding: 0 18px 0 18px;
+ padding: 0 18px 12px 18px;
text-align: right; }
.mdl-data-table td:first-of-type, .mdl-data-table th:first-of-type {
padding-left: 24px; }
@@ -4672,16 +5060,14 @@ input.mdl-button[type="submit"] {
padding-right: 24px; }
.mdl-data-table td {
position: relative;
- vertical-align: top;
+ vertical-align: middle;
height: 48px;
border-top: 1px solid rgba(0, 0, 0, 0.12);
border-bottom: 1px solid rgba(0, 0, 0, 0.12);
padding-top: 12px;
box-sizing: border-box; }
.mdl-data-table td .mdl-data-table__select {
- vertical-align: top;
- position: absolute;
- left: 24px; }
+ vertical-align: middle; }
.mdl-data-table th {
position: relative;
vertical-align: bottom;
@@ -4695,10 +5081,32 @@ input.mdl-button[type="submit"] {
color: rgba(0, 0, 0, 0.54);
padding-bottom: 8px;
box-sizing: border-box; }
- .mdl-data-table th .mdl-data-table__select {
- position: absolute;
- bottom: 8px;
- left: 24px; }
+ .mdl-data-table th.mdl-data-table__header--sorted-ascending, .mdl-data-table th.mdl-data-table__header--sorted-descending {
+ color: rgba(0, 0, 0, 0.87); }
+ .mdl-data-table th.mdl-data-table__header--sorted-ascending:before, .mdl-data-table th.mdl-data-table__header--sorted-descending:before {
+ font-family: 'Material Icons';
+ font-weight: normal;
+ font-style: normal;
+ font-size: 24px;
+ line-height: 1;
+ letter-spacing: normal;
+ text-transform: none;
+ display: inline-block;
+ word-wrap: normal;
+ -moz-font-feature-settings: 'liga';
+ font-feature-settings: 'liga';
+ -webkit-font-feature-settings: 'liga';
+ -webkit-font-smoothing: antialiased;
+ font-size: 16px;
+ content: "\e5d8";
+ margin-right: 5px;
+ vertical-align: sub; }
+ .mdl-data-table th.mdl-data-table__header--sorted-ascending:hover, .mdl-data-table th.mdl-data-table__header--sorted-descending:hover {
+ cursor: pointer; }
+ .mdl-data-table th.mdl-data-table__header--sorted-ascending:hover:before, .mdl-data-table th.mdl-data-table__header--sorted-descending:hover:before {
+ color: rgba(0, 0, 0, 0.26); }
+ .mdl-data-table th.mdl-data-table__header--sorted-descending:before {
+ content: "\e5db"; }
.mdl-data-table__select {
width: 16px; }
@@ -4761,6 +5169,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -4812,6 +5229,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -4860,7 +5278,10 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -4879,6 +5300,232 @@ input.mdl-button[type="submit"] {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
+.mdl-dialog {
+ border: none;
+ box-shadow: 0 9px 46px 8px rgba(0, 0, 0, 0.14), 0 11px 15px -7px rgba(0, 0, 0, 0.12), 0 24px 38px 3px rgba(0, 0, 0, 0.2);
+ width: 280px; }
+ .mdl-dialog__title {
+ padding: 24px 24px 0;
+ margin: 0;
+ font-size: 2.5rem; }
+ .mdl-dialog__actions {
+ padding: 8px 8px 8px 24px;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-flex-direction: row-reverse;
+ -ms-flex-direction: row-reverse;
+ flex-direction: row-reverse;
+ -webkit-flex-wrap: wrap;
+ -ms-flex-wrap: wrap;
+ flex-wrap: wrap; }
+ .mdl-dialog__actions > * {
+ margin-right: 8px;
+ height: 36px; }
+ .mdl-dialog__actions > *:first-child {
+ margin-right: 0; }
+ .mdl-dialog__actions--full-width {
+ padding: 0 0 8px 0; }
+ .mdl-dialog__actions--full-width > * {
+ height: 48px;
+ -webkit-flex: 0 0 100%;
+ -ms-flex: 0 0 100%;
+ flex: 0 0 100%;
+ padding-right: 16px;
+ margin-right: 0;
+ text-align: right; }
+ .mdl-dialog__content {
+ padding: 20px 24px 24px 24px;
+ color: rgba(0,0,0, 0.54); }
+
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/*------------------------------------* $CONTENTS
+\*------------------------------------*/
+/**
+ * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
+ * -----Typography
+ * -----Colors
+ * -----Textfield
+ * -----Switch
+ * -----Spinner
+ * -----Radio
+ * -----Menu
+ * -----List
+ * -----Layout
+ * -----Icon toggles
+ * -----Footer
+ * -----Column
+ * -----Checkbox
+ * -----Card
+ * -----Button
+ * -----Animation
+ * -----Progress
+ * -----Badge
+ * -----Shadows
+ * -----Grid
+ * -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
+ */
+/* ========== TYPOGRAPHY ========== */
+/* We're splitting fonts into "preferred" and "performance" in order to optimize
+ page loading. For important text, such as the body, we want it to load
+ immediately and not wait for the web font load, whereas for other sections,
+ such as headers and titles, we're OK with things taking a bit longer to load.
+ We do have some optional classes and parameters in the mixins, in case you
+ definitely want to make sure you're using the preferred font and don't mind
+ the performance hit.
+ We should be able to improve on this once CSS Font Loading L3 becomes more
+ widely available.
+*/
+/* ========== COLORS ========== */
+/**
+*
+* Material design color palettes.
+* @see http://www.google.com/design/spec/style/color.html
+*
+**/
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* ========== Color Palettes ========== */
+/* colors.scss */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* ========== IMAGES ========== */
+/* ========== Color & Themes ========== */
+/* ========== Typography ========== */
+/* ========== Components ========== */
+/* ========== Standard Buttons ========== */
+/* ========== Icon Toggles ========== */
+/* ========== Radio Buttons ========== */
+/* ========== Ripple effect ========== */
+/* ========== Layout ========== */
+/* ========== Content Tabs ========== */
+/* ========== Checkboxes ========== */
+/* ========== Switches ========== */
+/* ========== Spinner ========== */
+/* ========== Text fields ========== */
+/* ========== Card ========== */
+/* ========== Sliders ========== */
+/* ========== Progress ========== */
+/* ========== List ========== */
+/* ========== Item ========== */
+/* ========== Dropdown menu ========== */
+/* ========== Tooltips ========== */
+/* ========== Footer ========== */
+/* TEXTFIELD */
+/* SWITCH */
+/* SPINNER */
+/* RADIO */
+/* MENU */
+/* LIST */
+/* LAYOUT */
+/* ICON TOGGLE */
+/* FOOTER */
+/*mega-footer*/
+/*mini-footer*/
+/* CHECKBOX */
+/* CARD */
+/* Card dimensions */
+/* Cover image */
+/* BUTTON */
+/**
+ *
+ * Dimensions
+ *
+ */
+/* ANIMATION */
+/* PROGRESS */
+/* BADGE */
+/* SHADOWS */
+/* GRID */
+/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
+/* TOOLTIP */
+/* CHIP */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* Typography */
+/* Shadows */
+/* Animations */
+/* Dialog */
.mdl-mega-footer {
padding: 16px 40px;
color: rgb(158,158,158);
@@ -4986,21 +5633,27 @@ input.mdl-button[type="submit"] {
cursor: pointer;
z-index: 1;
opacity: 0; }
- .mdl-mega-footer--heading-checkbox ~ .mdl-mega-footer--heading:after,
- .mdl-mega-footer--heading-checkbox ~ .mdl-mega-footer__heading:after,
- .mdl-mega-footer__heading-checkbox ~ .mdl-mega-footer--heading:after,
- .mdl-mega-footer__heading-checkbox ~ .mdl-mega-footer__heading:after {
+ .mdl-mega-footer--heading-checkbox + .mdl-mega-footer--heading:after,
+ .mdl-mega-footer--heading-checkbox + .mdl-mega-footer__heading:after,
+ .mdl-mega-footer__heading-checkbox + .mdl-mega-footer--heading:after,
+ .mdl-mega-footer__heading-checkbox + .mdl-mega-footer__heading:after {
font-family: 'Material Icons';
content: '\E5CE'; }
-.mdl-mega-footer--heading-checkbox:checked ~ ul,
-.mdl-mega-footer__heading-checkbox:checked ~ ul {
+.mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer--link-list,
+.mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer__link-list,
+.mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer--heading + .mdl-mega-footer--link-list,
+.mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer__heading + .mdl-mega-footer__link-list,
+.mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer--link-list,
+.mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer__link-list,
+.mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer--heading + .mdl-mega-footer--link-list,
+.mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer__heading + .mdl-mega-footer__link-list {
display: none; }
-.mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer--heading:after,
-.mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer__heading:after,
-.mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer--heading:after,
-.mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer__heading:after {
+.mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer--heading:after,
+.mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer__heading:after,
+.mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer--heading:after,
+.mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer__heading:after {
font-family: 'Material Icons';
content: '\E5CF'; }
@@ -5060,18 +5713,24 @@ input.mdl-button[type="submit"] {
.mdl-mega-footer--heading-checkbox,
.mdl-mega-footer__heading-checkbox {
display: none; }
- .mdl-mega-footer--heading-checkbox ~ .mdl-mega-footer--heading:after,
- .mdl-mega-footer--heading-checkbox ~ .mdl-mega-footer__heading:after,
- .mdl-mega-footer__heading-checkbox ~ .mdl-mega-footer--heading:after,
- .mdl-mega-footer__heading-checkbox ~ .mdl-mega-footer__heading:after {
- background-image: none; }
- .mdl-mega-footer--heading-checkbox:checked ~ ul,
- .mdl-mega-footer__heading-checkbox:checked ~ ul {
+ .mdl-mega-footer--heading-checkbox + .mdl-mega-footer--heading:after,
+ .mdl-mega-footer--heading-checkbox + .mdl-mega-footer__heading:after,
+ .mdl-mega-footer__heading-checkbox + .mdl-mega-footer--heading:after,
+ .mdl-mega-footer__heading-checkbox + .mdl-mega-footer__heading:after {
+ content: ''; }
+ .mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer--link-list,
+ .mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer__link-list,
+ .mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer__heading + .mdl-mega-footer__link-list,
+ .mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer--heading + .mdl-mega-footer--link-list,
+ .mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer--link-list,
+ .mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer__link-list,
+ .mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer__heading + .mdl-mega-footer__link-list,
+ .mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer--heading + .mdl-mega-footer--link-list {
display: block; }
- .mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer--heading:after,
- .mdl-mega-footer--heading-checkbox:checked ~ .mdl-mega-footer__heading:after,
- .mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer--heading:after,
- .mdl-mega-footer__heading-checkbox:checked ~ .mdl-mega-footer__heading:after {
+ .mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer--heading:after,
+ .mdl-mega-footer--heading-checkbox:checked + .mdl-mega-footer__heading:after,
+ .mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer--heading:after,
+ .mdl-mega-footer__heading-checkbox:checked + .mdl-mega-footer__heading:after {
content: ''; } }
.mdl-mega-footer--bottom-section,
@@ -5150,6 +5809,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -5201,6 +5869,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -5249,16 +5918,17 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-mini-footer {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-flow: row wrap;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
- -webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
@@ -5273,7 +5943,6 @@ input.mdl-button[type="submit"] {
.mdl-mini-footer--link-list,
.mdl-mini-footer__link-list {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
@@ -5300,7 +5969,6 @@ input.mdl-button[type="submit"] {
.mdl-mini-footer--left-section,
.mdl-mini-footer__left-section {
display: inline-block;
- -webkit-box-ordinal-group: 1;
-webkit-order: 0;
-ms-flex-order: 0;
order: 0; }
@@ -5308,7 +5976,6 @@ input.mdl-button[type="submit"] {
.mdl-mini-footer--right-section,
.mdl-mini-footer__right-section {
display: inline-block;
- -webkit-box-ordinal-group: 2;
-webkit-order: 1;
-ms-flex-order: 1;
order: 1; }
@@ -5377,6 +6044,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -5428,6 +6104,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -5476,7 +6153,10 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-icon-toggle {
position: relative;
z-index: 1;
@@ -5516,8 +6196,7 @@ input.mdl-button[type="submit"] {
text-align: center;
background-color: transparent;
will-change: background-color;
- -webkit-transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
- transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1); }
+ transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1); }
.mdl-icon-toggle__label.material-icons {
line-height: 32px;
font-size: 24px; }
@@ -5526,8 +6205,7 @@ input.mdl-button[type="submit"] {
.mdl-icon-toggle.is-disabled .mdl-icon-toggle__label {
color: rgba(0,0,0, 0.26);
cursor: auto;
- -webkit-transition: none;
- transition: none; }
+ transition: none; }
.mdl-icon-toggle.is-focused .mdl-icon-toggle__label {
background-color: rgba(0,0,0, 0.12); }
.mdl-icon-toggle.is-focused.is-checked .mdl-icon-toggle__label {
@@ -5607,6 +6285,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -5658,6 +6345,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -5706,7 +6394,10 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -5725,6 +6416,328 @@ input.mdl-button[type="submit"] {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
+.mdl-list {
+ display: block;
+ padding: 8px 0;
+ list-style: none; }
+
+.mdl-list__item {
+ font-family: "Roboto", "Helvetica", "Arial", sans-serif;
+ font-size: 16px;
+ font-weight: 400;
+ line-height: 24px;
+ letter-spacing: 0.04em;
+ line-height: 1;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ min-height: 48px;
+ box-sizing: border-box;
+ -webkit-flex-direction: row;
+ -ms-flex-direction: row;
+ flex-direction: row;
+ -webkit-flex-wrap: nowrap;
+ -ms-flex-wrap: nowrap;
+ flex-wrap: nowrap;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+ padding: 16px;
+ cursor: default;
+ color: rgba(0,0,0, 0.87);
+ overflow: hidden; }
+ .mdl-list__item .mdl-list__item-primary-content {
+ -webkit-order: 0;
+ -ms-flex-order: 0;
+ order: 0;
+ -webkit-flex-grow: 2;
+ -ms-flex-positive: 2;
+ flex-grow: 2;
+ text-decoration: none;
+ box-sizing: border-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center; }
+ .mdl-list__item .mdl-list__item-primary-content .mdl-list__item-icon {
+ margin-right: 32px; }
+ .mdl-list__item .mdl-list__item-primary-content .mdl-list__item-avatar {
+ margin-right: 16px; }
+ .mdl-list__item .mdl-list__item-secondary-content {
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-flex-flow: column;
+ -ms-flex-flow: column;
+ flex-flow: column;
+ -webkit-align-items: flex-end;
+ -ms-flex-align: end;
+ align-items: flex-end;
+ margin-left: 16px; }
+ .mdl-list__item .mdl-list__item-secondary-content .mdl-list__item-secondary-action label {
+ display: inline; }
+ .mdl-list__item .mdl-list__item-secondary-content .mdl-list__item-secondary-info {
+ font-size: 12px;
+ font-weight: 400;
+ line-height: 1;
+ letter-spacing: 0;
+ color: rgba(0,0,0, 0.54); }
+ .mdl-list__item .mdl-list__item-secondary-content .mdl-list__item-sub-header {
+ padding: 0 0 0 16px; }
+
+.mdl-list__item-icon,
+.mdl-list__item-icon.material-icons {
+ height: 24px;
+ width: 24px;
+ font-size: 24px;
+ box-sizing: border-box;
+ color: rgb(117,117,117); }
+
+.mdl-list__item-avatar,
+.mdl-list__item-avatar.material-icons {
+ height: 40px;
+ width: 40px;
+ box-sizing: border-box;
+ border-radius: 50%;
+ background-color: rgb(117,117,117);
+ font-size: 40px;
+ color: white; }
+
+.mdl-list__item--two-line {
+ height: 72px; }
+ .mdl-list__item--two-line .mdl-list__item-primary-content {
+ height: 36px;
+ line-height: 20px;
+ display: block; }
+ .mdl-list__item--two-line .mdl-list__item-primary-content .mdl-list__item-avatar {
+ float: left; }
+ .mdl-list__item--two-line .mdl-list__item-primary-content .mdl-list__item-icon {
+ float: left;
+ margin-top: 6px; }
+ .mdl-list__item--two-line .mdl-list__item-primary-content .mdl-list__item-secondary-content {
+ height: 36px; }
+ .mdl-list__item--two-line .mdl-list__item-primary-content .mdl-list__item-sub-title {
+ font-size: 14px;
+ font-weight: 400;
+ line-height: 24px;
+ letter-spacing: 0;
+ line-height: 18px;
+ color: rgba(0,0,0, 0.54);
+ display: block;
+ padding: 0; }
+
+.mdl-list__item--three-line {
+ height: 88px; }
+ .mdl-list__item--three-line .mdl-list__item-primary-content {
+ height: 52px;
+ line-height: 20px;
+ display: block; }
+ .mdl-list__item--three-line .mdl-list__item-primary-content .mdl-list__item-avatar,
+ .mdl-list__item--three-line .mdl-list__item-primary-content .mdl-list__item-icon {
+ float: left; }
+ .mdl-list__item--three-line .mdl-list__item-secondary-content {
+ height: 52px; }
+ .mdl-list__item--three-line .mdl-list__item-text-body {
+ font-size: 14px;
+ font-weight: 400;
+ line-height: 24px;
+ letter-spacing: 0;
+ line-height: 18px;
+ height: 52px;
+ color: rgba(0,0,0, 0.54);
+ display: block;
+ padding: 0; }
+
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/*------------------------------------* $CONTENTS
+\*------------------------------------*/
+/**
+ * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
+ * -----Typography
+ * -----Colors
+ * -----Textfield
+ * -----Switch
+ * -----Spinner
+ * -----Radio
+ * -----Menu
+ * -----List
+ * -----Layout
+ * -----Icon toggles
+ * -----Footer
+ * -----Column
+ * -----Checkbox
+ * -----Card
+ * -----Button
+ * -----Animation
+ * -----Progress
+ * -----Badge
+ * -----Shadows
+ * -----Grid
+ * -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
+ */
+/* ========== TYPOGRAPHY ========== */
+/* We're splitting fonts into "preferred" and "performance" in order to optimize
+ page loading. For important text, such as the body, we want it to load
+ immediately and not wait for the web font load, whereas for other sections,
+ such as headers and titles, we're OK with things taking a bit longer to load.
+ We do have some optional classes and parameters in the mixins, in case you
+ definitely want to make sure you're using the preferred font and don't mind
+ the performance hit.
+ We should be able to improve on this once CSS Font Loading L3 becomes more
+ widely available.
+*/
+/* ========== COLORS ========== */
+/**
+*
+* Material design color palettes.
+* @see http://www.google.com/design/spec/style/color.html
+*
+**/
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* ========== Color Palettes ========== */
+/* colors.scss */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* ========== IMAGES ========== */
+/* ========== Color & Themes ========== */
+/* ========== Typography ========== */
+/* ========== Components ========== */
+/* ========== Standard Buttons ========== */
+/* ========== Icon Toggles ========== */
+/* ========== Radio Buttons ========== */
+/* ========== Ripple effect ========== */
+/* ========== Layout ========== */
+/* ========== Content Tabs ========== */
+/* ========== Checkboxes ========== */
+/* ========== Switches ========== */
+/* ========== Spinner ========== */
+/* ========== Text fields ========== */
+/* ========== Card ========== */
+/* ========== Sliders ========== */
+/* ========== Progress ========== */
+/* ========== List ========== */
+/* ========== Item ========== */
+/* ========== Dropdown menu ========== */
+/* ========== Tooltips ========== */
+/* ========== Footer ========== */
+/* TEXTFIELD */
+/* SWITCH */
+/* SPINNER */
+/* RADIO */
+/* MENU */
+/* LIST */
+/* LAYOUT */
+/* ICON TOGGLE */
+/* FOOTER */
+/*mega-footer*/
+/*mini-footer*/
+/* CHECKBOX */
+/* CARD */
+/* Card dimensions */
+/* Cover image */
+/* BUTTON */
+/**
+ *
+ * Dimensions
+ *
+ */
+/* ANIMATION */
+/* PROGRESS */
+/* BADGE */
+/* SHADOWS */
+/* GRID */
+/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
+/* TOOLTIP */
+/* CHIP */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* Typography */
+/* Shadows */
+/* Animations */
+/* Dialog */
.mdl-menu__container {
display: block;
margin: 0;
@@ -5736,8 +6749,7 @@ input.mdl-button[type="submit"] {
width: 0;
visibility: hidden;
z-index: -1; }
- .mdl-menu__container.is-visible,
- .mdl-menu__container.is-animating {
+ .mdl-menu__container.is-visible, .mdl-menu__container.is-animating {
z-index: 999;
visibility: visible; }
@@ -5754,33 +6766,28 @@ input.mdl-button[type="submit"] {
overflow: hidden;
opacity: 0;
-webkit-transform: scale(0);
- -ms-transform: scale(0);
transform: scale(0);
-webkit-transform-origin: 0 0;
- -ms-transform-origin: 0 0;
transform-origin: 0 0;
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
will-change: transform;
- -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
- transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
+ transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
+ transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
z-index: -1; }
.mdl-menu__container.is-visible .mdl-menu__outline {
opacity: 1;
-webkit-transform: scale(1);
- -ms-transform: scale(1);
transform: scale(1);
z-index: 999; }
.mdl-menu__outline.mdl-menu--bottom-right {
-webkit-transform-origin: 100% 0;
- -ms-transform-origin: 100% 0;
transform-origin: 100% 0; }
.mdl-menu__outline.mdl-menu--top-left {
-webkit-transform-origin: 0 100%;
- -ms-transform-origin: 0 100%;
transform-origin: 0 100%; }
.mdl-menu__outline.mdl-menu--top-right {
-webkit-transform-origin: 100% 100%;
- -ms-transform-origin: 100% 100%;
transform-origin: 100% 100%; }
.mdl-menu {
@@ -5800,8 +6807,7 @@ input.mdl-button[type="submit"] {
opacity: 1;
z-index: 999; }
.mdl-menu.is-animating {
- -webkit-transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), clip 0.3s cubic-bezier(0.4, 0, 0.2, 1);
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), clip 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), clip 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
.mdl-menu.mdl-menu--bottom-right {
left: auto;
right: 0; }
@@ -5838,8 +6844,7 @@ input.mdl-button[type="submit"] {
line-height: 48px;
white-space: nowrap;
opacity: 0;
- -webkit-transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
@@ -5848,15 +6853,17 @@ input.mdl-button[type="submit"] {
opacity: 1; }
.mdl-menu__item::-moz-focus-inner {
border: 0; }
- .mdl-menu__item[disabled] {
+ .mdl-menu__item--full-bleed-divider {
+ border-bottom: 1px solid rgba(0,0,0, 0.12); }
+ .mdl-menu__item[disabled], .mdl-menu__item[data-mdl-disabled] {
color: rgb(189,189,189);
background-color: transparent;
cursor: auto; }
- .mdl-menu__item[disabled]:hover {
+ .mdl-menu__item[disabled]:hover, .mdl-menu__item[data-mdl-disabled]:hover {
background-color: transparent; }
- .mdl-menu__item[disabled]:focus {
+ .mdl-menu__item[disabled]:focus, .mdl-menu__item[data-mdl-disabled]:focus {
background-color: transparent; }
- .mdl-menu__item[disabled] .mdl-ripple {
+ .mdl-menu__item[disabled] .mdl-ripple, .mdl-menu__item[data-mdl-disabled] .mdl-ripple {
background: transparent; }
.mdl-menu__item:hover {
background-color: rgb(238,238,238); }
@@ -5931,6 +6938,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -5982,6 +6998,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -6030,12 +7047,16 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-progress {
display: block;
position: relative;
height: 4px;
- width: 500px; }
+ width: 500px;
+ max-width: 100%; }
.mdl-progress > .bar {
display: block;
@@ -6043,8 +7064,7 @@ input.mdl-button[type="submit"] {
top: 0;
bottom: 0;
width: 0%;
- -webkit-transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1);
- transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1); }
+ transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1); }
.mdl-progress > .progressbar {
background-color: rgb(63,81,181);
@@ -6052,7 +7072,6 @@ input.mdl-button[type="submit"] {
left: 0; }
.mdl-progress > .bufferbar {
- background-image: -webkit-linear-gradient(left, rgba(255,255,255, 0.7), rgba(255,255,255, 0.7)), -webkit-linear-gradient(left, rgb(63,81,181), rgb(63,81,181));
background-image: linear-gradient(to right, rgba(255,255,255, 0.7), rgba(255,255,255, 0.7)), linear-gradient(to right, rgb(63,81,181), rgb(63,81,181));
z-index: 0;
left: 0; }
@@ -6061,16 +7080,17 @@ input.mdl-button[type="submit"] {
right: 0; }
@supports (-webkit-appearance: none) {
+ .mdl-progress:not(.mdl-progress--indeterminate):not(.mdl-progress--indeterminate) > .auxbar,
.mdl-progress:not(.mdl-progress__indeterminate):not(.mdl-progress__indeterminate) > .auxbar {
- background-image: -webkit-linear-gradient(left, rgba(255,255,255, 0.7), rgba(255,255,255, 0.7)), -webkit-linear-gradient(left, rgb(63,81,181), rgb(63,81,181));
background-image: linear-gradient(to right, rgba(255,255,255, 0.7), rgba(255,255,255, 0.7)), linear-gradient(to right, rgb(63,81,181), rgb(63,81,181));
-webkit-mask: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+Cjxzdmcgd2lkdGg9IjEyIiBoZWlnaHQ9IjQiIHZpZXdQb3J0PSIwIDAgMTIgNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxlbGxpcHNlIGN4PSIyIiBjeT0iMiIgcng9IjIiIHJ5PSIyIj4KICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN4IiBmcm9tPSIyIiB0bz0iLTEwIiBkdXI9IjAuNnMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPgogIDwvZWxsaXBzZT4KICA8ZWxsaXBzZSBjeD0iMTQiIGN5PSIyIiByeD0iMiIgcnk9IjIiIGNsYXNzPSJsb2FkZXIiPgogICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iY3giIGZyb209IjE0IiB0bz0iMiIgZHVyPSIwLjZzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgLz4KICA8L2VsbGlwc2U+Cjwvc3ZnPgo=");
mask: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+Cjxzdmcgd2lkdGg9IjEyIiBoZWlnaHQ9IjQiIHZpZXdQb3J0PSIwIDAgMTIgNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxlbGxpcHNlIGN4PSIyIiBjeT0iMiIgcng9IjIiIHJ5PSIyIj4KICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN4IiBmcm9tPSIyIiB0bz0iLTEwIiBkdXI9IjAuNnMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPgogIDwvZWxsaXBzZT4KICA8ZWxsaXBzZSBjeD0iMTQiIGN5PSIyIiByeD0iMiIgcnk9IjIiIGNsYXNzPSJsb2FkZXIiPgogICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iY3giIGZyb209IjE0IiB0bz0iMiIgZHVyPSIwLjZzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgLz4KICA8L2VsbGlwc2U+Cjwvc3ZnPgo="); } }
+.mdl-progress:not(.mdl-progress--indeterminate) > .auxbar,
.mdl-progress:not(.mdl-progress__indeterminate) > .auxbar {
- background-image: -webkit-linear-gradient(left, rgba(255,255,255, 0.9), rgba(255,255,255, 0.9)), -webkit-linear-gradient(left, rgb(63,81,181), rgb(63,81,181));
background-image: linear-gradient(to right, rgba(255,255,255, 0.9), rgba(255,255,255, 0.9)), linear-gradient(to right, rgb(63,81,181), rgb(63,81,181)); }
+.mdl-progress.mdl-progress--indeterminate > .bar1,
.mdl-progress.mdl-progress__indeterminate > .bar1 {
background-color: rgb(63,81,181);
-webkit-animation-name: indeterminate1;
@@ -6082,6 +7102,7 @@ input.mdl-button[type="submit"] {
-webkit-animation-timing-function: linear;
animation-timing-function: linear; }
+.mdl-progress.mdl-progress--indeterminate > .bar3,
.mdl-progress.mdl-progress__indeterminate > .bar3 {
background-image: none;
background-color: rgb(63,81,181);
@@ -6199,6 +7220,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -6250,6 +7280,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -6298,7 +7329,10 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -6317,8 +7351,8 @@ input.mdl-button[type="submit"] {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
.mdl-navigation {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
@@ -6330,19 +7364,21 @@ input.mdl-button[type="submit"] {
.mdl-navigation__link {
color: rgb(66,66,66);
text-decoration: none;
- font-weight: 500;
- font-size: 13px;
- margin: 0; }
+ margin: 0;
+ font-size: 14px;
+ font-weight: 400;
+ line-height: 24px;
+ letter-spacing: 0;
+ opacity: 0.87; }
+ .mdl-navigation__link .material-icons {
+ vertical-align: middle; }
.mdl-layout {
width: 100%;
height: 100%;
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
@@ -6362,6 +7398,7 @@ input.mdl-button[type="submit"] {
width: 100%;
height: 100%; }
+.mdl-layout__title,
.mdl-layout-title {
display: block;
position: relative;
@@ -6374,18 +7411,14 @@ input.mdl-button[type="submit"] {
box-sizing: border-box; }
.mdl-layout-spacer {
- -webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1; }
.mdl-layout__drawer {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
@@ -6403,43 +7436,41 @@ input.mdl-button[type="submit"] {
border-right: 1px solid rgb(224,224,224);
background: rgb(250,250,250);
-webkit-transform: translateX(-250px);
- -ms-transform: translateX(-250px);
transform: translateX(-250px);
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
will-change: transform;
- -webkit-transition-duration: 0.2s;
- transition-duration: 0.2s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- -webkit-transition-property: -webkit-transform;
- transition-property: transform;
+ transition-duration: 0.2s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-property: -webkit-transform;
+ transition-property: transform;
+ transition-property: transform, -webkit-transform;
color: rgb(66,66,66);
overflow: visible;
overflow-y: auto;
z-index: 5; }
.mdl-layout__drawer.is-visible {
-webkit-transform: translateX(0);
- -ms-transform: translateX(0);
transform: translateX(0); }
+ .mdl-layout__drawer.is-visible ~ .mdl-layout__content.mdl-layout__content {
+ overflow: hidden; }
.mdl-layout__drawer > * {
-webkit-flex-shrink: 0;
-ms-flex-negative: 0;
flex-shrink: 0; }
+ .mdl-layout__drawer > .mdl-layout__title,
.mdl-layout__drawer > .mdl-layout-title {
line-height: 64px;
padding-left: 40px; }
@media screen and (max-width: 1024px) {
+ .mdl-layout__drawer > .mdl-layout__title,
.mdl-layout__drawer > .mdl-layout-title {
line-height: 56px;
padding-left: 16px; } }
.mdl-layout__drawer .mdl-navigation {
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
- -webkit-box-align: stretch;
-webkit-align-items: stretch;
-ms-flex-align: stretch;
align-items: stretch;
@@ -6458,12 +7489,11 @@ input.mdl-button[type="submit"] {
.mdl-layout__drawer .mdl-navigation .mdl-navigation__link:hover {
background-color: rgb(224,224,224); }
.mdl-layout__drawer .mdl-navigation .mdl-navigation__link--current {
- background-color: rgb(0,0,0);
- color: rgb(63,81,181); }
+ background-color: rgb(224,224,224);
+ color: rgb(0,0,0); }
@media screen and (min-width: 1025px) {
.mdl-layout--fixed-drawer > .mdl-layout__drawer {
-webkit-transform: translateX(0);
- -ms-transform: translateX(0);
transform: translateX(0); } }
.mdl-layout__drawer-button {
@@ -6479,9 +7509,9 @@ input.mdl-button[type="submit"] {
text-align: center;
cursor: pointer;
font-size: 26px;
- line-height: 50px;
+ line-height: 56px;
font-family: Helvetica, Arial, sans-serif;
- margin: 10px 12px;
+ margin: 8px 12px;
top: 0;
left: 0;
color: rgb(255,255,255);
@@ -6498,23 +7528,23 @@ input.mdl-button[type="submit"] {
margin: 4px;
color: rgba(0, 0, 0, 0.5); } }
@media screen and (min-width: 1025px) {
- .mdl-layout--fixed-drawer > .mdl-layout__drawer-button {
- display: none; } }
+ .mdl-layout__drawer-button {
+ line-height: 54px; }
+ .mdl-layout--no-desktop-drawer-button .mdl-layout__drawer-button,
+ .mdl-layout--fixed-drawer > .mdl-layout__drawer-button,
+ .mdl-layout--no-drawer-button .mdl-layout__drawer-button {
+ display: none; } }
.mdl-layout__header {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
- -webkit-box-pack: start;
-webkit-justify-content: flex-start;
-ms-flex-pack: start;
justify-content: flex-start;
@@ -6532,19 +7562,16 @@ input.mdl-button[type="submit"] {
background-color: rgb(63,81,181);
color: rgb(255,255,255);
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
- -webkit-transition-duration: 0.2s;
- transition-duration: 0.2s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- -webkit-transition-property: max-height, box-shadow;
- transition-property: max-height, box-shadow; }
+ transition-duration: 0.2s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-property: max-height, box-shadow; }
@media screen and (max-width: 1024px) {
.mdl-layout__header {
min-height: 56px; } }
- .mdl-layout--fixed-drawer:not(.is-small-screen) > .mdl-layout__header {
+ .mdl-layout--fixed-drawer.is-upgraded:not(.is-small-screen) > .mdl-layout__header {
margin-left: 240px;
width: calc(100% - 240px); }
- @media screen and (min-width: 1024px) {
+ @media screen and (min-width: 1025px) {
.mdl-layout--fixed-drawer > .mdl-layout__header .mdl-layout__header-row {
padding-left: 40px; } }
.mdl-layout__header > .mdl-layout-icon {
@@ -6576,7 +7603,6 @@ input.mdl-button[type="submit"] {
.mdl-layout__header {
display: none; }
.mdl-layout--fixed-header > .mdl-layout__header {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex; } }
@@ -6596,14 +7622,15 @@ input.mdl-button[type="submit"] {
overflow: hidden; }
.mdl-layout__header--waterfall.is-casting-shadow {
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
+ .mdl-layout__header--waterfall.mdl-layout__header--waterfall-hide-top {
+ -webkit-justify-content: flex-end;
+ -ms-flex-pack: end;
+ justify-content: flex-end; }
.mdl-layout__header-row {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-orient: horizontal;
- -webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
@@ -6617,17 +7644,23 @@ input.mdl-button[type="submit"] {
-webkit-align-self: stretch;
-ms-flex-item-align: stretch;
align-self: stretch;
- -webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
height: 64px;
margin: 0;
padding: 0 40px 0 80px; }
+ .mdl-layout--no-drawer-button .mdl-layout__header-row {
+ padding-left: 40px; }
+ @media screen and (min-width: 1025px) {
+ .mdl-layout--no-desktop-drawer-button .mdl-layout__header-row {
+ padding-left: 40px; } }
@media screen and (max-width: 1024px) {
.mdl-layout__header-row {
height: 56px;
- padding: 0 16px 0 72px; } }
+ padding: 0 16px 0 72px; }
+ .mdl-layout--no-drawer-button .mdl-layout__header-row {
+ padding-left: 16px; } }
.mdl-layout__header-row > * {
-webkit-flex-shrink: 0;
-ms-flex-negative: 0;
@@ -6638,12 +7671,9 @@ input.mdl-button[type="submit"] {
margin: 0;
padding: 0;
height: 64px;
- -webkit-box-orient: horizontal;
- -webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
- -webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center; }
@@ -6669,22 +7699,29 @@ input.mdl-button[type="submit"] {
width: 100%;
z-index: 4;
visibility: hidden;
- -webkit-transition-property: background-color;
- transition-property: background-color;
- -webkit-transition-duration: 0.2s;
- transition-duration: 0.2s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
- .mdl-layout__drawer.is-visible ~ .mdl-layout__obfuscator {
+ transition-property: background-color;
+ transition-duration: 0.2s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
+ .mdl-layout__obfuscator.is-visible {
background-color: rgba(0, 0, 0, 0.5);
visibility: visible; }
+ @supports (pointer-events: auto) {
+ .mdl-layout__obfuscator {
+ background-color: rgba(0, 0, 0, 0.5);
+ opacity: 0;
+ transition-property: opacity;
+ visibility: visible;
+ pointer-events: none; }
+ .mdl-layout__obfuscator.is-visible {
+ pointer-events: auto;
+ opacity: 1; } }
.mdl-layout__content {
-ms-flex: 0 1 auto;
+ position: relative;
display: inline-block;
overflow-y: auto;
overflow-x: hidden;
- -webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
@@ -6704,9 +7741,8 @@ input.mdl-button[type="submit"] {
.mdl-layout__tab-bar {
height: 96px;
margin: 0;
- width: calc(100% - 112px);
+ width: calc(100% - 112px);
padding: 0 0 0 56px;
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
@@ -6715,10 +7751,20 @@ input.mdl-button[type="submit"] {
overflow-x: scroll; }
.mdl-layout__tab-bar::-webkit-scrollbar {
display: none; }
+ .mdl-layout--no-drawer-button .mdl-layout__tab-bar {
+ padding-left: 16px;
+ width: calc(100% - 32px); }
+ @media screen and (min-width: 1025px) {
+ .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar {
+ padding-left: 16px;
+ width: calc(100% - 32px); } }
@media screen and (max-width: 1024px) {
.mdl-layout__tab-bar {
- width: calc(100% - 60px);
- padding: 0 0 0 60px; } }
+ width: calc(100% - 60px);
+ padding: 0 0 0 60px; }
+ .mdl-layout--no-drawer-button .mdl-layout__tab-bar {
+ width: calc(100% - 8px);
+ padding-left: 4px; } }
.mdl-layout--fixed-tabs .mdl-layout__tab-bar {
padding: 0;
overflow: hidden;
@@ -6731,7 +7777,6 @@ input.mdl-button[type="submit"] {
border: none;
margin: 0;
z-index: 2;
- -webkit-box-flex: 0;
-webkit-flex-grow: 0;
-ms-flex-positive: 0;
flex-grow: 0;
@@ -6759,9 +7804,15 @@ input.mdl-button[type="submit"] {
-moz-user-select: none;
-ms-user-select: none;
user-select: none; }
+ .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button,
+ .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button {
+ width: 16px; }
+ .mdl-layout--no-desktop-drawer-button .mdl-layout__tab-bar-button .material-icons,
+ .mdl-layout--no-drawer-button .mdl-layout__tab-bar-button .material-icons {
+ position: relative;
+ left: -4px; }
@media screen and (max-width: 1024px) {
.mdl-layout__tab-bar-button {
- display: none;
width: 60px; } }
.mdl-layout--fixed-tabs .mdl-layout__tab-bar-button {
display: none; }
@@ -6783,7 +7834,6 @@ input.mdl-button[type="submit"] {
float: left;
position: relative;
display: block;
- -webkit-box-flex: 0;
-webkit-flex-grow: 0;
-ms-flex-positive: 0;
flex-grow: 0;
@@ -6804,7 +7854,6 @@ input.mdl-button[type="submit"] {
padding: 0 12px 0 12px; } }
.mdl-layout--fixed-tabs .mdl-layout__tab {
float: none;
- -webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
@@ -6822,8 +7871,7 @@ input.mdl-button[type="submit"] {
background: rgb(255,64,129);
-webkit-animation: border-expand 0.2s cubic-bezier(0.4, 0, 0.4, 1) 0.01s alternate forwards;
animation: border-expand 0.2s cubic-bezier(0.4, 0, 0.4, 1) 0.01s alternate forwards;
- -webkit-transition: all 1s cubic-bezier(0.4, 0, 1, 1);
- transition: all 1s cubic-bezier(0.4, 0, 1, 1); }
+ transition: all 1s cubic-bezier(0.4, 0, 1, 1); }
.mdl-layout__tab .mdl-layout__tab-ripple-container {
display: block;
position: absolute;
@@ -6898,6 +7946,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -6949,6 +8006,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -6997,7 +8055,10 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -7016,12 +8077,15 @@ input.mdl-button[type="submit"] {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
.mdl-radio {
position: relative;
font-size: 16px;
line-height: 24px;
display: inline-block;
+ vertical-align: middle;
box-sizing: border-box;
+ height: 24px;
margin: 0;
padding-left: 0; }
.mdl-radio.is-upgraded {
@@ -7057,6 +8121,7 @@ input.mdl-button[type="submit"] {
z-index: 2; }
.mdl-radio.is-checked .mdl-radio__outer-circle {
border: 2px solid rgb(63,81,181); }
+ .mdl-radio__outer-circle fieldset[disabled] .mdl-radio,
.mdl-radio.is-disabled .mdl-radio__outer-circle {
border: 2px solid rgba(0,0,0, 0.26);
cursor: auto; }
@@ -7071,19 +8136,19 @@ input.mdl-button[type="submit"] {
width: 8px;
height: 8px;
cursor: pointer;
- -webkit-transition-duration: 0.28s;
- transition-duration: 0.28s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- -webkit-transition-property: -webkit-transform;
- transition-property: transform;
- -webkit-transform: scale3d(0, 0, 0);
- transform: scale3d(0, 0, 0);
+ transition-duration: 0.28s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-property: -webkit-transform;
+ transition-property: transform;
+ transition-property: transform, -webkit-transform;
+ -webkit-transform: scale(0, 0);
+ transform: scale(0, 0);
border-radius: 50%;
background: rgb(63,81,181); }
.mdl-radio.is-checked .mdl-radio__inner-circle {
- -webkit-transform: scale3d(1, 1, 1);
- transform: scale3d(1, 1, 1); }
+ -webkit-transform: scale(1, 1);
+ transform: scale(1, 1); }
+ fieldset[disabled] .mdl-radio .mdl-radio__inner-circle,
.mdl-radio.is-disabled .mdl-radio__inner-circle {
background: rgba(0,0,0, 0.26);
cursor: auto; }
@@ -7092,6 +8157,7 @@ input.mdl-button[type="submit"] {
.mdl-radio__label {
cursor: pointer; }
+ fieldset[disabled] .mdl-radio .mdl-radio__label,
.mdl-radio.is-disabled .mdl-radio__label {
color: rgba(0,0,0, 0.26);
cursor: auto; }
@@ -7110,8 +8176,10 @@ input.mdl-button[type="submit"] {
-webkit-mask-image: -webkit-radial-gradient(circle, white, black); }
.mdl-radio__ripple-container .mdl-ripple {
background: rgb(63,81,181); }
+ fieldset[disabled] .mdl-radio .mdl-radio__ripple-container,
.mdl-radio.is-disabled .mdl-radio__ripple-container {
cursor: auto; }
+ fieldset[disabled] .mdl-radio .mdl-radio__ripple-container .mdl-ripple,
.mdl-radio.is-disabled .mdl-radio__ripple-container .mdl-ripple {
background: transparent; }
@@ -7170,6 +8238,15 @@ input.mdl-button[type="submit"] {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -7221,6 +8298,7 @@ input.mdl-button[type="submit"] {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -7269,7 +8347,10 @@ input.mdl-button[type="submit"] {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
_:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
-ms-appearance: none;
height: 32px;
@@ -7293,6 +8374,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
color: rgb(63,81,181);
-webkit-align-self: center;
-ms-flex-item-align: center;
+ -ms-grid-row-align: center;
align-self: center;
z-index: 1;
cursor: pointer;
@@ -7329,8 +8411,9 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
border-radius: 50%;
background: rgb(63,81,181);
border: none;
- -webkit-transition: -webkit-transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), border 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1);
- transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), border 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
+ transition: border 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.18s cubic-bezier(0.4, 0, 0.2, 1);
+ transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), border 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1);
+ transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), border 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.18s cubic-bezier(0.4, 0, 0.2, 1); }
.mdl-slider.is-upgraded::-moz-range-thumb {
-moz-appearance: none;
width: 12px;
@@ -7359,24 +8442,23 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
border: none;
border-radius: 50%;
background: rgb(63,81,181);
- -ms-transform: scale(0.375);
- transform: scale(0.375);
- transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1); }
+ transform: scale(0.375);
+ transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.18s cubic-bezier(0.4, 0, 0.2, 1);
+ transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1);
+ transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), background 0.28s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.18s cubic-bezier(0.4, 0, 0.2, 1); }
.mdl-slider.is-upgraded:focus:not(:active)::-ms-thumb {
background: radial-gradient(circle closest-side, rgb(63,81,181) 0%, rgb(63,81,181) 37.5%, rgba(63,81,181, 0.26) 37.5%, rgba(63,81,181, 0.26) 100%);
- -ms-transform: scale(1);
- transform: scale(1); }
+ transform: scale(1); }
.mdl-slider.is-upgraded:active::-ms-thumb {
background: rgb(63,81,181);
- -ms-transform: scale(0.5625);
- transform: scale(0.5625); }
+ transform: scale(0.5625); }
.mdl-slider.is-upgraded.is-lowest-value::-webkit-slider-thumb {
border: 2px solid rgba(0,0,0, 0.26);
background: transparent; }
.mdl-slider.is-upgraded.is-lowest-value::-moz-range-thumb {
border: 2px solid rgba(0,0,0, 0.26);
background: transparent; }
- .mdl-slider.is-upgraded.is-lowest-value ~
+ .mdl-slider.is-upgraded.is-lowest-value +
.mdl-slider__background-flex > .mdl-slider__background-upper {
left: 6px; }
.mdl-slider.is-upgraded.is-lowest-value:focus:not(:active)::-webkit-slider-thumb {
@@ -7389,7 +8471,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
border: 1.6px solid rgba(0,0,0, 0.26);
-webkit-transform: scale(1.5);
transform: scale(1.5); }
- .mdl-slider.is-upgraded.is-lowest-value:active ~
+ .mdl-slider.is-upgraded.is-lowest-value:active +
.mdl-slider__background-flex > .mdl-slider__background-upper {
left: 9px; }
.mdl-slider.is-upgraded.is-lowest-value:active::-moz-range-thumb {
@@ -7399,11 +8481,9 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
background: radial-gradient(circle closest-side, transparent 0%, transparent 66.67%, rgba(0,0,0, 0.26) 66.67%, rgba(0,0,0, 0.26) 100%); }
.mdl-slider.is-upgraded.is-lowest-value:focus:not(:active)::-ms-thumb {
background: radial-gradient(circle closest-side, rgba(0,0,0, 0.12) 0%, rgba(0,0,0, 0.12) 25%, rgba(0,0,0, 0.26) 25%, rgba(0,0,0, 0.26) 37.5%, rgba(0,0,0, 0.12) 37.5%, rgba(0,0,0, 0.12) 100%);
- -ms-transform: scale(1);
- transform: scale(1); }
+ transform: scale(1); }
.mdl-slider.is-upgraded.is-lowest-value:active::-ms-thumb {
- -ms-transform: scale(0.5625);
- transform: scale(0.5625);
+ transform: scale(0.5625);
background: radial-gradient(circle closest-side, transparent 0%, transparent 77.78%, rgba(0,0,0, 0.26) 77.78%, rgba(0,0,0, 0.26) 100%); }
.mdl-slider.is-upgraded.is-lowest-value::-ms-fill-lower {
background: transparent; }
@@ -7411,51 +8491,37 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
margin-left: 6px; }
.mdl-slider.is-upgraded.is-lowest-value:active::-ms-fill-upper {
margin-left: 9px; }
- .mdl-slider.is-upgraded:disabled:focus::-webkit-slider-thumb,
- .mdl-slider.is-upgraded:disabled:active::-webkit-slider-thumb,
- .mdl-slider.is-upgraded:disabled::-webkit-slider-thumb {
+ .mdl-slider.is-upgraded:disabled:focus::-webkit-slider-thumb, .mdl-slider.is-upgraded:disabled:active::-webkit-slider-thumb, .mdl-slider.is-upgraded:disabled::-webkit-slider-thumb {
-webkit-transform: scale(0.667);
transform: scale(0.667);
background: rgba(0,0,0, 0.26); }
- .mdl-slider.is-upgraded:disabled:focus::-moz-range-thumb,
- .mdl-slider.is-upgraded:disabled:active::-moz-range-thumb,
- .mdl-slider.is-upgraded:disabled::-moz-range-thumb {
+ .mdl-slider.is-upgraded:disabled:focus::-moz-range-thumb, .mdl-slider.is-upgraded:disabled:active::-moz-range-thumb, .mdl-slider.is-upgraded:disabled::-moz-range-thumb {
transform: scale(0.667);
background: rgba(0,0,0, 0.26); }
- .mdl-slider.is-upgraded:disabled ~
+ .mdl-slider.is-upgraded:disabled +
.mdl-slider__background-flex > .mdl-slider__background-lower {
background-color: rgba(0,0,0, 0.26);
left: -6px; }
- .mdl-slider.is-upgraded:disabled ~
+ .mdl-slider.is-upgraded:disabled +
.mdl-slider__background-flex > .mdl-slider__background-upper {
left: 6px; }
- .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-webkit-slider-thumb,
- .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-webkit-slider-thumb,
- .mdl-slider.is-upgraded.is-lowest-value:disabled::-webkit-slider-thumb {
+ .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-webkit-slider-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-webkit-slider-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled::-webkit-slider-thumb {
border: 3px solid rgba(0,0,0, 0.26);
background: transparent;
-webkit-transform: scale(0.667);
transform: scale(0.667); }
- .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-moz-range-thumb,
- .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-moz-range-thumb,
- .mdl-slider.is-upgraded.is-lowest-value:disabled::-moz-range-thumb {
+ .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-moz-range-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-moz-range-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled::-moz-range-thumb {
border: 3px solid rgba(0,0,0, 0.26);
background: transparent;
transform: scale(0.667); }
- .mdl-slider.is-upgraded.is-lowest-value:disabled:active ~
+ .mdl-slider.is-upgraded.is-lowest-value:disabled:active +
.mdl-slider__background-flex > .mdl-slider__background-upper {
left: 6px; }
- .mdl-slider.is-upgraded:disabled:focus::-ms-thumb,
- .mdl-slider.is-upgraded:disabled:active::-ms-thumb,
- .mdl-slider.is-upgraded:disabled::-ms-thumb {
- -ms-transform: scale(0.25);
- transform: scale(0.25);
+ .mdl-slider.is-upgraded:disabled:focus::-ms-thumb, .mdl-slider.is-upgraded:disabled:active::-ms-thumb, .mdl-slider.is-upgraded:disabled::-ms-thumb {
+ transform: scale(0.25);
background: rgba(0,0,0, 0.26); }
- .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-ms-thumb,
- .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-ms-thumb,
- .mdl-slider.is-upgraded.is-lowest-value:disabled::-ms-thumb {
- -ms-transform: scale(0.25);
- transform: scale(0.25);
+ .mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-ms-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled:active::-ms-thumb, .mdl-slider.is-upgraded.is-lowest-value:disabled::-ms-thumb {
+ transform: scale(0.25);
background: radial-gradient(circle closest-side, transparent 0%, transparent 50%, rgba(0,0,0, 0.26) 50%, rgba(0,0,0, 0.26) 100%); }
.mdl-slider.is-upgraded:disabled::-ms-fill-lower {
margin-right: 6px;
@@ -7476,12 +8542,9 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
height: 18px;
position: relative;
background: none;
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-orient: horizontal;
- -webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row; }
@@ -7494,7 +8557,6 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
top: 50%;
left: 0;
margin: 0 26px;
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
@@ -7502,12 +8564,10 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
border: 0;
padding: 0;
-webkit-transform: translate(0, -1px);
- -ms-transform: translate(0, -1px);
transform: translate(0, -1px); }
.mdl-slider__background-lower {
background: rgb(63,81,181);
- -webkit-box-flex: 0;
-webkit-flex: 0;
-ms-flex: 0;
flex: 0;
@@ -7517,15 +8577,13 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
.mdl-slider__background-upper {
background: rgba(0,0,0, 0.26);
- -webkit-box-flex: 0;
-webkit-flex: 0;
-ms-flex: 0;
flex: 0;
position: relative;
border: 0;
padding: 0;
- -webkit-transition: left 0.18s cubic-bezier(0.4, 0, 0.2, 1);
- transition: left 0.18s cubic-bezier(0.4, 0, 0.2, 1); }
+ transition: left 0.18s cubic-bezier(0.4, 0, 0.2, 1); }
/**
* Copyright 2015 Google Inc. All Rights Reserved.
@@ -7582,6 +8640,15 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -7633,6 +8700,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -7681,7 +8749,278 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* Typography */
+/* Shadows */
+/* Animations */
+/* Dialog */
+.mdl-snackbar {
+ position: fixed;
+ bottom: 0;
+ left: 50%;
+ cursor: default;
+ background-color: #323232;
+ z-index: 3;
+ display: block;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-justify-content: space-between;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ font-family: "Roboto", "Helvetica", "Arial", sans-serif;
+ will-change: transform;
+ -webkit-transform: translate(0, 80px);
+ transform: translate(0, 80px);
+ transition: -webkit-transform 0.25s cubic-bezier(0.4, 0, 1, 1);
+ transition: transform 0.25s cubic-bezier(0.4, 0, 1, 1);
+ transition: transform 0.25s cubic-bezier(0.4, 0, 1, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 1, 1);
+ pointer-events: none; }
+ @media (max-width: 479px) {
+ .mdl-snackbar {
+ width: 100%;
+ left: 0;
+ min-height: 48px;
+ max-height: 80px; } }
+ @media (min-width: 480px) {
+ .mdl-snackbar {
+ min-width: 288px;
+ max-width: 568px;
+ border-radius: 2px;
+ -webkit-transform: translate(-50%, 80px);
+ transform: translate(-50%, 80px); } }
+ .mdl-snackbar--active {
+ -webkit-transform: translate(0, 0);
+ transform: translate(0, 0);
+ pointer-events: auto;
+ transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.2, 1);
+ transition: transform 0.25s cubic-bezier(0, 0, 0.2, 1);
+ transition: transform 0.25s cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0, 0, 0.2, 1); }
+ @media (min-width: 480px) {
+ .mdl-snackbar--active {
+ -webkit-transform: translate(-50%, 0);
+ transform: translate(-50%, 0); } }
+ .mdl-snackbar__text {
+ padding: 14px 12px 14px 24px;
+ vertical-align: middle;
+ color: white;
+ float: left; }
+ .mdl-snackbar__action {
+ background: transparent;
+ border: none;
+ color: rgb(255,64,129);
+ float: right;
+ text-transform: uppercase;
+ padding: 14px 24px 14px 12px;
+ font-family: "Roboto", "Helvetica", "Arial", sans-serif;
+ font-size: 14px;
+ font-weight: 500;
+ text-transform: uppercase;
+ line-height: 1;
+ letter-spacing: 0;
+ overflow: hidden;
+ outline: none;
+ opacity: 0;
+ pointer-events: none;
+ cursor: pointer;
+ text-decoration: none;
+ text-align: center;
+ -webkit-align-self: center;
+ -ms-flex-item-align: center;
+ -ms-grid-row-align: center;
+ align-self: center; }
+ .mdl-snackbar__action::-moz-focus-inner {
+ border: 0; }
+ .mdl-snackbar__action:not([aria-hidden]) {
+ opacity: 1;
+ pointer-events: auto; }
+
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/*------------------------------------* $CONTENTS
+\*------------------------------------*/
+/**
+ * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
+ * -----Typography
+ * -----Colors
+ * -----Textfield
+ * -----Switch
+ * -----Spinner
+ * -----Radio
+ * -----Menu
+ * -----List
+ * -----Layout
+ * -----Icon toggles
+ * -----Footer
+ * -----Column
+ * -----Checkbox
+ * -----Card
+ * -----Button
+ * -----Animation
+ * -----Progress
+ * -----Badge
+ * -----Shadows
+ * -----Grid
+ * -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
+ */
+/* ========== TYPOGRAPHY ========== */
+/* We're splitting fonts into "preferred" and "performance" in order to optimize
+ page loading. For important text, such as the body, we want it to load
+ immediately and not wait for the web font load, whereas for other sections,
+ such as headers and titles, we're OK with things taking a bit longer to load.
+ We do have some optional classes and parameters in the mixins, in case you
+ definitely want to make sure you're using the preferred font and don't mind
+ the performance hit.
+ We should be able to improve on this once CSS Font Loading L3 becomes more
+ widely available.
+*/
+/* ========== COLORS ========== */
+/**
+*
+* Material design color palettes.
+* @see http://www.google.com/design/spec/style/color.html
+*
+**/
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* ========== Color Palettes ========== */
+/* colors.scss */
+/**
+ * Copyright 2015 Google Inc. 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.
+ */
+/* ========== IMAGES ========== */
+/* ========== Color & Themes ========== */
+/* ========== Typography ========== */
+/* ========== Components ========== */
+/* ========== Standard Buttons ========== */
+/* ========== Icon Toggles ========== */
+/* ========== Radio Buttons ========== */
+/* ========== Ripple effect ========== */
+/* ========== Layout ========== */
+/* ========== Content Tabs ========== */
+/* ========== Checkboxes ========== */
+/* ========== Switches ========== */
+/* ========== Spinner ========== */
+/* ========== Text fields ========== */
+/* ========== Card ========== */
+/* ========== Sliders ========== */
+/* ========== Progress ========== */
+/* ========== List ========== */
+/* ========== Item ========== */
+/* ========== Dropdown menu ========== */
+/* ========== Tooltips ========== */
+/* ========== Footer ========== */
+/* TEXTFIELD */
+/* SWITCH */
+/* SPINNER */
+/* RADIO */
+/* MENU */
+/* LIST */
+/* LAYOUT */
+/* ICON TOGGLE */
+/* FOOTER */
+/*mega-footer*/
+/*mini-footer*/
+/* CHECKBOX */
+/* CARD */
+/* Card dimensions */
+/* Cover image */
+/* BUTTON */
+/**
+ *
+ * Dimensions
+ *
+ */
+/* ANIMATION */
+/* PROGRESS */
+/* BADGE */
+/* SHADOWS */
+/* GRID */
+/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
+/* TOOLTIP */
+/* CHIP */
.mdl-spinner {
display: inline-block;
position: relative;
@@ -7929,6 +9268,10 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
height: 100%;
overflow: hidden;
border-color: inherit; }
+ .mdl-spinner__circle-clipper.mdl-spinner__left {
+ float: left; }
+ .mdl-spinner__circle-clipper.mdl-spinner__right {
+ float: right; }
.mdl-spinner__circle-clipper .mdl-spinner__circle {
width: 200%; }
@@ -7950,7 +9293,6 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
.mdl-spinner__left .mdl-spinner__circle {
border-right-color: transparent !important;
-webkit-transform: rotate(129deg);
- -ms-transform: rotate(129deg);
transform: rotate(129deg); }
.mdl-spinner.is-active .mdl-spinner__left .mdl-spinner__circle {
-webkit-animation: mdl-spinner__left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
@@ -7959,7 +9301,6 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
left: -100%;
border-left-color: transparent !important;
-webkit-transform: rotate(-129deg);
- -ms-transform: rotate(-129deg);
transform: rotate(-129deg); }
.mdl-spinner.is-active .mdl-spinner__right .mdl-spinner__circle {
-webkit-animation: mdl-spinner__right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
@@ -8064,6 +9405,15 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -8115,6 +9465,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -8163,7 +9514,10 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -8182,6 +9536,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
.mdl-switch {
position: relative;
z-index: 1;
@@ -8227,6 +9582,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
cursor: pointer; }
.mdl-switch.is-checked .mdl-switch__track {
background: rgba(63,81,181, 0.5); }
+ .mdl-switch__track fieldset[disabled] .mdl-switch,
.mdl-switch.is-disabled .mdl-switch__track {
background: rgba(0,0,0, 0.12);
cursor: auto; }
@@ -8241,16 +9597,14 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
border-radius: 50%;
cursor: pointer;
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
- -webkit-transition-duration: 0.28s;
- transition-duration: 0.28s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- -webkit-transition-property: left;
- transition-property: left; }
+ transition-duration: 0.28s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-property: left; }
.mdl-switch.is-checked .mdl-switch__thumb {
background: rgb(63,81,181);
left: 16px;
box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 1px 8px 0 rgba(0, 0, 0, 0.12); }
+ .mdl-switch__thumb fieldset[disabled] .mdl-switch,
.mdl-switch.is-disabled .mdl-switch__thumb {
background: rgb(189,189,189);
cursor: auto; }
@@ -8260,7 +9614,6 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
top: 50%;
left: 50%;
-webkit-transform: translate(-4px, -4px);
- -ms-transform: translate(-4px, -4px);
transform: translate(-4px, -4px);
display: inline-block;
box-sizing: border-box;
@@ -8282,6 +9635,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
line-height: 24px;
margin: 0;
left: 24px; }
+ .mdl-switch__label fieldset[disabled] .mdl-switch,
.mdl-switch.is-disabled .mdl-switch__label {
color: rgb(189,189,189);
cursor: auto; }
@@ -8298,20 +9652,18 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
cursor: pointer;
overflow: hidden;
-webkit-mask-image: -webkit-radial-gradient(circle, white, black);
- -webkit-transition-duration: 0.40s;
- transition-duration: 0.40s;
- -webkit-transition-timing-function: step-end;
- transition-timing-function: step-end;
- -webkit-transition-property: left;
- transition-property: left; }
+ transition-duration: 0.40s;
+ transition-timing-function: step-end;
+ transition-property: left; }
.mdl-switch__ripple-container .mdl-ripple {
background: rgb(63,81,181); }
+ .mdl-switch__ripple-container fieldset[disabled] .mdl-switch,
.mdl-switch.is-disabled .mdl-switch__ripple-container {
cursor: auto; }
+ fieldset[disabled] .mdl-switch .mdl-switch__ripple-container .mdl-ripple,
.mdl-switch.is-disabled .mdl-switch__ripple-container .mdl-ripple {
background: transparent; }
.mdl-switch.is-checked .mdl-switch__ripple-container {
- cursor: auto;
left: 2px; }
/**
@@ -8369,6 +9721,15 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -8420,6 +9781,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -8468,29 +9830,27 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-tabs {
display: block;
width: 100%; }
.mdl-tabs__tab-bar {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
- -webkit-box-orient: horizontal;
- -webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
- -webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-align-content: space-between;
-ms-flex-line-pack: justify;
align-content: space-between;
- -webkit-box-align: start;
-webkit-align-items: flex-start;
-ms-flex-align: start;
align-items: flex-start;
@@ -8506,7 +9866,6 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
float: left;
position: relative;
display: block;
- color: red;
text-decoration: none;
height: 48px;
line-height: 48px;
@@ -8529,8 +9888,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
background: rgb(63,81,181);
-webkit-animation: border-expand 0.2s cubic-bezier(0.4, 0, 0.4, 1) 0.01s alternate forwards;
animation: border-expand 0.2s cubic-bezier(0.4, 0, 0.4, 1) 0.01s alternate forwards;
- -webkit-transition: all 1s cubic-bezier(0.4, 0, 1, 1);
- transition: all 1s cubic-bezier(0.4, 0, 1, 1); }
+ transition: all 1s cubic-bezier(0.4, 0, 1, 1); }
.mdl-tabs__tab .mdl-tabs__ripple-container {
display: block;
position: absolute;
@@ -8621,6 +9979,15 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -8672,6 +10039,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -8720,7 +10088,10 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -8739,6 +10110,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
.mdl-textfield {
position: relative;
font-size: 16px;
@@ -8762,22 +10134,32 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
min-width: 32px;
width: auto;
min-height: 32px; }
+ .mdl-textfield--expandable .mdl-button--icon {
+ top: 16px; }
.mdl-textfield__input {
border: none;
border-bottom: 1px solid rgba(0,0,0, 0.12);
display: block;
font-size: 16px;
+ font-family: "Helvetica", "Arial", sans-serif;
margin: 0;
padding: 4px 0;
width: 100%;
+ background: none;
text-align: left;
color: inherit; }
+ .mdl-textfield__input[type="number"] {
+ -moz-appearance: textfield; }
+ .mdl-textfield__input[type="number"]::-webkit-inner-spin-button, .mdl-textfield__input[type="number"]::-webkit-outer-spin-button {
+ -webkit-appearance: none;
+ margin: 0; }
.mdl-textfield.is-focused .mdl-textfield__input {
outline: none; }
.mdl-textfield.is-invalid .mdl-textfield__input {
- border-color: rgb(222, 50, 38);
+ border-color: rgb(213,0,0);
box-shadow: none; }
+ fieldset[disabled] .mdl-textfield .mdl-textfield__input,
.mdl-textfield.is-disabled .mdl-textfield__input {
background-color: transparent;
border-bottom: 1px dotted rgba(0,0,0, 0.12);
@@ -8800,26 +10182,30 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
overflow: hidden;
white-space: nowrap;
text-align: left; }
- .mdl-textfield.is-dirty .mdl-textfield__label {
+ .mdl-textfield.is-dirty .mdl-textfield__label,
+ .mdl-textfield.has-placeholder .mdl-textfield__label {
visibility: hidden; }
.mdl-textfield--floating-label .mdl-textfield__label {
- -webkit-transition-duration: 0.2s;
- transition-duration: 0.2s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
+ transition-duration: 0.2s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
+ .mdl-textfield--floating-label.has-placeholder .mdl-textfield__label {
+ transition: none; }
+ fieldset[disabled] .mdl-textfield .mdl-textfield__label,
.mdl-textfield.is-disabled.is-disabled .mdl-textfield__label {
color: rgba(0,0,0, 0.26); }
.mdl-textfield--floating-label.is-focused .mdl-textfield__label,
- .mdl-textfield--floating-label.is-dirty .mdl-textfield__label {
+ .mdl-textfield--floating-label.is-dirty .mdl-textfield__label,
+ .mdl-textfield--floating-label.has-placeholder .mdl-textfield__label {
color: rgb(63,81,181);
font-size: 12px;
top: 4px;
visibility: visible; }
.mdl-textfield--floating-label.is-focused .mdl-textfield__expandable-holder .mdl-textfield__label,
- .mdl-textfield--floating-label.is-dirty .mdl-textfield__expandable-holder .mdl-textfield__label {
+ .mdl-textfield--floating-label.is-dirty .mdl-textfield__expandable-holder .mdl-textfield__label,
+ .mdl-textfield--floating-label.has-placeholder .mdl-textfield__expandable-holder .mdl-textfield__label {
top: -16px; }
.mdl-textfield--floating-label.is-invalid .mdl-textfield__label {
- color: rgb(222, 50, 38);
+ color: rgb(213,0,0);
font-size: 12px; }
.mdl-textfield__label:after {
background-color: rgb(63,81,181);
@@ -8828,10 +10214,8 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
height: 2px;
left: 45%;
position: absolute;
- -webkit-transition-duration: 0.2s;
- transition-duration: 0.2s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-duration: 0.2s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
visibility: hidden;
width: 10px; }
.mdl-textfield.is-focused .mdl-textfield__label:after {
@@ -8839,10 +10223,10 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
visibility: visible;
width: 100%; }
.mdl-textfield.is-invalid .mdl-textfield__label:after {
- background-color: rgb(222, 50, 38); }
+ background-color: rgb(213,0,0); }
.mdl-textfield__error {
- color: rgb(222, 50, 38);
+ color: rgb(213,0,0);
position: absolute;
font-size: 12px;
margin-top: 3px;
@@ -8855,10 +10239,8 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
display: inline-block;
position: relative;
margin-left: 32px;
- -webkit-transition-duration: 0.2s;
- transition-duration: 0.2s;
- -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-duration: 0.2s;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
display: inline-block;
max-width: 0.1px; }
.mdl-textfield.is-focused .mdl-textfield__expandable-holder, .mdl-textfield.is-dirty .mdl-textfield__expandable-holder {
@@ -8921,6 +10303,15 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -8972,6 +10363,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -9020,15 +10412,15 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-tooltip {
-webkit-transform: scale(0);
- -ms-transform: scale(0);
transform: scale(0);
-webkit-transform-origin: top center;
- -ms-transform-origin: top center;
transform-origin: top center;
- will-change: transform;
z-index: 999;
background: rgba(97,97,97, 0.9);
border-radius: 2px;
@@ -9136,6 +10528,15 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -9187,6 +10588,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -9235,7 +10637,10 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -9254,6 +10659,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* Typography */
/* Shadows */
/* Animations */
+/* Dialog */
.mdl-shadow--2dp {
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }
@@ -9272,6 +10678,9 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
.mdl-shadow--16dp {
box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2); }
+.mdl-shadow--24dp {
+ box-shadow: 0 9px 46px 8px rgba(0, 0, 0, 0.14), 0 11px 15px -7px rgba(0, 0, 0, 0.12), 0 24px 38px 3px rgba(0, 0, 0, 0.2); }
+
/**
* Copyright 2015 Google Inc. All Rights Reserved.
*
@@ -9332,6 +10741,15 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* -----Shadows
* -----Grid
* -----Data table
+ * -----Dialog
+ * -----Snackbar
+ * -----Tooltip
+ * -----Chip
+ *
+ * Even though all variables have the `!default` directive, most of them
+ * should not be changed as they are dependent one another. This can cause
+ * visual distortions (like alignment issues) that are hard to track down
+ * and fix.
*/
/* ========== TYPOGRAPHY ========== */
/* We're splitting fonts into "preferred" and "performance" in order to optimize
@@ -9383,6 +10801,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/* ========== IMAGES ========== */
/* ========== Color & Themes ========== */
/* ========== Typography ========== */
/* ========== Components ========== */
@@ -9431,9 +10850,11 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
/* SHADOWS */
/* GRID */
/* DATA TABLE */
+/* DIALOG */
+/* SNACKBAR */
/* TOOLTIP */
+/* CHIP */
.mdl-grid {
- display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
@@ -9441,7 +10862,6 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
-ms-flex-flow: row wrap;
flex-flow: row wrap;
margin: 0 auto 0 auto;
- -webkit-box-align: stretch;
-webkit-align-items: stretch;
-ms-flex-align: stretch;
align-items: stretch; }
@@ -9459,6 +10879,7 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
.mdl-cell--middle {
-webkit-align-self: center;
-ms-flex-item-align: center;
+ -ms-grid-row-align: center;
align-self: center; }
.mdl-cell--bottom {
@@ -9469,11 +10890,72 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
.mdl-cell--stretch {
-webkit-align-self: stretch;
-ms-flex-item-align: stretch;
+ -ms-grid-row-align: stretch;
align-self: stretch; }
.mdl-grid.mdl-grid--no-spacing > .mdl-cell {
margin: 0; }
+.mdl-cell--order-1 {
+ -webkit-order: 1;
+ -ms-flex-order: 1;
+ order: 1; }
+
+.mdl-cell--order-2 {
+ -webkit-order: 2;
+ -ms-flex-order: 2;
+ order: 2; }
+
+.mdl-cell--order-3 {
+ -webkit-order: 3;
+ -ms-flex-order: 3;
+ order: 3; }
+
+.mdl-cell--order-4 {
+ -webkit-order: 4;
+ -ms-flex-order: 4;
+ order: 4; }
+
+.mdl-cell--order-5 {
+ -webkit-order: 5;
+ -ms-flex-order: 5;
+ order: 5; }
+
+.mdl-cell--order-6 {
+ -webkit-order: 6;
+ -ms-flex-order: 6;
+ order: 6; }
+
+.mdl-cell--order-7 {
+ -webkit-order: 7;
+ -ms-flex-order: 7;
+ order: 7; }
+
+.mdl-cell--order-8 {
+ -webkit-order: 8;
+ -ms-flex-order: 8;
+ order: 8; }
+
+.mdl-cell--order-9 {
+ -webkit-order: 9;
+ -ms-flex-order: 9;
+ order: 9; }
+
+.mdl-cell--order-10 {
+ -webkit-order: 10;
+ -ms-flex-order: 10;
+ order: 10; }
+
+.mdl-cell--order-11 {
+ -webkit-order: 11;
+ -ms-flex-order: 11;
+ order: 11; }
+
+.mdl-cell--order-12 {
+ -webkit-order: 12;
+ -ms-flex-order: 12;
+ order: 12; }
+
@media (max-width: 479px) {
.mdl-grid {
padding: 8px; }
@@ -9484,78 +10966,144 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
width: 100%; }
.mdl-cell--hide-phone {
display: none !important; }
+ .mdl-cell--order-1-phone.mdl-cell--order-1-phone {
+ -webkit-order: 1;
+ -ms-flex-order: 1;
+ order: 1; }
+ .mdl-cell--order-2-phone.mdl-cell--order-2-phone {
+ -webkit-order: 2;
+ -ms-flex-order: 2;
+ order: 2; }
+ .mdl-cell--order-3-phone.mdl-cell--order-3-phone {
+ -webkit-order: 3;
+ -ms-flex-order: 3;
+ order: 3; }
+ .mdl-cell--order-4-phone.mdl-cell--order-4-phone {
+ -webkit-order: 4;
+ -ms-flex-order: 4;
+ order: 4; }
+ .mdl-cell--order-5-phone.mdl-cell--order-5-phone {
+ -webkit-order: 5;
+ -ms-flex-order: 5;
+ order: 5; }
+ .mdl-cell--order-6-phone.mdl-cell--order-6-phone {
+ -webkit-order: 6;
+ -ms-flex-order: 6;
+ order: 6; }
+ .mdl-cell--order-7-phone.mdl-cell--order-7-phone {
+ -webkit-order: 7;
+ -ms-flex-order: 7;
+ order: 7; }
+ .mdl-cell--order-8-phone.mdl-cell--order-8-phone {
+ -webkit-order: 8;
+ -ms-flex-order: 8;
+ order: 8; }
+ .mdl-cell--order-9-phone.mdl-cell--order-9-phone {
+ -webkit-order: 9;
+ -ms-flex-order: 9;
+ order: 9; }
+ .mdl-cell--order-10-phone.mdl-cell--order-10-phone {
+ -webkit-order: 10;
+ -ms-flex-order: 10;
+ order: 10; }
+ .mdl-cell--order-11-phone.mdl-cell--order-11-phone {
+ -webkit-order: 11;
+ -ms-flex-order: 11;
+ order: 11; }
+ .mdl-cell--order-12-phone.mdl-cell--order-12-phone {
+ -webkit-order: 12;
+ -ms-flex-order: 12;
+ order: 12; }
.mdl-cell--1-col,
.mdl-cell--1-col-phone.mdl-cell--1-col-phone {
width: calc(25% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--1-col,
- .mdl-grid--no-spacing > .mdl-cell--1-col-phone.mdl-cell--1-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--1-col, .mdl-grid--no-spacing >
+ .mdl-cell--1-col-phone.mdl-cell--1-col-phone {
width: 25%; }
.mdl-cell--2-col,
.mdl-cell--2-col-phone.mdl-cell--2-col-phone {
width: calc(50% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--2-col,
- .mdl-grid--no-spacing > .mdl-cell--2-col-phone.mdl-cell--2-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--2-col, .mdl-grid--no-spacing >
+ .mdl-cell--2-col-phone.mdl-cell--2-col-phone {
width: 50%; }
.mdl-cell--3-col,
.mdl-cell--3-col-phone.mdl-cell--3-col-phone {
width: calc(75% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--3-col,
- .mdl-grid--no-spacing > .mdl-cell--3-col-phone.mdl-cell--3-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--3-col, .mdl-grid--no-spacing >
+ .mdl-cell--3-col-phone.mdl-cell--3-col-phone {
width: 75%; }
.mdl-cell--4-col,
.mdl-cell--4-col-phone.mdl-cell--4-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--4-col,
- .mdl-grid--no-spacing > .mdl-cell--4-col-phone.mdl-cell--4-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--4-col, .mdl-grid--no-spacing >
+ .mdl-cell--4-col-phone.mdl-cell--4-col-phone {
width: 100%; }
.mdl-cell--5-col,
.mdl-cell--5-col-phone.mdl-cell--5-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--5-col,
- .mdl-grid--no-spacing > .mdl-cell--5-col-phone.mdl-cell--5-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--5-col, .mdl-grid--no-spacing >
+ .mdl-cell--5-col-phone.mdl-cell--5-col-phone {
width: 100%; }
.mdl-cell--6-col,
.mdl-cell--6-col-phone.mdl-cell--6-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--6-col,
- .mdl-grid--no-spacing > .mdl-cell--6-col-phone.mdl-cell--6-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--6-col, .mdl-grid--no-spacing >
+ .mdl-cell--6-col-phone.mdl-cell--6-col-phone {
width: 100%; }
.mdl-cell--7-col,
.mdl-cell--7-col-phone.mdl-cell--7-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--7-col,
- .mdl-grid--no-spacing > .mdl-cell--7-col-phone.mdl-cell--7-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--7-col, .mdl-grid--no-spacing >
+ .mdl-cell--7-col-phone.mdl-cell--7-col-phone {
width: 100%; }
.mdl-cell--8-col,
.mdl-cell--8-col-phone.mdl-cell--8-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--8-col,
- .mdl-grid--no-spacing > .mdl-cell--8-col-phone.mdl-cell--8-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--8-col, .mdl-grid--no-spacing >
+ .mdl-cell--8-col-phone.mdl-cell--8-col-phone {
width: 100%; }
.mdl-cell--9-col,
.mdl-cell--9-col-phone.mdl-cell--9-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--9-col,
- .mdl-grid--no-spacing > .mdl-cell--9-col-phone.mdl-cell--9-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--9-col, .mdl-grid--no-spacing >
+ .mdl-cell--9-col-phone.mdl-cell--9-col-phone {
width: 100%; }
.mdl-cell--10-col,
.mdl-cell--10-col-phone.mdl-cell--10-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--10-col,
- .mdl-grid--no-spacing > .mdl-cell--10-col-phone.mdl-cell--10-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--10-col, .mdl-grid--no-spacing >
+ .mdl-cell--10-col-phone.mdl-cell--10-col-phone {
width: 100%; }
.mdl-cell--11-col,
.mdl-cell--11-col-phone.mdl-cell--11-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--11-col,
- .mdl-grid--no-spacing > .mdl-cell--11-col-phone.mdl-cell--11-col-phone {
+ .mdl-grid--no-spacing > .mdl-cell--11-col, .mdl-grid--no-spacing >
+ .mdl-cell--11-col-phone.mdl-cell--11-col-phone {
width: 100%; }
.mdl-cell--12-col,
.mdl-cell--12-col-phone.mdl-cell--12-col-phone {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--12-col,
- .mdl-grid--no-spacing > .mdl-cell--12-col-phone.mdl-cell--12-col-phone {
- width: 100%; } }
+ .mdl-grid--no-spacing > .mdl-cell--12-col, .mdl-grid--no-spacing >
+ .mdl-cell--12-col-phone.mdl-cell--12-col-phone {
+ width: 100%; }
+ .mdl-cell--1-offset,
+ .mdl-cell--1-offset-phone.mdl-cell--1-offset-phone {
+ margin-left: calc(25% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--1-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--1-offset-phone.mdl-cell--1-offset-phone {
+ margin-left: 25%; }
+ .mdl-cell--2-offset,
+ .mdl-cell--2-offset-phone.mdl-cell--2-offset-phone {
+ margin-left: calc(50% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--2-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--2-offset-phone.mdl-cell--2-offset-phone {
+ margin-left: 50%; }
+ .mdl-cell--3-offset,
+ .mdl-cell--3-offset-phone.mdl-cell--3-offset-phone {
+ margin-left: calc(75% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--3-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--3-offset-phone.mdl-cell--3-offset-phone {
+ margin-left: 75%; } }
@media (min-width: 480px) and (max-width: 839px) {
.mdl-grid {
@@ -9567,78 +11115,168 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
width: 50%; }
.mdl-cell--hide-tablet {
display: none !important; }
+ .mdl-cell--order-1-tablet.mdl-cell--order-1-tablet {
+ -webkit-order: 1;
+ -ms-flex-order: 1;
+ order: 1; }
+ .mdl-cell--order-2-tablet.mdl-cell--order-2-tablet {
+ -webkit-order: 2;
+ -ms-flex-order: 2;
+ order: 2; }
+ .mdl-cell--order-3-tablet.mdl-cell--order-3-tablet {
+ -webkit-order: 3;
+ -ms-flex-order: 3;
+ order: 3; }
+ .mdl-cell--order-4-tablet.mdl-cell--order-4-tablet {
+ -webkit-order: 4;
+ -ms-flex-order: 4;
+ order: 4; }
+ .mdl-cell--order-5-tablet.mdl-cell--order-5-tablet {
+ -webkit-order: 5;
+ -ms-flex-order: 5;
+ order: 5; }
+ .mdl-cell--order-6-tablet.mdl-cell--order-6-tablet {
+ -webkit-order: 6;
+ -ms-flex-order: 6;
+ order: 6; }
+ .mdl-cell--order-7-tablet.mdl-cell--order-7-tablet {
+ -webkit-order: 7;
+ -ms-flex-order: 7;
+ order: 7; }
+ .mdl-cell--order-8-tablet.mdl-cell--order-8-tablet {
+ -webkit-order: 8;
+ -ms-flex-order: 8;
+ order: 8; }
+ .mdl-cell--order-9-tablet.mdl-cell--order-9-tablet {
+ -webkit-order: 9;
+ -ms-flex-order: 9;
+ order: 9; }
+ .mdl-cell--order-10-tablet.mdl-cell--order-10-tablet {
+ -webkit-order: 10;
+ -ms-flex-order: 10;
+ order: 10; }
+ .mdl-cell--order-11-tablet.mdl-cell--order-11-tablet {
+ -webkit-order: 11;
+ -ms-flex-order: 11;
+ order: 11; }
+ .mdl-cell--order-12-tablet.mdl-cell--order-12-tablet {
+ -webkit-order: 12;
+ -ms-flex-order: 12;
+ order: 12; }
.mdl-cell--1-col,
.mdl-cell--1-col-tablet.mdl-cell--1-col-tablet {
width: calc(12.5% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--1-col,
- .mdl-grid--no-spacing > .mdl-cell--1-col-tablet.mdl-cell--1-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--1-col, .mdl-grid--no-spacing >
+ .mdl-cell--1-col-tablet.mdl-cell--1-col-tablet {
width: 12.5%; }
.mdl-cell--2-col,
.mdl-cell--2-col-tablet.mdl-cell--2-col-tablet {
width: calc(25% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--2-col,
- .mdl-grid--no-spacing > .mdl-cell--2-col-tablet.mdl-cell--2-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--2-col, .mdl-grid--no-spacing >
+ .mdl-cell--2-col-tablet.mdl-cell--2-col-tablet {
width: 25%; }
.mdl-cell--3-col,
.mdl-cell--3-col-tablet.mdl-cell--3-col-tablet {
width: calc(37.5% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--3-col,
- .mdl-grid--no-spacing > .mdl-cell--3-col-tablet.mdl-cell--3-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--3-col, .mdl-grid--no-spacing >
+ .mdl-cell--3-col-tablet.mdl-cell--3-col-tablet {
width: 37.5%; }
.mdl-cell--4-col,
.mdl-cell--4-col-tablet.mdl-cell--4-col-tablet {
width: calc(50% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--4-col,
- .mdl-grid--no-spacing > .mdl-cell--4-col-tablet.mdl-cell--4-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--4-col, .mdl-grid--no-spacing >
+ .mdl-cell--4-col-tablet.mdl-cell--4-col-tablet {
width: 50%; }
.mdl-cell--5-col,
.mdl-cell--5-col-tablet.mdl-cell--5-col-tablet {
width: calc(62.5% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--5-col,
- .mdl-grid--no-spacing > .mdl-cell--5-col-tablet.mdl-cell--5-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--5-col, .mdl-grid--no-spacing >
+ .mdl-cell--5-col-tablet.mdl-cell--5-col-tablet {
width: 62.5%; }
.mdl-cell--6-col,
.mdl-cell--6-col-tablet.mdl-cell--6-col-tablet {
width: calc(75% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--6-col,
- .mdl-grid--no-spacing > .mdl-cell--6-col-tablet.mdl-cell--6-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--6-col, .mdl-grid--no-spacing >
+ .mdl-cell--6-col-tablet.mdl-cell--6-col-tablet {
width: 75%; }
.mdl-cell--7-col,
.mdl-cell--7-col-tablet.mdl-cell--7-col-tablet {
width: calc(87.5% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--7-col,
- .mdl-grid--no-spacing > .mdl-cell--7-col-tablet.mdl-cell--7-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--7-col, .mdl-grid--no-spacing >
+ .mdl-cell--7-col-tablet.mdl-cell--7-col-tablet {
width: 87.5%; }
.mdl-cell--8-col,
.mdl-cell--8-col-tablet.mdl-cell--8-col-tablet {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--8-col,
- .mdl-grid--no-spacing > .mdl-cell--8-col-tablet.mdl-cell--8-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--8-col, .mdl-grid--no-spacing >
+ .mdl-cell--8-col-tablet.mdl-cell--8-col-tablet {
width: 100%; }
.mdl-cell--9-col,
.mdl-cell--9-col-tablet.mdl-cell--9-col-tablet {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--9-col,
- .mdl-grid--no-spacing > .mdl-cell--9-col-tablet.mdl-cell--9-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--9-col, .mdl-grid--no-spacing >
+ .mdl-cell--9-col-tablet.mdl-cell--9-col-tablet {
width: 100%; }
.mdl-cell--10-col,
.mdl-cell--10-col-tablet.mdl-cell--10-col-tablet {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--10-col,
- .mdl-grid--no-spacing > .mdl-cell--10-col-tablet.mdl-cell--10-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--10-col, .mdl-grid--no-spacing >
+ .mdl-cell--10-col-tablet.mdl-cell--10-col-tablet {
width: 100%; }
.mdl-cell--11-col,
.mdl-cell--11-col-tablet.mdl-cell--11-col-tablet {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--11-col,
- .mdl-grid--no-spacing > .mdl-cell--11-col-tablet.mdl-cell--11-col-tablet {
+ .mdl-grid--no-spacing > .mdl-cell--11-col, .mdl-grid--no-spacing >
+ .mdl-cell--11-col-tablet.mdl-cell--11-col-tablet {
width: 100%; }
.mdl-cell--12-col,
.mdl-cell--12-col-tablet.mdl-cell--12-col-tablet {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--12-col,
- .mdl-grid--no-spacing > .mdl-cell--12-col-tablet.mdl-cell--12-col-tablet {
- width: 100%; } }
+ .mdl-grid--no-spacing > .mdl-cell--12-col, .mdl-grid--no-spacing >
+ .mdl-cell--12-col-tablet.mdl-cell--12-col-tablet {
+ width: 100%; }
+ .mdl-cell--1-offset,
+ .mdl-cell--1-offset-tablet.mdl-cell--1-offset-tablet {
+ margin-left: calc(12.5% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--1-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--1-offset-tablet.mdl-cell--1-offset-tablet {
+ margin-left: 12.5%; }
+ .mdl-cell--2-offset,
+ .mdl-cell--2-offset-tablet.mdl-cell--2-offset-tablet {
+ margin-left: calc(25% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--2-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--2-offset-tablet.mdl-cell--2-offset-tablet {
+ margin-left: 25%; }
+ .mdl-cell--3-offset,
+ .mdl-cell--3-offset-tablet.mdl-cell--3-offset-tablet {
+ margin-left: calc(37.5% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--3-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--3-offset-tablet.mdl-cell--3-offset-tablet {
+ margin-left: 37.5%; }
+ .mdl-cell--4-offset,
+ .mdl-cell--4-offset-tablet.mdl-cell--4-offset-tablet {
+ margin-left: calc(50% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--4-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--4-offset-tablet.mdl-cell--4-offset-tablet {
+ margin-left: 50%; }
+ .mdl-cell--5-offset,
+ .mdl-cell--5-offset-tablet.mdl-cell--5-offset-tablet {
+ margin-left: calc(62.5% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--5-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--5-offset-tablet.mdl-cell--5-offset-tablet {
+ margin-left: 62.5%; }
+ .mdl-cell--6-offset,
+ .mdl-cell--6-offset-tablet.mdl-cell--6-offset-tablet {
+ margin-left: calc(75% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--6-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--6-offset-tablet.mdl-cell--6-offset-tablet {
+ margin-left: 75%; }
+ .mdl-cell--7-offset,
+ .mdl-cell--7-offset-tablet.mdl-cell--7-offset-tablet {
+ margin-left: calc(87.5% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--7-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--7-offset-tablet.mdl-cell--7-offset-tablet {
+ margin-left: 87.5%; } }
@media (min-width: 840px) {
.mdl-grid {
@@ -9650,75 +11288,189 @@ _:-ms-input-placeholder, :root .mdl-slider.mdl-slider.is-upgraded {
width: 33.3333333333%; }
.mdl-cell--hide-desktop {
display: none !important; }
+ .mdl-cell--order-1-desktop.mdl-cell--order-1-desktop {
+ -webkit-order: 1;
+ -ms-flex-order: 1;
+ order: 1; }
+ .mdl-cell--order-2-desktop.mdl-cell--order-2-desktop {
+ -webkit-order: 2;
+ -ms-flex-order: 2;
+ order: 2; }
+ .mdl-cell--order-3-desktop.mdl-cell--order-3-desktop {
+ -webkit-order: 3;
+ -ms-flex-order: 3;
+ order: 3; }
+ .mdl-cell--order-4-desktop.mdl-cell--order-4-desktop {
+ -webkit-order: 4;
+ -ms-flex-order: 4;
+ order: 4; }
+ .mdl-cell--order-5-desktop.mdl-cell--order-5-desktop {
+ -webkit-order: 5;
+ -ms-flex-order: 5;
+ order: 5; }
+ .mdl-cell--order-6-desktop.mdl-cell--order-6-desktop {
+ -webkit-order: 6;
+ -ms-flex-order: 6;
+ order: 6; }
+ .mdl-cell--order-7-desktop.mdl-cell--order-7-desktop {
+ -webkit-order: 7;
+ -ms-flex-order: 7;
+ order: 7; }
+ .mdl-cell--order-8-desktop.mdl-cell--order-8-desktop {
+ -webkit-order: 8;
+ -ms-flex-order: 8;
+ order: 8; }
+ .mdl-cell--order-9-desktop.mdl-cell--order-9-desktop {
+ -webkit-order: 9;
+ -ms-flex-order: 9;
+ order: 9; }
+ .mdl-cell--order-10-desktop.mdl-cell--order-10-desktop {
+ -webkit-order: 10;
+ -ms-flex-order: 10;
+ order: 10; }
+ .mdl-cell--order-11-desktop.mdl-cell--order-11-desktop {
+ -webkit-order: 11;
+ -ms-flex-order: 11;
+ order: 11; }
+ .mdl-cell--order-12-desktop.mdl-cell--order-12-desktop {
+ -webkit-order: 12;
+ -ms-flex-order: 12;
+ order: 12; }
.mdl-cell--1-col,
.mdl-cell--1-col-desktop.mdl-cell--1-col-desktop {
width: calc(8.3333333333% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--1-col,
- .mdl-grid--no-spacing > .mdl-cell--1-col-desktop.mdl-cell--1-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--1-col, .mdl-grid--no-spacing >
+ .mdl-cell--1-col-desktop.mdl-cell--1-col-desktop {
width: 8.3333333333%; }
.mdl-cell--2-col,
.mdl-cell--2-col-desktop.mdl-cell--2-col-desktop {
width: calc(16.6666666667% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--2-col,
- .mdl-grid--no-spacing > .mdl-cell--2-col-desktop.mdl-cell--2-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--2-col, .mdl-grid--no-spacing >
+ .mdl-cell--2-col-desktop.mdl-cell--2-col-desktop {
width: 16.6666666667%; }
.mdl-cell--3-col,
.mdl-cell--3-col-desktop.mdl-cell--3-col-desktop {
width: calc(25% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--3-col,
- .mdl-grid--no-spacing > .mdl-cell--3-col-desktop.mdl-cell--3-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--3-col, .mdl-grid--no-spacing >
+ .mdl-cell--3-col-desktop.mdl-cell--3-col-desktop {
width: 25%; }
.mdl-cell--4-col,
.mdl-cell--4-col-desktop.mdl-cell--4-col-desktop {
width: calc(33.3333333333% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--4-col,
- .mdl-grid--no-spacing > .mdl-cell--4-col-desktop.mdl-cell--4-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--4-col, .mdl-grid--no-spacing >
+ .mdl-cell--4-col-desktop.mdl-cell--4-col-desktop {
width: 33.3333333333%; }
.mdl-cell--5-col,
.mdl-cell--5-col-desktop.mdl-cell--5-col-desktop {
width: calc(41.6666666667% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--5-col,
- .mdl-grid--no-spacing > .mdl-cell--5-col-desktop.mdl-cell--5-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--5-col, .mdl-grid--no-spacing >
+ .mdl-cell--5-col-desktop.mdl-cell--5-col-desktop {
width: 41.6666666667%; }
.mdl-cell--6-col,
.mdl-cell--6-col-desktop.mdl-cell--6-col-desktop {
width: calc(50% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--6-col,
- .mdl-grid--no-spacing > .mdl-cell--6-col-desktop.mdl-cell--6-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--6-col, .mdl-grid--no-spacing >
+ .mdl-cell--6-col-desktop.mdl-cell--6-col-desktop {
width: 50%; }
.mdl-cell--7-col,
.mdl-cell--7-col-desktop.mdl-cell--7-col-desktop {
width: calc(58.3333333333% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--7-col,
- .mdl-grid--no-spacing > .mdl-cell--7-col-desktop.mdl-cell--7-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--7-col, .mdl-grid--no-spacing >
+ .mdl-cell--7-col-desktop.mdl-cell--7-col-desktop {
width: 58.3333333333%; }
.mdl-cell--8-col,
.mdl-cell--8-col-desktop.mdl-cell--8-col-desktop {
width: calc(66.6666666667% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--8-col,
- .mdl-grid--no-spacing > .mdl-cell--8-col-desktop.mdl-cell--8-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--8-col, .mdl-grid--no-spacing >
+ .mdl-cell--8-col-desktop.mdl-cell--8-col-desktop {
width: 66.6666666667%; }
.mdl-cell--9-col,
.mdl-cell--9-col-desktop.mdl-cell--9-col-desktop {
width: calc(75% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--9-col,
- .mdl-grid--no-spacing > .mdl-cell--9-col-desktop.mdl-cell--9-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--9-col, .mdl-grid--no-spacing >
+ .mdl-cell--9-col-desktop.mdl-cell--9-col-desktop {
width: 75%; }
.mdl-cell--10-col,
.mdl-cell--10-col-desktop.mdl-cell--10-col-desktop {
width: calc(83.3333333333% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--10-col,
- .mdl-grid--no-spacing > .mdl-cell--10-col-desktop.mdl-cell--10-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--10-col, .mdl-grid--no-spacing >
+ .mdl-cell--10-col-desktop.mdl-cell--10-col-desktop {
width: 83.3333333333%; }
.mdl-cell--11-col,
.mdl-cell--11-col-desktop.mdl-cell--11-col-desktop {
width: calc(91.6666666667% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--11-col,
- .mdl-grid--no-spacing > .mdl-cell--11-col-desktop.mdl-cell--11-col-desktop {
+ .mdl-grid--no-spacing > .mdl-cell--11-col, .mdl-grid--no-spacing >
+ .mdl-cell--11-col-desktop.mdl-cell--11-col-desktop {
width: 91.6666666667%; }
.mdl-cell--12-col,
.mdl-cell--12-col-desktop.mdl-cell--12-col-desktop {
width: calc(100% - 16px); }
- .mdl-grid--no-spacing > .mdl-cell--12-col,
- .mdl-grid--no-spacing > .mdl-cell--12-col-desktop.mdl-cell--12-col-desktop {
- width: 100%; } }
+ .mdl-grid--no-spacing > .mdl-cell--12-col, .mdl-grid--no-spacing >
+ .mdl-cell--12-col-desktop.mdl-cell--12-col-desktop {
+ width: 100%; }
+ .mdl-cell--1-offset,
+ .mdl-cell--1-offset-desktop.mdl-cell--1-offset-desktop {
+ margin-left: calc(8.3333333333% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--1-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--1-offset-desktop.mdl-cell--1-offset-desktop {
+ margin-left: 8.3333333333%; }
+ .mdl-cell--2-offset,
+ .mdl-cell--2-offset-desktop.mdl-cell--2-offset-desktop {
+ margin-left: calc(16.6666666667% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--2-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--2-offset-desktop.mdl-cell--2-offset-desktop {
+ margin-left: 16.6666666667%; }
+ .mdl-cell--3-offset,
+ .mdl-cell--3-offset-desktop.mdl-cell--3-offset-desktop {
+ margin-left: calc(25% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--3-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--3-offset-desktop.mdl-cell--3-offset-desktop {
+ margin-left: 25%; }
+ .mdl-cell--4-offset,
+ .mdl-cell--4-offset-desktop.mdl-cell--4-offset-desktop {
+ margin-left: calc(33.3333333333% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--4-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--4-offset-desktop.mdl-cell--4-offset-desktop {
+ margin-left: 33.3333333333%; }
+ .mdl-cell--5-offset,
+ .mdl-cell--5-offset-desktop.mdl-cell--5-offset-desktop {
+ margin-left: calc(41.6666666667% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--5-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--5-offset-desktop.mdl-cell--5-offset-desktop {
+ margin-left: 41.6666666667%; }
+ .mdl-cell--6-offset,
+ .mdl-cell--6-offset-desktop.mdl-cell--6-offset-desktop {
+ margin-left: calc(50% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--6-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--6-offset-desktop.mdl-cell--6-offset-desktop {
+ margin-left: 50%; }
+ .mdl-cell--7-offset,
+ .mdl-cell--7-offset-desktop.mdl-cell--7-offset-desktop {
+ margin-left: calc(58.3333333333% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--7-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--7-offset-desktop.mdl-cell--7-offset-desktop {
+ margin-left: 58.3333333333%; }
+ .mdl-cell--8-offset,
+ .mdl-cell--8-offset-desktop.mdl-cell--8-offset-desktop {
+ margin-left: calc(66.6666666667% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--8-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--8-offset-desktop.mdl-cell--8-offset-desktop {
+ margin-left: 66.6666666667%; }
+ .mdl-cell--9-offset,
+ .mdl-cell--9-offset-desktop.mdl-cell--9-offset-desktop {
+ margin-left: calc(75% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--9-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--9-offset-desktop.mdl-cell--9-offset-desktop {
+ margin-left: 75%; }
+ .mdl-cell--10-offset,
+ .mdl-cell--10-offset-desktop.mdl-cell--10-offset-desktop {
+ margin-left: calc(83.3333333333% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--10-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--10-offset-desktop.mdl-cell--10-offset-desktop {
+ margin-left: 83.3333333333%; }
+ .mdl-cell--11-offset,
+ .mdl-cell--11-offset-desktop.mdl-cell--11-offset-desktop {
+ margin-left: calc(91.6666666667% + 8px); }
+ .mdl-grid.mdl-grid--no-spacing > .mdl-cell--11-offset, .mdl-grid.mdl-grid--no-spacing >
+ .mdl-cell--11-offset-desktop.mdl-cell--11-offset-desktop {
+ margin-left: 91.6666666667%; } }
diff --git a/public/vendor/mdl/mdl.min.css b/public/vendor/mdl/mdl.min.css
deleted file mode 100644
index 3815742333..0000000000
--- a/public/vendor/mdl/mdl.min.css
+++ /dev/null
@@ -1 +0,0 @@
-@charset "UTF-8";.mdl-button,.mdl-button .material-icons,.mdl-checkbox,audio,canvas,iframe,img,svg,video{vertical-align:middle}.visuallyhidden,hr{border:0;height:1px}.mdl-typography--display-4,.mdl-typography--display-4-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;font-size:112px;font-weight:300;line-height:1;letter-spacing:-.04em}.mdl-typography--display-3,.mdl-typography--display-4,.mdl-typography--display-4-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif}.mdl-card,.mdl-card__media,.mdl-card__title{box-sizing:border-box}.mdl-badge[data-badge]:after,.mdl-card,.mdl-layout,.mdl-layout__drawer,.mdl-layout__header{-webkit-box-direction:normal}::-moz-selection{background:#b3d4fc;text-shadow:none}::selection{background:#b3d4fc;text-shadow:none}hr{display:block;border-top:1px solid #ccc;margin:1em 0;padding:0}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}.browserupgrade{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.hidden{display:none!important}.visuallyhidden{clip:rect(0 0 0 0);margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}body,html{width:100%}.invisible{visibility:hidden}.clearfix:after,.clearfix:before{content:" ";display:table}.clearfix:after{clear:both}@media print{blockquote,img,pre,tr{page-break-inside:avoid}*,:after,:before,:first-letter,:first-line{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{border:1px solid #999}thead{display:table-header-group}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.mdl-accordion,.mdl-button,.mdl-card,.mdl-checkbox,.mdl-dropdown-menu,.mdl-icon-toggle,.mdl-item,.mdl-radio,.mdl-slider,.mdl-switch,.mdl-tabs__tab,a{-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:rgba(255,255,255,0)}html{height:100%;-ms-touch-action:manipulation;touch-action:manipulation}body{min-height:100%;margin:0}main{display:block}[hidden]{display:none!important}.mdl-typography--display-4-color-contrast{opacity:.54}.mdl-typography--display-3,.mdl-typography--display-3-color-contrast{font-size:56px;font-weight:400;line-height:1.35;letter-spacing:-.02em}.mdl-typography--display-3-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;opacity:.54}.mdl-typography--display-2,.mdl-typography--display-2-color-contrast{font-weight:400;font-family:Roboto,Helvetica,Arial,sans-serif;font-size:45px;line-height:48px}.mdl-typography--display-2-color-contrast{opacity:.54}.mdl-typography--display-1{font-family:Roboto,Helvetica,Arial,sans-serif;font-size:34px;font-weight:400;line-height:40px}.mdl-typography--display-1-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;font-size:34px;font-weight:400;line-height:40px;opacity:.54}.mdl-typography--headline,.mdl-typography--headline-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;font-size:24px;font-weight:400;line-height:32px;-moz-osx-font-smoothing:grayscale}.mdl-typography--headline-color-contrast{opacity:.87}.mdl-typography--title,.mdl-typography--title-color-contrast{font-size:20px;font-weight:500;line-height:1;letter-spacing:.02em}.mdl-typography--title{font-family:Roboto,Helvetica,Arial,sans-serif}.mdl-typography--title-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;opacity:.87}.mdl-typography--subhead,.mdl-typography--subhead-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;line-height:24px;font-size:16px;font-weight:400;letter-spacing:.04em}.mdl-typography--subhead-color-contrast{opacity:.87}.mdl-typography--body-2{font-size:14px;font-weight:700;line-height:24px;letter-spacing:0}.mdl-typography--body-2-color-contrast{font-size:14px;font-weight:700;line-height:24px;letter-spacing:0;opacity:.87}.mdl-typography--body-1,.mdl-typography--body-1-color-contrast{line-height:24px;letter-spacing:0;font-size:14px;font-weight:400}.mdl-typography--body-1-color-contrast{opacity:.87}.mdl-typography--body-2-force-preferred-font{font-family:Roboto,Helvetica,Arial,sans-serif;font-size:14px;font-weight:500;line-height:24px;letter-spacing:0}.mdl-typography--body-2-force-preferred-font-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;font-size:14px;font-weight:500;line-height:24px;letter-spacing:0;opacity:.87}.mdl-typography--body-1-force-preferred-font,.mdl-typography--body-1-force-preferred-font-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;font-size:14px;font-weight:400;line-height:24px;letter-spacing:0}.mdl-typography--body-1-force-preferred-font-color-contrast{opacity:.87}.mdl-typography--caption,.mdl-typography--caption-color-contrast,.mdl-typography--caption-force-preferred-font,.mdl-typography--caption-force-preferred-font-color-contrast{font-size:12px;font-weight:400;line-height:1;letter-spacing:0}.mdl-typography--caption-force-preferred-font{font-family:Roboto,Helvetica,Arial,sans-serif}.mdl-typography--caption-color-contrast{opacity:.54}.mdl-typography--caption-force-preferred-font-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;opacity:.54}.mdl-typography--button,.mdl-typography--button-color-contrast,.mdl-typography--menu,.mdl-typography--menu-color-contrast{font-family:Roboto,Helvetica,Arial,sans-serif;letter-spacing:0;font-weight:500;font-size:14px;line-height:1}.mdl-typography--menu-color-contrast{opacity:.87}.mdl-typography--button{text-transform:uppercase}.mdl-typography--button-color-contrast{text-transform:uppercase;opacity:.87}.mdl-typography--text-left{text-align:left}.mdl-typography--text-right{text-align:right}.mdl-typography--text-center{text-align:center}.mdl-typography--text-justify{text-align:justify}.mdl-typography--text-nowrap{white-space:nowrap}.mdl-typography--text-lowercase{text-transform:lowercase}.mdl-typography--text-uppercase{text-transform:uppercase}.mdl-typography--text-capitalize{text-transform:capitalize}.mdl-button,.mdl-layout__tab,.mdl-tabs__tab{text-decoration:none;text-transform:uppercase}.mdl-typography--font-thin{font-weight:200!important}.mdl-typography--font-light{font-weight:300!important}.mdl-typography--font-regular{font-weight:400!important}.mdl-typography--font-medium{font-weight:500!important}.mdl-typography--font-bold{font-weight:700!important}.mdl-typography--font-black{font-weight:900!important}.mdl-color-text--red{color:#f44336!important}.mdl-color--red{background-color:#f44336!important}.mdl-color-text--red-50{color:#ffebee!important}.mdl-color--red-50{background-color:#ffebee!important}.mdl-color-text--red-100{color:#ffcdd2!important}.mdl-color--red-100{background-color:#ffcdd2!important}.mdl-color-text--red-200{color:#ef9a9a!important}.mdl-color--red-200{background-color:#ef9a9a!important}.mdl-color-text--red-300{color:#e57373!important}.mdl-color--red-300{background-color:#e57373!important}.mdl-color-text--red-400{color:#ef5350!important}.mdl-color--red-400{background-color:#ef5350!important}.mdl-color-text--red-500{color:#f44336!important}.mdl-color--red-500{background-color:#f44336!important}.mdl-color-text--red-600{color:#e53935!important}.mdl-color--red-600{background-color:#e53935!important}.mdl-color-text--red-700{color:#d32f2f!important}.mdl-color--red-700{background-color:#d32f2f!important}.mdl-color-text--red-800{color:#c62828!important}.mdl-color--red-800{background-color:#c62828!important}.mdl-color-text--red-900{color:#b71c1c!important}.mdl-color--red-900{background-color:#b71c1c!important}.mdl-color-text--red-A100{color:#ff8a80!important}.mdl-color--red-A100{background-color:#ff8a80!important}.mdl-color-text--red-A200{color:#ff5252!important}.mdl-color--red-A200{background-color:#ff5252!important}.mdl-color-text--red-A400{color:#ff1744!important}.mdl-color--red-A400{background-color:#ff1744!important}.mdl-color-text--red-A700{color:#d50000!important}.mdl-color--red-A700{background-color:#d50000!important}.mdl-color-text--pink{color:#e91e63!important}.mdl-color--pink{background-color:#e91e63!important}.mdl-color-text--pink-50{color:#fce4ec!important}.mdl-color--pink-50{background-color:#fce4ec!important}.mdl-color-text--pink-100{color:#f8bbd0!important}.mdl-color--pink-100{background-color:#f8bbd0!important}.mdl-color-text--pink-200{color:#f48fb1!important}.mdl-color--pink-200{background-color:#f48fb1!important}.mdl-color-text--pink-300{color:#f06292!important}.mdl-color--pink-300{background-color:#f06292!important}.mdl-color-text--pink-400{color:#ec407a!important}.mdl-color--pink-400{background-color:#ec407a!important}.mdl-color-text--pink-500{color:#e91e63!important}.mdl-color--pink-500{background-color:#e91e63!important}.mdl-color-text--pink-600{color:#d81b60!important}.mdl-color--pink-600{background-color:#d81b60!important}.mdl-color-text--pink-700{color:#c2185b!important}.mdl-color--pink-700{background-color:#c2185b!important}.mdl-color-text--pink-800{color:#ad1457!important}.mdl-color--pink-800{background-color:#ad1457!important}.mdl-color-text--pink-900{color:#880e4f!important}.mdl-color--pink-900{background-color:#880e4f!important}.mdl-color-text--pink-A100{color:#ff80ab!important}.mdl-color--pink-A100{background-color:#ff80ab!important}.mdl-color-text--pink-A200{color:#ff4081!important}.mdl-color--pink-A200{background-color:#ff4081!important}.mdl-color-text--pink-A400{color:#f50057!important}.mdl-color--pink-A400{background-color:#f50057!important}.mdl-color-text--pink-A700{color:#c51162!important}.mdl-color--pink-A700{background-color:#c51162!important}.mdl-color-text--purple{color:#9c27b0!important}.mdl-color--purple{background-color:#9c27b0!important}.mdl-color-text--purple-50{color:#f3e5f5!important}.mdl-color--purple-50{background-color:#f3e5f5!important}.mdl-color-text--purple-100{color:#e1bee7!important}.mdl-color--purple-100{background-color:#e1bee7!important}.mdl-color-text--purple-200{color:#ce93d8!important}.mdl-color--purple-200{background-color:#ce93d8!important}.mdl-color-text--purple-300{color:#ba68c8!important}.mdl-color--purple-300{background-color:#ba68c8!important}.mdl-color-text--purple-400{color:#ab47bc!important}.mdl-color--purple-400{background-color:#ab47bc!important}.mdl-color-text--purple-500{color:#9c27b0!important}.mdl-color--purple-500{background-color:#9c27b0!important}.mdl-color-text--purple-600{color:#8e24aa!important}.mdl-color--purple-600{background-color:#8e24aa!important}.mdl-color-text--purple-700{color:#7b1fa2!important}.mdl-color--purple-700{background-color:#7b1fa2!important}.mdl-color-text--purple-800{color:#6a1b9a!important}.mdl-color--purple-800{background-color:#6a1b9a!important}.mdl-color-text--purple-900{color:#4a148c!important}.mdl-color--purple-900{background-color:#4a148c!important}.mdl-color-text--purple-A100{color:#ea80fc!important}.mdl-color--purple-A100{background-color:#ea80fc!important}.mdl-color-text--purple-A200{color:#e040fb!important}.mdl-color--purple-A200{background-color:#e040fb!important}.mdl-color-text--purple-A400{color:#d500f9!important}.mdl-color--purple-A400{background-color:#d500f9!important}.mdl-color-text--purple-A700{color:#a0f!important}.mdl-color--purple-A700{background-color:#a0f!important}.mdl-color-text--deep-purple{color:#673ab7!important}.mdl-color--deep-purple{background-color:#673ab7!important}.mdl-color-text--deep-purple-50{color:#ede7f6!important}.mdl-color--deep-purple-50{background-color:#ede7f6!important}.mdl-color-text--deep-purple-100{color:#d1c4e9!important}.mdl-color--deep-purple-100{background-color:#d1c4e9!important}.mdl-color-text--deep-purple-200{color:#b39ddb!important}.mdl-color--deep-purple-200{background-color:#b39ddb!important}.mdl-color-text--deep-purple-300{color:#9575cd!important}.mdl-color--deep-purple-300{background-color:#9575cd!important}.mdl-color-text--deep-purple-400{color:#7e57c2!important}.mdl-color--deep-purple-400{background-color:#7e57c2!important}.mdl-color-text--deep-purple-500{color:#673ab7!important}.mdl-color--deep-purple-500{background-color:#673ab7!important}.mdl-color-text--deep-purple-600{color:#5e35b1!important}.mdl-color--deep-purple-600{background-color:#5e35b1!important}.mdl-color-text--deep-purple-700{color:#512da8!important}.mdl-color--deep-purple-700{background-color:#512da8!important}.mdl-color-text--deep-purple-800{color:#4527a0!important}.mdl-color--deep-purple-800{background-color:#4527a0!important}.mdl-color-text--deep-purple-900{color:#311b92!important}.mdl-color--deep-purple-900{background-color:#311b92!important}.mdl-color-text--deep-purple-A100{color:#b388ff!important}.mdl-color--deep-purple-A100{background-color:#b388ff!important}.mdl-color-text--deep-purple-A200{color:#7c4dff!important}.mdl-color--deep-purple-A200{background-color:#7c4dff!important}.mdl-color-text--deep-purple-A400{color:#651fff!important}.mdl-color--deep-purple-A400{background-color:#651fff!important}.mdl-color-text--deep-purple-A700{color:#6200ea!important}.mdl-color--deep-purple-A700{background-color:#6200ea!important}.mdl-color-text--indigo{color:#3f51b5!important}.mdl-color--indigo{background-color:#3f51b5!important}.mdl-color-text--indigo-50{color:#e8eaf6!important}.mdl-color--indigo-50{background-color:#e8eaf6!important}.mdl-color-text--indigo-100{color:#c5cae9!important}.mdl-color--indigo-100{background-color:#c5cae9!important}.mdl-color-text--indigo-200{color:#9fa8da!important}.mdl-color--indigo-200{background-color:#9fa8da!important}.mdl-color-text--indigo-300{color:#7986cb!important}.mdl-color--indigo-300{background-color:#7986cb!important}.mdl-color-text--indigo-400{color:#5c6bc0!important}.mdl-color--indigo-400{background-color:#5c6bc0!important}.mdl-color-text--indigo-500{color:#3f51b5!important}.mdl-color--indigo-500{background-color:#3f51b5!important}.mdl-color-text--indigo-600{color:#3949ab!important}.mdl-color--indigo-600{background-color:#3949ab!important}.mdl-color-text--indigo-700{color:#303f9f!important}.mdl-color--indigo-700{background-color:#303f9f!important}.mdl-color-text--indigo-800{color:#283593!important}.mdl-color--indigo-800{background-color:#283593!important}.mdl-color-text--indigo-900{color:#1a237e!important}.mdl-color--indigo-900{background-color:#1a237e!important}.mdl-color-text--indigo-A100{color:#8c9eff!important}.mdl-color--indigo-A100{background-color:#8c9eff!important}.mdl-color-text--indigo-A200{color:#536dfe!important}.mdl-color--indigo-A200{background-color:#536dfe!important}.mdl-color-text--indigo-A400{color:#3d5afe!important}.mdl-color--indigo-A400{background-color:#3d5afe!important}.mdl-color-text--indigo-A700{color:#304ffe!important}.mdl-color--indigo-A700{background-color:#304ffe!important}.mdl-color-text--blue{color:#2196f3!important}.mdl-color--blue{background-color:#2196f3!important}.mdl-color-text--blue-50{color:#e3f2fd!important}.mdl-color--blue-50{background-color:#e3f2fd!important}.mdl-color-text--blue-100{color:#bbdefb!important}.mdl-color--blue-100{background-color:#bbdefb!important}.mdl-color-text--blue-200{color:#90caf9!important}.mdl-color--blue-200{background-color:#90caf9!important}.mdl-color-text--blue-300{color:#64b5f6!important}.mdl-color--blue-300{background-color:#64b5f6!important}.mdl-color-text--blue-400{color:#42a5f5!important}.mdl-color--blue-400{background-color:#42a5f5!important}.mdl-color-text--blue-500{color:#2196f3!important}.mdl-color--blue-500{background-color:#2196f3!important}.mdl-color-text--blue-600{color:#1e88e5!important}.mdl-color--blue-600{background-color:#1e88e5!important}.mdl-color-text--blue-700{color:#1976d2!important}.mdl-color--blue-700{background-color:#1976d2!important}.mdl-color-text--blue-800{color:#1565c0!important}.mdl-color--blue-800{background-color:#1565c0!important}.mdl-color-text--blue-900{color:#0d47a1!important}.mdl-color--blue-900{background-color:#0d47a1!important}.mdl-color-text--blue-A100{color:#82b1ff!important}.mdl-color--blue-A100{background-color:#82b1ff!important}.mdl-color-text--blue-A200{color:#448aff!important}.mdl-color--blue-A200{background-color:#448aff!important}.mdl-color-text--blue-A400{color:#2979ff!important}.mdl-color--blue-A400{background-color:#2979ff!important}.mdl-color-text--blue-A700{color:#2962ff!important}.mdl-color--blue-A700{background-color:#2962ff!important}.mdl-color-text--light-blue{color:#03a9f4!important}.mdl-color--light-blue{background-color:#03a9f4!important}.mdl-color-text--light-blue-50{color:#e1f5fe!important}.mdl-color--light-blue-50{background-color:#e1f5fe!important}.mdl-color-text--light-blue-100{color:#b3e5fc!important}.mdl-color--light-blue-100{background-color:#b3e5fc!important}.mdl-color-text--light-blue-200{color:#81d4fa!important}.mdl-color--light-blue-200{background-color:#81d4fa!important}.mdl-color-text--light-blue-300{color:#4fc3f7!important}.mdl-color--light-blue-300{background-color:#4fc3f7!important}.mdl-color-text--light-blue-400{color:#29b6f6!important}.mdl-color--light-blue-400{background-color:#29b6f6!important}.mdl-color-text--light-blue-500{color:#03a9f4!important}.mdl-color--light-blue-500{background-color:#03a9f4!important}.mdl-color-text--light-blue-600{color:#039be5!important}.mdl-color--light-blue-600{background-color:#039be5!important}.mdl-color-text--light-blue-700{color:#0288d1!important}.mdl-color--light-blue-700{background-color:#0288d1!important}.mdl-color-text--light-blue-800{color:#0277bd!important}.mdl-color--light-blue-800{background-color:#0277bd!important}.mdl-color-text--light-blue-900{color:#01579b!important}.mdl-color--light-blue-900{background-color:#01579b!important}.mdl-color-text--light-blue-A100{color:#80d8ff!important}.mdl-color--light-blue-A100{background-color:#80d8ff!important}.mdl-color-text--light-blue-A200{color:#40c4ff!important}.mdl-color--light-blue-A200{background-color:#40c4ff!important}.mdl-color-text--light-blue-A400{color:#00b0ff!important}.mdl-color--light-blue-A400{background-color:#00b0ff!important}.mdl-color-text--light-blue-A700{color:#0091ea!important}.mdl-color--light-blue-A700{background-color:#0091ea!important}.mdl-color-text--cyan{color:#00bcd4!important}.mdl-color--cyan{background-color:#00bcd4!important}.mdl-color-text--cyan-50{color:#e0f7fa!important}.mdl-color--cyan-50{background-color:#e0f7fa!important}.mdl-color-text--cyan-100{color:#b2ebf2!important}.mdl-color--cyan-100{background-color:#b2ebf2!important}.mdl-color-text--cyan-200{color:#80deea!important}.mdl-color--cyan-200{background-color:#80deea!important}.mdl-color-text--cyan-300{color:#4dd0e1!important}.mdl-color--cyan-300{background-color:#4dd0e1!important}.mdl-color-text--cyan-400{color:#26c6da!important}.mdl-color--cyan-400{background-color:#26c6da!important}.mdl-color-text--cyan-500{color:#00bcd4!important}.mdl-color--cyan-500{background-color:#00bcd4!important}.mdl-color-text--cyan-600{color:#00acc1!important}.mdl-color--cyan-600{background-color:#00acc1!important}.mdl-color-text--cyan-700{color:#0097a7!important}.mdl-color--cyan-700{background-color:#0097a7!important}.mdl-color-text--cyan-800{color:#00838f!important}.mdl-color--cyan-800{background-color:#00838f!important}.mdl-color-text--cyan-900{color:#006064!important}.mdl-color--cyan-900{background-color:#006064!important}.mdl-color-text--cyan-A100{color:#84ffff!important}.mdl-color--cyan-A100{background-color:#84ffff!important}.mdl-color-text--cyan-A200{color:#18ffff!important}.mdl-color--cyan-A200{background-color:#18ffff!important}.mdl-color-text--cyan-A400{color:#00e5ff!important}.mdl-color--cyan-A400{background-color:#00e5ff!important}.mdl-color-text--cyan-A700{color:#00b8d4!important}.mdl-color--cyan-A700{background-color:#00b8d4!important}.mdl-color-text--teal{color:#009688!important}.mdl-color--teal{background-color:#009688!important}.mdl-color-text--teal-50{color:#e0f2f1!important}.mdl-color--teal-50{background-color:#e0f2f1!important}.mdl-color-text--teal-100{color:#b2dfdb!important}.mdl-color--teal-100{background-color:#b2dfdb!important}.mdl-color-text--teal-200{color:#80cbc4!important}.mdl-color--teal-200{background-color:#80cbc4!important}.mdl-color-text--teal-300{color:#4db6ac!important}.mdl-color--teal-300{background-color:#4db6ac!important}.mdl-color-text--teal-400{color:#26a69a!important}.mdl-color--teal-400{background-color:#26a69a!important}.mdl-color-text--teal-500{color:#009688!important}.mdl-color--teal-500{background-color:#009688!important}.mdl-color-text--teal-600{color:#00897b!important}.mdl-color--teal-600{background-color:#00897b!important}.mdl-color-text--teal-700{color:#00796b!important}.mdl-color--teal-700{background-color:#00796b!important}.mdl-color-text--teal-800{color:#00695c!important}.mdl-color--teal-800{background-color:#00695c!important}.mdl-color-text--teal-900{color:#004d40!important}.mdl-color--teal-900{background-color:#004d40!important}.mdl-color-text--teal-A100{color:#a7ffeb!important}.mdl-color--teal-A100{background-color:#a7ffeb!important}.mdl-color-text--teal-A200{color:#64ffda!important}.mdl-color--teal-A200{background-color:#64ffda!important}.mdl-color-text--teal-A400{color:#1de9b6!important}.mdl-color--teal-A400{background-color:#1de9b6!important}.mdl-color-text--teal-A700{color:#00bfa5!important}.mdl-color--teal-A700{background-color:#00bfa5!important}.mdl-color-text--green{color:#4caf50!important}.mdl-color--green{background-color:#4caf50!important}.mdl-color-text--green-50{color:#e8f5e9!important}.mdl-color--green-50{background-color:#e8f5e9!important}.mdl-color-text--green-100{color:#c8e6c9!important}.mdl-color--green-100{background-color:#c8e6c9!important}.mdl-color-text--green-200{color:#a5d6a7!important}.mdl-color--green-200{background-color:#a5d6a7!important}.mdl-color-text--green-300{color:#81c784!important}.mdl-color--green-300{background-color:#81c784!important}.mdl-color-text--green-400{color:#66bb6a!important}.mdl-color--green-400{background-color:#66bb6a!important}.mdl-color-text--green-500{color:#4caf50!important}.mdl-color--green-500{background-color:#4caf50!important}.mdl-color-text--green-600{color:#43a047!important}.mdl-color--green-600{background-color:#43a047!important}.mdl-color-text--green-700{color:#388e3c!important}.mdl-color--green-700{background-color:#388e3c!important}.mdl-color-text--green-800{color:#2e7d32!important}.mdl-color--green-800{background-color:#2e7d32!important}.mdl-color-text--green-900{color:#1b5e20!important}.mdl-color--green-900{background-color:#1b5e20!important}.mdl-color-text--green-A100{color:#b9f6ca!important}.mdl-color--green-A100{background-color:#b9f6ca!important}.mdl-color-text--green-A200{color:#69f0ae!important}.mdl-color--green-A200{background-color:#69f0ae!important}.mdl-color-text--green-A400{color:#00e676!important}.mdl-color--green-A400{background-color:#00e676!important}.mdl-color-text--green-A700{color:#00c853!important}.mdl-color--green-A700{background-color:#00c853!important}.mdl-color-text--light-green{color:#8bc34a!important}.mdl-color--light-green{background-color:#8bc34a!important}.mdl-color-text--light-green-50{color:#f1f8e9!important}.mdl-color--light-green-50{background-color:#f1f8e9!important}.mdl-color-text--light-green-100{color:#dcedc8!important}.mdl-color--light-green-100{background-color:#dcedc8!important}.mdl-color-text--light-green-200{color:#c5e1a5!important}.mdl-color--light-green-200{background-color:#c5e1a5!important}.mdl-color-text--light-green-300{color:#aed581!important}.mdl-color--light-green-300{background-color:#aed581!important}.mdl-color-text--light-green-400{color:#9ccc65!important}.mdl-color--light-green-400{background-color:#9ccc65!important}.mdl-color-text--light-green-500{color:#8bc34a!important}.mdl-color--light-green-500{background-color:#8bc34a!important}.mdl-color-text--light-green-600{color:#7cb342!important}.mdl-color--light-green-600{background-color:#7cb342!important}.mdl-color-text--light-green-700{color:#689f38!important}.mdl-color--light-green-700{background-color:#689f38!important}.mdl-color-text--light-green-800{color:#558b2f!important}.mdl-color--light-green-800{background-color:#558b2f!important}.mdl-color-text--light-green-900{color:#33691e!important}.mdl-color--light-green-900{background-color:#33691e!important}.mdl-color-text--light-green-A100{color:#ccff90!important}.mdl-color--light-green-A100{background-color:#ccff90!important}.mdl-color-text--light-green-A200{color:#b2ff59!important}.mdl-color--light-green-A200{background-color:#b2ff59!important}.mdl-color-text--light-green-A400{color:#76ff03!important}.mdl-color--light-green-A400{background-color:#76ff03!important}.mdl-color-text--light-green-A700{color:#64dd17!important}.mdl-color--light-green-A700{background-color:#64dd17!important}.mdl-color-text--lime{color:#cddc39!important}.mdl-color--lime{background-color:#cddc39!important}.mdl-color-text--lime-50{color:#f9fbe7!important}.mdl-color--lime-50{background-color:#f9fbe7!important}.mdl-color-text--lime-100{color:#f0f4c3!important}.mdl-color--lime-100{background-color:#f0f4c3!important}.mdl-color-text--lime-200{color:#e6ee9c!important}.mdl-color--lime-200{background-color:#e6ee9c!important}.mdl-color-text--lime-300{color:#dce775!important}.mdl-color--lime-300{background-color:#dce775!important}.mdl-color-text--lime-400{color:#d4e157!important}.mdl-color--lime-400{background-color:#d4e157!important}.mdl-color-text--lime-500{color:#cddc39!important}.mdl-color--lime-500{background-color:#cddc39!important}.mdl-color-text--lime-600{color:#c0ca33!important}.mdl-color--lime-600{background-color:#c0ca33!important}.mdl-color-text--lime-700{color:#afb42b!important}.mdl-color--lime-700{background-color:#afb42b!important}.mdl-color-text--lime-800{color:#9e9d24!important}.mdl-color--lime-800{background-color:#9e9d24!important}.mdl-color-text--lime-900{color:#827717!important}.mdl-color--lime-900{background-color:#827717!important}.mdl-color-text--lime-A100{color:#f4ff81!important}.mdl-color--lime-A100{background-color:#f4ff81!important}.mdl-color-text--lime-A200{color:#eeff41!important}.mdl-color--lime-A200{background-color:#eeff41!important}.mdl-color-text--lime-A400{color:#c6ff00!important}.mdl-color--lime-A400{background-color:#c6ff00!important}.mdl-color-text--lime-A700{color:#aeea00!important}.mdl-color--lime-A700{background-color:#aeea00!important}.mdl-color-text--yellow{color:#ffeb3b!important}.mdl-color--yellow{background-color:#ffeb3b!important}.mdl-color-text--yellow-50{color:#fffde7!important}.mdl-color--yellow-50{background-color:#fffde7!important}.mdl-color-text--yellow-100{color:#fff9c4!important}.mdl-color--yellow-100{background-color:#fff9c4!important}.mdl-color-text--yellow-200{color:#fff59d!important}.mdl-color--yellow-200{background-color:#fff59d!important}.mdl-color-text--yellow-300{color:#fff176!important}.mdl-color--yellow-300{background-color:#fff176!important}.mdl-color-text--yellow-400{color:#ffee58!important}.mdl-color--yellow-400{background-color:#ffee58!important}.mdl-color-text--yellow-500{color:#ffeb3b!important}.mdl-color--yellow-500{background-color:#ffeb3b!important}.mdl-color-text--yellow-600{color:#fdd835!important}.mdl-color--yellow-600{background-color:#fdd835!important}.mdl-color-text--yellow-700{color:#fbc02d!important}.mdl-color--yellow-700{background-color:#fbc02d!important}.mdl-color-text--yellow-800{color:#f9a825!important}.mdl-color--yellow-800{background-color:#f9a825!important}.mdl-color-text--yellow-900{color:#f57f17!important}.mdl-color--yellow-900{background-color:#f57f17!important}.mdl-color-text--yellow-A100{color:#ffff8d!important}.mdl-color--yellow-A100{background-color:#ffff8d!important}.mdl-color-text--yellow-A200{color:#ff0!important}.mdl-color--yellow-A200{background-color:#ff0!important}.mdl-color-text--yellow-A400{color:#ffea00!important}.mdl-color--yellow-A400{background-color:#ffea00!important}.mdl-color-text--yellow-A700{color:#ffd600!important}.mdl-color--yellow-A700{background-color:#ffd600!important}.mdl-color-text--amber{color:#ffc107!important}.mdl-color--amber{background-color:#ffc107!important}.mdl-color-text--amber-50{color:#fff8e1!important}.mdl-color--amber-50{background-color:#fff8e1!important}.mdl-color-text--amber-100{color:#ffecb3!important}.mdl-color--amber-100{background-color:#ffecb3!important}.mdl-color-text--amber-200{color:#ffe082!important}.mdl-color--amber-200{background-color:#ffe082!important}.mdl-color-text--amber-300{color:#ffd54f!important}.mdl-color--amber-300{background-color:#ffd54f!important}.mdl-color-text--amber-400{color:#ffca28!important}.mdl-color--amber-400{background-color:#ffca28!important}.mdl-color-text--amber-500{color:#ffc107!important}.mdl-color--amber-500{background-color:#ffc107!important}.mdl-color-text--amber-600{color:#ffb300!important}.mdl-color--amber-600{background-color:#ffb300!important}.mdl-color-text--amber-700{color:#ffa000!important}.mdl-color--amber-700{background-color:#ffa000!important}.mdl-color-text--amber-800{color:#ff8f00!important}.mdl-color--amber-800{background-color:#ff8f00!important}.mdl-color-text--amber-900{color:#ff6f00!important}.mdl-color--amber-900{background-color:#ff6f00!important}.mdl-color-text--amber-A100{color:#ffe57f!important}.mdl-color--amber-A100{background-color:#ffe57f!important}.mdl-color-text--amber-A200{color:#ffd740!important}.mdl-color--amber-A200{background-color:#ffd740!important}.mdl-color-text--amber-A400{color:#ffc400!important}.mdl-color--amber-A400{background-color:#ffc400!important}.mdl-color-text--amber-A700{color:#ffab00!important}.mdl-color--amber-A700{background-color:#ffab00!important}.mdl-color-text--orange{color:#ff9800!important}.mdl-color--orange{background-color:#ff9800!important}.mdl-color-text--orange-50{color:#fff3e0!important}.mdl-color--orange-50{background-color:#fff3e0!important}.mdl-color-text--orange-100{color:#ffe0b2!important}.mdl-color--orange-100{background-color:#ffe0b2!important}.mdl-color-text--orange-200{color:#ffcc80!important}.mdl-color--orange-200{background-color:#ffcc80!important}.mdl-color-text--orange-300{color:#ffb74d!important}.mdl-color--orange-300{background-color:#ffb74d!important}.mdl-color-text--orange-400{color:#ffa726!important}.mdl-color--orange-400{background-color:#ffa726!important}.mdl-color-text--orange-500{color:#ff9800!important}.mdl-color--orange-500{background-color:#ff9800!important}.mdl-color-text--orange-600{color:#fb8c00!important}.mdl-color--orange-600{background-color:#fb8c00!important}.mdl-color-text--orange-700{color:#f57c00!important}.mdl-color--orange-700{background-color:#f57c00!important}.mdl-color-text--orange-800{color:#ef6c00!important}.mdl-color--orange-800{background-color:#ef6c00!important}.mdl-color-text--orange-900{color:#e65100!important}.mdl-color--orange-900{background-color:#e65100!important}.mdl-color-text--orange-A100{color:#ffd180!important}.mdl-color--orange-A100{background-color:#ffd180!important}.mdl-color-text--orange-A200{color:#ffab40!important}.mdl-color--orange-A200{background-color:#ffab40!important}.mdl-color-text--orange-A400{color:#ff9100!important}.mdl-color--orange-A400{background-color:#ff9100!important}.mdl-color-text--orange-A700{color:#ff6d00!important}.mdl-color--orange-A700{background-color:#ff6d00!important}.mdl-color-text--deep-orange{color:#ff5722!important}.mdl-color--deep-orange{background-color:#ff5722!important}.mdl-color-text--deep-orange-50{color:#fbe9e7!important}.mdl-color--deep-orange-50{background-color:#fbe9e7!important}.mdl-color-text--deep-orange-100{color:#ffccbc!important}.mdl-color--deep-orange-100{background-color:#ffccbc!important}.mdl-color-text--deep-orange-200{color:#ffab91!important}.mdl-color--deep-orange-200{background-color:#ffab91!important}.mdl-color-text--deep-orange-300{color:#ff8a65!important}.mdl-color--deep-orange-300{background-color:#ff8a65!important}.mdl-color-text--deep-orange-400{color:#ff7043!important}.mdl-color--deep-orange-400{background-color:#ff7043!important}.mdl-color-text--deep-orange-500{color:#ff5722!important}.mdl-color--deep-orange-500{background-color:#ff5722!important}.mdl-color-text--deep-orange-600{color:#f4511e!important}.mdl-color--deep-orange-600{background-color:#f4511e!important}.mdl-color-text--deep-orange-700{color:#e64a19!important}.mdl-color--deep-orange-700{background-color:#e64a19!important}.mdl-color-text--deep-orange-800{color:#d84315!important}.mdl-color--deep-orange-800{background-color:#d84315!important}.mdl-color-text--deep-orange-900{color:#bf360c!important}.mdl-color--deep-orange-900{background-color:#bf360c!important}.mdl-color-text--deep-orange-A100{color:#ff9e80!important}.mdl-color--deep-orange-A100{background-color:#ff9e80!important}.mdl-color-text--deep-orange-A200{color:#ff6e40!important}.mdl-color--deep-orange-A200{background-color:#ff6e40!important}.mdl-color-text--deep-orange-A400{color:#ff3d00!important}.mdl-color--deep-orange-A400{background-color:#ff3d00!important}.mdl-color-text--deep-orange-A700{color:#dd2c00!important}.mdl-color--deep-orange-A700{background-color:#dd2c00!important}.mdl-color-text--brown{color:#795548!important}.mdl-color--brown{background-color:#795548!important}.mdl-color-text--brown-50{color:#efebe9!important}.mdl-color--brown-50{background-color:#efebe9!important}.mdl-color-text--brown-100{color:#d7ccc8!important}.mdl-color--brown-100{background-color:#d7ccc8!important}.mdl-color-text--brown-200{color:#bcaaa4!important}.mdl-color--brown-200{background-color:#bcaaa4!important}.mdl-color-text--brown-300{color:#a1887f!important}.mdl-color--brown-300{background-color:#a1887f!important}.mdl-color-text--brown-400{color:#8d6e63!important}.mdl-color--brown-400{background-color:#8d6e63!important}.mdl-color-text--brown-500{color:#795548!important}.mdl-color--brown-500{background-color:#795548!important}.mdl-color-text--brown-600{color:#6d4c41!important}.mdl-color--brown-600{background-color:#6d4c41!important}.mdl-color-text--brown-700{color:#5d4037!important}.mdl-color--brown-700{background-color:#5d4037!important}.mdl-color-text--brown-800{color:#4e342e!important}.mdl-color--brown-800{background-color:#4e342e!important}.mdl-color-text--brown-900{color:#3e2723!important}.mdl-color--brown-900{background-color:#3e2723!important}.mdl-color-text--grey{color:#9e9e9e!important}.mdl-color--grey{background-color:#9e9e9e!important}.mdl-color-text--grey-50{color:#fafafa!important}.mdl-color--grey-50{background-color:#fafafa!important}.mdl-color-text--grey-100{color:#f5f5f5!important}.mdl-color--grey-100{background-color:#f5f5f5!important}.mdl-color-text--grey-200{color:#eee!important}.mdl-color--grey-200{background-color:#eee!important}.mdl-color-text--grey-300{color:#e0e0e0!important}.mdl-color--grey-300{background-color:#e0e0e0!important}.mdl-color-text--grey-400{color:#bdbdbd!important}.mdl-color--grey-400{background-color:#bdbdbd!important}.mdl-color-text--grey-500{color:#9e9e9e!important}.mdl-color--grey-500{background-color:#9e9e9e!important}.mdl-color-text--grey-600{color:#757575!important}.mdl-color--grey-600{background-color:#757575!important}.mdl-color-text--grey-700{color:#616161!important}.mdl-color--grey-700{background-color:#616161!important}.mdl-color-text--grey-800{color:#424242!important}.mdl-color--grey-800{background-color:#424242!important}.mdl-color-text--grey-900{color:#212121!important}.mdl-color--grey-900{background-color:#212121!important}.mdl-color-text--blue-grey{color:#607d8b!important}.mdl-color--blue-grey{background-color:#607d8b!important}.mdl-color-text--blue-grey-50{color:#eceff1!important}.mdl-color--blue-grey-50{background-color:#eceff1!important}.mdl-color-text--blue-grey-100{color:#cfd8dc!important}.mdl-color--blue-grey-100{background-color:#cfd8dc!important}.mdl-color-text--blue-grey-200{color:#b0bec5!important}.mdl-color--blue-grey-200{background-color:#b0bec5!important}.mdl-color-text--blue-grey-300{color:#90a4ae!important}.mdl-color--blue-grey-300{background-color:#90a4ae!important}.mdl-color-text--blue-grey-400{color:#78909c!important}.mdl-color--blue-grey-400{background-color:#78909c!important}.mdl-color-text--blue-grey-500{color:#607d8b!important}.mdl-color--blue-grey-500{background-color:#607d8b!important}.mdl-color-text--blue-grey-600{color:#546e7a!important}.mdl-color--blue-grey-600{background-color:#546e7a!important}.mdl-color-text--blue-grey-700{color:#455a64!important}.mdl-color--blue-grey-700{background-color:#455a64!important}.mdl-color-text--blue-grey-800{color:#37474f!important}.mdl-color--blue-grey-800{background-color:#37474f!important}.mdl-color-text--blue-grey-900{color:#263238!important}.mdl-color--blue-grey-900{background-color:#263238!important}.mdl-color--black{background-color:#000!important}.mdl-color-text--black{color:#000!important}.mdl-color--white{background-color:#fff!important}.mdl-color-text--white{color:#fff!important}.mdl-color--primary{background-color:#3f51b5!important}.mdl-color--primary-contrast{background-color:#fff!important}.mdl-color--primary-dark{background-color:#303f9f!important}.mdl-color--accent{background-color:#ff4081!important}.mdl-color--accent-contrast{background-color:#fff!important}.mdl-color-text--primary{color:#3f51b5!important}.mdl-color-text--primary-contrast{color:#fff!important}.mdl-color-text--primary-dark{color:#303f9f!important}.mdl-color-text--accent{color:#ff4081!important}.mdl-color-text--accent-contrast{color:#fff!important}.mdl-ripple{background:#000;border-radius:50%;height:50px;left:0;opacity:0;pointer-events:none;position:absolute;top:0;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:50px;overflow:hidden}.mdl-ripple.is-animating{-webkit-transition:-webkit-transform .3s cubic-bezier(0,0,.2,1),width .3s cubic-bezier(0,0,.2,1),height .3s cubic-bezier(0,0,.2,1),opacity .6s cubic-bezier(0,0,.2,1);transition:transform .3s cubic-bezier(0,0,.2,1),width .3s cubic-bezier(0,0,.2,1),height .3s cubic-bezier(0,0,.2,1),opacity .6s cubic-bezier(0,0,.2,1)}.mdl-ripple.is-visible{opacity:.3}.mdl-animation--default,.mdl-animation--fast-out-slow-in{-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.mdl-animation--linear-out-slow-in{-webkit-transition-timing-function:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.mdl-animation--fast-out-linear-in{-webkit-transition-timing-function:cubic-bezier(.4,0,1,1);transition-timing-function:cubic-bezier(.4,0,1,1)}.mdl-badge{position:relative;white-space:nowrap;margin-right:24px}.mdl-badge:not([data-badge]){margin-right:auto}.mdl-badge[data-badge]:after{content:attr(data-badge);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-content:center;-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;position:absolute;top:-11px;right:-24px;font-family:Roboto,Helvetica,Arial,sans-serif;font-weight:600;font-size:12px;width:22px;height:22px;border-radius:50%;background:#ff4081;color:#fff}.mdl-button .mdl-badge[data-badge]:after{top:-10px;right:-5px}.mdl-badge.mdl-badge--no-background[data-badge]:after{color:#ff4081;background:rgba(255,255,255,.2);box-shadow:0 0 1px gray}.mdl-button{background:0 0;border:none;border-radius:2px;color:#000;position:relative;height:36px;min-width:64px;padding:0 8px;display:inline-block;font-family:Roboto,Helvetica,Arial,sans-serif;font-size:14px;font-weight:500;letter-spacing:0;overflow:hidden;will-change:box-shadow,transform;-webkit-transition:box-shadow .2s cubic-bezier(.4,0,1,1),background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);transition:box-shadow .2s cubic-bezier(.4,0,1,1),background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);outline:0;cursor:pointer;text-align:center;line-height:36px}.mdl-button--fab,.mdl-button--icon{overflow:hidden;font-size:24px;padding:0}.mdl-button::-moz-focus-inner{border:0}.mdl-button:hover{background-color:rgba(158,158,158,.2)}.mdl-button:focus:not(:active){background-color:rgba(0,0,0,.12)}.mdl-button:active{background-color:rgba(158,158,158,.4)}.mdl-button.mdl-button--colored{color:#3f51b5}.mdl-button.mdl-button--colored:focus:not(:active){background-color:rgba(0,0,0,.12)}input.mdl-button[type=submit]{-webkit-appearance:none}.mdl-button--raised{background:rgba(158,158,158,.2);box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12)}.mdl-button--raised:active{box-shadow:0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.2);background-color:rgba(158,158,158,.4)}.mdl-button--raised:focus:not(:active){box-shadow:0 0 8px rgba(0,0,0,.18),0 8px 16px rgba(0,0,0,.36);background-color:rgba(158,158,158,.4)}.mdl-button--raised.mdl-button--colored{background:#3f51b5;color:#fff}.mdl-button--raised.mdl-button--colored:active,.mdl-button--raised.mdl-button--colored:focus:not(:active),.mdl-button--raised.mdl-button--colored:hover{background-color:#3f51b5}.mdl-button--raised.mdl-button--colored .mdl-ripple{background:#fff}.mdl-button--fab{border-radius:50%;height:56px;margin:auto;min-width:56px;width:56px;background:rgba(158,158,158,.2);box-shadow:0 1px 1.5px 0 rgba(0,0,0,.12),0 1px 1px 0 rgba(0,0,0,.24);position:relative;line-height:normal}.mdl-button--fab .material-icons{transform:translate(-12px,-12px);line-height:24px;width:24px}.mdl-button--fab .material-icons,.mdl-button--icon .material-icons{position:absolute;top:50%;left:50%;-webkit-transform:translate(-12px,-12px);-ms-transform:translate(-12px,-12px)}.mdl-button--fab.mdl-button--mini-fab{height:40px;min-width:40px;width:40px}.mdl-button--fab .mdl-button__ripple-container{border-radius:50%;-webkit-mask-image:-webkit-radial-gradient(circle,#fff,#000)}.mdl-button--fab:active{box-shadow:0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.2);background-color:rgba(158,158,158,.4)}.mdl-button--fab:focus:not(:active){box-shadow:0 0 8px rgba(0,0,0,.18),0 8px 16px rgba(0,0,0,.36);background-color:rgba(158,158,158,.4)}.mdl-button--fab.mdl-button--colored{background:#ff4081;color:#fff}.mdl-button--fab.mdl-button--colored:active,.mdl-button--fab.mdl-button--colored:focus:not(:active),.mdl-button--fab.mdl-button--colored:hover{background-color:#ff4081}.mdl-button--fab.mdl-button--colored .mdl-ripple{background:#fff}.mdl-button--icon{border-radius:50%;height:32px;margin-left:0;margin-right:0;min-width:32px;width:32px;color:inherit;line-height:normal}.mdl-button--icon .material-icons{transform:translate(-12px,-12px);line-height:24px;width:24px}.mdl-button--icon.mdl-button--mini-icon{height:24px;min-width:24px;width:24px}.mdl-button--icon.mdl-button--mini-icon .material-icons{top:0;left:0}.mdl-button--icon .mdl-button__ripple-container{border-radius:50%;-webkit-mask-image:-webkit-radial-gradient(circle,#fff,#000)}.mdl-button__ripple-container{display:block;height:100%;left:0;position:absolute;top:0;width:100%;z-index:0;overflow:hidden}.mdl-button.mdl-button--disabled .mdl-button__ripple-container .mdl-ripple,.mdl-button[disabled] .mdl-button__ripple-container .mdl-ripple{background-color:transparent}.mdl-button--primary.mdl-button--primary{color:#3f51b5}.mdl-button--primary.mdl-button--primary .mdl-ripple{background:#fff}.mdl-button--primary.mdl-button--primary.mdl-button--fab,.mdl-button--primary.mdl-button--primary.mdl-button--raised{color:#fff;background-color:#3f51b5}.mdl-button--accent.mdl-button--accent{color:#ff4081}.mdl-button--accent.mdl-button--accent .mdl-ripple{background:#fff}.mdl-button--accent.mdl-button--accent.mdl-button--fab,.mdl-button--accent.mdl-button--accent.mdl-button--raised{color:#fff;background-color:#ff4081}.mdl-button.mdl-button--disabled.mdl-button--disabled,.mdl-button[disabled][disabled]{color:rgba(0,0,0,.26);cursor:auto;background-color:transparent}.mdl-button--fab.mdl-button--disabled.mdl-button--disabled,.mdl-button--fab[disabled][disabled],.mdl-button--raised.mdl-button--disabled.mdl-button--disabled,.mdl-button--raised[disabled][disabled]{background-color:rgba(0,0,0,.12);color:rgba(0,0,0,.26);box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12)}.mdl-button--colored.mdl-button--disabled.mdl-button--disabled,.mdl-button--colored[disabled][disabled]{color:rgba(0,0,0,.26)}.mdl-card{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;font-size:16px;font-weight:400;min-height:200px;overflow:hidden;width:330px;z-index:1;position:relative;background:#fff;border-radius:2px}.mdl-card__media{background-color:#ff4081;background-repeat:repeat;background-position:50% 50%;background-size:cover;background-origin:padding-box;background-attachment:scroll}.mdl-card__title{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:#000;display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:stretch;-webkit-justify-content:stretch;-ms-flex-pack:stretch;justify-content:stretch;line-height:normal;padding:16px;-webkit-perspective-origin:165px 56px;perspective-origin:165px 56px;-webkit-transform-origin:165px 56px;-ms-transform-origin:165px 56px;transform-origin:165px 56px}.mdl-card__title.mdl-card--border{border-bottom:1px solid rgba(0,0,0,.1)}.mdl-card__title-text{-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end;color:inherit;display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:24px;font-weight:300;line-height:normal;overflow:hidden;-webkit-transform-origin:149px 48px;-ms-transform-origin:149px 48px;transform-origin:149px 48px;margin:0}.mdl-card__subtitle-text{font-size:14px;color:grey;margin:0}.mdl-card__supporting-text{color:rgba(0,0,0,.54);font-size:13px;line-height:18px;overflow:hidden;padding:16px;width:90%}.mdl-card__actions,.mdl-checkbox{box-sizing:border-box;width:100%}.mdl-card__actions{font-size:16px;line-height:normal;background-color:transparent;padding:8px}.mdl-card__actions.mdl-card--border{border-top:1px solid rgba(0,0,0,.1)}.mdl-card--expand{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.mdl-card__menu{position:absolute;right:16px;top:16px}.mdl-checkbox{position:relative;z-index:1;display:inline-block;height:24px;margin:0;padding:0}.mdl-checkbox.is-upgraded{padding-left:24px}.mdl-checkbox__input{line-height:24px}.mdl-checkbox.is-upgraded .mdl-checkbox__input{position:absolute;width:0;height:0;margin:0;padding:0;opacity:0;-ms-appearance:none;-moz-appearance:none;-webkit-appearance:none;appearance:none;border:none}.mdl-checkbox__box-outline,.mdl-checkbox__focus-helper{position:absolute;left:0;top:3px;display:inline-block;box-sizing:border-box;width:16px;height:16px}.mdl-checkbox__box-outline{margin:0;cursor:pointer;overflow:hidden;border:2px solid rgba(0,0,0,.54);border-radius:2px;z-index:2}.mdl-checkbox.is-checked .mdl-checkbox__box-outline{border:2px solid #3f51b5}.mdl-checkbox.is-disabled .mdl-checkbox__box-outline{border:2px solid rgba(0,0,0,.26);cursor:auto}.mdl-checkbox__focus-helper{border-radius:50%;background-color:transparent}.mdl-checkbox.is-focused .mdl-checkbox__focus-helper{box-shadow:0 0 0 8px rgba(0,0,0,.1);background-color:rgba(0,0,0,.1)}.mdl-checkbox.is-focused.is-checked .mdl-checkbox__focus-helper{box-shadow:0 0 0 8px rgba(63,81,181,.26);background-color:rgba(63,81,181,.26)}.mdl-layout__drawer,.mdl-layout__header,.mdl-menu__outline{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12)}.mdl-checkbox__tick-outline{position:absolute;top:0;left:0;height:100%;width:100%;-webkit-mask:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8ZGVmcz4KICAgIDxjbGlwUGF0aCBpZD0iY2xpcCI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIDAsMSAxLDEgMSwwIDAsMCB6IE0gMC44NTM0Mzc1LDAuMTY3MTg3NSAwLjk1OTY4NzUsMC4yNzMxMjUgMC40MjkzNzUsMC44MDM0Mzc1IDAuMzIzMTI1LDAuOTA5Njg3NSAwLjIxNzE4NzUsMC44MDM0Mzc1IDAuMDQwMzEyNSwwLjYyNjg3NSAwLjE0NjU2MjUsMC41MjA2MjUgMC4zMjMxMjUsMC42OTc1IDAuODUzNDM3NSwwLjE2NzE4NzUgeiIKICAgICAgICAgc3R5bGU9ImZpbGw6I2ZmZmZmZjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8bWFzayBpZD0ibWFzayIgbWFza1VuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgbWFza0NvbnRlbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCAwLDEgMSwxIDEsMCAwLDAgeiBNIDAuODUzNDM3NSwwLjE2NzE4NzUgMC45NTk2ODc1LDAuMjczMTI1IDAuNDI5Mzc1LDAuODAzNDM3NSAwLjMyMzEyNSwwLjkwOTY4NzUgMC4yMTcxODc1LDAuODAzNDM3NSAwLjA0MDMxMjUsMC42MjY4NzUgMC4xNDY1NjI1LDAuNTIwNjI1IDAuMzIzMTI1LDAuNjk3NSAwLjg1MzQzNzUsMC4xNjcxODc1IHoiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmUiIC8+CiAgICA8L21hc2s+CiAgPC9kZWZzPgogIDxyZWN0CiAgICAgd2lkdGg9IjEiCiAgICAgaGVpZ2h0PSIxIgogICAgIHg9IjAiCiAgICAgeT0iMCIKICAgICBjbGlwLXBhdGg9InVybCgjY2xpcCkiCiAgICAgc3R5bGU9ImZpbGw6IzAwMDAwMDtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZSIgLz4KPC9zdmc+Cg==);mask:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8ZGVmcz4KICAgIDxjbGlwUGF0aCBpZD0iY2xpcCI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMCwwIDAsMSAxLDEgMSwwIDAsMCB6IE0gMC44NTM0Mzc1LDAuMTY3MTg3NSAwLjk1OTY4NzUsMC4yNzMxMjUgMC40MjkzNzUsMC44MDM0Mzc1IDAuMzIzMTI1LDAuOTA5Njg3NSAwLjIxNzE4NzUsMC44MDM0Mzc1IDAuMDQwMzEyNSwwLjYyNjg3NSAwLjE0NjU2MjUsMC41MjA2MjUgMC4zMjMxMjUsMC42OTc1IDAuODUzNDM3NSwwLjE2NzE4NzUgeiIKICAgICAgICAgc3R5bGU9ImZpbGw6I2ZmZmZmZjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZSIgLz4KICAgIDwvY2xpcFBhdGg+CiAgICA8bWFzayBpZD0ibWFzayIgbWFza1VuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgbWFza0NvbnRlbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgogICAgICA8cGF0aAogICAgICAgICBkPSJNIDAsMCAwLDEgMSwxIDEsMCAwLDAgeiBNIDAuODUzNDM3NSwwLjE2NzE4NzUgMC45NTk2ODc1LDAuMjczMTI1IDAuNDI5Mzc1LDAuODAzNDM3NSAwLjMyMzEyNSwwLjkwOTY4NzUgMC4yMTcxODc1LDAuODAzNDM3NSAwLjA0MDMxMjUsMC42MjY4NzUgMC4xNDY1NjI1LDAuNTIwNjI1IDAuMzIzMTI1LDAuNjk3NSAwLjg1MzQzNzUsMC4xNjcxODc1IHoiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmUiIC8+CiAgICA8L21hc2s+CiAgPC9kZWZzPgogIDxyZWN0CiAgICAgd2lkdGg9IjEiCiAgICAgaGVpZ2h0PSIxIgogICAgIHg9IjAiCiAgICAgeT0iMCIKICAgICBjbGlwLXBhdGg9InVybCgjY2xpcCkiCiAgICAgc3R5bGU9ImZpbGw6IzAwMDAwMDtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZSIgLz4KPC9zdmc+Cg==);background:0 0;-webkit-transition-duration:.28s;transition-duration:.28s;transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-property:background;transition-property:background}.mdl-checkbox__tick-outline,.mdl-data-table tbody tr{-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1)}.mdl-checkbox__ripple-container,.mdl-icon-toggle__ripple-container{box-sizing:border-box;overflow:hidden;-webkit-mask-image:-webkit-radial-gradient(circle,#fff,#000)}.mdl-checkbox.is-checked .mdl-checkbox__tick-outline{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8cGF0aAogICAgIGQ9Ik0gMC4wNDAzODA1OSwwLjYyNjc3NjcgMC4xNDY0NDY2MSwwLjUyMDcxMDY4IDAuNDI5Mjg5MzIsMC44MDM1NTMzOSAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IE0gMC4yMTcxNTcyOSwwLjgwMzU1MzM5IDAuODUzNTUzMzksMC4xNjcxNTcyOSAwLjk1OTYxOTQxLDAuMjczMjIzMyAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IgogICAgIGlkPSJyZWN0Mzc4MCIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgo8L3N2Zz4K) #3f51b5}.mdl-checkbox.is-checked.is-disabled .mdl-checkbox__tick-outline{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgdmVyc2lvbj0iMS4xIgogICB2aWV3Qm94PSIwIDAgMSAxIgogICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0Ij4KICA8cGF0aAogICAgIGQ9Ik0gMC4wNDAzODA1OSwwLjYyNjc3NjcgMC4xNDY0NDY2MSwwLjUyMDcxMDY4IDAuNDI5Mjg5MzIsMC44MDM1NTMzOSAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IE0gMC4yMTcxNTcyOSwwLjgwMzU1MzM5IDAuODUzNTUzMzksMC4xNjcxNTcyOSAwLjk1OTYxOTQxLDAuMjczMjIzMyAwLjMyMzIyMzMsMC45MDk2MTk0MSB6IgogICAgIGlkPSJyZWN0Mzc4MCIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgo8L3N2Zz4K) rgba(0,0,0,.26)}.mdl-checkbox__label{position:relative;cursor:pointer;font-size:16px;line-height:24px;margin:0}.mdl-checkbox.is-disabled .mdl-checkbox__label{color:rgba(0,0,0,.26);cursor:auto}.mdl-checkbox__ripple-container{position:absolute;z-index:2;top:-6px;left:-10px;width:36px;height:36px;border-radius:50%;cursor:pointer}.mdl-checkbox__ripple-container .mdl-ripple{background:#3f51b5}.mdl-checkbox.is-disabled .mdl-checkbox__ripple-container{cursor:auto}.mdl-checkbox.is-disabled .mdl-checkbox__ripple-container .mdl-ripple{background:0 0}.mdl-data-table{position:relative;border:1px solid rgba(0,0,0,.12);border-collapse:collapse;white-space:nowrap;font-size:13px;background-color:#fff}.mdl-data-table thead{padding-bottom:3px}.mdl-data-table thead .mdl-data-table__select{margin-top:0}.mdl-data-table tbody tr{position:relative;height:48px;-webkit-transition-duration:.28s;transition-duration:.28s;transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-property:background-color;transition-property:background-color}.mdl-data-table tbody tr.is-selected{background-color:#e0e0e0}.mdl-data-table tbody tr:hover{background-color:#eee}.mdl-data-table td,.mdl-data-table th{padding:0 18px;text-align:right}.mdl-data-table td:first-of-type,.mdl-data-table th:first-of-type{padding-left:24px}.mdl-data-table td:last-of-type,.mdl-data-table th:last-of-type{padding-right:24px}.mdl-data-table td{position:relative;vertical-align:top;height:48px;border-top:1px solid rgba(0,0,0,.12);border-bottom:1px solid rgba(0,0,0,.12);padding-top:12px;box-sizing:border-box}.mdl-data-table td .mdl-data-table__select{vertical-align:top;position:absolute;left:24px}.mdl-data-table th{position:relative;vertical-align:bottom;text-overflow:ellipsis;font-weight:700;line-height:24px;letter-spacing:0;height:48px;font-size:12px;color:rgba(0,0,0,.54);padding-bottom:8px;box-sizing:border-box}.mdl-data-table th .mdl-data-table__select{position:absolute;bottom:8px;left:24px}.mdl-data-table__select{width:16px}.mdl-data-table__cell--non-numeric.mdl-data-table__cell--non-numeric{text-align:left}.mdl-mega-footer{padding:16px 40px;color:#9e9e9e;background-color:#424242}.mdl-mega-footer--bottom-section:after,.mdl-mega-footer--middle-section:after,.mdl-mega-footer--top-section:after,.mdl-mega-footer__bottom-section:after,.mdl-mega-footer__middle-section:after,.mdl-mega-footer__top-section:after{content:'';display:block;clear:both}.mdl-mega-footer--left-section,.mdl-mega-footer--right-section,.mdl-mega-footer__left-section,.mdl-mega-footer__right-section{margin-bottom:16px}.mdl-mega-footer--right-section a,.mdl-mega-footer__right-section a{display:block;margin-bottom:16px;color:inherit;text-decoration:none}@media screen and (min-width:760px){.mdl-mega-footer--left-section,.mdl-mega-footer__left-section{float:left}.mdl-mega-footer--right-section,.mdl-mega-footer__right-section{float:right}.mdl-mega-footer--right-section a,.mdl-mega-footer__right-section a{display:inline-block;margin-left:16px;line-height:36px;vertical-align:middle}}.mdl-mega-footer--social-btn,.mdl-mega-footer__social-btn{width:36px;height:36px;padding:0;margin:0;background-color:#9e9e9e;border:none}.mdl-mega-footer--drop-down-section,.mdl-mega-footer__drop-down-section{display:block;position:relative}@media screen and (min-width:760px){.mdl-mega-footer--drop-down-section,.mdl-mega-footer__drop-down-section{width:33%}.mdl-mega-footer--drop-down-section:nth-child(1),.mdl-mega-footer--drop-down-section:nth-child(2),.mdl-mega-footer__drop-down-section:nth-child(1),.mdl-mega-footer__drop-down-section:nth-child(2){float:left}.mdl-mega-footer--drop-down-section:nth-child(3),.mdl-mega-footer__drop-down-section:nth-child(3){float:right}.mdl-mega-footer--drop-down-section:nth-child(3):after,.mdl-mega-footer__drop-down-section:nth-child(3):after{clear:right}.mdl-mega-footer--drop-down-section:nth-child(4),.mdl-mega-footer__drop-down-section:nth-child(4){clear:right;float:right}.mdl-mega-footer--middle-section:after,.mdl-mega-footer__middle-section:after{content:'';display:block;clear:both}.mdl-mega-footer--bottom-section,.mdl-mega-footer__bottom-section{padding-top:0}}@media screen and (min-width:1024px){.mdl-mega-footer--drop-down-section,.mdl-mega-footer--drop-down-section:nth-child(3),.mdl-mega-footer--drop-down-section:nth-child(4),.mdl-mega-footer__drop-down-section,.mdl-mega-footer__drop-down-section:nth-child(3),.mdl-mega-footer__drop-down-section:nth-child(4){width:24%;float:left}}.mdl-mega-footer--heading-checkbox,.mdl-mega-footer__heading-checkbox{position:absolute;width:100%;height:55.8px;padding:32px;margin:-16px 0 0;cursor:pointer;z-index:1;opacity:0}.mdl-mega-footer--heading-checkbox~.mdl-mega-footer--heading:after,.mdl-mega-footer--heading-checkbox~.mdl-mega-footer__heading:after,.mdl-mega-footer__heading-checkbox~.mdl-mega-footer--heading:after,.mdl-mega-footer__heading-checkbox~.mdl-mega-footer__heading:after{font-family:'Material Icons';content:'\E5CE'}.mdl-mega-footer--heading-checkbox:checked~ul,.mdl-mega-footer__heading-checkbox:checked~ul{display:none}.mdl-mega-footer--heading-checkbox:checked~.mdl-mega-footer--heading:after,.mdl-mega-footer--heading-checkbox:checked~.mdl-mega-footer__heading:after,.mdl-mega-footer__heading-checkbox:checked~.mdl-mega-footer--heading:after,.mdl-mega-footer__heading-checkbox:checked~.mdl-mega-footer__heading:after{font-family:'Material Icons';content:'\E5CF'}.mdl-mega-footer--heading,.mdl-mega-footer__heading{position:relative;width:100%;padding-right:39.8px;margin-bottom:16px;box-sizing:border-box;font-size:14px;line-height:23.8px;font-weight:500;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#e0e0e0}.mdl-mega-footer--heading:after,.mdl-mega-footer__heading:after{content:'';position:absolute;top:0;right:0;display:block;width:23.8px;height:23.8px;background-size:cover}.mdl-mega-footer--link-list,.mdl-mega-footer__link-list{list-style:none;margin:0 0 32px;padding:0}.mdl-mega-footer--link-list:after,.mdl-mega-footer__link-list:after{clear:both;display:block;content:''}.mdl-mega-footer--link-list li,.mdl-mega-footer__link-list li{font-size:14px;font-weight:400;letter-spacing:0;line-height:20px}.mdl-mega-footer--link-list a,.mdl-mega-footer__link-list a{color:inherit;text-decoration:none;white-space:nowrap}.mdl-mega-footer--bottom-section,.mdl-mega-footer__bottom-section{padding-top:16px;margin-bottom:16px}.mdl-logo{margin-bottom:16px;color:#fff}.mdl-mega-footer--bottom-section .mdl-mega-footer--link-list li,.mdl-mega-footer__bottom-section .mdl-mega-footer__link-list li{float:left;margin-bottom:0;margin-right:16px}@media screen and (min-width:760px){.mdl-mega-footer--heading-checkbox,.mdl-mega-footer__heading-checkbox{display:none}.mdl-mega-footer--heading-checkbox~.mdl-mega-footer--heading:after,.mdl-mega-footer--heading-checkbox~.mdl-mega-footer__heading:after,.mdl-mega-footer__heading-checkbox~.mdl-mega-footer--heading:after,.mdl-mega-footer__heading-checkbox~.mdl-mega-footer__heading:after{background-image:none}.mdl-mega-footer--heading-checkbox:checked~ul,.mdl-mega-footer__heading-checkbox:checked~ul{display:block}.mdl-mega-footer--heading-checkbox:checked~.mdl-mega-footer--heading:after,.mdl-mega-footer--heading-checkbox:checked~.mdl-mega-footer__heading:after,.mdl-mega-footer__heading-checkbox:checked~.mdl-mega-footer--heading:after,.mdl-mega-footer__heading-checkbox:checked~.mdl-mega-footer__heading:after{content:''}.mdl-logo{float:left;margin-bottom:0;margin-right:16px}}.mdl-mini-footer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;padding:32px 16px;color:#9e9e9e;background-color:#424242}.mdl-mini-footer:after{content:'';display:block}.mdl-mini-footer .mdl-logo{line-height:36px}.mdl-mini-footer--link-list,.mdl-mini-footer__link-list{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap;list-style:none;margin:0;padding:0}.mdl-mini-footer--link-list li,.mdl-mini-footer__link-list li{margin-bottom:0;margin-right:16px}@media screen and (min-width:760px){.mdl-mini-footer--link-list li,.mdl-mini-footer__link-list li{line-height:36px}}.mdl-mini-footer--link-list a,.mdl-mini-footer__link-list a{color:inherit;text-decoration:none;white-space:nowrap}.mdl-mini-footer--left-section,.mdl-mini-footer__left-section{display:inline-block;-webkit-box-ordinal-group:1;-webkit-order:0;-ms-flex-order:0;order:0}.mdl-mini-footer--right-section,.mdl-mini-footer__right-section{display:inline-block;-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.mdl-mini-footer--social-btn,.mdl-mini-footer__social-btn{width:36px;height:36px;padding:0;margin:0;background-color:#9e9e9e;border:none}.mdl-icon-toggle{position:relative;z-index:1;vertical-align:middle;display:inline-block;height:32px;margin:0;padding:0}.mdl-icon-toggle__input{line-height:32px}.mdl-icon-toggle.is-upgraded .mdl-icon-toggle__input{position:absolute;width:0;height:0;margin:0;padding:0;opacity:0;-ms-appearance:none;-moz-appearance:none;-webkit-appearance:none;appearance:none;border:none}.mdl-icon-toggle__label{display:inline-block;position:relative;cursor:pointer;height:32px;width:32px;min-width:32px;color:#616161;border-radius:50%;padding:0;margin-left:0;margin-right:0;text-align:center;background-color:transparent;will-change:background-color;-webkit-transition:background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);transition:background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1)}.mdl-icon-toggle__label.material-icons{line-height:32px;font-size:24px}.mdl-icon-toggle.is-checked .mdl-icon-toggle__label{color:#3f51b5}.mdl-icon-toggle.is-disabled .mdl-icon-toggle__label{color:rgba(0,0,0,.26);cursor:auto;-webkit-transition:none;transition:none}.mdl-icon-toggle.is-focused .mdl-icon-toggle__label{background-color:rgba(0,0,0,.12)}.mdl-icon-toggle.is-focused.is-checked .mdl-icon-toggle__label{background-color:rgba(63,81,181,.26)}.mdl-icon-toggle__ripple-container{position:absolute;z-index:2;top:-2px;left:-2px;width:36px;height:36px;border-radius:50%;cursor:pointer}.mdl-menu,.mdl-menu__outline{position:absolute;top:0;left:0}.mdl-icon-toggle__ripple-container .mdl-ripple{background:#616161}.mdl-icon-toggle.is-disabled .mdl-icon-toggle__ripple-container{cursor:auto}.mdl-icon-toggle.is-disabled .mdl-icon-toggle__ripple-container .mdl-ripple{background:0 0}.mdl-menu__container{display:block;margin:0;padding:0;border:none;position:absolute;overflow:visible;height:0;width:0;visibility:hidden;z-index:-1}.mdl-menu__container.is-animating,.mdl-menu__container.is-visible{z-index:999;visibility:visible}.mdl-menu__outline{background:#fff;padding:0;border-radius:2px;overflow:hidden;opacity:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;will-change:transform;-webkit-transition:-webkit-transform .3s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);z-index:-1}.mdl-menu__item,.mdl-menu__outline{margin:0;display:block;border:none}.mdl-menu__item,.mdl-menu__item[disabled],.mdl-menu__item[disabled]:focus,.mdl-menu__item[disabled]:hover{background-color:transparent}.mdl-menu__container.is-visible .mdl-menu__outline{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);z-index:999}.mdl-menu__outline.mdl-menu--bottom-right{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.mdl-menu__outline.mdl-menu--top-left{-webkit-transform-origin:0 100%;-ms-transform-origin:0 100%;transform-origin:0 100%}.mdl-menu__outline.mdl-menu--top-right{-webkit-transform-origin:100% 100%;-ms-transform-origin:100% 100%;transform-origin:100% 100%}.mdl-menu{list-style:none;height:auto;width:auto;min-width:124px;padding:8px 0;margin:0;opacity:0;clip:rect(0 0 0 0);z-index:-1}.mdl-menu__container.is-visible .mdl-menu{opacity:1;z-index:999}.mdl-menu.is-animating{-webkit-transition:opacity .2s cubic-bezier(.4,0,.2,1),clip .3s cubic-bezier(.4,0,.2,1);transition:opacity .2s cubic-bezier(.4,0,.2,1),clip .3s cubic-bezier(.4,0,.2,1)}.mdl-menu.mdl-menu--bottom-right{left:auto;right:0}.mdl-menu.mdl-menu--top-left{top:auto;bottom:0}.mdl-menu.mdl-menu--top-right{top:auto;left:auto;bottom:0;right:0}.mdl-menu.mdl-menu--unaligned{top:auto;left:auto}.mdl-menu__item{color:rgba(0,0,0,.87);text-align:left;padding:0 16px;outline-color:#bdbdbd;position:relative;overflow:hidden;font-size:14px;font-weight:400;letter-spacing:0;text-decoration:none;cursor:pointer;height:48px;line-height:48px;white-space:nowrap;opacity:0;-webkit-transition:opacity .2s cubic-bezier(.4,0,.2,1);transition:opacity .2s cubic-bezier(.4,0,.2,1);user-select:none}.mdl-layout__tab-bar-button,.mdl-menu__item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.mdl-menu__item:focus,.mdl-textfield.is-focused .mdl-textfield__input{outline:0}.mdl-menu__container.is-visible .mdl-menu__item{opacity:1}.mdl-menu__item::-moz-focus-inner{border:0}.mdl-menu__item[disabled]{color:#bdbdbd;cursor:auto}.mdl-menu__item[disabled] .mdl-ripple{background:0 0}.mdl-menu__item:focus,.mdl-menu__item:hover{background-color:#eee}.mdl-menu__item:active{background-color:#e0e0e0}.mdl-menu__item--ripple-container{display:block;height:100%;left:0;position:absolute;top:0;width:100%;z-index:0;overflow:hidden}.mdl-progress{display:block;position:relative;height:4px;width:500px}.mdl-progress>.bar{display:block;position:absolute;top:0;bottom:0;width:0;-webkit-transition:width .2s cubic-bezier(.4,0,.2,1);transition:width .2s cubic-bezier(.4,0,.2,1)}.mdl-layout,.mdl-navigation{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox}.mdl-progress>.progressbar{background-color:#3f51b5;z-index:1;left:0}.mdl-progress>.bufferbar{background-image:-webkit-linear-gradient(left,rgba(255,255,255,.7),rgba(255,255,255,.7)),-webkit-linear-gradient(left,#3f51b5,#3f51b5);background-image:linear-gradient(to right,rgba(255,255,255,.7),rgba(255,255,255,.7)),linear-gradient(to right,#3f51b5,#3f51b5);z-index:0;left:0}.mdl-progress>.auxbar{right:0}@supports (-webkit-appearance:none){.mdl-progress:not(.mdl-progress__indeterminate):not(.mdl-progress__indeterminate)>.auxbar{background-image:-webkit-linear-gradient(left,rgba(255,255,255,.7),rgba(255,255,255,.7)),-webkit-linear-gradient(left,#3f51b5,#3f51b5);background-image:linear-gradient(to right,rgba(255,255,255,.7),rgba(255,255,255,.7)),linear-gradient(to right,#3f51b5,#3f51b5);-webkit-mask:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+Cjxzdmcgd2lkdGg9IjEyIiBoZWlnaHQ9IjQiIHZpZXdQb3J0PSIwIDAgMTIgNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxlbGxpcHNlIGN4PSIyIiBjeT0iMiIgcng9IjIiIHJ5PSIyIj4KICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN4IiBmcm9tPSIyIiB0bz0iLTEwIiBkdXI9IjAuNnMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPgogIDwvZWxsaXBzZT4KICA8ZWxsaXBzZSBjeD0iMTQiIGN5PSIyIiByeD0iMiIgcnk9IjIiIGNsYXNzPSJsb2FkZXIiPgogICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iY3giIGZyb209IjE0IiB0bz0iMiIgZHVyPSIwLjZzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgLz4KICA8L2VsbGlwc2U+Cjwvc3ZnPgo=);mask:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+Cjxzdmcgd2lkdGg9IjEyIiBoZWlnaHQ9IjQiIHZpZXdQb3J0PSIwIDAgMTIgNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxlbGxpcHNlIGN4PSIyIiBjeT0iMiIgcng9IjIiIHJ5PSIyIj4KICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN4IiBmcm9tPSIyIiB0bz0iLTEwIiBkdXI9IjAuNnMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPgogIDwvZWxsaXBzZT4KICA8ZWxsaXBzZSBjeD0iMTQiIGN5PSIyIiByeD0iMiIgcnk9IjIiIGNsYXNzPSJsb2FkZXIiPgogICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iY3giIGZyb209IjE0IiB0bz0iMiIgZHVyPSIwLjZzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgLz4KICA8L2VsbGlwc2U+Cjwvc3ZnPgo=)}}.mdl-progress:not(.mdl-progress__indeterminate)>.auxbar{background-image:-webkit-linear-gradient(left,rgba(255,255,255,.9),rgba(255,255,255,.9)),-webkit-linear-gradient(left,#3f51b5,#3f51b5);background-image:linear-gradient(to right,rgba(255,255,255,.9),rgba(255,255,255,.9)),linear-gradient(to right,#3f51b5,#3f51b5)}.mdl-progress.mdl-progress__indeterminate>.bar1{background-color:#3f51b5;-webkit-animation-name:indeterminate1;animation-name:indeterminate1;animation-duration:2s;animation-iteration-count:infinite;animation-timing-function:linear}.mdl-progress.mdl-progress__indeterminate>.bar1,.mdl-progress.mdl-progress__indeterminate>.bar3{-webkit-animation-duration:2s;-webkit-animation-iteration-count:infinite;-webkit-animation-timing-function:linear}.mdl-progress.mdl-progress__indeterminate>.bar3{background-image:none;background-color:#3f51b5;-webkit-animation-name:indeterminate2;animation-name:indeterminate2;animation-duration:2s;animation-iteration-count:infinite;animation-timing-function:linear}@-webkit-keyframes indeterminate1{0%{left:0;width:0}50%{left:25%;width:75%}75%{left:100%;width:0}}@keyframes indeterminate1{0%{left:0;width:0}50%{left:25%;width:75%}75%{left:100%;width:0}}@-webkit-keyframes indeterminate2{0%,50%{left:0;width:0}75%{left:0;width:25%}100%{left:100%;width:0}}@keyframes indeterminate2{0%,50%{left:0;width:0}75%{left:0;width:25%}100%{left:100%;width:0}}.mdl-navigation{display:flex;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;box-sizing:border-box}.mdl-navigation__link{color:#424242;text-decoration:none;font-weight:500;font-size:13px;margin:0}.mdl-layout{width:100%;height:100%;display:flex;-webkit-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;overflow-y:auto;overflow-x:hidden;position:relative;-webkit-overflow-scrolling:touch}.mdl-layout.is-small-screen .mdl-layout--large-screen-only,.mdl-layout:not(.is-small-screen) .mdl-layout--small-screen-only{display:none}.mdl-layout__container{position:absolute;width:100%;height:100%}.mdl-layout-title{display:block;position:relative;font-family:Roboto,Helvetica,Arial,sans-serif;font-size:20px;line-height:1;letter-spacing:.02em;font-weight:400;box-sizing:border-box}.mdl-layout-spacer{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.mdl-layout__drawer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;width:240px;height:100%;max-height:100%;position:absolute;top:0;left:0;box-sizing:border-box;border-right:1px solid #e0e0e0;background:#fafafa;-webkit-transform:translateX(-250px);-ms-transform:translateX(-250px);transform:translateX(-250px);-webkit-transform-style:preserve-3d;transform-style:preserve-3d;will-change:transform;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-property:-webkit-transform;transition-property:transform;color:#424242;overflow:visible;overflow-y:auto;z-index:5}.mdl-layout__drawer.is-visible{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.mdl-layout__drawer>*{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.mdl-layout__drawer>.mdl-layout-title{line-height:64px;padding-left:40px}@media screen and (max-width:1024px){.mdl-layout__drawer>.mdl-layout-title{line-height:56px;padding-left:16px}}.mdl-layout__drawer .mdl-navigation{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch;padding-top:16px}.mdl-layout__drawer .mdl-navigation .mdl-navigation__link{display:block;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;padding:16px 40px;margin:0;color:#757575}.mdl-layout__drawer .mdl-navigation .mdl-navigation__link:hover{background-color:#e0e0e0}.mdl-layout__drawer .mdl-navigation .mdl-navigation__link--current{background-color:#000;color:#3f51b5}.mdl-layout__drawer-button{display:block;position:absolute;height:48px;width:48px;border:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;overflow:hidden;text-align:center;cursor:pointer;font-size:26px;line-height:50px;font-family:Helvetica,Arial,sans-serif;margin:10px 12px;top:0;left:0;color:#fff;z-index:4}.mdl-layout__header .mdl-layout__drawer-button{position:absolute;color:#fff;background-color:inherit}@media screen and (max-width:1024px){.mdl-layout__drawer .mdl-navigation .mdl-navigation__link{padding:16px}.mdl-layout__header .mdl-layout__drawer-button{margin:4px}.mdl-layout__drawer-button{margin:4px;color:rgba(0,0,0,.5)}}@media screen and (min-width:1025px){.mdl-layout--fixed-drawer>.mdl-layout__drawer{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.mdl-layout--fixed-drawer>.mdl-layout__drawer-button{display:none}}.mdl-layout__header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;box-sizing:border-box;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:100%;margin:0;padding:0;border:none;min-height:64px;max-height:1000px;z-index:3;background-color:#3f51b5;color:#fff;-webkit-transition-duration:.2s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-property:max-height,box-shadow;transition-property:max-height,box-shadow}.mdl-layout__header,.mdl-layout__obfuscator{-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1)}.mdl-layout--fixed-drawer:not(.is-small-screen)>.mdl-layout__header{margin-left:240px;width:calc(100% - 240px)}.mdl-layout__header-row,.mdl-layout__header-row .mdl-navigation{-webkit-box-orient:horizontal;-webkit-box-direction:normal;margin:0}@media screen and (min-width:1024px){.mdl-layout--fixed-drawer>.mdl-layout__header .mdl-layout__header-row{padding-left:40px}}.mdl-layout__header>.mdl-layout-icon{position:absolute;left:40px;top:16px;height:32px;width:32px;overflow:hidden;z-index:3;display:block}.mdl-layout.has-drawer .mdl-layout__header>.mdl-layout-icon{display:none}.mdl-layout__header.is-compact{max-height:64px}.mdl-layout__header.is-compact.has-tabs{height:112px}@media screen and (max-width:1024px){.mdl-layout__header{min-height:56px;display:none}.mdl-layout__header>.mdl-layout-icon{left:16px;top:12px}.mdl-layout__header.is-compact{max-height:56px}.mdl-layout__header.is-compact.has-tabs{min-height:104px}.mdl-layout--fixed-header>.mdl-layout__header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}}.mdl-layout__header--transparent.mdl-layout__header--transparent{background-color:transparent;box-shadow:none}.mdl-layout__header--scroll,.mdl-layout__header--seamed{box-shadow:none}.mdl-layout__header--waterfall{box-shadow:none;overflow:hidden}.mdl-layout__header--waterfall.is-casting-shadow,.mdl-switch__thumb{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12)}.mdl-layout__header-row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;box-sizing:border-box;-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:64px;padding:0 40px 0 80px}@media screen and (max-width:1024px){.mdl-layout__header-row{height:56px;padding:0 16px 0 72px}}.mdl-layout__header-row>*{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.mdl-layout__header--scroll .mdl-layout__header-row{width:100%}.mdl-layout__header-row .mdl-navigation{padding:0;height:64px;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.mdl-layout__header-row .mdl-navigation__link{display:block;color:#fff;line-height:64px;padding:0 24px}@media screen and (max-width:1024px){.mdl-layout__header-row .mdl-navigation{height:56px}.mdl-layout__header-row .mdl-navigation__link{line-height:56px;padding:0 16px}}.mdl-layout__tab,.mdl-layout__tab-bar-button .material-icons{line-height:48px}.mdl-layout__obfuscator{background-color:transparent;position:absolute;top:0;left:0;height:100%;width:100%;z-index:4;visibility:hidden;-webkit-transition-property:background-color;transition-property:background-color;-webkit-transition-duration:.2s;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.mdl-layout__drawer.is-visible~.mdl-layout__obfuscator{background-color:rgba(0,0,0,.5);visibility:visible}.mdl-layout__content{-ms-flex:0 1 auto;display:inline-block;overflow-y:auto;overflow-x:hidden;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;z-index:1;-webkit-overflow-scrolling:touch}.mdl-layout--fixed-drawer>.mdl-layout__content{margin-left:240px}.mdl-layout__container.has-scrolling-header .mdl-layout__content{overflow:visible}@media screen and (max-width:1024px){.mdl-layout--fixed-drawer>.mdl-layout__content{margin-left:0}.mdl-layout__container.has-scrolling-header .mdl-layout__content{overflow-y:auto;overflow-x:hidden}}.mdl-layout__tab-bar{height:96px;margin:0;width:calc(100% - 112px);padding:0 0 0 56px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:#3f51b5;overflow-y:hidden;overflow-x:scroll}.mdl-layout__tab-bar::-webkit-scrollbar{display:none}@media screen and (max-width:1024px){.mdl-layout__tab-bar{width:calc(100% - 60px);padding:0 0 0 60px}}.mdl-layout--fixed-tabs .mdl-layout__tab-bar{padding:0;overflow:hidden;width:100%}.mdl-layout__tab-bar-container{position:relative;height:48px;width:100%;border:none;margin:0;z-index:2;-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;overflow:hidden}.mdl-layout__container>.mdl-layout__tab-bar-container{position:absolute;top:0;left:0}.mdl-layout__tab-bar-button{display:inline-block;position:absolute;top:0;height:48px;width:56px;z-index:4;text-align:center;background-color:#3f51b5;color:transparent;cursor:pointer;user-select:none}@media screen and (max-width:1024px){.mdl-layout__tab-bar-button{display:none;width:60px}}.mdl-layout--fixed-tabs .mdl-layout__tab-bar-button{display:none}.mdl-layout__tab-bar-button.is-active{color:#fff}.mdl-layout__tab-bar-left-button{left:0}.mdl-layout__tab-bar-right-button{right:0}.mdl-layout__tab{margin:0;border:none;padding:0 24px;float:left;position:relative;display:block;-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;height:48px;text-align:center;font-weight:500;font-size:14px;color:rgba(255,255,255,.6);overflow:hidden}.mdl-radio,.mdl-radio__button,.mdl-switch__input{line-height:24px}@media screen and (max-width:1024px){.mdl-layout__tab{padding:0 12px}}.mdl-layout--fixed-tabs .mdl-layout__tab{float:none;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;padding:0}.mdl-layout.is-upgraded .mdl-layout__tab.is-active{color:#fff}.mdl-layout.is-upgraded .mdl-layout__tab.is-active::after{height:2px;width:100%;display:block;content:" ";bottom:0;left:0;position:absolute;background:#ff4081;-webkit-animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;-webkit-transition:all 1s cubic-bezier(.4,0,1,1);transition:all 1s cubic-bezier(.4,0,1,1)}.mdl-layout__tab .mdl-layout__tab-ripple-container{display:block;position:absolute;height:100%;width:100%;left:0;top:0;z-index:1;overflow:hidden}.mdl-layout__tab .mdl-layout__tab-ripple-container .mdl-ripple{background-color:#fff}.mdl-layout__tab-panel{display:block}.mdl-layout.is-upgraded .mdl-layout__tab-panel{display:none}.mdl-layout.is-upgraded .mdl-layout__tab-panel.is-active{display:block}.mdl-radio,.mdl-radio__outer-circle{margin:0;box-sizing:border-box;display:inline-block}.mdl-radio{position:relative;font-size:16px;padding-left:0}.mdl-radio.is-upgraded{padding-left:24px}.mdl-radio.is-upgraded .mdl-radio__button{position:absolute;width:0;height:0;margin:0;padding:0;opacity:0;-ms-appearance:none;-moz-appearance:none;-webkit-appearance:none;appearance:none;border:none}.mdl-radio__outer-circle{position:absolute;top:4px;left:0;width:16px;height:16px;cursor:pointer;border:2px solid rgba(0,0,0,.54);border-radius:50%;z-index:2}.mdl-radio.is-checked .mdl-radio__outer-circle{border:2px solid #3f51b5}.mdl-radio.is-disabled .mdl-radio__outer-circle{border:2px solid rgba(0,0,0,.26);cursor:auto}.mdl-radio__inner-circle{position:absolute;z-index:1;margin:0;top:8px;left:4px;box-sizing:border-box;width:8px;height:8px;cursor:pointer;-webkit-transition-duration:.28s;transition-duration:.28s;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-property:-webkit-transform;transition-property:transform;-webkit-transform:scale3d(0,0,0);transform:scale3d(0,0,0);border-radius:50%;background:#3f51b5}.mdl-radio__ripple-container,.mdl-switch__ripple-container{box-sizing:border-box;z-index:2;-webkit-mask-image:-webkit-radial-gradient(circle,#fff,#000)}.mdl-radio.is-checked .mdl-radio__inner-circle{-webkit-transform:scale3d(1,1,1);transform:scale3d(1,1,1)}.mdl-radio.is-disabled .mdl-radio__inner-circle{background:rgba(0,0,0,.26);cursor:auto}.mdl-radio.is-focused .mdl-radio__inner-circle{box-shadow:0 0 0 10px rgba(0,0,0,.1)}.mdl-radio__label{cursor:pointer}.mdl-radio.is-disabled .mdl-radio__label{color:rgba(0,0,0,.26);cursor:auto}.mdl-radio__ripple-container{position:absolute;top:-9px;left:-13px;width:42px;height:42px;border-radius:50%;cursor:pointer;overflow:hidden}.mdl-radio__ripple-container .mdl-ripple{background:#3f51b5}.mdl-radio.is-disabled .mdl-radio__ripple-container{cursor:auto}.mdl-radio.is-disabled .mdl-radio__ripple-container .mdl-ripple{background:0 0}:root .mdl-slider.mdl-slider.is-upgraded,_:-ms-input-placeholder{-ms-appearance:none;height:32px;margin:0}.mdl-slider{width:calc(100% - 40px);margin:0 20px}.mdl-slider.is-upgraded{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:2px;background:0 0;user-select:none;outline:0;padding:0;color:#3f51b5;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;z-index:1;cursor:pointer}.mdl-slider.is-upgraded,.mdl-switch{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.mdl-slider.is-upgraded::-moz-focus-outer{border:0}.mdl-slider.is-upgraded::-ms-tooltip{display:none}.mdl-slider.is-upgraded::-webkit-slider-runnable-track{background:0 0}.mdl-slider.is-upgraded::-moz-range-track{background:0 0;border:none}.mdl-slider.is-upgraded::-ms-track{background:0 0;color:transparent;height:2px;width:100%;border:none}.mdl-slider.is-upgraded::-ms-fill-lower{padding:0;background:linear-gradient(to right,transparent,transparent 16px,#3f51b5 16px,#3f51b5 0)}.mdl-slider.is-upgraded::-ms-fill-upper{padding:0;background:linear-gradient(to left,transparent,transparent 16px,rgba(0,0,0,.26) 16px,rgba(0,0,0,.26) 0)}.mdl-slider.is-upgraded::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;box-sizing:border-box;border-radius:50%;background:#3f51b5;border:none;-webkit-transition:-webkit-transform .18s cubic-bezier(.4,0,.2,1),border .18s cubic-bezier(.4,0,.2,1),box-shadow .18s cubic-bezier(.4,0,.2,1),background .28s cubic-bezier(.4,0,.2,1);transition:transform .18s cubic-bezier(.4,0,.2,1),border .18s cubic-bezier(.4,0,.2,1),box-shadow .18s cubic-bezier(.4,0,.2,1),background .28s cubic-bezier(.4,0,.2,1)}.mdl-slider.is-upgraded::-moz-range-thumb{-moz-appearance:none;width:12px;height:12px;box-sizing:border-box;border-radius:50%;background:#3f51b5;border:none}.mdl-slider.is-upgraded:focus:not(:active)::-webkit-slider-thumb{box-shadow:0 0 0 10px rgba(63,81,181,.26)}.mdl-slider.is-upgraded:focus:not(:active)::-moz-range-thumb{box-shadow:0 0 0 10px rgba(63,81,181,.26)}.mdl-slider.is-upgraded:active::-webkit-slider-thumb{background:#3f51b5;-webkit-transform:scale(1.5);transform:scale(1.5)}.mdl-slider.is-upgraded:active::-moz-range-thumb{background:#3f51b5;transform:scale(1.5)}.mdl-slider.is-upgraded::-ms-thumb{width:32px;height:32px;border:none;border-radius:50%;background:#3f51b5;-ms-transform:scale(.375);transform:scale(.375);transition:transform .18s cubic-bezier(.4,0,.2,1),background .28s cubic-bezier(.4,0,.2,1)}.mdl-slider.is-upgraded:focus:not(:active)::-ms-thumb{background:radial-gradient(circle closest-side,#3f51b5 0,#3f51b5 37.5%,rgba(63,81,181,.26) 37.5%,rgba(63,81,181,.26) 100%);-ms-transform:scale(1);transform:scale(1)}.mdl-slider.is-upgraded:active::-ms-thumb{background:#3f51b5;-ms-transform:scale(.5625);transform:scale(.5625)}.mdl-slider.is-upgraded.is-lowest-value::-webkit-slider-thumb{border:2px solid rgba(0,0,0,.26);background:0 0}.mdl-slider.is-upgraded.is-lowest-value::-moz-range-thumb{border:2px solid rgba(0,0,0,.26);background:0 0}.mdl-slider.is-upgraded.is-lowest-value~.mdl-slider__background-flex>.mdl-slider__background-upper{left:6px}.mdl-slider.is-upgraded.is-lowest-value:focus:not(:active)::-webkit-slider-thumb{box-shadow:0 0 0 10px rgba(0,0,0,.12);background:rgba(0,0,0,.12)}.mdl-slider.is-upgraded.is-lowest-value:focus:not(:active)::-moz-range-thumb{box-shadow:0 0 0 10px rgba(0,0,0,.12);background:rgba(0,0,0,.12)}.mdl-slider.is-upgraded.is-lowest-value:active::-webkit-slider-thumb{border:1.6px solid rgba(0,0,0,.26);-webkit-transform:scale(1.5);transform:scale(1.5)}.mdl-slider.is-upgraded.is-lowest-value:active~.mdl-slider__background-flex>.mdl-slider__background-upper{left:9px}.mdl-slider.is-upgraded.is-lowest-value:active::-moz-range-thumb{border:1.5px solid rgba(0,0,0,.26);transform:scale(1.5)}.mdl-slider.is-upgraded.is-lowest-value::-ms-thumb{background:radial-gradient(circle closest-side,transparent 0,transparent 66.67%,rgba(0,0,0,.26) 66.67%,rgba(0,0,0,.26) 100%)}.mdl-slider.is-upgraded.is-lowest-value:focus:not(:active)::-ms-thumb{background:radial-gradient(circle closest-side,rgba(0,0,0,.12) 0,rgba(0,0,0,.12) 25%,rgba(0,0,0,.26) 25%,rgba(0,0,0,.26) 37.5%,rgba(0,0,0,.12) 37.5%,rgba(0,0,0,.12) 100%);-ms-transform:scale(1);transform:scale(1)}.mdl-slider.is-upgraded.is-lowest-value:active::-ms-thumb{-ms-transform:scale(.5625);transform:scale(.5625);background:radial-gradient(circle closest-side,transparent 0,transparent 77.78%,rgba(0,0,0,.26) 77.78%,rgba(0,0,0,.26) 100%)}.mdl-slider.is-upgraded.is-lowest-value::-ms-fill-lower{background:0 0}.mdl-slider.is-upgraded.is-lowest-value::-ms-fill-upper{margin-left:6px}.mdl-slider.is-upgraded.is-lowest-value:active::-ms-fill-upper{margin-left:9px}.mdl-slider.is-upgraded:disabled::-webkit-slider-thumb,.mdl-slider.is-upgraded:disabled:active::-webkit-slider-thumb,.mdl-slider.is-upgraded:disabled:focus::-webkit-slider-thumb{-webkit-transform:scale(.667);transform:scale(.667);background:rgba(0,0,0,.26)}.mdl-slider.is-upgraded:disabled::-moz-range-thumb,.mdl-slider.is-upgraded:disabled:active::-moz-range-thumb,.mdl-slider.is-upgraded:disabled:focus::-moz-range-thumb{transform:scale(.667);background:rgba(0,0,0,.26)}.mdl-slider.is-upgraded:disabled~.mdl-slider__background-flex>.mdl-slider__background-lower{background-color:rgba(0,0,0,.26);left:-6px}.mdl-slider.is-upgraded.is-lowest-value:disabled:active~.mdl-slider__background-flex>.mdl-slider__background-upper,.mdl-slider.is-upgraded:disabled~.mdl-slider__background-flex>.mdl-slider__background-upper{left:6px}.mdl-slider.is-upgraded.is-lowest-value:disabled::-webkit-slider-thumb,.mdl-slider.is-upgraded.is-lowest-value:disabled:active::-webkit-slider-thumb,.mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-webkit-slider-thumb{border:3px solid rgba(0,0,0,.26);background:0 0;-webkit-transform:scale(.667);transform:scale(.667)}.mdl-slider.is-upgraded.is-lowest-value:disabled::-moz-range-thumb,.mdl-slider.is-upgraded.is-lowest-value:disabled:active::-moz-range-thumb,.mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-moz-range-thumb{border:3px solid rgba(0,0,0,.26);background:0 0;transform:scale(.667)}.mdl-slider.is-upgraded:disabled::-ms-thumb,.mdl-slider.is-upgraded:disabled:active::-ms-thumb,.mdl-slider.is-upgraded:disabled:focus::-ms-thumb{-ms-transform:scale(.25);transform:scale(.25);background:rgba(0,0,0,.26)}.mdl-slider.is-upgraded.is-lowest-value:disabled::-ms-thumb,.mdl-slider.is-upgraded.is-lowest-value:disabled:active::-ms-thumb,.mdl-slider.is-upgraded.is-lowest-value:disabled:focus::-ms-thumb{-ms-transform:scale(.25);transform:scale(.25);background:radial-gradient(circle closest-side,transparent 0,transparent 50%,rgba(0,0,0,.26) 50%,rgba(0,0,0,.26) 100%)}.mdl-slider.is-upgraded:disabled::-ms-fill-lower{margin-right:6px;background:linear-gradient(to right,transparent,transparent 25px,rgba(0,0,0,.26) 25px,rgba(0,0,0,.26) 0)}.mdl-slider__background-flex,.mdl-slider__container{background:0 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox}.mdl-slider.is-upgraded:disabled::-ms-fill-upper{margin-left:6px}.mdl-slider.is-upgraded.is-lowest-value:disabled:active::-ms-fill-upper{margin-left:6px}.mdl-slider__ie-container{height:18px;overflow:visible;border:none;margin:none;padding:none}.mdl-slider__container{height:18px;position:relative;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.mdl-slider__background-flex{position:absolute;height:2px;width:calc(100% - 52px);top:50%;left:0;margin:0 26px;display:flex;overflow:hidden;border:0;padding:0;-webkit-transform:translate(0,-1px);-ms-transform:translate(0,-1px);transform:translate(0,-1px)}.mdl-slider__background-lower{background:#3f51b5;-webkit-box-flex:0;-webkit-flex:0;-ms-flex:0;flex:0;position:relative;border:0;padding:0}.mdl-slider__background-upper{background:rgba(0,0,0,.26);-webkit-box-flex:0;-webkit-flex:0;-ms-flex:0;flex:0;position:relative;border:0;padding:0;-webkit-transition:left .18s cubic-bezier(.4,0,.2,1);transition:left .18s cubic-bezier(.4,0,.2,1)}.mdl-spinner{display:inline-block;position:relative;width:28px;height:28px}.mdl-spinner:not(.is-upgraded).is-active:after{content:"Loading..."}.mdl-spinner.is-upgraded.is-active{-webkit-animation:mdl-spinner__container-rotate 1568.23529412ms linear infinite;animation:mdl-spinner__container-rotate 1568.23529412ms linear infinite}@-webkit-keyframes mdl-spinner__container-rotate{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes mdl-spinner__container-rotate{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.mdl-spinner__layer{position:absolute;width:100%;height:100%;opacity:0}.mdl-spinner__layer-1{border-color:#42a5f5}.mdl-spinner--single-color .mdl-spinner__layer-1{border-color:#3f51b5}.mdl-spinner.is-active .mdl-spinner__layer-1{-webkit-animation:mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,mdl-spinner__layer-1-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,mdl-spinner__layer-1-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both}.mdl-spinner__layer-2{border-color:#f44336}.mdl-spinner--single-color .mdl-spinner__layer-2{border-color:#3f51b5}.mdl-spinner.is-active .mdl-spinner__layer-2{-webkit-animation:mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,mdl-spinner__layer-2-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,mdl-spinner__layer-2-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both}.mdl-spinner__layer-3{border-color:#fdd835}.mdl-spinner--single-color .mdl-spinner__layer-3{border-color:#3f51b5}.mdl-spinner.is-active .mdl-spinner__layer-3{-webkit-animation:mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,mdl-spinner__layer-3-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,mdl-spinner__layer-3-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both}.mdl-spinner__layer-4{border-color:#4caf50}.mdl-spinner--single-color .mdl-spinner__layer-4{border-color:#3f51b5}.mdl-spinner.is-active .mdl-spinner__layer-4{-webkit-animation:mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,mdl-spinner__layer-4-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both;animation:mdl-spinner__fill-unfill-rotate 5332ms cubic-bezier(.4,0,.2,1) infinite both,mdl-spinner__layer-4-fade-in-out 5332ms cubic-bezier(.4,0,.2,1) infinite both}@-webkit-keyframes mdl-spinner__fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}to{-webkit-transform:rotate(1080deg);transform:rotate(1080deg)}}@keyframes mdl-spinner__fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}to{-webkit-transform:rotate(1080deg);transform:rotate(1080deg)}}@-webkit-keyframes mdl-spinner__layer-1-fade-in-out{100%,25%,90%,from{opacity:.99}26%,89%{opacity:0}}@keyframes mdl-spinner__layer-1-fade-in-out{100%,25%,90%,from{opacity:.99}26%,89%{opacity:0}}@-webkit-keyframes mdl-spinner__layer-2-fade-in-out{15%,51%,from{opacity:0}25%,50%{opacity:.99}}@keyframes mdl-spinner__layer-2-fade-in-out{15%,51%,from{opacity:0}25%,50%{opacity:.99}}@-webkit-keyframes mdl-spinner__layer-3-fade-in-out{40%,76%,from{opacity:0}50%,75%{opacity:.99}}@keyframes mdl-spinner__layer-3-fade-in-out{40%,76%,from{opacity:0}50%,75%{opacity:.99}}@-webkit-keyframes mdl-spinner__layer-4-fade-in-out{100%,65%,from{opacity:0}75%,90%{opacity:.99}}@keyframes mdl-spinner__layer-4-fade-in-out{100%,65%,from{opacity:0}75%,90%{opacity:.99}}.mdl-spinner__gap-patch{position:absolute;box-sizing:border-box;top:0;left:45%;width:10%;height:100%;overflow:hidden;border-color:inherit}.mdl-spinner__gap-patch .mdl-spinner__circle{width:1000%;left:-450%}.mdl-spinner__circle-clipper{display:inline-block;position:relative;width:50%;height:100%;overflow:hidden;border-color:inherit}.mdl-spinner__circle-clipper .mdl-spinner__circle{width:200%}.mdl-spinner__circle{box-sizing:border-box;height:100%;border-width:3px;border-style:solid;border-color:inherit;border-bottom-color:transparent!important;border-radius:50%;-webkit-animation:none;animation:none;position:absolute;top:0;right:0;bottom:0;left:0}.mdl-spinner__left .mdl-spinner__circle{border-right-color:transparent!important;-webkit-transform:rotate(129deg);-ms-transform:rotate(129deg);transform:rotate(129deg)}.mdl-spinner.is-active .mdl-spinner__left .mdl-spinner__circle{-webkit-animation:mdl-spinner__left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;animation:mdl-spinner__left-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both}.mdl-spinner__right .mdl-spinner__circle{left:-100%;border-left-color:transparent!important;-webkit-transform:rotate(-129deg);-ms-transform:rotate(-129deg);transform:rotate(-129deg)}.mdl-spinner.is-active .mdl-spinner__right .mdl-spinner__circle{-webkit-animation:mdl-spinner__right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both;animation:mdl-spinner__right-spin 1333ms cubic-bezier(.4,0,.2,1) infinite both}@-webkit-keyframes mdl-spinner__left-spin{from,to{-webkit-transform:rotate(130deg);transform:rotate(130deg)}50%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}}@keyframes mdl-spinner__left-spin{from,to{-webkit-transform:rotate(130deg);transform:rotate(130deg)}50%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}}@-webkit-keyframes mdl-spinner__right-spin{from,to{-webkit-transform:rotate(-130deg);transform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}}@keyframes mdl-spinner__right-spin{from,to{-webkit-transform:rotate(-130deg);transform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}}.mdl-switch{position:relative;z-index:1;vertical-align:middle;display:inline-block;box-sizing:border-box;width:100%;height:24px;margin:0;padding:0;overflow:visible;-webkit-touch-callout:none;user-select:none}.mdl-switch.is-upgraded{padding-left:28px}.mdl-switch.is-upgraded .mdl-switch__input{position:absolute;width:0;height:0;margin:0;padding:0;opacity:0;-ms-appearance:none;-moz-appearance:none;-webkit-appearance:none;appearance:none;border:none}.mdl-switch__track{background:rgba(0,0,0,.26);position:absolute;left:0;top:5px;height:14px;width:36px;border-radius:14px;cursor:pointer}.mdl-switch.is-checked .mdl-switch__track{background:rgba(63,81,181,.5)}.mdl-switch.is-disabled .mdl-switch__track{background:rgba(0,0,0,.12);cursor:auto}.mdl-switch__thumb{background:#fafafa;position:absolute;left:0;top:2px;height:20px;width:20px;cursor:pointer;-webkit-transition-duration:.28s;transition-duration:.28s;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1);transition-property:left}.mdl-switch__ripple-container,.mdl-switch__thumb{border-radius:50%;-webkit-transition-property:left}.mdl-switch.is-checked .mdl-switch__thumb{background:#3f51b5;left:16px;box-shadow:0 3px 4px 0 rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.2),0 1px 8px 0 rgba(0,0,0,.12)}.mdl-switch.is-disabled .mdl-switch__thumb{background:#bdbdbd;cursor:auto}.mdl-switch__focus-helper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-4px,-4px);-ms-transform:translate(-4px,-4px);transform:translate(-4px,-4px);display:inline-block;box-sizing:border-box;width:8px;height:8px;border-radius:50%;background-color:transparent}.mdl-switch.is-focused .mdl-switch__focus-helper{box-shadow:0 0 0 20px rgba(0,0,0,.1);background-color:rgba(0,0,0,.1)}.mdl-switch.is-focused.is-checked .mdl-switch__focus-helper{box-shadow:0 0 0 20px rgba(63,81,181,.26);background-color:rgba(63,81,181,.26)}.mdl-switch__label{position:relative;cursor:pointer;font-size:16px;line-height:24px;margin:0;left:24px}.mdl-switch.is-disabled .mdl-switch__label{color:#bdbdbd;cursor:auto}.mdl-switch__ripple-container{position:absolute;top:-12px;left:-14px;width:48px;height:48px;cursor:pointer;overflow:hidden;-webkit-transition-duration:.4s;transition-duration:.4s;-webkit-transition-timing-function:step-end;transition-timing-function:step-end;transition-property:left}.mdl-switch__ripple-container .mdl-ripple{background:#3f51b5}.mdl-switch.is-disabled .mdl-switch__ripple-container{cursor:auto}.mdl-switch.is-disabled .mdl-switch__ripple-container .mdl-ripple{background:0 0}.mdl-switch.is-checked .mdl-switch__ripple-container{cursor:auto;left:2px}.mdl-tabs{display:block;width:100%}.mdl-tabs__tab-bar{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-content:space-between;-ms-flex-line-pack:justify;align-content:space-between;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;height:48px;padding:0;margin:0;border-bottom:1px solid #e0e0e0}.mdl-tabs__tab{margin:0;border:none;padding:0 24px;float:left;position:relative;display:block;color:red;height:48px;line-height:48px;text-align:center;font-weight:500;font-size:14px;color:rgba(0,0,0,.54);overflow:hidden}.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active{color:rgba(0,0,0,.87)}.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after{height:2px;width:100%;display:block;content:" ";bottom:0;left:0;position:absolute;background:#3f51b5;-webkit-animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;animation:border-expand .2s cubic-bezier(.4,0,.4,1) .01s alternate forwards;-webkit-transition:all 1s cubic-bezier(.4,0,1,1);transition:all 1s cubic-bezier(.4,0,1,1)}.mdl-tabs__tab .mdl-tabs__ripple-container{display:block;position:absolute;height:100%;width:100%;left:0;top:0;z-index:1;overflow:hidden}.mdl-tabs__tab .mdl-tabs__ripple-container .mdl-ripple{background:#3f51b5}.mdl-tabs__panel{display:block}.mdl-tabs.is-upgraded .mdl-tabs__panel{display:none}.mdl-tabs.is-upgraded .mdl-tabs__panel.is-active{display:block}@-webkit-keyframes border-expand{0%{opacity:0;width:0}100%{opacity:1;width:100%}}@keyframes border-expand{0%{opacity:0;width:0}100%{opacity:1;width:100%}}.mdl-textfield{position:relative;font-size:16px;display:inline-block;box-sizing:border-box;width:300px;max-width:100%;margin:0;padding:20px 0}.mdl-textfield .mdl-button{position:absolute;bottom:20px}.mdl-textfield--align-right{text-align:right}.mdl-textfield--full-width{width:100%}.mdl-textfield--expandable{min-width:32px;width:auto;min-height:32px}.mdl-textfield__input,.mdl-textfield__label{display:block;font-size:16px;width:100%;text-align:left}.mdl-textfield__input{border:none;border-bottom:1px solid rgba(0,0,0,.12);margin:0;padding:4px 0;color:inherit}.mdl-textfield.is-disabled.is-disabled .mdl-textfield__label,.mdl-textfield__label{color:rgba(0,0,0,.26)}.mdl-textfield.is-invalid .mdl-textfield__input{border-color:#de3226;box-shadow:none}.mdl-textfield.is-disabled .mdl-textfield__input{background-color:transparent;border-bottom:1px dotted rgba(0,0,0,.12);color:rgba(0,0,0,.26)}.mdl-textfield textarea.mdl-textfield__input{display:block}.mdl-textfield__label{bottom:0;left:0;right:0;pointer-events:none;position:absolute;top:24px;overflow:hidden;white-space:nowrap}.mdl-textfield.is-dirty .mdl-textfield__label{visibility:hidden}.mdl-textfield--floating-label .mdl-textfield__label{-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.mdl-textfield--floating-label.is-dirty .mdl-textfield__label,.mdl-textfield--floating-label.is-focused .mdl-textfield__label{color:#3f51b5;font-size:12px;top:4px;visibility:visible}.mdl-textfield--floating-label.is-invalid .mdl-textfield__label,.mdl-textfield__error{color:#de3226;font-size:12px}.mdl-textfield--floating-label.is-dirty .mdl-textfield__expandable-holder .mdl-textfield__label,.mdl-textfield--floating-label.is-focused .mdl-textfield__expandable-holder .mdl-textfield__label{top:-16px}.mdl-textfield__label:after{background-color:#3f51b5;bottom:20px;content:'';height:2px;left:45%;position:absolute;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);visibility:hidden;width:10px}.mdl-textfield__expandable-holder,.mdl-textfield__label:after{-webkit-transition-duration:.2s;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1)}.mdl-textfield.is-focused .mdl-textfield__label:after{left:0;visibility:visible;width:100%}.mdl-textfield.is-invalid .mdl-textfield__label:after{background-color:#de3226}.mdl-textfield__error{position:absolute;margin-top:3px;visibility:hidden;display:block}.mdl-textfield.is-invalid .mdl-textfield__error{visibility:visible}.mdl-textfield__expandable-holder{position:relative;margin-left:32px;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:inline-block;max-width:.1px}.mdl-textfield.is-dirty .mdl-textfield__expandable-holder,.mdl-textfield.is-focused .mdl-textfield__expandable-holder{max-width:600px}.mdl-textfield__expandable-holder .mdl-textfield__label:after{bottom:0}.mdl-tooltip{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:top center;-ms-transform-origin:top center;transform-origin:top center;will-change:transform;z-index:999;background:rgba(97,97,97,.9);border-radius:2px;color:#fff;display:inline-block;font-size:10px;font-weight:500;line-height:14px;max-width:170px;position:fixed;top:-500px;left:-500px;padding:8px;text-align:center}.mdl-tooltip.is-active{-webkit-animation:pulse 200ms cubic-bezier(0,0,.2,1) forwards;animation:pulse 200ms cubic-bezier(0,0,.2,1) forwards}.mdl-tooltip--large{line-height:14px;font-size:14px;padding:16px}@-webkit-keyframes pulse{0%{-webkit-transform:scale(0);transform:scale(0);opacity:0}50%{-webkit-transform:scale(.99);transform:scale(.99)}100%{-webkit-transform:scale(1);transform:scale(1);opacity:1;visibility:visible}}@keyframes pulse{0%{-webkit-transform:scale(0);transform:scale(0);opacity:0}50%{-webkit-transform:scale(.99);transform:scale(.99)}100%{-webkit-transform:scale(1);transform:scale(1);opacity:1;visibility:visible}}.mdl-shadow--2dp{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12)}.mdl-shadow--3dp{box-shadow:0 3px 4px 0 rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.2),0 1px 8px 0 rgba(0,0,0,.12)}.mdl-shadow--4dp{box-shadow:0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.2)}.mdl-shadow--6dp{box-shadow:0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12),0 3px 5px -1px rgba(0,0,0,.2)}.mdl-shadow--8dp{box-shadow:0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.2)}.mdl-shadow--16dp{box-shadow:0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12),0 8px 10px -5px rgba(0,0,0,.2)}.mdl-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;margin:0 auto;-webkit-box-align:stretch;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch}.mdl-grid.mdl-grid--no-spacing{padding:0}.mdl-cell{box-sizing:border-box}.mdl-cell--top{-webkit-align-self:flex-start;-ms-flex-item-align:start;align-self:flex-start}.mdl-cell--middle{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.mdl-cell--bottom{-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.mdl-cell--stretch{-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch}.mdl-grid.mdl-grid--no-spacing>.mdl-cell{margin:0}@media (max-width:479px){.mdl-grid{padding:8px}.mdl-cell{margin:8px;width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell{width:100%}.mdl-cell--hide-phone{display:none!important}.mdl-cell--1-col,.mdl-cell--1-col-phone.mdl-cell--1-col-phone{width:calc(25% - 16px)}.mdl-grid--no-spacing>.mdl-cell--1-col,.mdl-grid--no-spacing>.mdl-cell--1-col-phone.mdl-cell--1-col-phone{width:25%}.mdl-cell--2-col,.mdl-cell--2-col-phone.mdl-cell--2-col-phone{width:calc(50% - 16px)}.mdl-grid--no-spacing>.mdl-cell--2-col,.mdl-grid--no-spacing>.mdl-cell--2-col-phone.mdl-cell--2-col-phone{width:50%}.mdl-cell--3-col,.mdl-cell--3-col-phone.mdl-cell--3-col-phone{width:calc(75% - 16px)}.mdl-grid--no-spacing>.mdl-cell--3-col,.mdl-grid--no-spacing>.mdl-cell--3-col-phone.mdl-cell--3-col-phone{width:75%}.mdl-cell--4-col,.mdl-cell--4-col-phone.mdl-cell--4-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--4-col,.mdl-grid--no-spacing>.mdl-cell--4-col-phone.mdl-cell--4-col-phone{width:100%}.mdl-cell--5-col,.mdl-cell--5-col-phone.mdl-cell--5-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--5-col,.mdl-grid--no-spacing>.mdl-cell--5-col-phone.mdl-cell--5-col-phone{width:100%}.mdl-cell--6-col,.mdl-cell--6-col-phone.mdl-cell--6-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--6-col,.mdl-grid--no-spacing>.mdl-cell--6-col-phone.mdl-cell--6-col-phone{width:100%}.mdl-cell--7-col,.mdl-cell--7-col-phone.mdl-cell--7-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--7-col,.mdl-grid--no-spacing>.mdl-cell--7-col-phone.mdl-cell--7-col-phone{width:100%}.mdl-cell--8-col,.mdl-cell--8-col-phone.mdl-cell--8-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--8-col,.mdl-grid--no-spacing>.mdl-cell--8-col-phone.mdl-cell--8-col-phone{width:100%}.mdl-cell--9-col,.mdl-cell--9-col-phone.mdl-cell--9-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--9-col,.mdl-grid--no-spacing>.mdl-cell--9-col-phone.mdl-cell--9-col-phone{width:100%}.mdl-cell--10-col,.mdl-cell--10-col-phone.mdl-cell--10-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--10-col,.mdl-grid--no-spacing>.mdl-cell--10-col-phone.mdl-cell--10-col-phone{width:100%}.mdl-cell--11-col,.mdl-cell--11-col-phone.mdl-cell--11-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--11-col,.mdl-grid--no-spacing>.mdl-cell--11-col-phone.mdl-cell--11-col-phone{width:100%}.mdl-cell--12-col,.mdl-cell--12-col-phone.mdl-cell--12-col-phone{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--12-col,.mdl-grid--no-spacing>.mdl-cell--12-col-phone.mdl-cell--12-col-phone{width:100%}}@media (min-width:480px) and (max-width:839px){.mdl-grid{padding:8px}.mdl-cell{margin:8px;width:calc(50% - 16px)}.mdl-grid--no-spacing>.mdl-cell{width:50%}.mdl-cell--hide-tablet{display:none!important}.mdl-cell--1-col,.mdl-cell--1-col-tablet.mdl-cell--1-col-tablet{width:calc(12.5% - 16px)}.mdl-grid--no-spacing>.mdl-cell--1-col,.mdl-grid--no-spacing>.mdl-cell--1-col-tablet.mdl-cell--1-col-tablet{width:12.5%}.mdl-cell--2-col,.mdl-cell--2-col-tablet.mdl-cell--2-col-tablet{width:calc(25% - 16px)}.mdl-grid--no-spacing>.mdl-cell--2-col,.mdl-grid--no-spacing>.mdl-cell--2-col-tablet.mdl-cell--2-col-tablet{width:25%}.mdl-cell--3-col,.mdl-cell--3-col-tablet.mdl-cell--3-col-tablet{width:calc(37.5% - 16px)}.mdl-grid--no-spacing>.mdl-cell--3-col,.mdl-grid--no-spacing>.mdl-cell--3-col-tablet.mdl-cell--3-col-tablet{width:37.5%}.mdl-cell--4-col,.mdl-cell--4-col-tablet.mdl-cell--4-col-tablet{width:calc(50% - 16px)}.mdl-grid--no-spacing>.mdl-cell--4-col,.mdl-grid--no-spacing>.mdl-cell--4-col-tablet.mdl-cell--4-col-tablet{width:50%}.mdl-cell--5-col,.mdl-cell--5-col-tablet.mdl-cell--5-col-tablet{width:calc(62.5% - 16px)}.mdl-grid--no-spacing>.mdl-cell--5-col,.mdl-grid--no-spacing>.mdl-cell--5-col-tablet.mdl-cell--5-col-tablet{width:62.5%}.mdl-cell--6-col,.mdl-cell--6-col-tablet.mdl-cell--6-col-tablet{width:calc(75% - 16px)}.mdl-grid--no-spacing>.mdl-cell--6-col,.mdl-grid--no-spacing>.mdl-cell--6-col-tablet.mdl-cell--6-col-tablet{width:75%}.mdl-cell--7-col,.mdl-cell--7-col-tablet.mdl-cell--7-col-tablet{width:calc(87.5% - 16px)}.mdl-grid--no-spacing>.mdl-cell--7-col,.mdl-grid--no-spacing>.mdl-cell--7-col-tablet.mdl-cell--7-col-tablet{width:87.5%}.mdl-cell--8-col,.mdl-cell--8-col-tablet.mdl-cell--8-col-tablet{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--8-col,.mdl-grid--no-spacing>.mdl-cell--8-col-tablet.mdl-cell--8-col-tablet{width:100%}.mdl-cell--9-col,.mdl-cell--9-col-tablet.mdl-cell--9-col-tablet{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--9-col,.mdl-grid--no-spacing>.mdl-cell--9-col-tablet.mdl-cell--9-col-tablet{width:100%}.mdl-cell--10-col,.mdl-cell--10-col-tablet.mdl-cell--10-col-tablet{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--10-col,.mdl-grid--no-spacing>.mdl-cell--10-col-tablet.mdl-cell--10-col-tablet{width:100%}.mdl-cell--11-col,.mdl-cell--11-col-tablet.mdl-cell--11-col-tablet{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--11-col,.mdl-grid--no-spacing>.mdl-cell--11-col-tablet.mdl-cell--11-col-tablet{width:100%}.mdl-cell--12-col,.mdl-cell--12-col-tablet.mdl-cell--12-col-tablet{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--12-col,.mdl-grid--no-spacing>.mdl-cell--12-col-tablet.mdl-cell--12-col-tablet{width:100%}}@media (min-width:840px){.mdl-grid{padding:8px}.mdl-cell{margin:8px;width:calc(33.3333333333% - 16px)}.mdl-grid--no-spacing>.mdl-cell{width:33.3333333333%}.mdl-cell--hide-desktop{display:none!important}.mdl-cell--1-col,.mdl-cell--1-col-desktop.mdl-cell--1-col-desktop{width:calc(8.3333333333% - 16px)}.mdl-grid--no-spacing>.mdl-cell--1-col,.mdl-grid--no-spacing>.mdl-cell--1-col-desktop.mdl-cell--1-col-desktop{width:8.3333333333%}.mdl-cell--2-col,.mdl-cell--2-col-desktop.mdl-cell--2-col-desktop{width:calc(16.6666666667% - 16px)}.mdl-grid--no-spacing>.mdl-cell--2-col,.mdl-grid--no-spacing>.mdl-cell--2-col-desktop.mdl-cell--2-col-desktop{width:16.6666666667%}.mdl-cell--3-col,.mdl-cell--3-col-desktop.mdl-cell--3-col-desktop{width:calc(25% - 16px)}.mdl-grid--no-spacing>.mdl-cell--3-col,.mdl-grid--no-spacing>.mdl-cell--3-col-desktop.mdl-cell--3-col-desktop{width:25%}.mdl-cell--4-col,.mdl-cell--4-col-desktop.mdl-cell--4-col-desktop{width:calc(33.3333333333% - 16px)}.mdl-grid--no-spacing>.mdl-cell--4-col,.mdl-grid--no-spacing>.mdl-cell--4-col-desktop.mdl-cell--4-col-desktop{width:33.3333333333%}.mdl-cell--5-col,.mdl-cell--5-col-desktop.mdl-cell--5-col-desktop{width:calc(41.6666666667% - 16px)}.mdl-grid--no-spacing>.mdl-cell--5-col,.mdl-grid--no-spacing>.mdl-cell--5-col-desktop.mdl-cell--5-col-desktop{width:41.6666666667%}.mdl-cell--6-col,.mdl-cell--6-col-desktop.mdl-cell--6-col-desktop{width:calc(50% - 16px)}.mdl-grid--no-spacing>.mdl-cell--6-col,.mdl-grid--no-spacing>.mdl-cell--6-col-desktop.mdl-cell--6-col-desktop{width:50%}.mdl-cell--7-col,.mdl-cell--7-col-desktop.mdl-cell--7-col-desktop{width:calc(58.3333333333% - 16px)}.mdl-grid--no-spacing>.mdl-cell--7-col,.mdl-grid--no-spacing>.mdl-cell--7-col-desktop.mdl-cell--7-col-desktop{width:58.3333333333%}.mdl-cell--8-col,.mdl-cell--8-col-desktop.mdl-cell--8-col-desktop{width:calc(66.6666666667% - 16px)}.mdl-grid--no-spacing>.mdl-cell--8-col,.mdl-grid--no-spacing>.mdl-cell--8-col-desktop.mdl-cell--8-col-desktop{width:66.6666666667%}.mdl-cell--9-col,.mdl-cell--9-col-desktop.mdl-cell--9-col-desktop{width:calc(75% - 16px)}.mdl-grid--no-spacing>.mdl-cell--9-col,.mdl-grid--no-spacing>.mdl-cell--9-col-desktop.mdl-cell--9-col-desktop{width:75%}.mdl-cell--10-col,.mdl-cell--10-col-desktop.mdl-cell--10-col-desktop{width:calc(83.3333333333% - 16px)}.mdl-grid--no-spacing>.mdl-cell--10-col,.mdl-grid--no-spacing>.mdl-cell--10-col-desktop.mdl-cell--10-col-desktop{width:83.3333333333%}.mdl-cell--11-col,.mdl-cell--11-col-desktop.mdl-cell--11-col-desktop{width:calc(91.6666666667% - 16px)}.mdl-grid--no-spacing>.mdl-cell--11-col,.mdl-grid--no-spacing>.mdl-cell--11-col-desktop.mdl-cell--11-col-desktop{width:91.6666666667%}.mdl-cell--12-col,.mdl-cell--12-col-desktop.mdl-cell--12-col-desktop{width:calc(100% - 16px)}.mdl-grid--no-spacing>.mdl-cell--12-col,.mdl-grid--no-spacing>.mdl-cell--12-col-desktop.mdl-cell--12-col-desktop{width:100%}}
\ No newline at end of file
diff --git a/src/meta/css.js b/src/meta/css.js
index 53388da57b..df613ee39f 100644
--- a/src/meta/css.js
+++ b/src/meta/css.js
@@ -32,7 +32,9 @@ module.exports = function (Meta) {
'@import "../../public/less/generics.less";',
'@import "../../public/less/mixins.less";',
'@import "../../public/less/global.less";',
- ].map(function (str) { return str.replace(/\//g, path.sep); }).join('\n');
+ ].map(function (str) {
+ return str.replace(/\//g, path.sep);
+ }).join('\n');
},
admin: function (source) {
return source + '\n' + [
@@ -42,7 +44,10 @@ module.exports = function (Meta) {
'@import (inline) "../public/vendor/colorpicker/colorpicker.css";',
'@import (inline) "../public/vendor/jquery/css/smoothness/jquery-ui.css";',
'@import (inline) "../public/vendor/jquery/bootstrap-tagsinput/bootstrap-tagsinput.css";',
- ].map(function (str) { return str.replace(/\//g, path.sep); }).join('\n');
+ '@import (inline) "../public/vendor/mdl/material.css";',
+ ].map(function (str) {
+ return str.replace(/\//g, path.sep);
+ }).join('\n');
},
};
@@ -90,7 +95,7 @@ module.exports = function (Meta) {
};
function getStyleSource(files, prefix, extension, callback) {
- var pluginDirectories = [],
+ var pluginDirectories = [],
source = '';
files.forEach(function (styleFile) {
@@ -143,7 +148,7 @@ module.exports = function (Meta) {
return callback(err);
}
- postcss(global.env === 'development' ? [ autoprefixer ] : [
+ postcss(global.env === 'development' ? [autoprefixer] : [
autoprefixer,
clean({
processImportFrom: ['local']
diff --git a/src/views/admin/header.tpl b/src/views/admin/header.tpl
index 23ce1e2c02..b293436106 100644
--- a/src/views/admin/header.tpl
+++ b/src/views/admin/header.tpl
@@ -3,11 +3,10 @@
{title}
-
+
-
-
+
-
+
diff --git a/src/views/admin/manage/tags.tpl b/src/views/admin/manage/tags.tpl
index 41851df893..8fa01a1200 100644
--- a/src/views/admin/manage/tags.tpl
+++ b/src/views/admin/manage/tags.tpl
@@ -10,12 +10,11 @@
-
{tags.value}
-
- {tags.score}
+ background-color: {tags.bgColor};">
+ {tags.score}
+ {tags.value}
From 8b533bb4316a4998e85563f2cb3497ca93ad749d Mon Sep 17 00:00:00 2001
From: Peter Jaszkowiak
Date: Thu, 23 Feb 2017 14:18:07 -0700
Subject: [PATCH 39/39] Fixes #5474
---
src/webserver.js | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/webserver.js b/src/webserver.js
index f6c89b5451..9b3e816c5d 100644
--- a/src/webserver.js
+++ b/src/webserver.js
@@ -159,7 +159,8 @@ function setupExpressApp(app) {
}
function setupFavicon(app) {
- var faviconPath = path.join(nconf.get('base_dir'), 'public', meta.config['brand:favicon'] ? meta.config['brand:favicon'] : 'favicon.ico');
+ var faviconPath = meta.config['brand:favicon'] || 'favicon.ico';
+ faviconPath = path.join(nconf.get('base_dir'), 'public', faviconPath.replace(/assets\/uploads/, 'uploads'));
if (file.existsSync(faviconPath)) {
app.use(nconf.get('relative_path'), favicon(faviconPath));
}