diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3d1ea5d --- /dev/null +++ b/.gitignore @@ -0,0 +1,17 @@ +node_modules/ +config.js + +lib-cov +*.seed +*.log +*.csv +*.dat +*.out +*.pid +*.gz + +pids +logs +results + +npm-debug.log diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..e69de29 diff --git a/app.js b/app.js new file mode 100644 index 0000000..a88d622 --- /dev/null +++ b/app.js @@ -0,0 +1,92 @@ +var express = require('express'); +var path = require('path'); +var favicon = require('serve-favicon'); +var logger = require('morgan'); +var cookieParser = require('cookie-parser'); +var bodyParser = require('body-parser'); +var session = require('express-session'); +var passport = require('passport'); + + +var routes = require('./routes/index'); +var webadmin = require('./routes/webadmin'); +var sesion = require('./routes/session'); +var form = require('./routes/form'); +var stored = require('./routes/stored'); +var admins = require('./routes/admin-users'); + +//var users = require('./routes/users'); + +require('./passport')(passport); + +//var config = require('./config/mongodb-config'); +var app = express(); + +// view engine setup +app.set('views', path.join(__dirname, 'views')); +app.set('view engine', 'jade'); + +// uncomment after placing your favicon in /public +//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico'))); +app.use(logger('dev')); +app.use(bodyParser.json()); +app.use(bodyParser.urlencoded({ extended: false })); +app.use(cookieParser()); +app.use(require('stylus').middleware(path.join(__dirname, 'public'))); +app.use(express.static(path.join(__dirname, 'public'))); + + +// Indicamos que use sesiones, para almacenar el objeto usuario +// y que lo recuerde aunque abandonemos la página +app.use(session({ resave: true, + saveUninitialized: true, + secret: 'lollllo' })); + +//Inicializa PASSPORT +app.use(passport.initialize()); +app.use(passport.session()); + + +app.use('/', routes); +app.use('/webadmin', webadmin); +app.use('/session', sesion); +app.use('/form', form); +app.use('/stored', stored); +app.use('/admin-users', admins); + +//app.use('/users', users); + +//app.use(config); +// catch 404 and forward to error handler +app.use(function(req, res, next) { + var err = new Error('Not Found'); + err.status = 404; + next(err); +}); + +// error handlers + +// development error handler +// will print stacktrace +if (app.get('env') === 'development') { + app.use(function(err, req, res, next) { + res.status(err.status || 500); + res.render('error', { + message: err.message, + error: err + }); + }); +} + +// production error handler +// no stacktraces leaked to user +app.use(function(err, req, res, next) { + res.status(err.status || 500); + res.render('error', { + message: err.message, + error: {} + }); +}); + + +module.exports = app; diff --git a/bin/www b/bin/www new file mode 100644 index 0000000..945ef1e --- /dev/null +++ b/bin/www @@ -0,0 +1,90 @@ +#!/usr/bin/env node + +/** + * Module dependencies. + */ + +var app = require('../app'); +var debug = require('debug')('webadmin:server'); +var http = require('http'); + +/** + * Get port from environment and store in Express. + */ + +var port = normalizePort(process.env.PORT || '3000'); +app.set('port', port); + +/** + * Create HTTP server. + */ + +var server = http.createServer(app); + +/** + * Listen on provided port, on all network interfaces. + */ + +server.listen(port); +server.on('error', onError); +server.on('listening', onListening); + +/** + * Normalize a port into a number, string, or false. + */ + +function normalizePort(val) { + var port = parseInt(val, 10); + + if (isNaN(port)) { + // named pipe + return val; + } + + if (port >= 0) { + // port number + return port; + } + + return false; +} + +/** + * Event listener for HTTP server "error" event. + */ + +function onError(error) { + if (error.syscall !== 'listen') { + throw error; + } + + var bind = typeof port === 'string' + ? 'Pipe ' + port + : 'Port ' + port; + + // handle specific listen errors with friendly messages + switch (error.code) { + case 'EACCES': + console.error(bind + ' requires elevated privileges'); + process.exit(1); + break; + case 'EADDRINUSE': + console.error(bind + ' is already in use'); + process.exit(1); + break; + default: + throw error; + } +} + +/** + * Event listener for HTTP server "listening" event. + */ + +function onListening() { + var addr = server.address(); + var bind = typeof addr === 'string' + ? 'pipe ' + addr + : 'port ' + addr.port; + debug('Listening on ' + bind); +} diff --git a/config/mongodb-config.js b/config/mongodb-config.js new file mode 100644 index 0000000..d8f4ec1 --- /dev/null +++ b/config/mongodb-config.js @@ -0,0 +1,50 @@ + +var mongoose = require('mongoose'); +var user = ''; +var password = ''; +var dbaddress = ''; +//var dblocal = ''; +var database = 'develop'; + +//var url = 'mongodb://'+user+':'+password+'@'+dbaddress+database; +var localurl = 'mongodb://localhost:27017/'+database; + + +var exports = module.exports = {}; +exports.conectar = function (){ + mongoose.connect('mongodb://localhost/develop'); + +} +exports.desconectar = function(){ + mongoose.disconnect(); +} + +/* +var db = ({ + mongoose: mongoose, + //models + page: //require('../models/web')(mongoose), + function(){ + var model = require('../models/web'); + return model(mongoose); + } + +}); +module.exports.db = db; +*/ +/* + if(!global.hasOwnProperty('db')){ + var mongoose = require('mongoose'); + var database = ''; + //mongoose.connect('mongodb://localhost'+database); + + global.db = { + mongoose: mongoose, + + //models + // web: require('../models/web.js')//(mongoose) + }; + } + + module.exports = global.db; + */ \ No newline at end of file diff --git a/models/user.js b/models/user.js new file mode 100644 index 0000000..1527e2f --- /dev/null +++ b/models/user.js @@ -0,0 +1,12 @@ +var mongoose = require('mongoose'), + Schema = mongoose.Schema; + +var userSchema = new Schema({ + name : String, // Nombre del usuario + provider : String, // Cuenta del usuario (Twitter o Facebook en este ejemplo) + provider_id : {type: String}, // ID que proporciona Twitter o Facebook + photo : String, // Avatar o foto del usuario + createdAt : {type: Date, default: Date.now} // Fecha de creación +}); + +module.exports = mongoose.model('user', userSchema); \ No newline at end of file diff --git a/models/web.js b/models/web.js new file mode 100644 index 0000000..1114b5f --- /dev/null +++ b/models/web.js @@ -0,0 +1,78 @@ + +var mongoose = require('mongoose'); +var Schema = mongoose.Schema; + + var webSchema = new Schema({ + name: String + /*type: String, + category: String, + urloffline: String, + owner: String, + urlonline: String, + price: Number, + timessold: Number + */ + }/*,{collection: 'pages'}*/); + +module.exports = mongoose.model('web', webSchema); + + + +/* +module.exports = function(mongoose){ + var Schema = mongoose.Schema; + + var webSchema = new Schema({ + name: String, + type: String, + category: String, + urloffline: String, + owner: String, + urlonline: String, + price: Number, + timessold: Number + },{collection: 'pages'}); + + return mongoose.model('web', webSchema); +} +*/ +//var exports = module.exports = {}; + +/* +exports.addweb = function(webname, type, category, urloff, owner, urlon, price){ + var web = new web({ + name: webname, + type: type, + category: category, + urloffline: urloff, + owner: owner, + urlonline: urlon, + price: price + }); + web.save(function (err) { + if (err) return console.error(err); + console.log('insercion exitosa'); + }); + +} +*/ +//webSchema.methods.add = function(webname, type, category, urloff, owner, urlon, price){ + +/* +function addWeb(webname, type, category, urloff, owner, urlon, price){ + var web = new Web({ + name: webname, + type: type, + category: category, + urloffline: urloff, + owner: owner, + urlonline: urlon, + price: price + }) + web.save(function (err, fluffy) { + if (err) return console.error(err); + console.log('insercion exitosa'); + }); + +} +*/ \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..cfe66c0 --- /dev/null +++ b/package.json @@ -0,0 +1,34 @@ +{ + "name": "webadmin", + "version": "0.0.0", + "private": true, + "scripts": { + "start": "nodemon ./bin/www", + "stylus": "stylus --watch ./views/models_jade/styles --out ./public/stylesheets" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/NerdStudio/webadmin.git" + }, + "dependencies": { + "body-parser": "~1.13.2", + "cookie-parser": "~1.3.5", + "debug": "~2.2.0", + "express": "~4.13.1", + "jade": "~1.11.0", + "mongoose": "^4.1.12", + "morgan": "~1.6.1", + "nodemon": "^1.7.3", + "normalize-styl": "^3.0.3", + "serve-favicon": "~2.3.0", + "stylus": "0.42.3", + "passport": "~0.3.0", + "passport-facebook": "~2.0.0", + "passport-twitter": "~1.0.3", + "express-session": "~1.11.3", + "passport-github2": "~0.1.9" + }, + "devDependencies": { + "stylus": "^0.42.3" + } +} diff --git a/passport.js b/passport.js new file mode 100644 index 0000000..30ac348 --- /dev/null +++ b/passport.js @@ -0,0 +1,133 @@ +var mongoose = require('mongoose'); +//var db = require('./lib/db'); + +var db = require('./config/mongodb-config'); + +//var User = db.mongoose.model('User'); +var User = require('./models/user'); + +// Estrategia de autenticación con Twitter +var TwitterStrategy = require('passport-twitter').Strategy; +// Estrategia de autenticación con Facebook +var FacebookStrategy = require('passport-facebook').Strategy; + +var GitHubStrategy = require('passport-github2').Strategy; +// Fichero de configuración donde se encuentran las API keys +// Este archivo no debe subirse a GitHub ya que contiene datos +// que pueden comprometer la seguridad de la aplicación. +var config = require('./config'); + +// Exportamos como módulo las funciones de passport, de manera que +// podamos utilizarlas en otras partes de la aplicación. +// De esta manera, mantenemos el código separado en varios archivos +// logrando que sea más manejable. +module.exports = function(passport) { + + // Serializa al usuario para almacenarlo en la sesión + passport.serializeUser(function(user, done) { + done(null, user); + }); + + // Deserializa el objeto usuario almacenado en la sesión para + // poder utilizarlo + passport.deserializeUser(function(obj, done) { + done(null, obj); + }); + + // Configuración del autenticado con Twitter + passport.use(new TwitterStrategy({ + consumerKey : config.twitter.key, + consumerSecret : config.twitter.secret, + callbackURL : '/auth/twitter/callback' + }, function(accessToken, refreshToken, profile, done) { + // Busca en la base de datos si el usuario ya se autenticó en otro + // momento y ya está almacenado en ella + //db.conectar(); + User.findOne({provider_id: profile.id}, function(err, user) { + if(err) throw(err); + // Si existe en la Base de Datos, lo devuelve + if(!err && user!= null) return done(null, user); + + // Si no existe crea un nuevo objecto usuario + var user = new User({ + provider_id : profile.id, + provider : profile.provider, + name : profile.displayName, + photo : profile.photos[0].value + }); + //...y lo almacena en la base de datos + user.save(function(err) { + if(err) throw err; + done(null, user); + }); + //db.desconectar(); + + }/*, function(){db.desconectar();}*/); + })); + + // Configuración del autenticado con Facebook + passport.use(new FacebookStrategy({ + clientID : config.facebook.key, + clientSecret : config.facebook.secret, + callbackURL : '/auth/facebook/callback', + profileFields : ['id', 'displayName', /*'provider',*/ 'photos'] + }, function(accessToken, refreshToken, profile, done) { + // El campo 'profileFields' nos permite que los campos que almacenamos + // se llamen igual tanto para si el usuario se autentica por Twitter o + // por Facebook, ya que cada proveedor entrega los datos en el JSON con + // un nombre diferente. + // Passport esto lo sabe y nos lo pone más sencillo con ese campo + db.conectar(); + User.findOne({provider_id: profile.id}, function(err, user) { + if(err) throw(err); + if(!err && user!= null) return done(null, user); + + // Al igual que antes, si el usuario ya existe lo devuelve + // y si no, lo crea y salva en la base de datos + var user = new User({ + provider_id : profile.id, + provider : profile.provider, + name : profile.displayName, + photo : profile.photos[0].value + }); + user.save(function(err) { + if(err) throw err; + done(null, user); + }); + //db.desconectar(); + }/*,function(){db.desconectar();}*/); + })); + + passport.use(new GitHubStrategy({ + clientID: config.github.key, + clientSecret: config.github.secret, + callbackURL: "/auth/github/callback" + }, + function(accessToken, refreshToken, profile, done) { + //console.log(profile._json) + db.conectar(); + User.findOne({provider_id: profile.id}, function(err, user) { + if(err) throw(err); + // Si existe en la Base de Datos, lo devuelve + if(!err && user!= null) return done(null, user); + + //Si no existe crea un nuevo objecto usuario + console.log(user) + var user = new User({ + provider_id : profile.id, + provider : profile.provider, + name : profile.username, + photo : profile._json.avatar_url + }); + //...y lo almacena en la base de datos + user.save(function(err) { + if(err) throw err; + done(null, user); + }); + //console.log(user) + + + }/*,function(){db.desconectar();}*/); + } +)); +}; diff --git a/public/fonts/icomoon.eot b/public/fonts/icomoon.eot new file mode 100644 index 0000000..c82abfe Binary files /dev/null and b/public/fonts/icomoon.eot differ diff --git a/public/fonts/icomoon.svg b/public/fonts/icomoon.svg new file mode 100644 index 0000000..b6a4224 --- /dev/null +++ b/public/fonts/icomoon.svg @@ -0,0 +1,277 @@ + + + +Generated by IcoMoon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/fonts/icomoon.ttf b/public/fonts/icomoon.ttf new file mode 100644 index 0000000..d87663e Binary files /dev/null and b/public/fonts/icomoon.ttf differ diff --git a/public/fonts/icomoon.woff b/public/fonts/icomoon.woff new file mode 100644 index 0000000..9517dd4 Binary files /dev/null and b/public/fonts/icomoon.woff differ diff --git a/public/fonts/icomoon.zip b/public/fonts/icomoon.zip new file mode 100644 index 0000000..0cbb00a Binary files /dev/null and b/public/fonts/icomoon.zip differ diff --git a/public/stylesheets/materialize.css b/public/stylesheets/materialize.css new file mode 100644 index 0000000..bc3d16f --- /dev/null +++ b/public/stylesheets/materialize.css @@ -0,0 +1,7921 @@ +.materialize-red.lighten-5 { + background-color: #fdeaeb !important; } + +.materialize-red-text.text-lighten-5 { + color: #fdeaeb !important; } + +.materialize-red.lighten-4 { + background-color: #f8c1c3 !important; } + +.materialize-red-text.text-lighten-4 { + color: #f8c1c3 !important; } + +.materialize-red.lighten-3 { + background-color: #f3989b !important; } + +.materialize-red-text.text-lighten-3 { + color: #f3989b !important; } + +.materialize-red.lighten-2 { + background-color: #ee6e73 !important; } + +.materialize-red-text.text-lighten-2 { + color: #ee6e73 !important; } + +.materialize-red.lighten-1 { + background-color: #ea454b !important; } + +.materialize-red-text.text-lighten-1 { + color: #ea454b !important; } + +.materialize-red { + background-color: #e51c23 !important; } + +.materialize-red-text { + color: #e51c23 !important; } + +.materialize-red.darken-1 { + background-color: #d0181e !important; } + +.materialize-red-text.text-darken-1 { + color: #d0181e !important; } + +.materialize-red.darken-2 { + background-color: #b9151b !important; } + +.materialize-red-text.text-darken-2 { + color: #b9151b !important; } + +.materialize-red.darken-3 { + background-color: #a21318 !important; } + +.materialize-red-text.text-darken-3 { + color: #a21318 !important; } + +.materialize-red.darken-4 { + background-color: #8b1014 !important; } + +.materialize-red-text.text-darken-4 { + color: #8b1014 !important; } + +.red.lighten-5 { + background-color: #FFEBEE !important; } + +.red-text.text-lighten-5 { + color: #FFEBEE !important; } + +.red.lighten-4 { + background-color: #FFCDD2 !important; } + +.red-text.text-lighten-4 { + color: #FFCDD2 !important; } + +.red.lighten-3 { + background-color: #EF9A9A !important; } + +.red-text.text-lighten-3 { + color: #EF9A9A !important; } + +.red.lighten-2 { + background-color: #E57373 !important; } + +.red-text.text-lighten-2 { + color: #E57373 !important; } + +.red.lighten-1 { + background-color: #EF5350 !important; } + +.red-text.text-lighten-1 { + color: #EF5350 !important; } + +.red { + background-color: #F44336 !important; } + +.red-text { + color: #F44336 !important; } + +.red.darken-1 { + background-color: #E53935 !important; } + +.red-text.text-darken-1 { + color: #E53935 !important; } + +.red.darken-2 { + background-color: #D32F2F !important; } + +.red-text.text-darken-2 { + color: #D32F2F !important; } + +.red.darken-3 { + background-color: #C62828 !important; } + +.red-text.text-darken-3 { + color: #C62828 !important; } + +.red.darken-4 { + background-color: #B71C1C !important; } + +.red-text.text-darken-4 { + color: #B71C1C !important; } + +.red.accent-1 { + background-color: #FF8A80 !important; } + +.red-text.text-accent-1 { + color: #FF8A80 !important; } + +.red.accent-2 { + background-color: #FF5252 !important; } + +.red-text.text-accent-2 { + color: #FF5252 !important; } + +.red.accent-3 { + background-color: #FF1744 !important; } + +.red-text.text-accent-3 { + color: #FF1744 !important; } + +.red.accent-4 { + background-color: #D50000 !important; } + +.red-text.text-accent-4 { + color: #D50000 !important; } + +.pink.lighten-5 { + background-color: #fce4ec !important; } + +.pink-text.text-lighten-5 { + color: #fce4ec !important; } + +.pink.lighten-4 { + background-color: #f8bbd0 !important; } + +.pink-text.text-lighten-4 { + color: #f8bbd0 !important; } + +.pink.lighten-3 { + background-color: #f48fb1 !important; } + +.pink-text.text-lighten-3 { + color: #f48fb1 !important; } + +.pink.lighten-2 { + background-color: #f06292 !important; } + +.pink-text.text-lighten-2 { + color: #f06292 !important; } + +.pink.lighten-1 { + background-color: #ec407a !important; } + +.pink-text.text-lighten-1 { + color: #ec407a !important; } + +.pink { + background-color: #e91e63 !important; } + +.pink-text { + color: #e91e63 !important; } + +.pink.darken-1 { + background-color: #d81b60 !important; } + +.pink-text.text-darken-1 { + color: #d81b60 !important; } + +.pink.darken-2 { + background-color: #c2185b !important; } + +.pink-text.text-darken-2 { + color: #c2185b !important; } + +.pink.darken-3 { + background-color: #ad1457 !important; } + +.pink-text.text-darken-3 { + color: #ad1457 !important; } + +.pink.darken-4 { + background-color: #880e4f !important; } + +.pink-text.text-darken-4 { + color: #880e4f !important; } + +.pink.accent-1 { + background-color: #ff80ab !important; } + +.pink-text.text-accent-1 { + color: #ff80ab !important; } + +.pink.accent-2 { + background-color: #ff4081 !important; } + +.pink-text.text-accent-2 { + color: #ff4081 !important; } + +.pink.accent-3 { + background-color: #f50057 !important; } + +.pink-text.text-accent-3 { + color: #f50057 !important; } + +.pink.accent-4 { + background-color: #c51162 !important; } + +.pink-text.text-accent-4 { + color: #c51162 !important; } + +.purple.lighten-5 { + background-color: #f3e5f5 !important; } + +.purple-text.text-lighten-5 { + color: #f3e5f5 !important; } + +.purple.lighten-4 { + background-color: #e1bee7 !important; } + +.purple-text.text-lighten-4 { + color: #e1bee7 !important; } + +.purple.lighten-3 { + background-color: #ce93d8 !important; } + +.purple-text.text-lighten-3 { + color: #ce93d8 !important; } + +.purple.lighten-2 { + background-color: #ba68c8 !important; } + +.purple-text.text-lighten-2 { + color: #ba68c8 !important; } + +.purple.lighten-1 { + background-color: #ab47bc !important; } + +.purple-text.text-lighten-1 { + color: #ab47bc !important; } + +.purple { + background-color: #9c27b0 !important; } + +.purple-text { + color: #9c27b0 !important; } + +.purple.darken-1 { + background-color: #8e24aa !important; } + +.purple-text.text-darken-1 { + color: #8e24aa !important; } + +.purple.darken-2 { + background-color: #7b1fa2 !important; } + +.purple-text.text-darken-2 { + color: #7b1fa2 !important; } + +.purple.darken-3 { + background-color: #6a1b9a !important; } + +.purple-text.text-darken-3 { + color: #6a1b9a !important; } + +.purple.darken-4 { + background-color: #4a148c !important; } + +.purple-text.text-darken-4 { + color: #4a148c !important; } + +.purple.accent-1 { + background-color: #ea80fc !important; } + +.purple-text.text-accent-1 { + color: #ea80fc !important; } + +.purple.accent-2 { + background-color: #e040fb !important; } + +.purple-text.text-accent-2 { + color: #e040fb !important; } + +.purple.accent-3 { + background-color: #d500f9 !important; } + +.purple-text.text-accent-3 { + color: #d500f9 !important; } + +.purple.accent-4 { + background-color: #aa00ff !important; } + +.purple-text.text-accent-4 { + color: #aa00ff !important; } + +.deep-purple.lighten-5 { + background-color: #ede7f6 !important; } + +.deep-purple-text.text-lighten-5 { + color: #ede7f6 !important; } + +.deep-purple.lighten-4 { + background-color: #d1c4e9 !important; } + +.deep-purple-text.text-lighten-4 { + color: #d1c4e9 !important; } + +.deep-purple.lighten-3 { + background-color: #b39ddb !important; } + +.deep-purple-text.text-lighten-3 { + color: #b39ddb !important; } + +.deep-purple.lighten-2 { + background-color: #9575cd !important; } + +.deep-purple-text.text-lighten-2 { + color: #9575cd !important; } + +.deep-purple.lighten-1 { + background-color: #7e57c2 !important; } + +.deep-purple-text.text-lighten-1 { + color: #7e57c2 !important; } + +.deep-purple { + background-color: #673ab7 !important; } + +.deep-purple-text { + color: #673ab7 !important; } + +.deep-purple.darken-1 { + background-color: #5e35b1 !important; } + +.deep-purple-text.text-darken-1 { + color: #5e35b1 !important; } + +.deep-purple.darken-2 { + background-color: #512da8 !important; } + +.deep-purple-text.text-darken-2 { + color: #512da8 !important; } + +.deep-purple.darken-3 { + background-color: #4527a0 !important; } + +.deep-purple-text.text-darken-3 { + color: #4527a0 !important; } + +.deep-purple.darken-4 { + background-color: #311b92 !important; } + +.deep-purple-text.text-darken-4 { + color: #311b92 !important; } + +.deep-purple.accent-1 { + background-color: #b388ff !important; } + +.deep-purple-text.text-accent-1 { + color: #b388ff !important; } + +.deep-purple.accent-2 { + background-color: #7c4dff !important; } + +.deep-purple-text.text-accent-2 { + color: #7c4dff !important; } + +.deep-purple.accent-3 { + background-color: #651fff !important; } + +.deep-purple-text.text-accent-3 { + color: #651fff !important; } + +.deep-purple.accent-4 { + background-color: #6200ea !important; } + +.deep-purple-text.text-accent-4 { + color: #6200ea !important; } + +.indigo.lighten-5 { + background-color: #e8eaf6 !important; } + +.indigo-text.text-lighten-5 { + color: #e8eaf6 !important; } + +.indigo.lighten-4 { + background-color: #c5cae9 !important; } + +.indigo-text.text-lighten-4 { + color: #c5cae9 !important; } + +.indigo.lighten-3 { + background-color: #9fa8da !important; } + +.indigo-text.text-lighten-3 { + color: #9fa8da !important; } + +.indigo.lighten-2 { + background-color: #7986cb !important; } + +.indigo-text.text-lighten-2 { + color: #7986cb !important; } + +.indigo.lighten-1 { + background-color: #5c6bc0 !important; } + +.indigo-text.text-lighten-1 { + color: #5c6bc0 !important; } + +.indigo { + background-color: #3f51b5 !important; } + +.indigo-text { + color: #3f51b5 !important; } + +.indigo.darken-1 { + background-color: #3949ab !important; } + +.indigo-text.text-darken-1 { + color: #3949ab !important; } + +.indigo.darken-2 { + background-color: #303f9f !important; } + +.indigo-text.text-darken-2 { + color: #303f9f !important; } + +.indigo.darken-3 { + background-color: #283593 !important; } + +.indigo-text.text-darken-3 { + color: #283593 !important; } + +.indigo.darken-4 { + background-color: #1a237e !important; } + +.indigo-text.text-darken-4 { + color: #1a237e !important; } + +.indigo.accent-1 { + background-color: #8c9eff !important; } + +.indigo-text.text-accent-1 { + color: #8c9eff !important; } + +.indigo.accent-2 { + background-color: #536dfe !important; } + +.indigo-text.text-accent-2 { + color: #536dfe !important; } + +.indigo.accent-3 { + background-color: #3d5afe !important; } + +.indigo-text.text-accent-3 { + color: #3d5afe !important; } + +.indigo.accent-4 { + background-color: #304ffe !important; } + +.indigo-text.text-accent-4 { + color: #304ffe !important; } + +.blue.lighten-5 { + background-color: #E3F2FD !important; } + +.blue-text.text-lighten-5 { + color: #E3F2FD !important; } + +.blue.lighten-4 { + background-color: #BBDEFB !important; } + +.blue-text.text-lighten-4 { + color: #BBDEFB !important; } + +.blue.lighten-3 { + background-color: #90CAF9 !important; } + +.blue-text.text-lighten-3 { + color: #90CAF9 !important; } + +.blue.lighten-2 { + background-color: #64B5F6 !important; } + +.blue-text.text-lighten-2 { + color: #64B5F6 !important; } + +.blue.lighten-1 { + background-color: #42A5F5 !important; } + +.blue-text.text-lighten-1 { + color: #42A5F5 !important; } + +.blue { + background-color: #2196F3 !important; } + +.blue-text { + color: #2196F3 !important; } + +.blue.darken-1 { + background-color: #1E88E5 !important; } + +.blue-text.text-darken-1 { + color: #1E88E5 !important; } + +.blue.darken-2 { + background-color: #1976D2 !important; } + +.blue-text.text-darken-2 { + color: #1976D2 !important; } + +.blue.darken-3 { + background-color: #1565C0 !important; } + +.blue-text.text-darken-3 { + color: #1565C0 !important; } + +.blue.darken-4 { + background-color: #0D47A1 !important; } + +.blue-text.text-darken-4 { + color: #0D47A1 !important; } + +.blue.accent-1 { + background-color: #82B1FF !important; } + +.blue-text.text-accent-1 { + color: #82B1FF !important; } + +.blue.accent-2 { + background-color: #448AFF !important; } + +.blue-text.text-accent-2 { + color: #448AFF !important; } + +.blue.accent-3 { + background-color: #2979FF !important; } + +.blue-text.text-accent-3 { + color: #2979FF !important; } + +.blue.accent-4 { + background-color: #2962FF !important; } + +.blue-text.text-accent-4 { + color: #2962FF !important; } + +.light-blue.lighten-5 { + background-color: #e1f5fe !important; } + +.light-blue-text.text-lighten-5 { + color: #e1f5fe !important; } + +.light-blue.lighten-4 { + background-color: #b3e5fc !important; } + +.light-blue-text.text-lighten-4 { + color: #b3e5fc !important; } + +.light-blue.lighten-3 { + background-color: #81d4fa !important; } + +.light-blue-text.text-lighten-3 { + color: #81d4fa !important; } + +.light-blue.lighten-2 { + background-color: #4fc3f7 !important; } + +.light-blue-text.text-lighten-2 { + color: #4fc3f7 !important; } + +.light-blue.lighten-1 { + background-color: #29b6f6 !important; } + +.light-blue-text.text-lighten-1 { + color: #29b6f6 !important; } + +.light-blue { + background-color: #03a9f4 !important; } + +.light-blue-text { + color: #03a9f4 !important; } + +.light-blue.darken-1 { + background-color: #039be5 !important; } + +.light-blue-text.text-darken-1 { + color: #039be5 !important; } + +.light-blue.darken-2 { + background-color: #0288d1 !important; } + +.light-blue-text.text-darken-2 { + color: #0288d1 !important; } + +.light-blue.darken-3 { + background-color: #0277bd !important; } + +.light-blue-text.text-darken-3 { + color: #0277bd !important; } + +.light-blue.darken-4 { + background-color: #01579b !important; } + +.light-blue-text.text-darken-4 { + color: #01579b !important; } + +.light-blue.accent-1 { + background-color: #80d8ff !important; } + +.light-blue-text.text-accent-1 { + color: #80d8ff !important; } + +.light-blue.accent-2 { + background-color: #40c4ff !important; } + +.light-blue-text.text-accent-2 { + color: #40c4ff !important; } + +.light-blue.accent-3 { + background-color: #00b0ff !important; } + +.light-blue-text.text-accent-3 { + color: #00b0ff !important; } + +.light-blue.accent-4 { + background-color: #0091ea !important; } + +.light-blue-text.text-accent-4 { + color: #0091ea !important; } + +.cyan.lighten-5 { + background-color: #e0f7fa !important; } + +.cyan-text.text-lighten-5 { + color: #e0f7fa !important; } + +.cyan.lighten-4 { + background-color: #b2ebf2 !important; } + +.cyan-text.text-lighten-4 { + color: #b2ebf2 !important; } + +.cyan.lighten-3 { + background-color: #80deea !important; } + +.cyan-text.text-lighten-3 { + color: #80deea !important; } + +.cyan.lighten-2 { + background-color: #4dd0e1 !important; } + +.cyan-text.text-lighten-2 { + color: #4dd0e1 !important; } + +.cyan.lighten-1 { + background-color: #26c6da !important; } + +.cyan-text.text-lighten-1 { + color: #26c6da !important; } + +.cyan { + background-color: #00bcd4 !important; } + +.cyan-text { + color: #00bcd4 !important; } + +.cyan.darken-1 { + background-color: #00acc1 !important; } + +.cyan-text.text-darken-1 { + color: #00acc1 !important; } + +.cyan.darken-2 { + background-color: #0097a7 !important; } + +.cyan-text.text-darken-2 { + color: #0097a7 !important; } + +.cyan.darken-3 { + background-color: #00838f !important; } + +.cyan-text.text-darken-3 { + color: #00838f !important; } + +.cyan.darken-4 { + background-color: #006064 !important; } + +.cyan-text.text-darken-4 { + color: #006064 !important; } + +.cyan.accent-1 { + background-color: #84ffff !important; } + +.cyan-text.text-accent-1 { + color: #84ffff !important; } + +.cyan.accent-2 { + background-color: #18ffff !important; } + +.cyan-text.text-accent-2 { + color: #18ffff !important; } + +.cyan.accent-3 { + background-color: #00e5ff !important; } + +.cyan-text.text-accent-3 { + color: #00e5ff !important; } + +.cyan.accent-4 { + background-color: #00b8d4 !important; } + +.cyan-text.text-accent-4 { + color: #00b8d4 !important; } + +.teal.lighten-5 { + background-color: #e0f2f1 !important; } + +.teal-text.text-lighten-5 { + color: #e0f2f1 !important; } + +.teal.lighten-4 { + background-color: #b2dfdb !important; } + +.teal-text.text-lighten-4 { + color: #b2dfdb !important; } + +.teal.lighten-3 { + background-color: #80cbc4 !important; } + +.teal-text.text-lighten-3 { + color: #80cbc4 !important; } + +.teal.lighten-2 { + background-color: #4db6ac !important; } + +.teal-text.text-lighten-2 { + color: #4db6ac !important; } + +.teal.lighten-1 { + background-color: #26a69a !important; } + +.teal-text.text-lighten-1 { + color: #26a69a !important; } + +.teal { + background-color: #009688 !important; } + +.teal-text { + color: #009688 !important; } + +.teal.darken-1 { + background-color: #00897b !important; } + +.teal-text.text-darken-1 { + color: #00897b !important; } + +.teal.darken-2 { + background-color: #00796b !important; } + +.teal-text.text-darken-2 { + color: #00796b !important; } + +.teal.darken-3 { + background-color: #00695c !important; } + +.teal-text.text-darken-3 { + color: #00695c !important; } + +.teal.darken-4 { + background-color: #004d40 !important; } + +.teal-text.text-darken-4 { + color: #004d40 !important; } + +.teal.accent-1 { + background-color: #a7ffeb !important; } + +.teal-text.text-accent-1 { + color: #a7ffeb !important; } + +.teal.accent-2 { + background-color: #64ffda !important; } + +.teal-text.text-accent-2 { + color: #64ffda !important; } + +.teal.accent-3 { + background-color: #1de9b6 !important; } + +.teal-text.text-accent-3 { + color: #1de9b6 !important; } + +.teal.accent-4 { + background-color: #00bfa5 !important; } + +.teal-text.text-accent-4 { + color: #00bfa5 !important; } + +.green.lighten-5 { + background-color: #E8F5E9 !important; } + +.green-text.text-lighten-5 { + color: #E8F5E9 !important; } + +.green.lighten-4 { + background-color: #C8E6C9 !important; } + +.green-text.text-lighten-4 { + color: #C8E6C9 !important; } + +.green.lighten-3 { + background-color: #A5D6A7 !important; } + +.green-text.text-lighten-3 { + color: #A5D6A7 !important; } + +.green.lighten-2 { + background-color: #81C784 !important; } + +.green-text.text-lighten-2 { + color: #81C784 !important; } + +.green.lighten-1 { + background-color: #66BB6A !important; } + +.green-text.text-lighten-1 { + color: #66BB6A !important; } + +.green { + background-color: #4CAF50 !important; } + +.green-text { + color: #4CAF50 !important; } + +.green.darken-1 { + background-color: #43A047 !important; } + +.green-text.text-darken-1 { + color: #43A047 !important; } + +.green.darken-2 { + background-color: #388E3C !important; } + +.green-text.text-darken-2 { + color: #388E3C !important; } + +.green.darken-3 { + background-color: #2E7D32 !important; } + +.green-text.text-darken-3 { + color: #2E7D32 !important; } + +.green.darken-4 { + background-color: #1B5E20 !important; } + +.green-text.text-darken-4 { + color: #1B5E20 !important; } + +.green.accent-1 { + background-color: #B9F6CA !important; } + +.green-text.text-accent-1 { + color: #B9F6CA !important; } + +.green.accent-2 { + background-color: #69F0AE !important; } + +.green-text.text-accent-2 { + color: #69F0AE !important; } + +.green.accent-3 { + background-color: #00E676 !important; } + +.green-text.text-accent-3 { + color: #00E676 !important; } + +.green.accent-4 { + background-color: #00C853 !important; } + +.green-text.text-accent-4 { + color: #00C853 !important; } + +.light-green.lighten-5 { + background-color: #f1f8e9 !important; } + +.light-green-text.text-lighten-5 { + color: #f1f8e9 !important; } + +.light-green.lighten-4 { + background-color: #dcedc8 !important; } + +.light-green-text.text-lighten-4 { + color: #dcedc8 !important; } + +.light-green.lighten-3 { + background-color: #c5e1a5 !important; } + +.light-green-text.text-lighten-3 { + color: #c5e1a5 !important; } + +.light-green.lighten-2 { + background-color: #aed581 !important; } + +.light-green-text.text-lighten-2 { + color: #aed581 !important; } + +.light-green.lighten-1 { + background-color: #9ccc65 !important; } + +.light-green-text.text-lighten-1 { + color: #9ccc65 !important; } + +.light-green { + background-color: #8bc34a !important; } + +.light-green-text { + color: #8bc34a !important; } + +.light-green.darken-1 { + background-color: #7cb342 !important; } + +.light-green-text.text-darken-1 { + color: #7cb342 !important; } + +.light-green.darken-2 { + background-color: #689f38 !important; } + +.light-green-text.text-darken-2 { + color: #689f38 !important; } + +.light-green.darken-3 { + background-color: #558b2f !important; } + +.light-green-text.text-darken-3 { + color: #558b2f !important; } + +.light-green.darken-4 { + background-color: #33691e !important; } + +.light-green-text.text-darken-4 { + color: #33691e !important; } + +.light-green.accent-1 { + background-color: #ccff90 !important; } + +.light-green-text.text-accent-1 { + color: #ccff90 !important; } + +.light-green.accent-2 { + background-color: #b2ff59 !important; } + +.light-green-text.text-accent-2 { + color: #b2ff59 !important; } + +.light-green.accent-3 { + background-color: #76ff03 !important; } + +.light-green-text.text-accent-3 { + color: #76ff03 !important; } + +.light-green.accent-4 { + background-color: #64dd17 !important; } + +.light-green-text.text-accent-4 { + color: #64dd17 !important; } + +.lime.lighten-5 { + background-color: #f9fbe7 !important; } + +.lime-text.text-lighten-5 { + color: #f9fbe7 !important; } + +.lime.lighten-4 { + background-color: #f0f4c3 !important; } + +.lime-text.text-lighten-4 { + color: #f0f4c3 !important; } + +.lime.lighten-3 { + background-color: #e6ee9c !important; } + +.lime-text.text-lighten-3 { + color: #e6ee9c !important; } + +.lime.lighten-2 { + background-color: #dce775 !important; } + +.lime-text.text-lighten-2 { + color: #dce775 !important; } + +.lime.lighten-1 { + background-color: #d4e157 !important; } + +.lime-text.text-lighten-1 { + color: #d4e157 !important; } + +.lime { + background-color: #cddc39 !important; } + +.lime-text { + color: #cddc39 !important; } + +.lime.darken-1 { + background-color: #c0ca33 !important; } + +.lime-text.text-darken-1 { + color: #c0ca33 !important; } + +.lime.darken-2 { + background-color: #afb42b !important; } + +.lime-text.text-darken-2 { + color: #afb42b !important; } + +.lime.darken-3 { + background-color: #9e9d24 !important; } + +.lime-text.text-darken-3 { + color: #9e9d24 !important; } + +.lime.darken-4 { + background-color: #827717 !important; } + +.lime-text.text-darken-4 { + color: #827717 !important; } + +.lime.accent-1 { + background-color: #f4ff81 !important; } + +.lime-text.text-accent-1 { + color: #f4ff81 !important; } + +.lime.accent-2 { + background-color: #eeff41 !important; } + +.lime-text.text-accent-2 { + color: #eeff41 !important; } + +.lime.accent-3 { + background-color: #c6ff00 !important; } + +.lime-text.text-accent-3 { + color: #c6ff00 !important; } + +.lime.accent-4 { + background-color: #aeea00 !important; } + +.lime-text.text-accent-4 { + color: #aeea00 !important; } + +.yellow.lighten-5 { + background-color: #fffde7 !important; } + +.yellow-text.text-lighten-5 { + color: #fffde7 !important; } + +.yellow.lighten-4 { + background-color: #fff9c4 !important; } + +.yellow-text.text-lighten-4 { + color: #fff9c4 !important; } + +.yellow.lighten-3 { + background-color: #fff59d !important; } + +.yellow-text.text-lighten-3 { + color: #fff59d !important; } + +.yellow.lighten-2 { + background-color: #fff176 !important; } + +.yellow-text.text-lighten-2 { + color: #fff176 !important; } + +.yellow.lighten-1 { + background-color: #ffee58 !important; } + +.yellow-text.text-lighten-1 { + color: #ffee58 !important; } + +.yellow { + background-color: #ffeb3b !important; } + +.yellow-text { + color: #ffeb3b !important; } + +.yellow.darken-1 { + background-color: #fdd835 !important; } + +.yellow-text.text-darken-1 { + color: #fdd835 !important; } + +.yellow.darken-2 { + background-color: #fbc02d !important; } + +.yellow-text.text-darken-2 { + color: #fbc02d !important; } + +.yellow.darken-3 { + background-color: #f9a825 !important; } + +.yellow-text.text-darken-3 { + color: #f9a825 !important; } + +.yellow.darken-4 { + background-color: #f57f17 !important; } + +.yellow-text.text-darken-4 { + color: #f57f17 !important; } + +.yellow.accent-1 { + background-color: #ffff8d !important; } + +.yellow-text.text-accent-1 { + color: #ffff8d !important; } + +.yellow.accent-2 { + background-color: #ffff00 !important; } + +.yellow-text.text-accent-2 { + color: #ffff00 !important; } + +.yellow.accent-3 { + background-color: #ffea00 !important; } + +.yellow-text.text-accent-3 { + color: #ffea00 !important; } + +.yellow.accent-4 { + background-color: #ffd600 !important; } + +.yellow-text.text-accent-4 { + color: #ffd600 !important; } + +.amber.lighten-5 { + background-color: #fff8e1 !important; } + +.amber-text.text-lighten-5 { + color: #fff8e1 !important; } + +.amber.lighten-4 { + background-color: #ffecb3 !important; } + +.amber-text.text-lighten-4 { + color: #ffecb3 !important; } + +.amber.lighten-3 { + background-color: #ffe082 !important; } + +.amber-text.text-lighten-3 { + color: #ffe082 !important; } + +.amber.lighten-2 { + background-color: #ffd54f !important; } + +.amber-text.text-lighten-2 { + color: #ffd54f !important; } + +.amber.lighten-1 { + background-color: #ffca28 !important; } + +.amber-text.text-lighten-1 { + color: #ffca28 !important; } + +.amber { + background-color: #ffc107 !important; } + +.amber-text { + color: #ffc107 !important; } + +.amber.darken-1 { + background-color: #ffb300 !important; } + +.amber-text.text-darken-1 { + color: #ffb300 !important; } + +.amber.darken-2 { + background-color: #ffa000 !important; } + +.amber-text.text-darken-2 { + color: #ffa000 !important; } + +.amber.darken-3 { + background-color: #ff8f00 !important; } + +.amber-text.text-darken-3 { + color: #ff8f00 !important; } + +.amber.darken-4 { + background-color: #ff6f00 !important; } + +.amber-text.text-darken-4 { + color: #ff6f00 !important; } + +.amber.accent-1 { + background-color: #ffe57f !important; } + +.amber-text.text-accent-1 { + color: #ffe57f !important; } + +.amber.accent-2 { + background-color: #ffd740 !important; } + +.amber-text.text-accent-2 { + color: #ffd740 !important; } + +.amber.accent-3 { + background-color: #ffc400 !important; } + +.amber-text.text-accent-3 { + color: #ffc400 !important; } + +.amber.accent-4 { + background-color: #ffab00 !important; } + +.amber-text.text-accent-4 { + color: #ffab00 !important; } + +.orange.lighten-5 { + background-color: #fff3e0 !important; } + +.orange-text.text-lighten-5 { + color: #fff3e0 !important; } + +.orange.lighten-4 { + background-color: #ffe0b2 !important; } + +.orange-text.text-lighten-4 { + color: #ffe0b2 !important; } + +.orange.lighten-3 { + background-color: #ffcc80 !important; } + +.orange-text.text-lighten-3 { + color: #ffcc80 !important; } + +.orange.lighten-2 { + background-color: #ffb74d !important; } + +.orange-text.text-lighten-2 { + color: #ffb74d !important; } + +.orange.lighten-1 { + background-color: #ffa726 !important; } + +.orange-text.text-lighten-1 { + color: #ffa726 !important; } + +.orange { + background-color: #ff9800 !important; } + +.orange-text { + color: #ff9800 !important; } + +.orange.darken-1 { + background-color: #fb8c00 !important; } + +.orange-text.text-darken-1 { + color: #fb8c00 !important; } + +.orange.darken-2 { + background-color: #f57c00 !important; } + +.orange-text.text-darken-2 { + color: #f57c00 !important; } + +.orange.darken-3 { + background-color: #ef6c00 !important; } + +.orange-text.text-darken-3 { + color: #ef6c00 !important; } + +.orange.darken-4 { + background-color: #e65100 !important; } + +.orange-text.text-darken-4 { + color: #e65100 !important; } + +.orange.accent-1 { + background-color: #ffd180 !important; } + +.orange-text.text-accent-1 { + color: #ffd180 !important; } + +.orange.accent-2 { + background-color: #ffab40 !important; } + +.orange-text.text-accent-2 { + color: #ffab40 !important; } + +.orange.accent-3 { + background-color: #ff9100 !important; } + +.orange-text.text-accent-3 { + color: #ff9100 !important; } + +.orange.accent-4 { + background-color: #ff6d00 !important; } + +.orange-text.text-accent-4 { + color: #ff6d00 !important; } + +.deep-orange.lighten-5 { + background-color: #fbe9e7 !important; } + +.deep-orange-text.text-lighten-5 { + color: #fbe9e7 !important; } + +.deep-orange.lighten-4 { + background-color: #ffccbc !important; } + +.deep-orange-text.text-lighten-4 { + color: #ffccbc !important; } + +.deep-orange.lighten-3 { + background-color: #ffab91 !important; } + +.deep-orange-text.text-lighten-3 { + color: #ffab91 !important; } + +.deep-orange.lighten-2 { + background-color: #ff8a65 !important; } + +.deep-orange-text.text-lighten-2 { + color: #ff8a65 !important; } + +.deep-orange.lighten-1 { + background-color: #ff7043 !important; } + +.deep-orange-text.text-lighten-1 { + color: #ff7043 !important; } + +.deep-orange { + background-color: #ff5722 !important; } + +.deep-orange-text { + color: #ff5722 !important; } + +.deep-orange.darken-1 { + background-color: #f4511e !important; } + +.deep-orange-text.text-darken-1 { + color: #f4511e !important; } + +.deep-orange.darken-2 { + background-color: #e64a19 !important; } + +.deep-orange-text.text-darken-2 { + color: #e64a19 !important; } + +.deep-orange.darken-3 { + background-color: #d84315 !important; } + +.deep-orange-text.text-darken-3 { + color: #d84315 !important; } + +.deep-orange.darken-4 { + background-color: #bf360c !important; } + +.deep-orange-text.text-darken-4 { + color: #bf360c !important; } + +.deep-orange.accent-1 { + background-color: #ff9e80 !important; } + +.deep-orange-text.text-accent-1 { + color: #ff9e80 !important; } + +.deep-orange.accent-2 { + background-color: #ff6e40 !important; } + +.deep-orange-text.text-accent-2 { + color: #ff6e40 !important; } + +.deep-orange.accent-3 { + background-color: #ff3d00 !important; } + +.deep-orange-text.text-accent-3 { + color: #ff3d00 !important; } + +.deep-orange.accent-4 { + background-color: #dd2c00 !important; } + +.deep-orange-text.text-accent-4 { + color: #dd2c00 !important; } + +.brown.lighten-5 { + background-color: #efebe9 !important; } + +.brown-text.text-lighten-5 { + color: #efebe9 !important; } + +.brown.lighten-4 { + background-color: #d7ccc8 !important; } + +.brown-text.text-lighten-4 { + color: #d7ccc8 !important; } + +.brown.lighten-3 { + background-color: #bcaaa4 !important; } + +.brown-text.text-lighten-3 { + color: #bcaaa4 !important; } + +.brown.lighten-2 { + background-color: #a1887f !important; } + +.brown-text.text-lighten-2 { + color: #a1887f !important; } + +.brown.lighten-1 { + background-color: #8d6e63 !important; } + +.brown-text.text-lighten-1 { + color: #8d6e63 !important; } + +.brown { + background-color: #795548 !important; } + +.brown-text { + color: #795548 !important; } + +.brown.darken-1 { + background-color: #6d4c41 !important; } + +.brown-text.text-darken-1 { + color: #6d4c41 !important; } + +.brown.darken-2 { + background-color: #5d4037 !important; } + +.brown-text.text-darken-2 { + color: #5d4037 !important; } + +.brown.darken-3 { + background-color: #4e342e !important; } + +.brown-text.text-darken-3 { + color: #4e342e !important; } + +.brown.darken-4 { + background-color: #3e2723 !important; } + +.brown-text.text-darken-4 { + color: #3e2723 !important; } + +.blue-grey.lighten-5 { + background-color: #eceff1 !important; } + +.blue-grey-text.text-lighten-5 { + color: #eceff1 !important; } + +.blue-grey.lighten-4 { + background-color: #cfd8dc !important; } + +.blue-grey-text.text-lighten-4 { + color: #cfd8dc !important; } + +.blue-grey.lighten-3 { + background-color: #b0bec5 !important; } + +.blue-grey-text.text-lighten-3 { + color: #b0bec5 !important; } + +.blue-grey.lighten-2 { + background-color: #90a4ae !important; } + +.blue-grey-text.text-lighten-2 { + color: #90a4ae !important; } + +.blue-grey.lighten-1 { + background-color: #78909c !important; } + +.blue-grey-text.text-lighten-1 { + color: #78909c !important; } + +.blue-grey { + background-color: #607d8b !important; } + +.blue-grey-text { + color: #607d8b !important; } + +.blue-grey.darken-1 { + background-color: #546e7a !important; } + +.blue-grey-text.text-darken-1 { + color: #546e7a !important; } + +.blue-grey.darken-2 { + background-color: #455a64 !important; } + +.blue-grey-text.text-darken-2 { + color: #455a64 !important; } + +.blue-grey.darken-3 { + background-color: #37474f !important; } + +.blue-grey-text.text-darken-3 { + color: #37474f !important; } + +.blue-grey.darken-4 { + background-color: #263238 !important; } + +.blue-grey-text.text-darken-4 { + color: #263238 !important; } + +.grey.lighten-5 { + background-color: #fafafa !important; } + +.grey-text.text-lighten-5 { + color: #fafafa !important; } + +.grey.lighten-4 { + background-color: #f5f5f5 !important; } + +.grey-text.text-lighten-4 { + color: #f5f5f5 !important; } + +.grey.lighten-3 { + background-color: #eeeeee !important; } + +.grey-text.text-lighten-3 { + color: #eeeeee !important; } + +.grey.lighten-2 { + background-color: #e0e0e0 !important; } + +.grey-text.text-lighten-2 { + color: #e0e0e0 !important; } + +.grey.lighten-1 { + background-color: #bdbdbd !important; } + +.grey-text.text-lighten-1 { + color: #bdbdbd !important; } + +.grey { + background-color: #9e9e9e !important; } + +.grey-text { + color: #9e9e9e !important; } + +.grey.darken-1 { + background-color: #757575 !important; } + +.grey-text.text-darken-1 { + color: #757575 !important; } + +.grey.darken-2 { + background-color: #616161 !important; } + +.grey-text.text-darken-2 { + color: #616161 !important; } + +.grey.darken-3 { + background-color: #424242 !important; } + +.grey-text.text-darken-3 { + color: #424242 !important; } + +.grey.darken-4 { + background-color: #212121 !important; } + +.grey-text.text-darken-4 { + color: #212121 !important; } + +.shades.black { + background-color: #000000 !important; } + +.shades-text.text-black { + color: #000000 !important; } + +.shades.white { + background-color: #FFFFFF !important; } + +.shades-text.text-white { + color: #FFFFFF !important; } + +.shades.transparent { + background-color: transparent !important; } + +.shades-text.text-transparent { + color: transparent !important; } + +.black { + background-color: #000000 !important; } + +.black-text { + color: #000000 !important; } + +.white { + background-color: #FFFFFF !important; } + +.white-text { + color: #FFFFFF !important; } + +.transparent { + background-color: transparent !important; } + +.transparent-text { + color: transparent !important; } + +/*** Colors ***/ +/*** Badges ***/ +/*** Buttons ***/ +/*** Cards ***/ +/*** Collapsible ***/ +/*** Dropdown ***/ +/*** Fonts ***/ +/*** Forms ***/ +/*** Global ***/ +/*** Navbar ***/ +/*** SideNav ***/ +/*** Tabs ***/ +/*** Tables ***/ +/*** Toasts ***/ +/*** Typography ***/ +/*** Collections ***/ +/* Progress Bar */ +/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ +/** + * 1. Set default font family to sans-serif. + * 2. Prevent iOS text size adjust after orientation change, without disabling + * user zoom. + */ +html { + font-family: sans-serif; + /* 1 */ + -ms-text-size-adjust: 100%; + /* 2 */ + -webkit-text-size-adjust: 100%; + /* 2 */ } + +/** + * Remove default margin. + */ +body { + margin: 0; } + +/* HTML5 display definitions + ========================================================================== */ +/** + * Correct `block` display not defined for any HTML5 element in IE 8/9. + * Correct `block` display not defined for `details` or `summary` in IE 10/11 + * and Firefox. + * Correct `block` display not defined for `main` in IE 11. + */ +article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { + display: block; } + +/** + * 1. Correct `inline-block` display not defined in IE 8/9. + * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. + */ +audio, canvas, progress, video { + display: inline-block; + /* 1 */ + vertical-align: baseline; + /* 2 */ } + +/** + * Prevent modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + */ +audio:not([controls]) { + display: none; + height: 0; } + +/** + * Address `[hidden]` styling not present in IE 8/9/10. + * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. + */ +[hidden], template { + display: none; } + +/* Links + ========================================================================== */ +/** + * Remove the gray background color from active links in IE 10. + */ +a { + background-color: transparent; } + +/** + * Improve readability when focused and also mouse hovered in all browsers. + */ +a:active, a:hover { + outline: 0; } + +/* Text-level semantics + ========================================================================== */ +/** + * Address styling not present in IE 8/9/10/11, Safari, and Chrome. + */ +abbr[title] { + border-bottom: 1px dotted; } + +/** + * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. + */ +b, strong { + font-weight: bold; } + +/** + * Address styling not present in Safari and Chrome. + */ +dfn { + font-style: italic; } + +/** + * Address variable `h1` font-size and margin within `section` and `article` + * contexts in Firefox 4+, Safari, and Chrome. + */ +h1 { + font-size: 2em; + margin: 0.67em 0; } + +/** + * Address styling not present in IE 8/9. + */ +mark { + background: #ff0; + color: #000; } + +/** + * Address inconsistent and variable font size in all browsers. + */ +small { + font-size: 80%; } + +/** + * Prevent `sub` and `sup` affecting `line-height` in all browsers. + */ +sub, sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; } + +sup { + top: -0.5em; } + +sub { + bottom: -0.25em; } + +/* Embedded content + ========================================================================== */ +/** + * Remove border when inside `a` element in IE 8/9/10. + */ +img { + border: 0; } + +/** + * Correct overflow not hidden in IE 9/10/11. + */ +svg:not(:root) { + overflow: hidden; } + +/* Grouping content + ========================================================================== */ +/** + * Address margin not present in IE 8/9 and Safari. + */ +figure { + margin: 1em 40px; } + +/** + * Address differences between Firefox and other browsers. + */ +hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; } + +/** + * Contain overflow in all browsers. + */ +pre { + overflow: auto; } + +/** + * Address odd `em`-unit font size rendering in all browsers. + */ +code, kbd, pre, samp { + font-family: monospace, monospace; + font-size: 1em; } + +/* Forms + ========================================================================== */ +/** + * Known limitation: by default, Chrome and Safari on OS X allow very limited + * styling of `select`, unless a `border` property is set. + */ +/** + * 1. Correct color not being inherited. + * Known issue: affects color of disabled elements. + * 2. Correct font properties not being inherited. + * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. + */ +button, input, optgroup, select, textarea { + color: inherit; + /* 1 */ + font: inherit; + /* 2 */ + margin: 0; + /* 3 */ } + +/** + * Address `overflow` set to `hidden` in IE 8/9/10/11. + */ +button { + overflow: visible; } + +/** + * Address inconsistent `text-transform` inheritance for `button` and `select`. + * All other form control elements do not inherit `text-transform` values. + * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. + * Correct `select` style inheritance in Firefox. + */ +button, select { + text-transform: none; } + +/** + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * and `video` controls. + * 2. Correct inability to style clickable `input` types in iOS. + * 3. Improve usability and consistency of cursor style between image-type + * `input` and others. + */ +/* 1 */ +html input[type="button"], button, input[type="reset"], input[type="submit"] { + -webkit-appearance: button; + /* 2 */ + cursor: pointer; + /* 3 */ } + +/** + * Re-set default cursor for disabled elements. + */ +button[disabled], html input[disabled] { + cursor: default; } + +/** + * Remove inner padding and border in Firefox 4+. + */ +button::-moz-focus-inner, input::-moz-focus-inner { + border: 0; + padding: 0; } + +/** + * Address Firefox 4+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + */ +input { + line-height: normal; } + +/** + * It's recommended that you don't attempt to style these elements. + * Firefox's implementation doesn't respect box-sizing, padding, or width. + * + * 1. Address box sizing set to `content-box` in IE 8/9/10. + * 2. Remove excess padding in IE 8/9/10. + */ +input[type="checkbox"], input[type="radio"] { + box-sizing: border-box; + /* 1 */ + padding: 0; + /* 2 */ } + +/** + * Fix the cursor style for Chrome's increment/decrement buttons. For certain + * `font-size` values of the `input`, it causes the cursor style of the + * decrement button to change from `default` to `text`. + */ +input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { + height: auto; } + +/** + * 1. Address `appearance` set to `searchfield` in Safari and Chrome. + * 2. Address `box-sizing` set to `border-box` in Safari and Chrome + * (include `-moz` to future-proof). + */ +input[type="search"] { + -webkit-appearance: textfield; + /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + /* 2 */ + box-sizing: content-box; } + +/** + * Remove inner padding and search cancel button in Safari and Chrome on OS X. + * Safari (but not Chrome) clips the cancel button when the search input has + * padding (and `textfield` appearance). + */ +input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; } + +/** + * Define consistent border, margin, and padding. + */ +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; } + +/** + * 1. Correct `color` not being inherited in IE 8/9/10/11. + * 2. Remove padding so people aren't caught out if they zero out fieldsets. + */ +legend { + border: 0; + /* 1 */ + padding: 0; + /* 2 */ } + +/** + * Remove default vertical scrollbar in IE 8/9/10/11. + */ +textarea { + overflow: auto; } + +/** + * Don't inherit the `font-weight` (applied by a rule above). + * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. + */ +optgroup { + font-weight: bold; } + +/* Tables + ========================================================================== */ +/** + * Remove most spacing between table cells. + */ +table { + border-collapse: collapse; + border-spacing: 0; } + +td, th { + padding: 0; } + +html { + box-sizing: border-box; } + +*, *:before, *:after { + box-sizing: inherit; } + +ul { + list-style-type: none; } + +a { + color: #039be5; + text-decoration: none; + -webkit-tap-highlight-color: transparent; } + +.valign-wrapper { + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + -webkit-flex-align: center; + -ms-flex-align: center; + -webkit-align-items: center; + align-items: center; } + .valign-wrapper .valign { + display: block; } + +ul { + padding: 0; } + ul li { + list-style-type: none; } + +.clearfix { + clear: both; } + +.z-depth-1, nav, .card-panel, .card, .toast, .btn, .btn-large, .btn-floating, .dropdown-content, .collapsible, .side-nav { + -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); + -moz-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); + box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); } + +.z-depth-1-half, .btn:hover, .btn-large:hover, .btn-floating:hover { + -webkit-box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15); + -moz-box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15); + box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15); } + +.z-depth-2 { + -webkit-box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + -moz-box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); } + +.z-depth-3 { + -webkit-box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19); + -moz-box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19); + box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19); } + +.z-depth-4, .modal { + -webkit-box-shadow: 0 16px 28px 0 rgba(0, 0, 0, 0.22), 0 25px 55px 0 rgba(0, 0, 0, 0.21); + -moz-box-shadow: 0 16px 28px 0 rgba(0, 0, 0, 0.22), 0 25px 55px 0 rgba(0, 0, 0, 0.21); + box-shadow: 0 16px 28px 0 rgba(0, 0, 0, 0.22), 0 25px 55px 0 rgba(0, 0, 0, 0.21); } + +.z-depth-5 { + -webkit-box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22); + -moz-box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22); + box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22); } + +.divider { + height: 1px; + overflow: hidden; + background-color: #e0e0e0; } + +blockquote { + margin: 20px 0; + padding-left: 1.5rem; + border-left: 5px solid #EF9A9A; } + +i { + line-height: inherit; } + i.left { + float: left; + margin-right: 15px; } + i.right { + float: right; + margin-left: 15px; } + i.tiny { + font-size: 1rem; } + i.small { + font-size: 2rem; } + i.medium { + font-size: 4rem; } + i.large { + font-size: 6rem; } + +img.responsive-img, video.responsive-video { + max-width: 100%; + height: auto; } + +.pagination li { + font-size: 1.2rem; + float: left; + width: 30px; + height: 30px; + margin: 0 10px; + border-radius: 2px; + text-align: center; } + .pagination li a { + color: #444; } + .pagination li.active a { + color: #fff; } + .pagination li.active { + background-color: #ee6e73; } + .pagination li.disabled a { + color: #999; } + .pagination li i { + font-size: 2rem; + line-height: 1.8rem; } + +.parallax-container { + position: relative; + overflow: hidden; + height: 500px; } + +.parallax { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: -1; } + .parallax img { + display: none; + position: absolute; + left: 50%; + bottom: 0; + min-width: 100%; + min-height: 100%; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + transform: translateX(-50%); } + +.pin-top, .pin-bottom { + position: relative; } + +.pinned { + position: fixed !important; } + +/********************* + Transition Classes +**********************/ +ul.staggered-list li { + opacity: 0; } + +.fade-in { + opacity: 0; + transform-origin: 0 50%; } + +/********************* + Media Query Classes +**********************/ +@media only screen and (max-width : 600px) { + .hide-on-small-only, .hide-on-small-and-down { + display: none !important; } } + +@media only screen and (max-width : 992px) { + .hide-on-med-and-down { + display: none !important; } } + +@media only screen and (min-width : 601px) { + .hide-on-med-and-up { + display: none !important; } } + +@media only screen and (min-width: 600px) and (max-width: 992px) { + .hide-on-med-only { + display: none !important; } } + +@media only screen and (min-width : 993px) { + .hide-on-large-only { + display: none !important; } } + +@media only screen and (min-width : 993px) { + .show-on-large { + display: initial !important; } } + +@media only screen and (min-width: 600px) and (max-width: 992px) { + .show-on-medium { + display: initial !important; } } + +@media only screen and (max-width : 600px) { + .show-on-small { + display: initial !important; } } + +@media only screen and (min-width : 601px) { + .show-on-medium-and-up { + display: initial !important; } } + +@media only screen and (max-width : 992px) { + .show-on-medium-and-down { + display: initial !important; } } + +@media only screen and (max-width : 600px) { + .center-on-small-only { + text-align: center; } } + +footer.page-footer { + margin-top: 20px; + padding-top: 20px; + background-color: #ee6e73; } + footer.page-footer .footer-copyright { + overflow: hidden; + height: 50px; + line-height: 50px; + color: rgba(255, 255, 255, 0.8); + background-color: rgba(51, 51, 51, 0.08); } + +table, th, td { + border: none; } + +table { + width: 100%; + display: table; } + table.bordered tr { + border-bottom: 1px solid #d0d0d0; } + table.striped tbody tr:nth-child(odd) { + background-color: #f2f2f2; } + table.hoverable tbody tr { + -webkit-transition: background-color .25s ease; + -moz-transition: background-color .25s ease; + -o-transition: background-color .25s ease; + -ms-transition: background-color .25s ease; + transition: background-color .25s ease; } + table.hoverable tbody tr:hover { + background-color: #f2f2f2; } + table.centered thead tr th, table.centered tbody tr td { + text-align: center; } + +thead { + border-bottom: 1px solid #d0d0d0; } + +td, th { + padding: 15px 5px; + display: table-cell; + text-align: left; + vertical-align: middle; + border-radius: 2px; } + +@media only screen and (max-width : 992px) { + table.responsive-table { + width: 100%; + border-collapse: collapse; + border-spacing: 0; + display: block; + position: relative; + /* sort out borders */ } + table.responsive-table th, table.responsive-table td { + margin: 0; + vertical-align: top; } + table.responsive-table th { + text-align: left; } + table.responsive-table thead { + display: block; + float: left; } + table.responsive-table thead tr { + display: block; + padding: 0 10px 0 0; } + table.responsive-table thead tr th::before { + content: "\00a0"; } + table.responsive-table tbody { + display: block; + width: auto; + position: relative; + overflow-x: auto; + white-space: nowrap; } + table.responsive-table tbody tr { + display: inline-block; + vertical-align: top; } + table.responsive-table th { + display: block; + text-align: right; } + table.responsive-table td { + display: block; + min-height: 1.25em; + text-align: left; } + table.responsive-table tr { + padding: 0 10px; } + table.responsive-table thead { + border: 0; + border-right: 1px solid #d0d0d0; } + table.responsive-table.bordered th { + border-bottom: 0; + border-left: 0; } + table.responsive-table.bordered td { + border-left: 0; + border-right: 0; + border-bottom: 0; } + table.responsive-table.bordered tr { + border: 0; } + table.responsive-table.bordered tbody tr { + border-right: 1px solid #d0d0d0; } } + +.collection { + margin: 0.5rem 0 1rem 0; + border: 1px solid #e0e0e0; + border-radius: 2px; + overflow: hidden; + position: relative; } + .collection .collection-item { + background-color: #fff; + line-height: 1.5rem; + padding: 10px 20px; + margin: 0; + border-bottom: 1px solid #e0e0e0; } + .collection .collection-item.avatar { + height: 84px; + padding-left: 72px; + position: relative; } + .collection .collection-item.avatar .circle { + position: absolute; + width: 42px; + height: 42px; + overflow: hidden; + left: 15px; + display: inline-block; + vertical-align: middle; } + .collection .collection-item.avatar i.circle { + font-size: 18px; + line-height: 42px; + color: #fff; + background-color: #999; + text-align: center; } + .collection .collection-item.avatar .title { + font-size: 16px; } + .collection .collection-item.avatar p { + margin: 0; } + .collection .collection-item.avatar .secondary-content { + position: absolute; + top: 16px; + right: 16px; } + .collection .collection-item:last-child { + border-bottom: none; } + .collection .collection-item.active { + background-color: #26a69a; + color: #eafaf9; } + .collection a.collection-item { + display: block; + -webkit-transition: 0.25s; + -moz-transition: 0.25s; + -o-transition: 0.25s; + -ms-transition: 0.25s; + transition: 0.25s; + color: #26a69a; } + .collection a.collection-item:not(.active):hover { + background-color: #ddd; } + .collection.with-header .collection-header { + background-color: #fff; + border-bottom: 1px solid #e0e0e0; + padding: 10px 20px; } + .collection.with-header .collection-item { + padding-left: 30px; } + +.secondary-content { + float: right; + color: #26a69a; } + +span.badge { + min-width: 3rem; + padding: 0 6px; + text-align: center; + font-size: 1rem; + line-height: inherit; + color: #757575; + position: absolute; + right: 15px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } + span.badge.new { + font-weight: 300; + font-size: 0.8rem; + color: #fff; + background-color: #26a69a; + border-radius: 2px; } + span.badge.new:after { + content: " new"; } + +.video-container { + position: relative; + padding-bottom: 56.25%; + padding-top: 30px; + height: 0; + overflow: hidden; } + .video-container.no-controls { + padding-top: 0; } + .video-container iframe, .video-container object, .video-container embed { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; } + +.progress { + position: relative; + height: 4px; + display: block; + width: 100%; + background-color: #acece6; + border-radius: 2px; + margin: 0.5rem 0 1rem 0; + overflow: hidden; } + .progress .determinate { + position: absolute; + background-color: inherit; + top: 0; + bottom: 0; + background-color: #26a69a; + -webkit-transition: width .3s linear; + -moz-transition: width .3s linear; + -o-transition: width .3s linear; + -ms-transition: width .3s linear; + transition: width .3s linear; } + .progress .indeterminate { + background-color: #26a69a; } + .progress .indeterminate:before { + content: ''; + position: absolute; + background-color: inherit; + top: 0; + left: 0; + bottom: 0; + will-change: left, right; + -webkit-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite; + -moz-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite; + -ms-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite; + -o-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite; + animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite; } + .progress .indeterminate:after { + content: ''; + position: absolute; + background-color: inherit; + top: 0; + left: 0; + bottom: 0; + will-change: left, right; + -webkit-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite; + -moz-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite; + -ms-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite; + -o-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite; + animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite; + -webkit-animation-delay: 1.15s; + -moz-animation-delay: 1.15s; + -ms-animation-delay: 1.15s; + -o-animation-delay: 1.15s; + animation-delay: 1.15s; } + +@-webkit-keyframes indeterminate { + 0% { + left: -35%; + right: 100%; } + + 60% { + left: 100%; + right: -90%; } + + 100% { + left: 100%; + right: -90%; } } + +@-moz-keyframes indeterminate { + 0% { + left: -35%; + right: 100%; } + + 60% { + left: 100%; + right: -90%; } + + 100% { + left: 100%; + right: -90%; } } + +@keyframes indeterminate { + 0% { + left: -35%; + right: 100%; } + + 60% { + left: 100%; + right: -90%; } + + 100% { + left: 100%; + right: -90%; } } + +@-webkit-keyframes indeterminate-short { + 0% { + left: -200%; + right: 100%; } + + 60% { + left: 107%; + right: -8%; } + + 100% { + left: 107%; + right: -8%; } } + +@-moz-keyframes indeterminate-short { + 0% { + left: -200%; + right: 100%; } + + 60% { + left: 107%; + right: -8%; } + + 100% { + left: 107%; + right: -8%; } } + +@keyframes indeterminate-short { + 0% { + left: -200%; + right: 100%; } + + 60% { + left: 107%; + right: -8%; } + + 100% { + left: 107%; + right: -8%; } } + +/******************* + Utility Classes +*******************/ +.hide { + display: none !important; } + +.left-align { + text-align: left; } + +.right-align { + text-align: right; } + +.center, .center-align { + text-align: center; } + +.left { + float: left !important; } + +.right { + float: right !important; } + +.no-select, input[type=range], input[type=range] + .thumb { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } + +.circle { + border-radius: 50%; } + +.center-block { + display: block; + margin-left: auto; + margin-right: auto; } + +.truncate { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; } + +.no-padding { + padding: 0 !important; } + +@font-face { + font-family: "Material-Design-Icons"; + src: url("../font/material-design-icons/Material-Design-Icons.eot?#iefix") format("embedded-opentype"), url("../font/material-design-icons/Material-Design-Icons.woff2") format("woff2"), url("../font/material-design-icons/Material-Design-Icons.woff") format("woff"), url("../font/material-design-icons/Material-Design-Icons.ttf") format("truetype"), url("../font/material-design-icons/Material-Design-Icons.svg#Material-Design-Icons") format("svg"); + font-weight: normal; + font-style: normal; } + +[class^="mdi-"], [class*=" mdi-"] { + font-family: "Material-Design-Icons"; + speak: none; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + text-rendering: auto; + /* Better Font Rendering =========== */ + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; } + +.mdi-action-3d-rotation:before { + content: "\e600"; } + +.mdi-action-accessibility:before { + content: "\e601"; } + +.mdi-action-account-balance:before { + content: "\e602"; } + +.mdi-action-account-balance-wallet:before { + content: "\e603"; } + +.mdi-action-account-box:before { + content: "\e604"; } + +.mdi-action-account-child:before { + content: "\e605"; } + +.mdi-action-account-circle:before { + content: "\e606"; } + +.mdi-action-add-shopping-cart:before { + content: "\e607"; } + +.mdi-action-alarm:before { + content: "\e608"; } + +.mdi-action-alarm-add:before { + content: "\e609"; } + +.mdi-action-alarm-off:before { + content: "\e60a"; } + +.mdi-action-alarm-on:before { + content: "\e60b"; } + +.mdi-action-android:before { + content: "\e60c"; } + +.mdi-action-announcement:before { + content: "\e60d"; } + +.mdi-action-aspect-ratio:before { + content: "\e60e"; } + +.mdi-action-assessment:before { + content: "\e60f"; } + +.mdi-action-assignment:before { + content: "\e610"; } + +.mdi-action-assignment-ind:before { + content: "\e611"; } + +.mdi-action-assignment-late:before { + content: "\e612"; } + +.mdi-action-assignment-return:before { + content: "\e613"; } + +.mdi-action-assignment-returned:before { + content: "\e614"; } + +.mdi-action-assignment-turned-in:before { + content: "\e615"; } + +.mdi-action-autorenew:before { + content: "\e616"; } + +.mdi-action-backup:before { + content: "\e617"; } + +.mdi-action-book:before { + content: "\e618"; } + +.mdi-action-bookmark:before { + content: "\e619"; } + +.mdi-action-bookmark-outline:before { + content: "\e61a"; } + +.mdi-action-bug-report:before { + content: "\e61b"; } + +.mdi-action-cached:before { + content: "\e61c"; } + +.mdi-action-class:before { + content: "\e61d"; } + +.mdi-action-credit-card:before { + content: "\e61e"; } + +.mdi-action-dashboard:before { + content: "\e61f"; } + +.mdi-action-delete:before { + content: "\e620"; } + +.mdi-action-description:before { + content: "\e621"; } + +.mdi-action-dns:before { + content: "\e622"; } + +.mdi-action-done:before { + content: "\e623"; } + +.mdi-action-done-all:before { + content: "\e624"; } + +.mdi-action-event:before { + content: "\e625"; } + +.mdi-action-exit-to-app:before { + content: "\e626"; } + +.mdi-action-explore:before { + content: "\e627"; } + +.mdi-action-extension:before { + content: "\e628"; } + +.mdi-action-face-unlock:before { + content: "\e629"; } + +.mdi-action-favorite:before { + content: "\e62a"; } + +.mdi-action-favorite-outline:before { + content: "\e62b"; } + +.mdi-action-find-in-page:before { + content: "\e62c"; } + +.mdi-action-find-replace:before { + content: "\e62d"; } + +.mdi-action-flip-to-back:before { + content: "\e62e"; } + +.mdi-action-flip-to-front:before { + content: "\e62f"; } + +.mdi-action-get-app:before { + content: "\e630"; } + +.mdi-action-grade:before { + content: "\e631"; } + +.mdi-action-group-work:before { + content: "\e632"; } + +.mdi-action-help:before { + content: "\e633"; } + +.mdi-action-highlight-remove:before { + content: "\e634"; } + +.mdi-action-history:before { + content: "\e635"; } + +.mdi-action-home:before { + content: "\e636"; } + +.mdi-action-https:before { + content: "\e637"; } + +.mdi-action-info:before { + content: "\e638"; } + +.mdi-action-info-outline:before { + content: "\e639"; } + +.mdi-action-input:before { + content: "\e63a"; } + +.mdi-action-invert-colors:before { + content: "\e63b"; } + +.mdi-action-label:before { + content: "\e63c"; } + +.mdi-action-label-outline:before { + content: "\e63d"; } + +.mdi-action-language:before { + content: "\e63e"; } + +.mdi-action-launch:before { + content: "\e63f"; } + +.mdi-action-list:before { + content: "\e640"; } + +.mdi-action-lock:before { + content: "\e641"; } + +.mdi-action-lock-open:before { + content: "\e642"; } + +.mdi-action-lock-outline:before { + content: "\e643"; } + +.mdi-action-loyalty:before { + content: "\e644"; } + +.mdi-action-markunread-mailbox:before { + content: "\e645"; } + +.mdi-action-note-add:before { + content: "\e646"; } + +.mdi-action-open-in-browser:before { + content: "\e647"; } + +.mdi-action-open-in-new:before { + content: "\e648"; } + +.mdi-action-open-with:before { + content: "\e649"; } + +.mdi-action-pageview:before { + content: "\e64a"; } + +.mdi-action-payment:before { + content: "\e64b"; } + +.mdi-action-perm-camera-mic:before { + content: "\e64c"; } + +.mdi-action-perm-contact-cal:before { + content: "\e64d"; } + +.mdi-action-perm-data-setting:before { + content: "\e64e"; } + +.mdi-action-perm-device-info:before { + content: "\e64f"; } + +.mdi-action-perm-identity:before { + content: "\e650"; } + +.mdi-action-perm-media:before { + content: "\e651"; } + +.mdi-action-perm-phone-msg:before { + content: "\e652"; } + +.mdi-action-perm-scan-wifi:before { + content: "\e653"; } + +.mdi-action-picture-in-picture:before { + content: "\e654"; } + +.mdi-action-polymer:before { + content: "\e655"; } + +.mdi-action-print:before { + content: "\e656"; } + +.mdi-action-query-builder:before { + content: "\e657"; } + +.mdi-action-question-answer:before { + content: "\e658"; } + +.mdi-action-receipt:before { + content: "\e659"; } + +.mdi-action-redeem:before { + content: "\e65a"; } + +.mdi-action-report-problem:before { + content: "\e65b"; } + +.mdi-action-restore:before { + content: "\e65c"; } + +.mdi-action-room:before { + content: "\e65d"; } + +.mdi-action-schedule:before { + content: "\e65e"; } + +.mdi-action-search:before { + content: "\e65f"; } + +.mdi-action-settings:before { + content: "\e660"; } + +.mdi-action-settings-applications:before { + content: "\e661"; } + +.mdi-action-settings-backup-restore:before { + content: "\e662"; } + +.mdi-action-settings-bluetooth:before { + content: "\e663"; } + +.mdi-action-settings-cell:before { + content: "\e664"; } + +.mdi-action-settings-display:before { + content: "\e665"; } + +.mdi-action-settings-ethernet:before { + content: "\e666"; } + +.mdi-action-settings-input-antenna:before { + content: "\e667"; } + +.mdi-action-settings-input-component:before { + content: "\e668"; } + +.mdi-action-settings-input-composite:before { + content: "\e669"; } + +.mdi-action-settings-input-hdmi:before { + content: "\e66a"; } + +.mdi-action-settings-input-svideo:before { + content: "\e66b"; } + +.mdi-action-settings-overscan:before { + content: "\e66c"; } + +.mdi-action-settings-phone:before { + content: "\e66d"; } + +.mdi-action-settings-power:before { + content: "\e66e"; } + +.mdi-action-settings-remote:before { + content: "\e66f"; } + +.mdi-action-settings-voice:before { + content: "\e670"; } + +.mdi-action-shop:before { + content: "\e671"; } + +.mdi-action-shopping-basket:before { + content: "\e672"; } + +.mdi-action-shopping-cart:before { + content: "\e673"; } + +.mdi-action-shop-two:before { + content: "\e674"; } + +.mdi-action-speaker-notes:before { + content: "\e675"; } + +.mdi-action-spellcheck:before { + content: "\e676"; } + +.mdi-action-star-rate:before { + content: "\e677"; } + +.mdi-action-stars:before { + content: "\e678"; } + +.mdi-action-store:before { + content: "\e679"; } + +.mdi-action-subject:before { + content: "\e67a"; } + +.mdi-action-swap-horiz:before { + content: "\e67b"; } + +.mdi-action-swap-vert:before { + content: "\e67c"; } + +.mdi-action-swap-vert-circle:before { + content: "\e67d"; } + +.mdi-action-system-update-tv:before { + content: "\e67e"; } + +.mdi-action-tab:before { + content: "\e67f"; } + +.mdi-action-tab-unselected:before { + content: "\e680"; } + +.mdi-action-theaters:before { + content: "\e681"; } + +.mdi-action-thumb-down:before { + content: "\e682"; } + +.mdi-action-thumbs-up-down:before { + content: "\e683"; } + +.mdi-action-thumb-up:before { + content: "\e684"; } + +.mdi-action-toc:before { + content: "\e685"; } + +.mdi-action-today:before { + content: "\e686"; } + +.mdi-action-track-changes:before { + content: "\e687"; } + +.mdi-action-translate:before { + content: "\e688"; } + +.mdi-action-trending-down:before { + content: "\e689"; } + +.mdi-action-trending-neutral:before { + content: "\e68a"; } + +.mdi-action-trending-up:before { + content: "\e68b"; } + +.mdi-action-turned-in:before { + content: "\e68c"; } + +.mdi-action-turned-in-not:before { + content: "\e68d"; } + +.mdi-action-verified-user:before { + content: "\e68e"; } + +.mdi-action-view-agenda:before { + content: "\e68f"; } + +.mdi-action-view-array:before { + content: "\e690"; } + +.mdi-action-view-carousel:before { + content: "\e691"; } + +.mdi-action-view-column:before { + content: "\e692"; } + +.mdi-action-view-day:before { + content: "\e693"; } + +.mdi-action-view-headline:before { + content: "\e694"; } + +.mdi-action-view-list:before { + content: "\e695"; } + +.mdi-action-view-module:before { + content: "\e696"; } + +.mdi-action-view-quilt:before { + content: "\e697"; } + +.mdi-action-view-stream:before { + content: "\e698"; } + +.mdi-action-view-week:before { + content: "\e699"; } + +.mdi-action-visibility:before { + content: "\e69a"; } + +.mdi-action-visibility-off:before { + content: "\e69b"; } + +.mdi-action-wallet-giftcard:before { + content: "\e69c"; } + +.mdi-action-wallet-membership:before { + content: "\e69d"; } + +.mdi-action-wallet-travel:before { + content: "\e69e"; } + +.mdi-action-work:before { + content: "\e69f"; } + +.mdi-alert-error:before { + content: "\e6a0"; } + +.mdi-alert-warning:before { + content: "\e6a1"; } + +.mdi-av-album:before { + content: "\e6a2"; } + +.mdi-av-timer:before { + content: "\e6a3"; } + +.mdi-av-closed-caption:before { + content: "\e6a4"; } + +.mdi-av-equalizer:before { + content: "\e6a5"; } + +.mdi-av-explicit:before { + content: "\e6a6"; } + +.mdi-av-fast-forward:before { + content: "\e6a7"; } + +.mdi-av-fast-rewind:before { + content: "\e6a8"; } + +.mdi-av-games:before { + content: "\e6a9"; } + +.mdi-av-hearing:before { + content: "\e6aa"; } + +.mdi-av-high-quality:before { + content: "\e6ab"; } + +.mdi-av-loop:before { + content: "\e6ac"; } + +.mdi-av-mic:before { + content: "\e6ad"; } + +.mdi-av-mic-none:before { + content: "\e6ae"; } + +.mdi-av-mic-off:before { + content: "\e6af"; } + +.mdi-av-movie:before { + content: "\e6b0"; } + +.mdi-av-my-library-add:before { + content: "\e6b1"; } + +.mdi-av-my-library-books:before { + content: "\e6b2"; } + +.mdi-av-my-library-music:before { + content: "\e6b3"; } + +.mdi-av-new-releases:before { + content: "\e6b4"; } + +.mdi-av-not-interested:before { + content: "\e6b5"; } + +.mdi-av-pause:before { + content: "\e6b6"; } + +.mdi-av-pause-circle-fill:before { + content: "\e6b7"; } + +.mdi-av-pause-circle-outline:before { + content: "\e6b8"; } + +.mdi-av-play-arrow:before { + content: "\e6b9"; } + +.mdi-av-play-circle-fill:before { + content: "\e6ba"; } + +.mdi-av-play-circle-outline:before { + content: "\e6bb"; } + +.mdi-av-playlist-add:before { + content: "\e6bc"; } + +.mdi-av-play-shopping-bag:before { + content: "\e6bd"; } + +.mdi-av-queue:before { + content: "\e6be"; } + +.mdi-av-queue-music:before { + content: "\e6bf"; } + +.mdi-av-radio:before { + content: "\e6c0"; } + +.mdi-av-recent-actors:before { + content: "\e6c1"; } + +.mdi-av-repeat:before { + content: "\e6c2"; } + +.mdi-av-repeat-one:before { + content: "\e6c3"; } + +.mdi-av-replay:before { + content: "\e6c4"; } + +.mdi-av-shuffle:before { + content: "\e6c5"; } + +.mdi-av-skip-next:before { + content: "\e6c6"; } + +.mdi-av-skip-previous:before { + content: "\e6c7"; } + +.mdi-av-snooze:before { + content: "\e6c8"; } + +.mdi-av-stop:before { + content: "\e6c9"; } + +.mdi-av-subtitles:before { + content: "\e6ca"; } + +.mdi-av-surround-sound:before { + content: "\e6cb"; } + +.mdi-av-videocam:before { + content: "\e6cc"; } + +.mdi-av-videocam-off:before { + content: "\e6cd"; } + +.mdi-av-video-collection:before { + content: "\e6ce"; } + +.mdi-av-volume-down:before { + content: "\e6cf"; } + +.mdi-av-volume-mute:before { + content: "\e6d0"; } + +.mdi-av-volume-off:before { + content: "\e6d1"; } + +.mdi-av-volume-up:before { + content: "\e6d2"; } + +.mdi-av-web:before { + content: "\e6d3"; } + +.mdi-communication-business:before { + content: "\e6d4"; } + +.mdi-communication-call:before { + content: "\e6d5"; } + +.mdi-communication-call-end:before { + content: "\e6d6"; } + +.mdi-communication-call-made:before { + content: "\e6d7"; } + +.mdi-communication-call-merge:before { + content: "\e6d8"; } + +.mdi-communication-call-missed:before { + content: "\e6d9"; } + +.mdi-communication-call-received:before { + content: "\e6da"; } + +.mdi-communication-call-split:before { + content: "\e6db"; } + +.mdi-communication-chat:before { + content: "\e6dc"; } + +.mdi-communication-clear-all:before { + content: "\e6dd"; } + +.mdi-communication-comment:before { + content: "\e6de"; } + +.mdi-communication-contacts:before { + content: "\e6df"; } + +.mdi-communication-dialer-sip:before { + content: "\e6e0"; } + +.mdi-communication-dialpad:before { + content: "\e6e1"; } + +.mdi-communication-dnd-on:before { + content: "\e6e2"; } + +.mdi-communication-email:before { + content: "\e6e3"; } + +.mdi-communication-forum:before { + content: "\e6e4"; } + +.mdi-communication-import-export:before { + content: "\e6e5"; } + +.mdi-communication-invert-colors-off:before { + content: "\e6e6"; } + +.mdi-communication-invert-colors-on:before { + content: "\e6e7"; } + +.mdi-communication-live-help:before { + content: "\e6e8"; } + +.mdi-communication-location-off:before { + content: "\e6e9"; } + +.mdi-communication-location-on:before { + content: "\e6ea"; } + +.mdi-communication-message:before { + content: "\e6eb"; } + +.mdi-communication-messenger:before { + content: "\e6ec"; } + +.mdi-communication-no-sim:before { + content: "\e6ed"; } + +.mdi-communication-phone:before { + content: "\e6ee"; } + +.mdi-communication-portable-wifi-off:before { + content: "\e6ef"; } + +.mdi-communication-quick-contacts-dialer:before { + content: "\e6f0"; } + +.mdi-communication-quick-contacts-mail:before { + content: "\e6f1"; } + +.mdi-communication-ring-volume:before { + content: "\e6f2"; } + +.mdi-communication-stay-current-landscape:before { + content: "\e6f3"; } + +.mdi-communication-stay-current-portrait:before { + content: "\e6f4"; } + +.mdi-communication-stay-primary-landscape:before { + content: "\e6f5"; } + +.mdi-communication-stay-primary-portrait:before { + content: "\e6f6"; } + +.mdi-communication-swap-calls:before { + content: "\e6f7"; } + +.mdi-communication-textsms:before { + content: "\e6f8"; } + +.mdi-communication-voicemail:before { + content: "\e6f9"; } + +.mdi-communication-vpn-key:before { + content: "\e6fa"; } + +.mdi-content-add:before { + content: "\e6fb"; } + +.mdi-content-add-box:before { + content: "\e6fc"; } + +.mdi-content-add-circle:before { + content: "\e6fd"; } + +.mdi-content-add-circle-outline:before { + content: "\e6fe"; } + +.mdi-content-archive:before { + content: "\e6ff"; } + +.mdi-content-backspace:before { + content: "\e700"; } + +.mdi-content-block:before { + content: "\e701"; } + +.mdi-content-clear:before { + content: "\e702"; } + +.mdi-content-content-copy:before { + content: "\e703"; } + +.mdi-content-content-cut:before { + content: "\e704"; } + +.mdi-content-content-paste:before { + content: "\e705"; } + +.mdi-content-create:before { + content: "\e706"; } + +.mdi-content-drafts:before { + content: "\e707"; } + +.mdi-content-filter-list:before { + content: "\e708"; } + +.mdi-content-flag:before { + content: "\e709"; } + +.mdi-content-forward:before { + content: "\e70a"; } + +.mdi-content-gesture:before { + content: "\e70b"; } + +.mdi-content-inbox:before { + content: "\e70c"; } + +.mdi-content-link:before { + content: "\e70d"; } + +.mdi-content-mail:before { + content: "\e70e"; } + +.mdi-content-markunread:before { + content: "\e70f"; } + +.mdi-content-redo:before { + content: "\e710"; } + +.mdi-content-remove:before { + content: "\e711"; } + +.mdi-content-remove-circle:before { + content: "\e712"; } + +.mdi-content-remove-circle-outline:before { + content: "\e713"; } + +.mdi-content-reply:before { + content: "\e714"; } + +.mdi-content-reply-all:before { + content: "\e715"; } + +.mdi-content-report:before { + content: "\e716"; } + +.mdi-content-save:before { + content: "\e717"; } + +.mdi-content-select-all:before { + content: "\e718"; } + +.mdi-content-send:before { + content: "\e719"; } + +.mdi-content-sort:before { + content: "\e71a"; } + +.mdi-content-text-format:before { + content: "\e71b"; } + +.mdi-content-undo:before { + content: "\e71c"; } + +.mdi-device-access-alarm:before { + content: "\e71d"; } + +.mdi-device-access-alarms:before { + content: "\e71e"; } + +.mdi-device-access-time:before { + content: "\e71f"; } + +.mdi-device-add-alarm:before { + content: "\e720"; } + +.mdi-device-airplanemode-off:before { + content: "\e721"; } + +.mdi-device-airplanemode-on:before { + content: "\e722"; } + +.mdi-device-battery-20:before { + content: "\e723"; } + +.mdi-device-battery-30:before { + content: "\e724"; } + +.mdi-device-battery-50:before { + content: "\e725"; } + +.mdi-device-battery-60:before { + content: "\e726"; } + +.mdi-device-battery-80:before { + content: "\e727"; } + +.mdi-device-battery-90:before { + content: "\e728"; } + +.mdi-device-battery-alert:before { + content: "\e729"; } + +.mdi-device-battery-charging-20:before { + content: "\e72a"; } + +.mdi-device-battery-charging-30:before { + content: "\e72b"; } + +.mdi-device-battery-charging-50:before { + content: "\e72c"; } + +.mdi-device-battery-charging-60:before { + content: "\e72d"; } + +.mdi-device-battery-charging-80:before { + content: "\e72e"; } + +.mdi-device-battery-charging-90:before { + content: "\e72f"; } + +.mdi-device-battery-charging-full:before { + content: "\e730"; } + +.mdi-device-battery-full:before { + content: "\e731"; } + +.mdi-device-battery-std:before { + content: "\e732"; } + +.mdi-device-battery-unknown:before { + content: "\e733"; } + +.mdi-device-bluetooth:before { + content: "\e734"; } + +.mdi-device-bluetooth-connected:before { + content: "\e735"; } + +.mdi-device-bluetooth-disabled:before { + content: "\e736"; } + +.mdi-device-bluetooth-searching:before { + content: "\e737"; } + +.mdi-device-brightness-auto:before { + content: "\e738"; } + +.mdi-device-brightness-high:before { + content: "\e739"; } + +.mdi-device-brightness-low:before { + content: "\e73a"; } + +.mdi-device-brightness-medium:before { + content: "\e73b"; } + +.mdi-device-data-usage:before { + content: "\e73c"; } + +.mdi-device-developer-mode:before { + content: "\e73d"; } + +.mdi-device-devices:before { + content: "\e73e"; } + +.mdi-device-dvr:before { + content: "\e73f"; } + +.mdi-device-gps-fixed:before { + content: "\e740"; } + +.mdi-device-gps-not-fixed:before { + content: "\e741"; } + +.mdi-device-gps-off:before { + content: "\e742"; } + +.mdi-device-location-disabled:before { + content: "\e743"; } + +.mdi-device-location-searching:before { + content: "\e744"; } + +.mdi-device-multitrack-audio:before { + content: "\e745"; } + +.mdi-device-network-cell:before { + content: "\e746"; } + +.mdi-device-network-wifi:before { + content: "\e747"; } + +.mdi-device-nfc:before { + content: "\e748"; } + +.mdi-device-now-wallpaper:before { + content: "\e749"; } + +.mdi-device-now-widgets:before { + content: "\e74a"; } + +.mdi-device-screen-lock-landscape:before { + content: "\e74b"; } + +.mdi-device-screen-lock-portrait:before { + content: "\e74c"; } + +.mdi-device-screen-lock-rotation:before { + content: "\e74d"; } + +.mdi-device-screen-rotation:before { + content: "\e74e"; } + +.mdi-device-sd-storage:before { + content: "\e74f"; } + +.mdi-device-settings-system-daydream:before { + content: "\e750"; } + +.mdi-device-signal-cellular-0-bar:before { + content: "\e751"; } + +.mdi-device-signal-cellular-1-bar:before { + content: "\e752"; } + +.mdi-device-signal-cellular-2-bar:before { + content: "\e753"; } + +.mdi-device-signal-cellular-3-bar:before { + content: "\e754"; } + +.mdi-device-signal-cellular-4-bar:before { + content: "\e755"; } + +.mdi-device-signal-cellular-connected-no-internet-0-bar:before { + content: "\e756"; } + +.mdi-device-signal-cellular-connected-no-internet-1-bar:before { + content: "\e757"; } + +.mdi-device-signal-cellular-connected-no-internet-2-bar:before { + content: "\e758"; } + +.mdi-device-signal-cellular-connected-no-internet-3-bar:before { + content: "\e759"; } + +.mdi-device-signal-cellular-connected-no-internet-4-bar:before { + content: "\e75a"; } + +.mdi-device-signal-cellular-no-sim:before { + content: "\e75b"; } + +.mdi-device-signal-cellular-null:before { + content: "\e75c"; } + +.mdi-device-signal-cellular-off:before { + content: "\e75d"; } + +.mdi-device-signal-wifi-0-bar:before { + content: "\e75e"; } + +.mdi-device-signal-wifi-1-bar:before { + content: "\e75f"; } + +.mdi-device-signal-wifi-2-bar:before { + content: "\e760"; } + +.mdi-device-signal-wifi-3-bar:before { + content: "\e761"; } + +.mdi-device-signal-wifi-4-bar:before { + content: "\e762"; } + +.mdi-device-signal-wifi-off:before { + content: "\e763"; } + +.mdi-device-storage:before { + content: "\e764"; } + +.mdi-device-usb:before { + content: "\e765"; } + +.mdi-device-wifi-lock:before { + content: "\e766"; } + +.mdi-device-wifi-tethering:before { + content: "\e767"; } + +.mdi-editor-attach-file:before { + content: "\e768"; } + +.mdi-editor-attach-money:before { + content: "\e769"; } + +.mdi-editor-border-all:before { + content: "\e76a"; } + +.mdi-editor-border-bottom:before { + content: "\e76b"; } + +.mdi-editor-border-clear:before { + content: "\e76c"; } + +.mdi-editor-border-color:before { + content: "\e76d"; } + +.mdi-editor-border-horizontal:before { + content: "\e76e"; } + +.mdi-editor-border-inner:before { + content: "\e76f"; } + +.mdi-editor-border-left:before { + content: "\e770"; } + +.mdi-editor-border-outer:before { + content: "\e771"; } + +.mdi-editor-border-right:before { + content: "\e772"; } + +.mdi-editor-border-style:before { + content: "\e773"; } + +.mdi-editor-border-top:before { + content: "\e774"; } + +.mdi-editor-border-vertical:before { + content: "\e775"; } + +.mdi-editor-format-align-center:before { + content: "\e776"; } + +.mdi-editor-format-align-justify:before { + content: "\e777"; } + +.mdi-editor-format-align-left:before { + content: "\e778"; } + +.mdi-editor-format-align-right:before { + content: "\e779"; } + +.mdi-editor-format-bold:before { + content: "\e77a"; } + +.mdi-editor-format-clear:before { + content: "\e77b"; } + +.mdi-editor-format-color-fill:before { + content: "\e77c"; } + +.mdi-editor-format-color-reset:before { + content: "\e77d"; } + +.mdi-editor-format-color-text:before { + content: "\e77e"; } + +.mdi-editor-format-indent-decrease:before { + content: "\e77f"; } + +.mdi-editor-format-indent-increase:before { + content: "\e780"; } + +.mdi-editor-format-italic:before { + content: "\e781"; } + +.mdi-editor-format-line-spacing:before { + content: "\e782"; } + +.mdi-editor-format-list-bulleted:before { + content: "\e783"; } + +.mdi-editor-format-list-numbered:before { + content: "\e784"; } + +.mdi-editor-format-paint:before { + content: "\e785"; } + +.mdi-editor-format-quote:before { + content: "\e786"; } + +.mdi-editor-format-size:before { + content: "\e787"; } + +.mdi-editor-format-strikethrough:before { + content: "\e788"; } + +.mdi-editor-functions:before { + content: "\e789"; } + +.mdi-editor-format-textdirection-l-to-r:before { + content: "\e78a"; } + +.mdi-editor-format-underline:before { + content: "\e78b"; } + +.mdi-editor-format-textdirection-r-to-l:before { + content: "\e78c"; } + +.mdi-editor-insert-chart:before { + content: "\e78d"; } + +.mdi-editor-insert-comment:before { + content: "\e78e"; } + +.mdi-editor-insert-drive-file:before { + content: "\e78f"; } + +.mdi-editor-insert-emoticon:before { + content: "\e790"; } + +.mdi-editor-insert-invitation:before { + content: "\e791"; } + +.mdi-editor-insert-link:before { + content: "\e792"; } + +.mdi-editor-insert-photo:before { + content: "\e793"; } + +.mdi-editor-merge-type:before { + content: "\e794"; } + +.mdi-editor-mode-comment:before { + content: "\e795"; } + +.mdi-editor-mode-edit:before { + content: "\e796"; } + +.mdi-editor-publish:before { + content: "\e797"; } + +.mdi-editor-vertical-align-bottom:before { + content: "\e798"; } + +.mdi-editor-vertical-align-center:before { + content: "\e799"; } + +.mdi-editor-vertical-align-top:before { + content: "\e79a"; } + +.mdi-editor-wrap-text:before { + content: "\e79b"; } + +.mdi-file-attachment:before { + content: "\e79c"; } + +.mdi-file-cloud:before { + content: "\e79d"; } + +.mdi-file-cloud-circle:before { + content: "\e79e"; } + +.mdi-file-cloud-done:before { + content: "\e79f"; } + +.mdi-file-cloud-download:before { + content: "\e7a0"; } + +.mdi-file-cloud-off:before { + content: "\e7a1"; } + +.mdi-file-cloud-queue:before { + content: "\e7a2"; } + +.mdi-file-cloud-upload:before { + content: "\e7a3"; } + +.mdi-file-file-download:before { + content: "\e7a4"; } + +.mdi-file-file-upload:before { + content: "\e7a5"; } + +.mdi-file-folder:before { + content: "\e7a6"; } + +.mdi-file-folder-open:before { + content: "\e7a7"; } + +.mdi-file-folder-shared:before { + content: "\e7a8"; } + +.mdi-hardware-cast:before { + content: "\e7a9"; } + +.mdi-hardware-cast-connected:before { + content: "\e7aa"; } + +.mdi-hardware-computer:before { + content: "\e7ab"; } + +.mdi-hardware-desktop-mac:before { + content: "\e7ac"; } + +.mdi-hardware-desktop-windows:before { + content: "\e7ad"; } + +.mdi-hardware-dock:before { + content: "\e7ae"; } + +.mdi-hardware-gamepad:before { + content: "\e7af"; } + +.mdi-hardware-headset:before { + content: "\e7b0"; } + +.mdi-hardware-headset-mic:before { + content: "\e7b1"; } + +.mdi-hardware-keyboard:before { + content: "\e7b2"; } + +.mdi-hardware-keyboard-alt:before { + content: "\e7b3"; } + +.mdi-hardware-keyboard-arrow-down:before { + content: "\e7b4"; } + +.mdi-hardware-keyboard-arrow-left:before { + content: "\e7b5"; } + +.mdi-hardware-keyboard-arrow-right:before { + content: "\e7b6"; } + +.mdi-hardware-keyboard-arrow-up:before { + content: "\e7b7"; } + +.mdi-hardware-keyboard-backspace:before { + content: "\e7b8"; } + +.mdi-hardware-keyboard-capslock:before { + content: "\e7b9"; } + +.mdi-hardware-keyboard-control:before { + content: "\e7ba"; } + +.mdi-hardware-keyboard-hide:before { + content: "\e7bb"; } + +.mdi-hardware-keyboard-return:before { + content: "\e7bc"; } + +.mdi-hardware-keyboard-tab:before { + content: "\e7bd"; } + +.mdi-hardware-keyboard-voice:before { + content: "\e7be"; } + +.mdi-hardware-laptop:before { + content: "\e7bf"; } + +.mdi-hardware-laptop-chromebook:before { + content: "\e7c0"; } + +.mdi-hardware-laptop-mac:before { + content: "\e7c1"; } + +.mdi-hardware-laptop-windows:before { + content: "\e7c2"; } + +.mdi-hardware-memory:before { + content: "\e7c3"; } + +.mdi-hardware-mouse:before { + content: "\e7c4"; } + +.mdi-hardware-phone-android:before { + content: "\e7c5"; } + +.mdi-hardware-phone-iphone:before { + content: "\e7c6"; } + +.mdi-hardware-phonelink:before { + content: "\e7c7"; } + +.mdi-hardware-phonelink-off:before { + content: "\e7c8"; } + +.mdi-hardware-security:before { + content: "\e7c9"; } + +.mdi-hardware-sim-card:before { + content: "\e7ca"; } + +.mdi-hardware-smartphone:before { + content: "\e7cb"; } + +.mdi-hardware-speaker:before { + content: "\e7cc"; } + +.mdi-hardware-tablet:before { + content: "\e7cd"; } + +.mdi-hardware-tablet-android:before { + content: "\e7ce"; } + +.mdi-hardware-tablet-mac:before { + content: "\e7cf"; } + +.mdi-hardware-tv:before { + content: "\e7d0"; } + +.mdi-hardware-watch:before { + content: "\e7d1"; } + +.mdi-image-add-to-photos:before { + content: "\e7d2"; } + +.mdi-image-adjust:before { + content: "\e7d3"; } + +.mdi-image-assistant-photo:before { + content: "\e7d4"; } + +.mdi-image-audiotrack:before { + content: "\e7d5"; } + +.mdi-image-blur-circular:before { + content: "\e7d6"; } + +.mdi-image-blur-linear:before { + content: "\e7d7"; } + +.mdi-image-blur-off:before { + content: "\e7d8"; } + +.mdi-image-blur-on:before { + content: "\e7d9"; } + +.mdi-image-brightness-1:before { + content: "\e7da"; } + +.mdi-image-brightness-2:before { + content: "\e7db"; } + +.mdi-image-brightness-3:before { + content: "\e7dc"; } + +.mdi-image-brightness-4:before { + content: "\e7dd"; } + +.mdi-image-brightness-5:before { + content: "\e7de"; } + +.mdi-image-brightness-6:before { + content: "\e7df"; } + +.mdi-image-brightness-7:before { + content: "\e7e0"; } + +.mdi-image-brush:before { + content: "\e7e1"; } + +.mdi-image-camera:before { + content: "\e7e2"; } + +.mdi-image-camera-alt:before { + content: "\e7e3"; } + +.mdi-image-camera-front:before { + content: "\e7e4"; } + +.mdi-image-camera-rear:before { + content: "\e7e5"; } + +.mdi-image-camera-roll:before { + content: "\e7e6"; } + +.mdi-image-center-focus-strong:before { + content: "\e7e7"; } + +.mdi-image-center-focus-weak:before { + content: "\e7e8"; } + +.mdi-image-collections:before { + content: "\e7e9"; } + +.mdi-image-colorize:before { + content: "\e7ea"; } + +.mdi-image-color-lens:before { + content: "\e7eb"; } + +.mdi-image-compare:before { + content: "\e7ec"; } + +.mdi-image-control-point:before { + content: "\e7ed"; } + +.mdi-image-control-point-duplicate:before { + content: "\e7ee"; } + +.mdi-image-crop:before { + content: "\e7ef"; } + +.mdi-image-crop-3-2:before { + content: "\e7f0"; } + +.mdi-image-crop-5-4:before { + content: "\e7f1"; } + +.mdi-image-crop-7-5:before { + content: "\e7f2"; } + +.mdi-image-crop-16-9:before { + content: "\e7f3"; } + +.mdi-image-crop-din:before { + content: "\e7f4"; } + +.mdi-image-crop-free:before { + content: "\e7f5"; } + +.mdi-image-crop-landscape:before { + content: "\e7f6"; } + +.mdi-image-crop-original:before { + content: "\e7f7"; } + +.mdi-image-crop-portrait:before { + content: "\e7f8"; } + +.mdi-image-crop-square:before { + content: "\e7f9"; } + +.mdi-image-dehaze:before { + content: "\e7fa"; } + +.mdi-image-details:before { + content: "\e7fb"; } + +.mdi-image-edit:before { + content: "\e7fc"; } + +.mdi-image-exposure:before { + content: "\e7fd"; } + +.mdi-image-exposure-minus-1:before { + content: "\e7fe"; } + +.mdi-image-exposure-minus-2:before { + content: "\e7ff"; } + +.mdi-image-exposure-plus-1:before { + content: "\e800"; } + +.mdi-image-exposure-plus-2:before { + content: "\e801"; } + +.mdi-image-exposure-zero:before { + content: "\e802"; } + +.mdi-image-filter:before { + content: "\e803"; } + +.mdi-image-filter-1:before { + content: "\e804"; } + +.mdi-image-filter-2:before { + content: "\e805"; } + +.mdi-image-filter-3:before { + content: "\e806"; } + +.mdi-image-filter-4:before { + content: "\e807"; } + +.mdi-image-filter-5:before { + content: "\e808"; } + +.mdi-image-filter-6:before { + content: "\e809"; } + +.mdi-image-filter-7:before { + content: "\e80a"; } + +.mdi-image-filter-8:before { + content: "\e80b"; } + +.mdi-image-filter-9:before { + content: "\e80c"; } + +.mdi-image-filter-9-plus:before { + content: "\e80d"; } + +.mdi-image-filter-b-and-w:before { + content: "\e80e"; } + +.mdi-image-filter-center-focus:before { + content: "\e80f"; } + +.mdi-image-filter-drama:before { + content: "\e810"; } + +.mdi-image-filter-frames:before { + content: "\e811"; } + +.mdi-image-filter-hdr:before { + content: "\e812"; } + +.mdi-image-filter-none:before { + content: "\e813"; } + +.mdi-image-filter-tilt-shift:before { + content: "\e814"; } + +.mdi-image-filter-vintage:before { + content: "\e815"; } + +.mdi-image-flare:before { + content: "\e816"; } + +.mdi-image-flash-auto:before { + content: "\e817"; } + +.mdi-image-flash-off:before { + content: "\e818"; } + +.mdi-image-flash-on:before { + content: "\e819"; } + +.mdi-image-flip:before { + content: "\e81a"; } + +.mdi-image-gradient:before { + content: "\e81b"; } + +.mdi-image-grain:before { + content: "\e81c"; } + +.mdi-image-grid-off:before { + content: "\e81d"; } + +.mdi-image-grid-on:before { + content: "\e81e"; } + +.mdi-image-hdr-off:before { + content: "\e81f"; } + +.mdi-image-hdr-on:before { + content: "\e820"; } + +.mdi-image-hdr-strong:before { + content: "\e821"; } + +.mdi-image-hdr-weak:before { + content: "\e822"; } + +.mdi-image-healing:before { + content: "\e823"; } + +.mdi-image-image:before { + content: "\e824"; } + +.mdi-image-image-aspect-ratio:before { + content: "\e825"; } + +.mdi-image-iso:before { + content: "\e826"; } + +.mdi-image-landscape:before { + content: "\e827"; } + +.mdi-image-leak-add:before { + content: "\e828"; } + +.mdi-image-leak-remove:before { + content: "\e829"; } + +.mdi-image-lens:before { + content: "\e82a"; } + +.mdi-image-looks:before { + content: "\e82b"; } + +.mdi-image-looks-3:before { + content: "\e82c"; } + +.mdi-image-looks-4:before { + content: "\e82d"; } + +.mdi-image-looks-5:before { + content: "\e82e"; } + +.mdi-image-looks-6:before { + content: "\e82f"; } + +.mdi-image-looks-one:before { + content: "\e830"; } + +.mdi-image-looks-two:before { + content: "\e831"; } + +.mdi-image-loupe:before { + content: "\e832"; } + +.mdi-image-movie-creation:before { + content: "\e833"; } + +.mdi-image-nature:before { + content: "\e834"; } + +.mdi-image-nature-people:before { + content: "\e835"; } + +.mdi-image-navigate-before:before { + content: "\e836"; } + +.mdi-image-navigate-next:before { + content: "\e837"; } + +.mdi-image-palette:before { + content: "\e838"; } + +.mdi-image-panorama:before { + content: "\e839"; } + +.mdi-image-panorama-fisheye:before { + content: "\e83a"; } + +.mdi-image-panorama-horizontal:before { + content: "\e83b"; } + +.mdi-image-panorama-vertical:before { + content: "\e83c"; } + +.mdi-image-panorama-wide-angle:before { + content: "\e83d"; } + +.mdi-image-photo:before { + content: "\e83e"; } + +.mdi-image-photo-album:before { + content: "\e83f"; } + +.mdi-image-photo-camera:before { + content: "\e840"; } + +.mdi-image-photo-library:before { + content: "\e841"; } + +.mdi-image-portrait:before { + content: "\e842"; } + +.mdi-image-remove-red-eye:before { + content: "\e843"; } + +.mdi-image-rotate-left:before { + content: "\e844"; } + +.mdi-image-rotate-right:before { + content: "\e845"; } + +.mdi-image-slideshow:before { + content: "\e846"; } + +.mdi-image-straighten:before { + content: "\e847"; } + +.mdi-image-style:before { + content: "\e848"; } + +.mdi-image-switch-camera:before { + content: "\e849"; } + +.mdi-image-switch-video:before { + content: "\e84a"; } + +.mdi-image-tag-faces:before { + content: "\e84b"; } + +.mdi-image-texture:before { + content: "\e84c"; } + +.mdi-image-timelapse:before { + content: "\e84d"; } + +.mdi-image-timer:before { + content: "\e84e"; } + +.mdi-image-timer-3:before { + content: "\e84f"; } + +.mdi-image-timer-10:before { + content: "\e850"; } + +.mdi-image-timer-auto:before { + content: "\e851"; } + +.mdi-image-timer-off:before { + content: "\e852"; } + +.mdi-image-tonality:before { + content: "\e853"; } + +.mdi-image-transform:before { + content: "\e854"; } + +.mdi-image-tune:before { + content: "\e855"; } + +.mdi-image-wb-auto:before { + content: "\e856"; } + +.mdi-image-wb-cloudy:before { + content: "\e857"; } + +.mdi-image-wb-incandescent:before { + content: "\e858"; } + +.mdi-image-wb-irradescent:before { + content: "\e859"; } + +.mdi-image-wb-sunny:before { + content: "\e85a"; } + +.mdi-maps-beenhere:before { + content: "\e85b"; } + +.mdi-maps-directions:before { + content: "\e85c"; } + +.mdi-maps-directions-bike:before { + content: "\e85d"; } + +.mdi-maps-directions-bus:before { + content: "\e85e"; } + +.mdi-maps-directions-car:before { + content: "\e85f"; } + +.mdi-maps-directions-ferry:before { + content: "\e860"; } + +.mdi-maps-directions-subway:before { + content: "\e861"; } + +.mdi-maps-directions-train:before { + content: "\e862"; } + +.mdi-maps-directions-transit:before { + content: "\e863"; } + +.mdi-maps-directions-walk:before { + content: "\e864"; } + +.mdi-maps-flight:before { + content: "\e865"; } + +.mdi-maps-hotel:before { + content: "\e866"; } + +.mdi-maps-layers:before { + content: "\e867"; } + +.mdi-maps-layers-clear:before { + content: "\e868"; } + +.mdi-maps-local-airport:before { + content: "\e869"; } + +.mdi-maps-local-atm:before { + content: "\e86a"; } + +.mdi-maps-local-attraction:before { + content: "\e86b"; } + +.mdi-maps-local-bar:before { + content: "\e86c"; } + +.mdi-maps-local-cafe:before { + content: "\e86d"; } + +.mdi-maps-local-car-wash:before { + content: "\e86e"; } + +.mdi-maps-local-convenience-store:before { + content: "\e86f"; } + +.mdi-maps-local-drink:before { + content: "\e870"; } + +.mdi-maps-local-florist:before { + content: "\e871"; } + +.mdi-maps-local-gas-station:before { + content: "\e872"; } + +.mdi-maps-local-grocery-store:before { + content: "\e873"; } + +.mdi-maps-local-hospital:before { + content: "\e874"; } + +.mdi-maps-local-hotel:before { + content: "\e875"; } + +.mdi-maps-local-laundry-service:before { + content: "\e876"; } + +.mdi-maps-local-library:before { + content: "\e877"; } + +.mdi-maps-local-mall:before { + content: "\e878"; } + +.mdi-maps-local-movies:before { + content: "\e879"; } + +.mdi-maps-local-offer:before { + content: "\e87a"; } + +.mdi-maps-local-parking:before { + content: "\e87b"; } + +.mdi-maps-local-pharmacy:before { + content: "\e87c"; } + +.mdi-maps-local-phone:before { + content: "\e87d"; } + +.mdi-maps-local-pizza:before { + content: "\e87e"; } + +.mdi-maps-local-play:before { + content: "\e87f"; } + +.mdi-maps-local-post-office:before { + content: "\e880"; } + +.mdi-maps-local-print-shop:before { + content: "\e881"; } + +.mdi-maps-local-restaurant:before { + content: "\e882"; } + +.mdi-maps-local-see:before { + content: "\e883"; } + +.mdi-maps-local-shipping:before { + content: "\e884"; } + +.mdi-maps-local-taxi:before { + content: "\e885"; } + +.mdi-maps-location-history:before { + content: "\e886"; } + +.mdi-maps-map:before { + content: "\e887"; } + +.mdi-maps-my-location:before { + content: "\e888"; } + +.mdi-maps-navigation:before { + content: "\e889"; } + +.mdi-maps-pin-drop:before { + content: "\e88a"; } + +.mdi-maps-place:before { + content: "\e88b"; } + +.mdi-maps-rate-review:before { + content: "\e88c"; } + +.mdi-maps-restaurant-menu:before { + content: "\e88d"; } + +.mdi-maps-satellite:before { + content: "\e88e"; } + +.mdi-maps-store-mall-directory:before { + content: "\e88f"; } + +.mdi-maps-terrain:before { + content: "\e890"; } + +.mdi-maps-traffic:before { + content: "\e891"; } + +.mdi-navigation-apps:before { + content: "\e892"; } + +.mdi-navigation-arrow-back:before { + content: "\e893"; } + +.mdi-navigation-arrow-drop-down:before { + content: "\e894"; } + +.mdi-navigation-arrow-drop-down-circle:before { + content: "\e895"; } + +.mdi-navigation-arrow-drop-up:before { + content: "\e896"; } + +.mdi-navigation-arrow-forward:before { + content: "\e897"; } + +.mdi-navigation-cancel:before { + content: "\e898"; } + +.mdi-navigation-check:before { + content: "\e899"; } + +.mdi-navigation-chevron-left:before { + content: "\e89a"; } + +.mdi-navigation-chevron-right:before { + content: "\e89b"; } + +.mdi-navigation-close:before { + content: "\e89c"; } + +.mdi-navigation-expand-less:before { + content: "\e89d"; } + +.mdi-navigation-expand-more:before { + content: "\e89e"; } + +.mdi-navigation-fullscreen:before { + content: "\e89f"; } + +.mdi-navigation-fullscreen-exit:before { + content: "\e8a0"; } + +.mdi-navigation-menu:before { + content: "\e8a1"; } + +.mdi-navigation-more-horiz:before { + content: "\e8a2"; } + +.mdi-navigation-more-vert:before { + content: "\e8a3"; } + +.mdi-navigation-refresh:before { + content: "\e8a4"; } + +.mdi-navigation-unfold-less:before { + content: "\e8a5"; } + +.mdi-navigation-unfold-more:before { + content: "\e8a6"; } + +.mdi-notification-adb:before { + content: "\e8a7"; } + +.mdi-notification-bluetooth-audio:before { + content: "\e8a8"; } + +.mdi-notification-disc-full:before { + content: "\e8a9"; } + +.mdi-notification-dnd-forwardslash:before { + content: "\e8aa"; } + +.mdi-notification-do-not-disturb:before { + content: "\e8ab"; } + +.mdi-notification-drive-eta:before { + content: "\e8ac"; } + +.mdi-notification-event-available:before { + content: "\e8ad"; } + +.mdi-notification-event-busy:before { + content: "\e8ae"; } + +.mdi-notification-event-note:before { + content: "\e8af"; } + +.mdi-notification-folder-special:before { + content: "\e8b0"; } + +.mdi-notification-mms:before { + content: "\e8b1"; } + +.mdi-notification-more:before { + content: "\e8b2"; } + +.mdi-notification-network-locked:before { + content: "\e8b3"; } + +.mdi-notification-phone-bluetooth-speaker:before { + content: "\e8b4"; } + +.mdi-notification-phone-forwarded:before { + content: "\e8b5"; } + +.mdi-notification-phone-in-talk:before { + content: "\e8b6"; } + +.mdi-notification-phone-locked:before { + content: "\e8b7"; } + +.mdi-notification-phone-missed:before { + content: "\e8b8"; } + +.mdi-notification-phone-paused:before { + content: "\e8b9"; } + +.mdi-notification-play-download:before { + content: "\e8ba"; } + +.mdi-notification-play-install:before { + content: "\e8bb"; } + +.mdi-notification-sd-card:before { + content: "\e8bc"; } + +.mdi-notification-sim-card-alert:before { + content: "\e8bd"; } + +.mdi-notification-sms:before { + content: "\e8be"; } + +.mdi-notification-sms-failed:before { + content: "\e8bf"; } + +.mdi-notification-sync:before { + content: "\e8c0"; } + +.mdi-notification-sync-disabled:before { + content: "\e8c1"; } + +.mdi-notification-sync-problem:before { + content: "\e8c2"; } + +.mdi-notification-system-update:before { + content: "\e8c3"; } + +.mdi-notification-tap-and-play:before { + content: "\e8c4"; } + +.mdi-notification-time-to-leave:before { + content: "\e8c5"; } + +.mdi-notification-vibration:before { + content: "\e8c6"; } + +.mdi-notification-voice-chat:before { + content: "\e8c7"; } + +.mdi-notification-vpn-lock:before { + content: "\e8c8"; } + +.mdi-social-cake:before { + content: "\e8c9"; } + +.mdi-social-domain:before { + content: "\e8ca"; } + +.mdi-social-group:before { + content: "\e8cb"; } + +.mdi-social-group-add:before { + content: "\e8cc"; } + +.mdi-social-location-city:before { + content: "\e8cd"; } + +.mdi-social-mood:before { + content: "\e8ce"; } + +.mdi-social-notifications:before { + content: "\e8cf"; } + +.mdi-social-notifications-none:before { + content: "\e8d0"; } + +.mdi-social-notifications-off:before { + content: "\e8d1"; } + +.mdi-social-notifications-on:before { + content: "\e8d2"; } + +.mdi-social-notifications-paused:before { + content: "\e8d3"; } + +.mdi-social-pages:before { + content: "\e8d4"; } + +.mdi-social-party-mode:before { + content: "\e8d5"; } + +.mdi-social-people:before { + content: "\e8d6"; } + +.mdi-social-people-outline:before { + content: "\e8d7"; } + +.mdi-social-person:before { + content: "\e8d8"; } + +.mdi-social-person-add:before { + content: "\e8d9"; } + +.mdi-social-person-outline:before { + content: "\e8da"; } + +.mdi-social-plus-one:before { + content: "\e8db"; } + +.mdi-social-poll:before { + content: "\e8dc"; } + +.mdi-social-public:before { + content: "\e8dd"; } + +.mdi-social-school:before { + content: "\e8de"; } + +.mdi-social-share:before { + content: "\e8df"; } + +.mdi-social-whatshot:before { + content: "\e8e0"; } + +.mdi-toggle-check-box:before { + content: "\e8e1"; } + +.mdi-toggle-check-box-outline-blank:before { + content: "\e8e2"; } + +.mdi-toggle-radio-button-off:before { + content: "\e8e3"; } + +.mdi-toggle-radio-button-on:before { + content: "\e8e4"; } + +.container { + padding: 0 1.5rem; + margin: 0 auto; + max-width: 1280px; + width: 90%; } + +@media only screen and (min-width : 601px) { + .container { + width: 85%; } } + +@media only screen and (min-width : 993px) { + .container { + width: 70%; } } + +.container .row { + margin-left: -0.75rem; + margin-right: -0.75rem; } + +.section { + padding-top: 1rem; + padding-bottom: 1rem; } + .section.no-pad { + padding: 0; } + .section.no-pad-bot { + padding-bottom: 0; } + .section.no-pad-top { + padding-top: 0; } + +.row { + margin-left: auto; + margin-right: auto; + margin-bottom: 20px; } + .row:after { + content: ""; + display: table; + clear: both; } + .row .col { + float: left; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0 0.75rem; } + .row .col.s1 { + width: 8.33333%; + margin-left: 0; } + .row .col.s2 { + width: 16.66667%; + margin-left: 0; } + .row .col.s3 { + width: 25%; + margin-left: 0; } + .row .col.s4 { + width: 33.33333%; + margin-left: 0; } + .row .col.s5 { + width: 41.66667%; + margin-left: 0; } + .row .col.s6 { + width: 50%; + margin-left: 0; } + .row .col.s7 { + width: 58.33333%; + margin-left: 0; } + .row .col.s8 { + width: 66.66667%; + margin-left: 0; } + .row .col.s9 { + width: 75%; + margin-left: 0; } + .row .col.s10 { + width: 83.33333%; + margin-left: 0; } + .row .col.s11 { + width: 91.66667%; + margin-left: 0; } + .row .col.s12 { + width: 100%; + margin-left: 0; } + .row .col.offset-s1 { + margin-left: 8.33333%; } + .row .col.offset-s2 { + margin-left: 16.66667%; } + .row .col.offset-s3 { + margin-left: 25%; } + .row .col.offset-s4 { + margin-left: 33.33333%; } + .row .col.offset-s5 { + margin-left: 41.66667%; } + .row .col.offset-s6 { + margin-left: 50%; } + .row .col.offset-s7 { + margin-left: 58.33333%; } + .row .col.offset-s8 { + margin-left: 66.66667%; } + .row .col.offset-s9 { + margin-left: 75%; } + .row .col.offset-s10 { + margin-left: 83.33333%; } + .row .col.offset-s11 { + margin-left: 91.66667%; } + .row .col.offset-s12 { + margin-left: 100%; } + @media only screen and (min-width : 601px) { + .row .col.m1 { + width: 8.33333%; + margin-left: 0; } + .row .col.m2 { + width: 16.66667%; + margin-left: 0; } + .row .col.m3 { + width: 25%; + margin-left: 0; } + .row .col.m4 { + width: 33.33333%; + margin-left: 0; } + .row .col.m5 { + width: 41.66667%; + margin-left: 0; } + .row .col.m6 { + width: 50%; + margin-left: 0; } + .row .col.m7 { + width: 58.33333%; + margin-left: 0; } + .row .col.m8 { + width: 66.66667%; + margin-left: 0; } + .row .col.m9 { + width: 75%; + margin-left: 0; } + .row .col.m10 { + width: 83.33333%; + margin-left: 0; } + .row .col.m11 { + width: 91.66667%; + margin-left: 0; } + .row .col.m12 { + width: 100%; + margin-left: 0; } + .row .col.offset-m1 { + margin-left: 8.33333%; } + .row .col.offset-m2 { + margin-left: 16.66667%; } + .row .col.offset-m3 { + margin-left: 25%; } + .row .col.offset-m4 { + margin-left: 33.33333%; } + .row .col.offset-m5 { + margin-left: 41.66667%; } + .row .col.offset-m6 { + margin-left: 50%; } + .row .col.offset-m7 { + margin-left: 58.33333%; } + .row .col.offset-m8 { + margin-left: 66.66667%; } + .row .col.offset-m9 { + margin-left: 75%; } + .row .col.offset-m10 { + margin-left: 83.33333%; } + .row .col.offset-m11 { + margin-left: 91.66667%; } + .row .col.offset-m12 { + margin-left: 100%; } } + @media only screen and (min-width : 993px) { + .row .col.l1 { + width: 8.33333%; + margin-left: 0; } + .row .col.l2 { + width: 16.66667%; + margin-left: 0; } + .row .col.l3 { + width: 25%; + margin-left: 0; } + .row .col.l4 { + width: 33.33333%; + margin-left: 0; } + .row .col.l5 { + width: 41.66667%; + margin-left: 0; } + .row .col.l6 { + width: 50%; + margin-left: 0; } + .row .col.l7 { + width: 58.33333%; + margin-left: 0; } + .row .col.l8 { + width: 66.66667%; + margin-left: 0; } + .row .col.l9 { + width: 75%; + margin-left: 0; } + .row .col.l10 { + width: 83.33333%; + margin-left: 0; } + .row .col.l11 { + width: 91.66667%; + margin-left: 0; } + .row .col.l12 { + width: 100%; + margin-left: 0; } + .row .col.offset-l1 { + margin-left: 8.33333%; } + .row .col.offset-l2 { + margin-left: 16.66667%; } + .row .col.offset-l3 { + margin-left: 25%; } + .row .col.offset-l4 { + margin-left: 33.33333%; } + .row .col.offset-l5 { + margin-left: 41.66667%; } + .row .col.offset-l6 { + margin-left: 50%; } + .row .col.offset-l7 { + margin-left: 58.33333%; } + .row .col.offset-l8 { + margin-left: 66.66667%; } + .row .col.offset-l9 { + margin-left: 75%; } + .row .col.offset-l10 { + margin-left: 83.33333%; } + .row .col.offset-l11 { + margin-left: 91.66667%; } + .row .col.offset-l12 { + margin-left: 100%; } } + +nav { + color: #fff; + background-color: #ee6e73; + width: 100%; + height: 56px; + line-height: 56px; } + nav a { + color: #fff; } + nav .nav-wrapper { + position: relative; + height: 100%; } + nav .nav-wrapper i { + display: block; + font-size: 2rem; } + @media only screen and (min-width : 993px) { + nav a.button-collapse { + display: none; } } + nav .button-collapse { + float: left; + position: relative; + z-index: 1; + height: 56px; } + nav .button-collapse i { + font-size: 2.7rem; + height: 56px; + line-height: 56px; } + nav .brand-logo { + position: absolute; + color: #fff; + display: inline-block; + font-size: 2.1rem; + padding: 0; } + nav .brand-logo.center { + left: 50%; + -webkit-transform: translateX(-50%); + -moz-transform: translateX(-50%); + -ms-transform: translateX(-50%); + -o-transform: translateX(-50%); + transform: translateX(-50%); } + @media only screen and (max-width : 992px) { + nav .brand-logo { + left: 50%; + -webkit-transform: translateX(-50%); + -moz-transform: translateX(-50%); + -ms-transform: translateX(-50%); + -o-transform: translateX(-50%); + transform: translateX(-50%); } } + nav .brand-logo.right { + right: 0.5rem; + padding: 0; } + nav ul { + margin: 0; } + nav ul li { + -webkit-transition: background-color .3s; + -moz-transition: background-color .3s; + -o-transition: background-color .3s; + -ms-transition: background-color .3s; + transition: background-color .3s; + float: left; + padding: 0; } + nav ul li:hover, nav ul li.active { + background-color: rgba(0, 0, 0, 0.1); } + nav ul a { + font-size: 1rem; + color: #fff; + display: block; + padding: 0 15px; } + nav ul.left { + float: left; } + nav .input-field { + margin: 0; } + nav .input-field input { + height: 100%; + font-size: 1.2rem; + border: none; + padding-left: 2rem; } + nav .input-field input:focus, nav .input-field input[type=text]:valid, nav .input-field input[type=password]:valid, nav .input-field input[type=email]:valid, nav .input-field input[type=url]:valid, nav .input-field input[type=date]:valid { + border: none; + box-shadow: none; } + nav .input-field label { + top: 0; + left: 0; } + nav .input-field label i { + color: rgba(255, 255, 255, 0.7); + -webkit-transition: color .3s; + -moz-transition: color .3s; + -o-transition: color .3s; + -ms-transition: color .3s; + transition: color .3s; } + nav .input-field label.active i { + color: #fff; } + nav .input-field label.active { + -webkit-transform: translateY(0); + -moz-transform: translateY(0); + -ms-transform: translateY(0); + -o-transform: translateY(0); + transform: translateY(0); } + +.navbar-fixed { + position: relative; + height: 56px; + z-index: 998; } + .navbar-fixed nav { + position: fixed; } + +@media only screen and (min-width : 601px) { + nav, nav .nav-wrapper i, nav a.button-collapse, nav a.button-collapse i { + height: 64px; + line-height: 64px; } + .navbar-fixed { + height: 64px; } } + +@font-face { + font-family: "Roboto"; + src: url("../font/roboto/Roboto-Thin.woff2") format("woff2"), url("../font/roboto/Roboto-Thin.woff") format("woff"), url("../font/roboto/Roboto-Thin.ttf") format("truetype"); + font-weight: 200; } + +@font-face { + font-family: "Roboto"; + src: url("../font/roboto/Roboto-Light.woff2") format("woff2"), url("../font/roboto/Roboto-Light.woff") format("woff"), url("../font/roboto/Roboto-Light.ttf") format("truetype"); + font-weight: 300; } + +@font-face { + font-family: "Roboto"; + src: url("../font/roboto/Roboto-Regular.woff2") format("woff2"), url("../font/roboto/Roboto-Regular.woff") format("woff"), url("../font/roboto/Roboto-Regular.ttf") format("truetype"); + font-weight: 400; } + +@font-face { + font-family: "Roboto"; + src: url("../font/roboto/Roboto-Medium.woff2") format("woff2"), url("../font/roboto/Roboto-Medium.woff") format("woff"), url("../font/roboto/Roboto-Medium.ttf") format("truetype"); + font-weight: 500; } + +@font-face { + font-family: "Roboto"; + src: url("../font/roboto/Roboto-Bold.woff2") format("woff2"), url("../font/roboto/Roboto-Bold.woff") format("woff"), url("../font/roboto/Roboto-Bold.ttf") format("truetype"); + font-weight: 700; } + +a { + text-decoration: none; } + +html { + line-height: 1.5; + font-family: "Roboto", sans-serif; + font-weight: normal; + color: rgba(0, 0, 0, 0.87); } + @media only screen and (min-width: 0) { + html { + font-size: 14px; } } + @media only screen and (min-width: 992px) { + html { + font-size: 14.5px; } } + @media only screen and (min-width: 1200px) { + html { + font-size: 15px; } } + +h1, h2, h3, h4, h5, h6 { + font-weight: 400; } + +h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { + font-weight: inherit; } + +h1 { + font-size: 4.2rem; + line-height: 4.62rem; + margin: 2.1rem 0 1.68rem 0; } + +h2 { + font-size: 3.56rem; + line-height: 3.916rem; + margin: 1.78rem 0 1.424rem 0; } + +h3 { + font-size: 2.92rem; + line-height: 3.212rem; + margin: 1.46rem 0 1.168rem 0; } + +h4 { + font-size: 2.28rem; + line-height: 2.508rem; + margin: 1.14rem 0 0.912rem 0; } + +h5 { + font-size: 1.64rem; + line-height: 1.804rem; + margin: 0.82rem 0 0.656rem 0; } + +h6 { + font-size: 1rem; + line-height: 1.1rem; + margin: 0.5rem 0 0.4rem 0; } + +em { + font-style: italic; } + +strong { + font-weight: 500; } + +small { + font-size: 75%; } + +.light, footer.page-footer .footer-copyright { + font-weight: 300; } + +.thin { + font-weight: 200; } + +.flow-text { + font-weight: 300; } + @media only screen and (min-width: 360px) { + .flow-text { + font-size: 1.2rem; } } + @media only screen and (min-width: 0px) { + .flow-text { + line-height: .8rem; } } + @media only screen and (min-width: 390px) { + .flow-text { + font-size: 1.224rem; } } + @media only screen and (min-width: 30px) { + .flow-text { + line-height: .904rem; } } + @media only screen and (min-width: 420px) { + .flow-text { + font-size: 1.248rem; } } + @media only screen and (min-width: 60px) { + .flow-text { + line-height: 1.008rem; } } + @media only screen and (min-width: 450px) { + .flow-text { + font-size: 1.272rem; } } + @media only screen and (min-width: 90px) { + .flow-text { + line-height: 1.112rem; } } + @media only screen and (min-width: 480px) { + .flow-text { + font-size: 1.296rem; } } + @media only screen and (min-width: 120px) { + .flow-text { + line-height: 1.216rem; } } + @media only screen and (min-width: 510px) { + .flow-text { + font-size: 1.32rem; } } + @media only screen and (min-width: 150px) { + .flow-text { + line-height: 1.32rem; } } + @media only screen and (min-width: 540px) { + .flow-text { + font-size: 1.344rem; } } + @media only screen and (min-width: 180px) { + .flow-text { + line-height: 1.424rem; } } + @media only screen and (min-width: 570px) { + .flow-text { + font-size: 1.368rem; } } + @media only screen and (min-width: 210px) { + .flow-text { + line-height: 1.528rem; } } + @media only screen and (min-width: 600px) { + .flow-text { + font-size: 1.392rem; } } + @media only screen and (min-width: 240px) { + .flow-text { + line-height: 1.632rem; } } + @media only screen and (min-width: 630px) { + .flow-text { + font-size: 1.416rem; } } + @media only screen and (min-width: 270px) { + .flow-text { + line-height: 1.736rem; } } + @media only screen and (min-width: 660px) { + .flow-text { + font-size: 1.44rem; } } + @media only screen and (min-width: 300px) { + .flow-text { + line-height: 1.84rem; } } + @media only screen and (min-width: 690px) { + .flow-text { + font-size: 1.464rem; } } + @media only screen and (min-width: 330px) { + .flow-text { + line-height: 1.944rem; } } + @media only screen and (min-width: 720px) { + .flow-text { + font-size: 1.488rem; } } + @media only screen and (min-width: 360px) { + .flow-text { + line-height: 2.048rem; } } + @media only screen and (min-width: 750px) { + .flow-text { + font-size: 1.512rem; } } + @media only screen and (min-width: 390px) { + .flow-text { + line-height: 2.152rem; } } + @media only screen and (min-width: 780px) { + .flow-text { + font-size: 1.536rem; } } + @media only screen and (min-width: 420px) { + .flow-text { + line-height: 2.256rem; } } + @media only screen and (min-width: 810px) { + .flow-text { + font-size: 1.56rem; } } + @media only screen and (min-width: 450px) { + .flow-text { + line-height: 2.36rem; } } + @media only screen and (min-width: 840px) { + .flow-text { + font-size: 1.584rem; } } + @media only screen and (min-width: 480px) { + .flow-text { + line-height: 2.464rem; } } + @media only screen and (min-width: 870px) { + .flow-text { + font-size: 1.608rem; } } + @media only screen and (min-width: 510px) { + .flow-text { + line-height: 2.568rem; } } + @media only screen and (min-width: 900px) { + .flow-text { + font-size: 1.632rem; } } + @media only screen and (min-width: 540px) { + .flow-text { + line-height: 2.672rem; } } + @media only screen and (min-width: 930px) { + .flow-text { + font-size: 1.656rem; } } + @media only screen and (min-width: 570px) { + .flow-text { + line-height: 2.776rem; } } + @media only screen and (min-width: 960px) { + .flow-text { + font-size: 1.68rem; } } + @media only screen and (min-width: 600px) { + .flow-text { + line-height: 2.88rem; } } + +.card-panel { + padding: 20px; + margin: 0.5rem 0 1rem 0; + border-radius: 2px; + background-color: #fff; } + +.card { + position: relative; + overflow: hidden; + margin: 0.5rem 0 1rem 0; + background-color: #fff; + border-radius: 2px; } + .card .card-title { + color: #fff; + font-size: 24px; + font-weight: 300; } + .card .card-title.activator { + cursor: pointer; } + .card.small, .card.medium, .card.large { + position: relative; } + .card.small .card-image, .card.medium .card-image, .card.large .card-image { + overflow: hidden; } + .card.small .card-content, .card.medium .card-content, .card.large .card-content { + overflow: hidden; } + .card.small .card-action, .card.medium .card-action, .card.large .card-action { + position: absolute; + bottom: 0; + left: 0; + right: 0; } + .card.small { + height: 300px; } + .card.small .card-image { + height: 150px; } + .card.small .card-content { + height: 150px; } + .card.medium { + height: 400px; } + .card.medium .card-image { + height: 250px; } + .card.medium .card-content { + height: 150px; } + .card.large { + height: 500px; } + .card.large .card-image { + height: 330px; } + .card.large .card-content { + height: 170px; } + .card .card-image { + position: relative; } + .card .card-image img { + border-radius: 2px 2px 0 0; + position: relative; + left: 0; + right: 0; + top: 0; + bottom: 0; + width: 100%; } + .card .card-image .card-title { + position: absolute; + bottom: 0; + left: 0; + padding: 20px; } + .card .card-content { + padding: 20px; + border-radius: 0 0 2px 2px; } + .card .card-content p { + margin: 0; + color: inherit; } + .card .card-content .card-title { + line-height: 48px; } + .card .card-action { + border-top: 1px solid rgba(160, 160, 160, 0.2); + padding: 20px; } + .card .card-action a { + color: #ffab40; + margin-right: 20px; + -webkit-transition: color .3s ease; + -moz-transition: color .3s ease; + -o-transition: color .3s ease; + -ms-transition: color .3s ease; + transition: color .3s ease; + text-transform: uppercase; } + .card .card-action a:hover { + color: #ffd8a6; } + .card .card-reveal { + padding: 20px; + position: absolute; + background-color: #FFF; + width: 100%; + overflow-y: auto; + top: 100%; + height: 100%; + z-index: 1; + display: none; } + .card .card-reveal .card-title { + cursor: pointer; + display: block; } + +#toast-container { + display: block; + position: fixed; + z-index: 1001; } + @media only screen and (max-width : 600px) { + #toast-container { + min-width: 100%; + bottom: 0%; } } + @media only screen and (min-width : 601px) and (max-width : 992px) { + #toast-container { + min-width: 30%; + left: 5%; + bottom: 7%; } } + @media only screen and (min-width : 993px) { + #toast-container { + min-width: 8%; + top: 10%; + right: 7%; } } + +.toast { + border-radius: 2px; + top: 0; + width: auto; + clear: both; + margin-top: 10px; + position: relative; + max-width: 100%; + height: 48px; + line-height: 48px; + background-color: #323232; + padding: 0 25px; + font-size: 1.1rem; + font-weight: 300; + color: #fff; + display: -webkit-box; + display: -moz-box; + display: -ms-flexbox; + display: -webkit-flex; + display: flex; + -webkit-flex-align: center; + -ms-flex-align: center; + -webkit-align-items: center; + align-items: center; + -webkit-justify-content: space-between; + justify-content: space-between; } + .toast .btn, .toast .btn-large, .toast .btn-flat { + margin: 0; + margin-left: 3rem; } + .toast.rounded { + border-radius: 24px; } + @media only screen and (max-width : 600px) { + .toast { + width: 100%; + border-radius: 0; } } + @media only screen and (min-width : 601px) and (max-width : 992px) { + .toast { + float: left; } } + @media only screen and (min-width : 993px) { + .toast { + float: right; } } + +.tabs { + position: relative; + height: 48px; + background-color: #fff; + margin: 0 auto; + width: 100%; + white-space: nowrap; } + .tabs .tab { + display: block; + float: left; + text-align: center; + line-height: 48px; + height: 48px; + padding: 0 20px; + margin: 0; + text-transform: uppercase; + letter-spacing: .8px; + width: 15%; } + .tabs .tab a { + color: #ee6e73; + display: block; + width: 100%; + height: 100%; + -webkit-transition: color .28s ease; + -moz-transition: color .28s ease; + -o-transition: color .28s ease; + -ms-transition: color .28s ease; + transition: color .28s ease; } + .tabs .tab a:hover { + color: #f9c9cb; } + .tabs .indicator { + position: absolute; + bottom: 0; + height: 2px; + background-color: #f6b2b5; + will-change: left, right; } + +.tabs .tab { + padding: 0; } + +.material-tooltip { + padding: 10px 8px; + font-size: 1rem; + z-index: 1000; + background-color: transparent; + border-radius: 2px; + color: #fff; + min-height: 36px; + line-height: 1rem; + opacity: 0; + display: none; + position: absolute; + text-align: center; + overflow: hidden; + left: 0; + top: 0; + will-change: top, left; } + +.backdrop { + position: absolute; + opacity: 0; + display: none; + height: 7px; + width: 14px; + border-radius: 0 0 14px 14px; + background-color: #323232; + z-index: -1; + -webkit-transform-origin: 50% 10%; + -moz-transform-origin: 50% 10%; + -ms-transform-origin: 50% 10%; + -o-transform-origin: 50% 10%; + transform-origin: 50% 10%; + will-change: transform, opacity; } + +.btn, .btn-large, .btn-flat { + border: none; + border-radius: 2px; + display: inline-block; + height: 36px; + line-height: 36px; + outline: 0; + padding: 0 2rem; + text-transform: uppercase; + vertical-align: middle; + -webkit-tap-highlight-color: transparent; } + +.btn.disabled, .disabled.btn-large, .btn-floating.disabled, .btn-large.disabled, .btn:disabled, .btn-large:disabled, .btn-large:disabled, .btn-floating:disabled { + background-color: #DFDFDF; + box-shadow: none; + color: #9F9F9F; + cursor: default; } + .btn.disabled *, .disabled.btn-large *, .btn-floating.disabled *, .btn-large.disabled *, .btn:disabled *, .btn-large:disabled *, .btn-large:disabled *, .btn-floating:disabled * { + pointer-events: none; } + .btn.disabled:hover, .disabled.btn-large:hover, .btn-floating.disabled:hover, .btn-large.disabled:hover, .btn:disabled:hover, .btn-large:disabled:hover, .btn-large:disabled:hover, .btn-floating:disabled:hover { + background-color: #DFDFDF; + color: #9F9F9F; } + +.btn i, .btn-large i, .btn-floating i, .btn-large i, .btn-flat i { + font-size: 1.3rem; + line-height: inherit; } + +.btn, .btn-large { + text-decoration: none; + color: #FFF; + background-color: #26a69a; + text-align: center; + letter-spacing: .5px; + -webkit-transition: .2s ease-out; + -moz-transition: .2s ease-out; + -o-transition: .2s ease-out; + -ms-transition: .2s ease-out; + transition: .2s ease-out; + cursor: pointer; } + .btn:hover, .btn-large:hover { + background-color: #2bbbad; } + +.btn-floating { + display: inline-block; + color: #FFF; + position: relative; + overflow: hidden; + z-index: 1; + width: 37px; + height: 37px; + line-height: 37px; + padding: 0; + background-color: #26a69a; + border-radius: 50%; + transition: .3s; + cursor: pointer; + vertical-align: middle; } + .btn-floating i { + width: inherit; + display: inline-block; + text-align: center; + color: #FFF; + font-size: 1.6rem; + line-height: 37px; } + .btn-floating:before { + border-radius: 0; } + .btn-floating.btn-large { + width: 55.5px; + height: 55.5px; } + .btn-floating.btn-large i { + line-height: 55.5px; } + +button.btn-floating { + border: none; } + +.fixed-action-btn { + position: fixed; + right: 23px; + bottom: 23px; + padding-top: 15px; + margin-bottom: 0; + z-index: 998; } + .fixed-action-btn ul { + left: 0; + right: 0; + text-align: center; + position: absolute; + bottom: 64px; } + .fixed-action-btn ul li { + margin-bottom: 15px; } + .fixed-action-btn ul a.btn-floating { + opacity: 0; } + +.btn-flat { + box-shadow: none; + background-color: transparent; + color: #343434; + cursor: pointer; } + .btn-flat.disabled { + color: #b3b3b3; + cursor: default; } + +.btn-large { + height: 54px; + line-height: 56px; } + .btn-large i { + font-size: 1.6rem; } + +.dropdown-content { + background-color: #FFFFFF; + margin: 0; + display: none; + min-width: 100px; + max-height: 650px; + overflow-y: auto; + opacity: 0; + position: absolute; + white-space: nowrap; + z-index: 1; + will-change: width, height; } + .dropdown-content li { + clear: both; + color: rgba(0, 0, 0, 0.87); + cursor: pointer; + line-height: 1.5rem; + width: 100%; + text-align: left; + text-transform: none; } + .dropdown-content li:hover, .dropdown-content li.active { + background-color: #eee; } + .dropdown-content li > a, .dropdown-content li > span { + font-size: 1.2rem; + color: #26a69a; + display: block; + padding: 1rem 1rem; } + +/*! + * Waves v0.6.0 + * http://fian.my.id/Waves + * + * Copyright 2014 Alfiana E. Sibuea and other contributors + * Released under the MIT license + * https://github.com/fians/Waves/blob/master/LICENSE + */ +.waves-effect { + position: relative; + cursor: pointer; + display: inline-block; + overflow: hidden; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-tap-highlight-color: transparent; + vertical-align: middle; + z-index: 1; + will-change: opacity, transform; + -webkit-transition: all .3s ease-out; + -moz-transition: all .3s ease-out; + -o-transition: all .3s ease-out; + -ms-transition: all .3s ease-out; + transition: all .3s ease-out; } + .waves-effect .waves-ripple { + position: absolute; + border-radius: 50%; + width: 20px; + height: 20px; + margin-top: -10px; + margin-left: -10px; + opacity: 0; + background: rgba(0, 0, 0, 0.2); + -webkit-transition: all 0.7s ease-out; + -moz-transition: all 0.7s ease-out; + -o-transition: all 0.7s ease-out; + -ms-transition: all 0.7s ease-out; + transition: all 0.7s ease-out; + -webkit-transition-property: -webkit-transform, opacity; + -moz-transition-property: -moz-transform, opacity; + -o-transition-property: -o-transform, opacity; + transition-property: transform, opacity; + -webkit-transform: scale(0); + -moz-transform: scale(0); + -ms-transform: scale(0); + -o-transform: scale(0); + transform: scale(0); + pointer-events: none; } + .waves-effect.waves-light .waves-ripple { + background-color: rgba(255, 255, 255, 0.45); } + .waves-effect.waves-red .waves-ripple { + background-color: rgba(244, 67, 54, 0.7); } + .waves-effect.waves-yellow .waves-ripple { + background-color: rgba(255, 235, 59, 0.7); } + .waves-effect.waves-orange .waves-ripple { + background-color: rgba(255, 152, 0, 0.7); } + .waves-effect.waves-purple .waves-ripple { + background-color: rgba(156, 39, 176, 0.7); } + .waves-effect.waves-green .waves-ripple { + background-color: rgba(76, 175, 80, 0.7); } + .waves-effect.waves-teal .waves-ripple { + background-color: rgba(0, 150, 136, 0.7); } + +.waves-notransition { + -webkit-transition: none !important; + -moz-transition: none !important; + -o-transition: none !important; + -ms-transition: none !important; + transition: none !important; } + +.waves-circle { + -webkit-transform: translateZ(0); + -moz-transform: translateZ(0); + -ms-transform: translateZ(0); + -o-transform: translateZ(0); + transform: translateZ(0); + -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%); } + +.waves-input-wrapper { + border-radius: 0.2em; + vertical-align: bottom; } + .waves-input-wrapper .waves-button-input { + position: relative; + top: 0; + left: 0; + z-index: 1; } + +.waves-circle { + text-align: center; + width: 2.5em; + height: 2.5em; + line-height: 2.5em; + border-radius: 50%; + -webkit-mask-image: none; } + +.waves-block { + display: block; } + +/* Firefox Bug: link not triggered */ +a.waves-effect .waves-ripple { + z-index: -1; } + +.modal { + display: none; + position: fixed; + left: 0; + right: 0; + background-color: #fafafa; + padding: 0; + max-height: 70%; + width: 55%; + margin: auto; + overflow-y: auto; + z-index: 1000; + border-radius: 2px; + -webkit-transform: translate(0); + -moz-transform: translate(0); + -ms-transform: translate(0); + -o-transform: translate(0); + transform: translate(0); + will-change: top, opacity; } + @media only screen and (max-width : 992px) { + .modal { + width: 80%; } } + .modal h1, .modal h2, .modal h3, .modal h4 { + margin-top: 0; } + .modal .modal-content { + padding: 24px; } + .modal .modal-footer { + border-radius: 0 0 2px 2px; + background-color: #fafafa; + padding: 4px 6px; + height: 56px; + width: 100%; } + .modal .modal-footer .btn, .modal .modal-footer .btn-large, .modal .modal-footer .btn-flat { + float: right; + margin: 6px 0; } + +#lean-overlay { + position: fixed; + z-index: 999; + top: 0; + left: 0; + bottom: 0; + right: 0; + height: 115%; + width: 100%; + background: #000; + display: none; + will-change: opacity; } + +.modal.modal-fixed-footer { + padding: 0; + height: 70%; } + .modal.modal-fixed-footer .modal-content { + position: fixed; + max-height: 100%; + padding-bottom: 64px; + width: 100%; + overflow-y: auto; } + .modal.modal-fixed-footer .modal-footer { + border-top: 1px solid rgba(0, 0, 0, 0.1); + position: fixed; + bottom: 0; } + +.modal.bottom-sheet { + top: auto; + bottom: -100%; + margin: 0; + width: 100%; + max-height: 45%; + border-radius: 0; + will-change: bottom, opacity; } + +.collapsible { + border-top: 1px solid #ddd; + border-right: 1px solid #ddd; + border-left: 1px solid #ddd; + margin: 0.5rem 0 1rem 0; } + +.collapsible-header { + display: block; + cursor: pointer; + height: 3rem; + line-height: 3rem; + padding: 0 1rem; + background-color: #fff; + border-bottom: 1px solid #ddd; } + .collapsible-header i { + width: 2rem; + font-size: 1.6rem; + line-height: 3rem; + display: block; + float: left; + text-align: center; + margin-right: 1rem; } + +.collapsible-body { + overflow: hidden; + display: none; + border-bottom: 1px solid #ddd; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } + .collapsible-body p { + margin: 0; + padding: 2rem; } + +.side-nav .collapsible { + border: none; + box-shadow: none; } + .side-nav .collapsible li { + padding: 0; } +.side-nav .collapsible-header { + background-color: transparent; + border: none; + line-height: inherit; + height: inherit; + margin: 0 1rem; } + .side-nav .collapsible-header i { + line-height: inherit; } +.side-nav .collapsible-body { + border: 0; + background-color: #FFF; } + .side-nav .collapsible-body li a { + margin: 0 1rem 0 2rem; } + +.collapsible.popout { + border: none; + box-shadow: none; } + .collapsible.popout > li { + box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); + transform: scaleX(.92) translate3d(0, 0, 0); + transition: margin .35s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform .35s cubic-bezier(0.25, 0.46, 0.45, 0.94); } + .collapsible.popout > li:hover { + will-change: margin, transform; } + .collapsible.popout > li.active { + box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15); + margin: 16px 0; + transform: scaleX(1) translate3d(0, 0, 0); } + +.materialboxed { + cursor: zoom-in; + position: relative; + -webkit-transition: opacity .4s; + -moz-transition: opacity .4s; + -o-transition: opacity .4s; + -ms-transition: opacity .4s; + transition: opacity .4s; } + .materialboxed:hover { + will-change: left, top, width, height; } + .materialboxed:hover:not(.active) { + opacity: .8; } + +.materialboxed.active { + cursor: zoom-out; } + +#materialbox-overlay { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: #292929; + z-index: 999; + will-change: opacity; } + +.materialbox-caption { + position: fixed; + display: none; + color: #fff; + line-height: 50px; + bottom: 0; + width: 100%; + text-align: center; + padding: 0% 15%; + height: 50px; + z-index: 1000; + -webkit-font-smoothing: antialiased; } + +/* Remove Focus Boxes */ +select:focus { + outline: 1px solid #c9f3ef; } + +button:focus { + outline: none; + background-color: #2ab7a9; } + +label { + font-size: 0.8rem; + color: #9e9e9e; } + +/*************************** + Text Inputs + Textarea +****************************/ +::-webkit-input-placeholder { + color: #d1d1d1; } + +:-moz-placeholder { + /* Firefox 18- */ + color: #d1d1d1; } + +::-moz-placeholder { + /* Firefox 19+ */ + color: #d1d1d1; } + +:-ms-input-placeholder { + color: #d1d1d1; } + +input[type=text], input[type=password], input[type=email], input[type=url], input[type=time], input[type=date], input[type=datetime-local], input[type=tel], input[type=number], input[type=search], textarea.materialize-textarea { + background-color: transparent; + border: none; + border-bottom: 1px solid #9e9e9e; + border-radius: 0; + outline: none; + height: 3rem; + width: 100%; + font-size: 1rem; + margin: 0 0 15px 0; + padding: 0; + box-shadow: none; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + transition: all .3s; } + input[type=text]:disabled, input[type=text][readonly="readonly"], input[type=password]:disabled, input[type=password][readonly="readonly"], input[type=email]:disabled, input[type=email][readonly="readonly"], input[type=url]:disabled, input[type=url][readonly="readonly"], input[type=time]:disabled, input[type=time][readonly="readonly"], input[type=date]:disabled, input[type=date][readonly="readonly"], input[type=datetime-local]:disabled, input[type=datetime-local][readonly="readonly"], input[type=tel]:disabled, input[type=tel][readonly="readonly"], input[type=number]:disabled, input[type=number][readonly="readonly"], input[type=search]:disabled, input[type=search][readonly="readonly"], textarea.materialize-textarea:disabled, textarea.materialize-textarea[readonly="readonly"] { + color: rgba(0, 0, 0, 0.26); + border-bottom: 1px dotted rgba(0, 0, 0, 0.26); } + input[type=text]:disabled + label, input[type=text][readonly="readonly"] + label, input[type=password]:disabled + label, input[type=password][readonly="readonly"] + label, input[type=email]:disabled + label, input[type=email][readonly="readonly"] + label, input[type=url]:disabled + label, input[type=url][readonly="readonly"] + label, input[type=time]:disabled + label, input[type=time][readonly="readonly"] + label, input[type=date]:disabled + label, input[type=date][readonly="readonly"] + label, input[type=datetime-local]:disabled + label, input[type=datetime-local][readonly="readonly"] + label, input[type=tel]:disabled + label, input[type=tel][readonly="readonly"] + label, input[type=number]:disabled + label, input[type=number][readonly="readonly"] + label, input[type=search]:disabled + label, input[type=search][readonly="readonly"] + label, textarea.materialize-textarea:disabled + label, textarea.materialize-textarea[readonly="readonly"] + label { + color: rgba(0, 0, 0, 0.26); } + input[type=text]:focus:not([readonly]), input[type=password]:focus:not([readonly]), input[type=email]:focus:not([readonly]), input[type=url]:focus:not([readonly]), input[type=time]:focus:not([readonly]), input[type=date]:focus:not([readonly]), input[type=datetime-local]:focus:not([readonly]), input[type=tel]:focus:not([readonly]), input[type=number]:focus:not([readonly]), input[type=search]:focus:not([readonly]), textarea.materialize-textarea:focus:not([readonly]) { + border-bottom: 1px solid #26a69a; + box-shadow: 0 1px 0 0 #26a69a; } + input[type=text]:focus:not([readonly]) + label, input[type=password]:focus:not([readonly]) + label, input[type=email]:focus:not([readonly]) + label, input[type=url]:focus:not([readonly]) + label, input[type=time]:focus:not([readonly]) + label, input[type=date]:focus:not([readonly]) + label, input[type=datetime-local]:focus:not([readonly]) + label, input[type=tel]:focus:not([readonly]) + label, input[type=number]:focus:not([readonly]) + label, input[type=search]:focus:not([readonly]) + label, textarea.materialize-textarea:focus:not([readonly]) + label { + color: #26a69a; } + input[type=text].valid, input[type=text]:focus.valid, input[type=password].valid, input[type=password]:focus.valid, input[type=email].valid, input[type=email]:focus.valid, input[type=url].valid, input[type=url]:focus.valid, input[type=time].valid, input[type=time]:focus.valid, input[type=date].valid, input[type=date]:focus.valid, input[type=datetime-local].valid, input[type=datetime-local]:focus.valid, input[type=tel].valid, input[type=tel]:focus.valid, input[type=number].valid, input[type=number]:focus.valid, input[type=search].valid, input[type=search]:focus.valid, textarea.materialize-textarea.valid, textarea.materialize-textarea:focus.valid { + border-bottom: 1px solid #4CAF50; + box-shadow: 0 1px 0 0 #4CAF50; } + input[type=text].invalid, input[type=text]:focus.invalid, input[type=password].invalid, input[type=password]:focus.invalid, input[type=email].invalid, input[type=email]:focus.invalid, input[type=url].invalid, input[type=url]:focus.invalid, input[type=time].invalid, input[type=time]:focus.invalid, input[type=date].invalid, input[type=date]:focus.invalid, input[type=datetime-local].invalid, input[type=datetime-local]:focus.invalid, input[type=tel].invalid, input[type=tel]:focus.invalid, input[type=number].invalid, input[type=number]:focus.invalid, input[type=search].invalid, input[type=search]:focus.invalid, textarea.materialize-textarea.invalid, textarea.materialize-textarea:focus.invalid { + border-bottom: 1px solid #F44336; + box-shadow: 0 1px 0 0 #F44336; } + +.input-field { + position: relative; + margin-top: 1rem; } + .input-field label { + color: #9e9e9e; + position: absolute; + top: 0.8rem; + left: 0.75rem; + font-size: 1rem; + cursor: text; + -webkit-transition: .2s ease-out; + -moz-transition: .2s ease-out; + -o-transition: .2s ease-out; + -ms-transition: .2s ease-out; + transition: .2s ease-out; } + .input-field label.active { + font-size: 0.8rem; + -webkit-transform: translateY(-140%); + -moz-transform: translateY(-140%); + -ms-transform: translateY(-140%); + -o-transform: translateY(-140%); + transform: translateY(-140%); } + .input-field .prefix { + position: absolute; + width: 3rem; + font-size: 2rem; + -webkit-transition: color .2s; + -moz-transition: color .2s; + -o-transition: color .2s; + -ms-transition: color .2s; + transition: color .2s; } + .input-field .prefix.active { + color: #26a69a; } + .input-field .prefix ~ input, .input-field .prefix ~ textarea { + margin-left: 3rem; + width: 92%; + width: calc(100% - 3rem); } + .input-field .prefix ~ textarea { + padding-top: .8rem; } + .input-field .prefix ~ label { + margin-left: 3rem; } + @media only screen and (max-width : 992px) { + .input-field .prefix ~ input { + width: 86%; + width: calc(100% - 3rem); } } + @media only screen and (max-width : 600px) { + .input-field .prefix ~ input { + width: 80%; + width: calc(100% - 3rem); } } + +.input-field input[type=search] { + display: block; + line-height: inherit; + padding-left: 4rem; + width: calc(100% - 4rem); } + .input-field input[type=search]:focus { + background-color: #FFF; + border: 0; + box-shadow: none; + color: #444; } + .input-field input[type=search]:focus + label i, .input-field input[type=search]:focus ~ .mdi-navigation-close { + color: #444; } + .input-field input[type=search] + label { + left: 1rem; } + .input-field input[type=search] ~ .mdi-navigation-close { + position: absolute; + top: 0; + right: 1rem; + color: transparent; + cursor: pointer; + font-size: 2rem; + transition: .3s color; } + +textarea { + width: 100%; + height: 3rem; + background-color: transparent; } + textarea.materialize-textarea { + overflow-y: hidden; + /* prevents scroll bar flash */ + padding: 1.6rem 0; + /* prevents text jump on Enter keypress */ + resize: none; + min-height: 3rem; } + +.hiddendiv { + display: none; + white-space: pre-wrap; + word-wrap: break-word; + overflow-wrap: break-word; + /* future version of deprecated 'word-wrap' */ + padding-top: 1.2rem; + /* prevents text jump on Enter keypress */ } + +/*************** + Radio Buttons +***************/ +/* Remove default Radio Buttons */ +[type="radio"]:not(:checked), [type="radio"]:checked { + position: absolute; + left: -9999px; + visibility: hidden; } + +[type="radio"]:not(:checked) + label, [type="radio"]:checked + label { + position: relative; + padding-left: 35px; + cursor: pointer; + display: inline-block; + height: 25px; + line-height: 25px; + font-size: 1rem; + -webkit-transition: .28s ease; + -moz-transition: .28s ease; + -o-transition: .28s ease; + -ms-transition: .28s ease; + transition: .28s ease; + -webkit-user-select: none; + /* webkit (safari, chrome) browsers */ + -moz-user-select: none; + /* mozilla browsers */ + -khtml-user-select: none; + /* webkit (konqueror) browsers */ + -ms-user-select: none; + /* IE10+ */ } + +[type="radio"] + label:before, [type="radio"] + label:after { + content: ''; + position: absolute; + left: 0; + top: 0; + margin: 4px; + width: 16px; + height: 16px; + z-index: 0; + -webkit-transition: .28s ease; + -moz-transition: .28s ease; + -o-transition: .28s ease; + -ms-transition: .28s ease; + transition: .28s ease; } + +/* Unchecked styles */ +[type="radio"]:not(:checked) + label:before { + border-radius: 50%; + border: 2px solid #5a5a5a; } + +[type="radio"]:not(:checked) + label:after { + border-radius: 50%; + border: 2px solid #5a5a5a; + z-index: -1; + -webkit-transform: scale(0); + -moz-transform: scale(0); + -ms-transform: scale(0); + -o-transform: scale(0); + transform: scale(0); } + +/* Checked styles */ +[type="radio"]:checked + label:before { + border-radius: 50%; + border: 2px solid transparent; } + +[type="radio"]:checked + label:after { + border-radius: 50%; + border: 2px solid #26a69a; + background-color: #26a69a; + z-index: 0; + -webkit-transform: scale(1.02); + -moz-transform: scale(1.02); + -ms-transform: scale(1.02); + -o-transform: scale(1.02); + transform: scale(1.02); } + +/* Radio With gap */ +[type="radio"].with-gap:checked + label:before { + border-radius: 50%; + border: 2px solid #26a69a; } + +[type="radio"].with-gap:checked + label:after { + border-radius: 50%; + border: 2px solid #26a69a; + background-color: #26a69a; + z-index: 0; + -webkit-transform: scale(.5); + -moz-transform: scale(.5); + -ms-transform: scale(.5); + -o-transform: scale(.5); + transform: scale(.5); } + +/* Disabled style */ +[type="radio"]:disabled:not(:checked) + label:before, [type="radio"]:disabled:checked + label:before { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.26); } + +[type="radio"]:disabled + label { + color: rgba(0, 0, 0, 0.26); } + +[type="radio"]:disabled:not(:checked) + label:hover:before { + border-color: rgba(0, 0, 0, 0.26); } + +/*************** + Checkboxes +***************/ +/* CUSTOM CSS CHECKBOXES */ +form p { + margin-bottom: 10px; + text-align: left; } + +form p:last-child { + margin-bottom: 0; } + +/* Remove default checkbox */ +[type="checkbox"]:not(:checked), [type="checkbox"]:checked { + position: absolute; + left: -9999px; } + +[type="checkbox"] { + /* checkbox aspect */ } + [type="checkbox"] + label { + position: relative; + padding-left: 35px; + cursor: pointer; + display: inline-block; + height: 25px; + line-height: 25px; + font-size: 1rem; + -webkit-user-select: none; + /* webkit (safari, chrome) browsers */ + -moz-user-select: none; + /* mozilla browsers */ + -khtml-user-select: none; + /* webkit (konqueror) browsers */ + -ms-user-select: none; + /* IE10+ */ } + [type="checkbox"] + label:before { + content: ''; + position: absolute; + top: 0; + left: 0; + width: 18px; + height: 18px; + z-index: 0; + border: 2px solid #5a5a5a; + border-radius: 1px; + margin-top: 2px; + -webkit-transition: 0.2s; + -moz-transition: 0.2s; + -o-transition: 0.2s; + -ms-transition: 0.2s; + transition: 0.2s; } + [type="checkbox"]:not(:checked):disabled + label:before { + border: none; + background-color: rgba(0, 0, 0, 0.26); } + +[type="checkbox"]:checked + label:before { + top: -4px; + left: -3px; + width: 12px; + height: 22px; + border-top: 2px solid transparent; + border-left: 2px solid transparent; + border-right: 2px solid #26a69a; + border-bottom: 2px solid #26a69a; + -webkit-transform: rotate(40deg); + -moz-transform: rotate(40deg); + -ms-transform: rotate(40deg); + -o-transform: rotate(40deg); + transform: rotate(40deg); + -webkit-backface-visibility: hidden; + -webkit-transform-origin: 100% 100%; + -moz-transform-origin: 100% 100%; + -ms-transform-origin: 100% 100%; + -o-transform-origin: 100% 100%; + transform-origin: 100% 100%; } +[type="checkbox"]:checked:disabled + label:before { + border-right: 2px solid rgba(0, 0, 0, 0.26); + border-bottom: 2px solid rgba(0, 0, 0, 0.26); } + +/* Indeterminate checkbox */ +[type="checkbox"]:indeterminate + label:before { + left: -10px; + top: -11px; + width: 10px; + height: 22px; + border-top: none; + border-left: none; + border-right: 2px solid #26a69a; + border-bottom: none; + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + -o-transform: rotate(90deg); + transform: rotate(90deg); + -webkit-backface-visibility: hidden; + -webkit-transform-origin: 100% 100%; + -moz-transform-origin: 100% 100%; + -ms-transform-origin: 100% 100%; + -o-transform-origin: 100% 100%; + transform-origin: 100% 100%; } +[type="checkbox"]:indeterminate:disabled + label:before { + border-right: 2px solid rgba(0, 0, 0, 0.26); + background-color: transparent; } + +[type="checkbox"].filled-in + label:after { + border-radius: 2px; } +[type="checkbox"].filled-in + label:before, [type="checkbox"].filled-in + label:after { + content: ''; + left: 0; + position: absolute; + /* .1s delay is for check animation */ + transition: border .25s, background-color .25s, width .2s .1s, height .2s .1s, top .2s .1s, left .2s .1s; + z-index: 1; } +[type="checkbox"].filled-in:not(:checked) + label:before { + width: 0; + height: 0; + border: 3px solid transparent; + left: 6px; + top: 10px; + -webkit-transform: rotateZ(37deg); + transform: rotateZ(37deg); + -webkit-transform-origin: 20% 40%; + transform-origin: 100% 100%; } +[type="checkbox"].filled-in:not(:checked) + label:after { + height: 20px; + width: 20px; + background-color: transparent; + border: 2px solid #5a5a5a; + top: 0px; + z-index: 0; } +[type="checkbox"].filled-in:checked + label:before { + top: 0; + left: 1px; + width: 8px; + height: 13px; + border-top: 2px solid transparent; + border-left: 2px solid transparent; + border-right: 2px solid #fff; + border-bottom: 2px solid #fff; + -webkit-transform: rotateZ(37deg); + transform: rotateZ(37deg); + -webkit-transform-origin: 100% 100%; + transform-origin: 100% 100%; } +[type="checkbox"].filled-in:checked + label:after { + top: 0px; + width: 20px; + height: 20px; + border: 2px solid #26a69a; + background-color: #26a69a; + z-index: 0; } +[type="checkbox"].filled-in:disabled:not(:checked) + label:before { + background-color: transparent; + border: 2px solid transparent; } +[type="checkbox"].filled-in:disabled:not(:checked) + label:after { + border-color: transparent; + background-color: #BDBDBD; } +[type="checkbox"].filled-in:disabled:checked + label:before { + background-color: transparent; } +[type="checkbox"].filled-in:disabled:checked + label:after { + background-color: #BDBDBD; + border-color: #BDBDBD; } + +/*************** + Switch +***************/ +.switch, .switch * { + -webkit-user-select: none; + -moz-user-select: none; + -khtml-user-select: none; + -ms-user-select: none; } + +.switch label { + cursor: pointer; } + +.switch label input[type=checkbox] { + opacity: 0; + width: 0; + height: 0; } + +.switch label input[type=checkbox]:checked + .lever { + background-color: #84c7c1; } + +.switch label input[type=checkbox]:checked + .lever:after { + background-color: #26a69a; } + +.switch label .lever { + content: ""; + display: inline-block; + position: relative; + width: 40px; + height: 15px; + background-color: #818181; + border-radius: 15px; + margin-right: 10px; + transition: background 0.3s ease; + vertical-align: middle; + margin: 0 16px; } + +.switch label .lever:after { + content: ""; + position: absolute; + display: inline-block; + width: 21px; + height: 21px; + background-color: #F1F1F1; + border-radius: 21px; + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4); + left: -5px; + top: -3px; + transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease; } + +input[type=checkbox]:checked:not(:disabled) ~ .lever:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(38, 166, 154, 0.1); } + +input[type=checkbox]:not(:disabled) ~ .lever:active:after { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.08); } + +.switch label input[type=checkbox]:checked + .lever:after { + left: 24px; } + +.switch input[type=checkbox][disabled] + .lever { + cursor: default; } + +.switch label input[type=checkbox][disabled] + .lever:after, .switch label input[type=checkbox][disabled]:checked + .lever:after { + background-color: #BDBDBD; } + +/*************** + Select Field +***************/ +.select-label { + position: absolute; } + +.select-wrapper { + position: relative; } + .select-wrapper input.select-dropdown { + position: relative; + cursor: pointer; + background-color: transparent; + border: none; + border-bottom: 1px solid #9e9e9e; + outline: none; + height: 3rem; + line-height: 3rem; + width: 100%; + font-size: 1rem; + margin: 0 0 15px 0; + padding: 0; + display: block; } + .select-wrapper .mdi-navigation-arrow-drop-down { + color: initial; + position: absolute; + right: 0; + top: 0; + font-size: 23px; } + .select-wrapper .mdi-navigation-arrow-drop-down.disabled { + color: rgba(0, 0, 0, 0.26); } + .select-wrapper + label { + position: absolute; + top: -14px; + font-size: 0.8rem; } + +select { + display: none; } + +select.browser-default { + display: block; } + +select:disabled { + color: rgba(0, 0, 0, 0.3); } + +.select-wrapper input.select-dropdown:disabled { + color: rgba(0, 0, 0, 0.3); + cursor: default; + -webkit-user-select: none; + /* webkit (safari, chrome) browsers */ + -moz-user-select: none; + /* mozilla browsers */ + -ms-user-select: none; + /* IE10+ */ + border-bottom: 1px solid rgba(0, 0, 0, 0.3); } + +.select-wrapper i { + color: rgba(0, 0, 0, 0.3); } + +.select-dropdown li.disabled { + color: rgba(0, 0, 0, 0.3); + background-color: transparent; } + +/********************* + File Input +**********************/ +.file-field { + position: relative; } + .file-field input.file-path { + margin-left: 100px; + width: calc(100% - 100px); } + .file-field .btn, .file-field .btn-large { + position: absolute; + top: 0; + left: 0; + height: 3rem; + line-height: 3rem; } + .file-field span { + cursor: pointer; } + .file-field input[type=file] { + position: absolute; + top: 0; + right: 0; + left: 0; + bottom: 0; + width: 100%; + margin: 0; + padding: 0; + font-size: 20px; + cursor: pointer; + opacity: 0; + filter: alpha(opacity=0); } + +/*************** + Range +***************/ +.range-field { + position: relative; } + +input[type=range], input[type=range] + .thumb { + cursor: pointer; } + +input[type=range] { + position: relative; + background-color: transparent; + border: none; + outline: none; + width: 100%; + margin: 15px 0px; + padding: 0; } + +input[type=range] + .thumb { + position: absolute; + border: none; + height: 0; + width: 0; + border-radius: 50%; + background-color: #26a69a; + top: 10px; + margin-left: -6px; + -webkit-transform-origin: 50% 50%; + -moz-transform-origin: 50% 50%; + -ms-transform-origin: 50% 50%; + -o-transform-origin: 50% 50%; + transform-origin: 50% 50%; + -webkit-transform: rotate(-45deg); + -moz-transform: rotate(-45deg); + -ms-transform: rotate(-45deg); + -o-transform: rotate(-45deg); + transform: rotate(-45deg); } + input[type=range] + .thumb .value { + display: block; + width: 30px; + text-align: center; + color: #26a69a; + font-size: 0; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + -o-transform: rotate(45deg); + transform: rotate(45deg); } + input[type=range] + .thumb.active { + border-radius: 50% 50% 50% 0; } + input[type=range] + .thumb.active .value { + color: #fff; + margin-left: -1px; + margin-top: 8px; + font-size: 10px; } + +input[type=range]:focus { + outline: none; } + +input[type=range] { + -webkit-appearance: none; } + +input[type=range]::-webkit-slider-runnable-track { + height: 3px; + background: #c2c0c2; + border: none; } + +input[type=range]::-webkit-slider-thumb { + -webkit-appearance: none; + border: none; + height: 14px; + width: 14px; + border-radius: 50%; + background-color: #26a69a; + transform-origin: 50% 50%; + margin: -5px 0 0 0; + -webkit-transition: 0.3s; + -moz-transition: 0.3s; + -o-transition: 0.3s; + -ms-transition: 0.3s; + transition: 0.3s; } + +input[type=range]:focus::-webkit-slider-runnable-track { + background: #ccc; } + +input[type=range] { + /* fix for FF unable to apply focus style bug */ + border: 1px solid white; + /*required for proper track sizing in FF*/ } + +input[type=range]::-moz-range-track { + height: 3px; + background: #ddd; + border: none; } + +input[type=range]::-moz-range-thumb { + border: none; + height: 14px; + width: 14px; + border-radius: 50%; + background: #26a69a; + margin-top: -5px; } + +/*hide the outline behind the border*/ +input[type=range]:-moz-focusring { + outline: 1px solid white; + outline-offset: -1px; } + +input[type=range]:focus::-moz-range-track { + background: #ccc; } + +input[type=range]::-ms-track { + height: 3px; + /*remove bg colour from the track, we'll use ms-fill-lower and ms-fill-upper instead */ + background: transparent; + /*leave room for the larger thumb to overflow with a transparent border */ + border-color: transparent; + border-width: 6px 0; + /*remove default tick marks*/ + color: transparent; } + +input[type=range]::-ms-fill-lower { + background: #777; } + +input[type=range]::-ms-fill-upper { + background: #ddd; } + +input[type=range]::-ms-thumb { + border: none; + height: 14px; + width: 14px; + border-radius: 50%; + background: #26a69a; } + +input[type=range]:focus::-ms-fill-lower { + background: #888; } + +input[type=range]:focus::-ms-fill-upper { + background: #ccc; } + +/*************************** + Text Inputs + Textarea +****************************/ +select { + background-color: rgba(255, 255, 255, 0.9); + width: 100%; + padding: 5px; + border: 1px solid #f2f2f2; + border-radius: 2px; + height: 3rem; } + +/*************** + Nav List +***************/ +.table-of-contents.fixed { + position: fixed; } +.table-of-contents li { + padding: 2px 0; } +.table-of-contents a { + display: inline-block; + font-weight: 300; + color: #757575; + padding-left: 20px; + height: 1.5rem; + line-height: 1.5rem; + letter-spacing: .4; + display: inline-block; } + .table-of-contents a:hover { + color: #a8a8a8; + padding-left: 19px; + border-left: 1px solid #ea4a4f; } + .table-of-contents a.active { + font-weight: 500; + padding-left: 18px; + border-left: 2px solid #ea4a4f; } + +.side-nav { + position: fixed; + width: 240px; + left: -105%; + top: 0; + margin: 0; + height: 100%; + height: calc(100% + 60px); + height: -moz-calc(100%); + padding-bottom: 60px; + background-color: #FFF; + z-index: 999; + overflow-y: auto; + will-change: left; } + .side-nav.right-aligned { + will-change: right; + right: -105%; + left: auto; } + .side-nav .collapsible { + margin: 0; } + .side-nav li { + float: none; + padding: 0 15px; } + .side-nav li:hover, .side-nav li.active { + background-color: #ddd; } + .side-nav a { + color: #444; + display: block; + font-size: 1rem; + height: 64px; + line-height: 64px; + padding: 0 15px; } + +.drag-target { + height: 100%; + width: 10px; + position: fixed; + top: 0; + z-index: 998; } + +.side-nav.fixed a { + display: block; + padding: 0 15px; + color: #444; } + +.side-nav.fixed { + left: 0; + position: fixed; } + .side-nav.fixed.right-aligned { + right: 0; + left: auto; } + +@media only screen and (max-width : 992px) { + .side-nav.fixed { + left: -105%; } + .side-nav.fixed.right-aligned { + right: -105%; + left: auto; } } + +.side-nav .collapsible-body li.active, .side-nav.fixed .collapsible-body li.active { + background-color: #ee6e73; } + .side-nav .collapsible-body li.active a, .side-nav.fixed .collapsible-body li.active a { + color: #fff; } + +#sidenav-overlay { + position: fixed; + top: 0; + left: 0; + right: 0; + height: 120vh; + background-color: rgba(0, 0, 0, 0.5); + z-index: 997; + will-change: opacity; } + +/* + @license + Copyright (c) 2014 The Polymer Project Authors. All rights reserved. + This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt + The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt + The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt + Code distributed by Google as part of the polymer project is also + subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt + */ +/**************************/ +/* STYLES FOR THE SPINNER */ +/**************************/ +/* + * Constants: + * STROKEWIDTH = 3px + * ARCSIZE = 270 degrees (amount of circle the arc takes up) + * ARCTIME = 1333ms (time it takes to expand and contract arc) + * ARCSTARTROT = 216 degrees (how much the start location of the arc + * should rotate each time, 216 gives us a + * 5 pointed star shape (it's 360/5 * 3). + * For a 7 pointed star, we might do + * 360/7 * 3 = 154.286) + * CONTAINERWIDTH = 28px + * SHRINK_TIME = 400ms + */ +.preloader-wrapper { + display: inline-block; + position: relative; + width: 48px; + height: 48px; } + .preloader-wrapper.small { + width: 36px; + height: 36px; } + .preloader-wrapper.big { + width: 64px; + height: 64px; } + .preloader-wrapper.active { + /* duration: 360 * ARCTIME / (ARCSTARTROT + (360-ARCSIZE)) */ + -webkit-animation: container-rotate 1568ms linear infinite; + animation: container-rotate 1568ms linear infinite; } + +@-webkit-keyframes container-rotate { + to { + -webkit-transform: rotate(360deg); } } + +@keyframes container-rotate { + to { + transform: rotate(360deg); } } + +.spinner-layer { + position: absolute; + width: 100%; + height: 100%; + opacity: 0; } + +.spinner-blue, .spinner-blue-only { + border-color: #4285f4; } + +.spinner-red, .spinner-red-only { + border-color: #db4437; } + +.spinner-yellow, .spinner-yellow-only { + border-color: #f4b400; } + +.spinner-green, .spinner-green-only { + border-color: #0f9d58; } + +/** + * IMPORTANT NOTE ABOUT CSS ANIMATION PROPERTIES (keanulee): + * + * iOS Safari (tested on iOS 8.1) does not handle animation-delay very well - it doesn't + * guarantee that the animation will start _exactly_ after that value. So we avoid using + * animation-delay and instead set custom keyframes for each color (as redundant as it + * seems). + * + * We write out each animation in full (instead of separating animation-name, + * animation-duration, etc.) because under the polyfill, Safari does not recognize those + * specific properties properly, treats them as -webkit-animation, and overrides the + * other animation rules. See https://github.com/Polymer/platform/issues/53. + */ +.active .spinner-layer.spinner-blue { + /* durations: 4 * ARCTIME */ + -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + +.active .spinner-layer.spinner-red { + /* durations: 4 * ARCTIME */ + -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + +.active .spinner-layer.spinner-yellow { + /* durations: 4 * ARCTIME */ + -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + +.active .spinner-layer.spinner-green { + /* durations: 4 * ARCTIME */ + -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + +.active .spinner-layer.spinner-blue-only, .active .spinner-layer.spinner-red-only, .active .spinner-layer.spinner-yellow-only, .active .spinner-layer.spinner-green-only { + /* durations: 4 * ARCTIME */ + opacity: 1; + -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + +@-webkit-keyframes fill-unfill-rotate { + /* 0.5 * ARCSIZE */ + /* 1 * ARCSIZE */ + /* 1.5 * ARCSIZE */ + /* 2 * ARCSIZE */ + /* 2.5 * ARCSIZE */ + /* 3 * ARCSIZE */ + /* 3.5 * ARCSIZE */ + /* 4 * ARCSIZE */ + 12.5% { + -webkit-transform: rotate(135deg); } + + 25% { + -webkit-transform: rotate(270deg); } + + 37.5% { + -webkit-transform: rotate(405deg); } + + 50% { + -webkit-transform: rotate(540deg); } + + 62.5% { + -webkit-transform: rotate(675deg); } + + 75% { + -webkit-transform: rotate(810deg); } + + 87.5% { + -webkit-transform: rotate(945deg); } + + to { + -webkit-transform: rotate(1080deg); } } + +@keyframes fill-unfill-rotate { + /* 0.5 * ARCSIZE */ + /* 1 * ARCSIZE */ + /* 1.5 * ARCSIZE */ + /* 2 * ARCSIZE */ + /* 2.5 * ARCSIZE */ + /* 3 * ARCSIZE */ + /* 3.5 * ARCSIZE */ + /* 4 * ARCSIZE */ + 12.5% { + transform: rotate(135deg); } + + 25% { + transform: rotate(270deg); } + + 37.5% { + transform: rotate(405deg); } + + 50% { + transform: rotate(540deg); } + + 62.5% { + transform: rotate(675deg); } + + 75% { + transform: rotate(810deg); } + + 87.5% { + transform: rotate(945deg); } + + to { + transform: rotate(1080deg); } } + +@-webkit-keyframes blue-fade-in-out { + from { + opacity: 1; } + + 25% { + opacity: 1; } + + 26% { + opacity: 0; } + + 89% { + opacity: 0; } + + 90% { + opacity: 1; } + + 100% { + opacity: 1; } } + +@keyframes blue-fade-in-out { + from { + opacity: 1; } + + 25% { + opacity: 1; } + + 26% { + opacity: 0; } + + 89% { + opacity: 0; } + + 90% { + opacity: 1; } + + 100% { + opacity: 1; } } + +@-webkit-keyframes red-fade-in-out { + from { + opacity: 0; } + + 15% { + opacity: 0; } + + 25% { + opacity: 1; } + + 50% { + opacity: 1; } + + 51% { + opacity: 0; } } + +@keyframes red-fade-in-out { + from { + opacity: 0; } + + 15% { + opacity: 0; } + + 25% { + opacity: 1; } + + 50% { + opacity: 1; } + + 51% { + opacity: 0; } } + +@-webkit-keyframes yellow-fade-in-out { + from { + opacity: 0; } + + 40% { + opacity: 0; } + + 50% { + opacity: 1; } + + 75% { + opacity: 1; } + + 76% { + opacity: 0; } } + +@keyframes yellow-fade-in-out { + from { + opacity: 0; } + + 40% { + opacity: 0; } + + 50% { + opacity: 1; } + + 75% { + opacity: 1; } + + 76% { + opacity: 0; } } + +@-webkit-keyframes green-fade-in-out { + from { + opacity: 0; } + + 65% { + opacity: 0; } + + 75% { + opacity: 1; } + + 90% { + opacity: 1; } + + 100% { + opacity: 0; } } + +@keyframes green-fade-in-out { + from { + opacity: 0; } + + 65% { + opacity: 0; } + + 75% { + opacity: 1; } + + 90% { + opacity: 1; } + + 100% { + opacity: 0; } } + +/** + * Patch the gap that appear between the two adjacent div.circle-clipper while the + * spinner is rotating (appears on Chrome 38, Safari 7.1, and IE 11). + */ +.gap-patch { + position: absolute; + top: 0; + left: 45%; + width: 10%; + height: 100%; + overflow: hidden; + border-color: inherit; } + +.gap-patch .circle { + width: 1000%; + left: -450%; } + +.circle-clipper { + display: inline-block; + position: relative; + width: 50%; + height: 100%; + overflow: hidden; + border-color: inherit; } + .circle-clipper .circle { + width: 200%; + height: 100%; + border-width: 3px; + /* STROKEWIDTH */ + 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; } + .circle-clipper.left .circle { + left: 0; + border-right-color: transparent !important; + -webkit-transform: rotate(129deg); + transform: rotate(129deg); } + .circle-clipper.right .circle { + left: -100%; + border-left-color: transparent !important; + -webkit-transform: rotate(-129deg); + transform: rotate(-129deg); } + +.active .circle-clipper.left .circle { + /* duration: ARCTIME */ + -webkit-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + +.active .circle-clipper.right .circle { + /* duration: ARCTIME */ + -webkit-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; + animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both; } + +@-webkit-keyframes left-spin { + from { + -webkit-transform: rotate(130deg); } + + 50% { + -webkit-transform: rotate(-5deg); } + + to { + -webkit-transform: rotate(130deg); } } + +@keyframes left-spin { + from { + transform: rotate(130deg); } + + 50% { + transform: rotate(-5deg); } + + to { + transform: rotate(130deg); } } + +@-webkit-keyframes right-spin { + from { + -webkit-transform: rotate(-130deg); } + + 50% { + -webkit-transform: rotate(5deg); } + + to { + -webkit-transform: rotate(-130deg); } } + +@keyframes right-spin { + from { + transform: rotate(-130deg); } + + 50% { + transform: rotate(5deg); } + + to { + transform: rotate(-130deg); } } + +#spinnerContainer.cooldown { + /* duration: SHRINK_TIME */ + -webkit-animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1); + animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1); } + +@-webkit-keyframes fade-out { + from { + opacity: 1; } + + to { + opacity: 0; } } + +@keyframes fade-out { + from { + opacity: 1; } + + to { + opacity: 0; } } + +.slider { + position: relative; + height: 440px; + width: 100%; } + .slider.fullscreen { + height: 100%; + width: 100%; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; } + .slider.fullscreen ul.slides { + height: 100%; } + .slider.fullscreen ul.indicators { + z-index: 2; + bottom: 30px; } + .slider .slides { + background-color: #9e9e9e; + margin: 0; + height: 400px; } + .slider .slides li { + opacity: 0; + position: absolute; + top: 0; + left: 0; + z-index: 1; + width: 100%; + height: inherit; + overflow: hidden; } + .slider .slides li img { + height: 100%; + width: 100%; + background-size: cover; + background-position: center; } + .slider .slides li .caption { + color: #fff; + position: absolute; + top: 15%; + left: 15%; + width: 70%; + opacity: 0; } + .slider .slides li .caption p { + color: #e0e0e0; } + .slider .slides li.active { + z-index: 2; } + .slider .indicators { + position: absolute; + text-align: center; + left: 0; + right: 0; + bottom: 0; + margin: 0; } + .slider .indicators .indicator-item { + display: inline-block; + position: relative; + cursor: pointer; + height: 16px; + width: 16px; + margin: 0 12px; + background-color: #e0e0e0; + -webkit-transition: background-color .3s; + -moz-transition: background-color .3s; + -o-transition: background-color .3s; + -ms-transition: background-color .3s; + transition: background-color .3s; + border-radius: 50%; } + .slider .indicators .indicator-item.active { + background-color: #4CAF50; } + +/* ========================================================================== + $BASE-PICKER + ========================================================================== */ +/** + * Note: the root picker element should *NOT* be styled more than what's here. + */ +.picker { + font-size: 16px; + text-align: left; + line-height: 1.2; + color: #000000; + position: absolute; + z-index: 10000; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } + +/** + * The picker input element. + */ +.picker__input { + cursor: default; } + +/** + * When the picker is opened, the input element is "activated". + */ +.picker__input.picker__input--active { + border-color: #0089ec; } + +/** + * The holder is the only "scrollable" top-level container element. + */ +.picker__holder { + width: 100%; + overflow-y: auto; + -webkit-overflow-scrolling: touch; } + +/*! + * Default mobile-first, responsive styling for pickadate.js + * Demo: http://amsul.github.io/pickadate.js + */ +/** + * Note: the root picker element should *NOT* be styled more than what's here. + */ +/** + * Make the holder and frame fullscreen. + */ +.picker__holder, .picker__frame { + bottom: 0; + left: 0; + right: 0; + top: 100%; } + +/** + * The holder should overlay the entire screen. + */ +.picker__holder { + position: fixed; + -webkit-transition: background 0.15s ease-out, top 0s 0.15s; + -moz-transition: background 0.15s ease-out, top 0s 0.15s; + transition: background 0.15s ease-out, top 0s 0.15s; + -webkit-backface-visibility: hidden; } + +/** + * The frame that bounds the box contents of the picker. + */ +.picker__frame { + position: absolute; + margin: 0 auto; + min-width: 256px; + max-width: 300px; + max-height: 350px; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; + filter: alpha(opacity=0); + -moz-opacity: 0; + opacity: 0; + -webkit-transition: all 0.15s ease-out; + -moz-transition: all 0.15s ease-out; + transition: all 0.15s ease-out; } + +@media (min-height: 28.875em) { + .picker__frame { + overflow: visible; + top: auto; + bottom: -100%; + max-height: 80%; } } + +@media (min-height: 40.125em) { + .picker__frame { + margin-bottom: 7.5%; } } + +/** + * The wrapper sets the stage to vertically align the box contents. + */ +.picker__wrap { + display: table; + width: 100%; + height: 100%; } + +@media (min-height: 28.875em) { + .picker__wrap { + display: block; } } + +/** + * The box contains all the picker contents. + */ +.picker__box { + background: #ffffff; + display: table-cell; + vertical-align: middle; } + +@media (min-height: 28.875em) { + .picker__box { + display: block; + border: 1px solid #777777; + border-top-color: #898989; + border-bottom-width: 0; + -webkit-border-radius: 5px 5px 0 0; + -moz-border-radius: 5px 5px 0 0; + border-radius: 5px 5px 0 0; + -webkit-box-shadow: 0 12px 36px 16px rgba(0, 0, 0, 0.24); + -moz-box-shadow: 0 12px 36px 16px rgba(0, 0, 0, 0.24); + box-shadow: 0 12px 36px 16px rgba(0, 0, 0, 0.24); } } + +/** + * When the picker opens... + */ +.picker--opened .picker__holder { + top: 0; + background: transparent; + -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#1E000000,endColorstr=#1E000000)"; + zoom: 1; + background: rgba(0, 0, 0, 0.32); + -webkit-transition: background 0.15s ease-out; + -moz-transition: background 0.15s ease-out; + transition: background 0.15s ease-out; } + +.picker--opened .picker__frame { + top: 0; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; + filter: alpha(opacity=100); + -moz-opacity: 1; + opacity: 1; } + +@media (min-height: 35.875em) { + .picker--opened .picker__frame { + top: 10%; + bottom: 20% auto; } } + +/** + * For `large` screens, transform into an inline picker. + */ +/* ========================================================================== + CUSTOM MATERIALIZE STYLES + ========================================================================== */ +.picker__input.picker__input--active { + border-color: #E3F2FD; } + +.picker__frame { + margin: 0 auto; + max-width: 325px; } + +@media (min-height: 38.875em) { + .picker--opened .picker__frame { + top: 10%; + bottom: auto; } } + +/* ========================================================================== + $BASE-DATE-PICKER + ========================================================================== */ +/** + * The picker box. + */ +.picker__box { + padding: 0 1em; } + +/** + * The header containing the month and year stuff. + */ +.picker__header { + text-align: center; + position: relative; + margin-top: .75em; } + +/** + * The month and year labels. + */ +.picker__month, .picker__year { + display: inline-block; + margin-left: .25em; + margin-right: .25em; } + +/** + * The month and year selectors. + */ +.picker__select--month, .picker__select--year { + height: 2em; + padding: 0; + margin-left: .25em; + margin-right: .25em; } + +.picker__select--month.browser-default { + display: inline; + background-color: #FFFFFF; + width: 40%; } + +.picker__select--year.browser-default { + display: inline; + background-color: #FFFFFF; + width: 25%; } + +.picker__select--month:focus, .picker__select--year:focus { + border-color: rgba(0, 0, 0, 0.05); } + +/** + * The month navigation buttons. + */ +.picker__nav--prev, .picker__nav--next { + position: absolute; + padding: .5em 1.25em; + width: 1em; + height: 1em; + box-sizing: content-box; + top: -0.25em; } + +.picker__nav--prev { + left: -1em; + padding-right: 1.25em; } + +.picker__nav--next { + right: -1em; + padding-left: 1.25em; } + +.picker__nav--disabled, .picker__nav--disabled:hover, .picker__nav--disabled:before, .picker__nav--disabled:before:hover { + cursor: default; + background: none; + border-right-color: #f5f5f5; + border-left-color: #f5f5f5; } + +/** + * The calendar table of dates + */ +.picker__table { + text-align: center; + border-collapse: collapse; + border-spacing: 0; + table-layout: fixed; + font-size: 1rem; + width: 100%; + margin-top: .75em; + margin-bottom: .5em; } + +.picker__table th, .picker__table td { + text-align: center; } + +.picker__table td { + margin: 0; + padding: 0; } + +/** + * The weekday labels + */ +.picker__weekday { + width: 14.285714286%; + font-size: .75em; + padding-bottom: .25em; + color: #999999; + font-weight: 500; + /* Increase the spacing a tad */ } + +@media (min-height: 33.875em) { + .picker__weekday { + padding-bottom: .5em; } } + +/** + * The days on the calendar + */ +.picker__day--today { + position: relative; + color: #595959; + letter-spacing: -.3; + padding: .75rem 0; + font-weight: 400; + border: 1px solid transparent; } + +.picker__day--disabled:before { + border-top-color: #aaaaaa; } + +.picker__day--infocus:hover { + cursor: pointer; + color: #000; + font-weight: 500; } + +.picker__day--outfocus { + display: none; + padding: .75rem 0; + color: #fff; } + +.picker__day--outfocus:hover { + cursor: pointer; + color: #dddddd; + font-weight: 500; } + +.picker__day--highlighted:hover, .picker--focused .picker__day--highlighted { + cursor: pointer; } + +.picker__day--selected, .picker__day--selected:hover, .picker--focused .picker__day--selected { + border-radius: 50%; + -webkit-transform: scale(.75); + -moz-transform: scale(.75); + -ms-transform: scale(.75); + -o-transform: scale(.75); + transform: scale(.75); + background: #0089ec; + color: #ffffff; } + +.picker__day--disabled, .picker__day--disabled:hover, .picker--focused .picker__day--disabled { + background: #f5f5f5; + border-color: #f5f5f5; + color: #dddddd; + cursor: default; } + +.picker__day--highlighted.picker__day--disabled, .picker__day--highlighted.picker__day--disabled:hover { + background: #bbbbbb; } + +/** + * The footer containing the "today", "clear", and "close" buttons. + */ +.picker__footer { + text-align: center; + display: flex; + align-items: center; + justify-content: space-between; } + +.picker__button--today, .picker__button--clear, .picker__button--close { + border: 1px solid #ffffff; + background: #ffffff; + font-size: .8em; + padding: .66em 0; + font-weight: bold; + width: 33%; + display: inline-block; + vertical-align: bottom; } + +.picker__button--today:hover, .picker__button--clear:hover, .picker__button--close:hover { + cursor: pointer; + color: #000000; + background: #b1dcfb; + border-bottom-color: #b1dcfb; } + +.picker__button--today:focus, .picker__button--clear:focus, .picker__button--close:focus { + background: #b1dcfb; + border-color: rgba(0, 0, 0, 0.05); + outline: none; } + +.picker__button--today:before, .picker__button--clear:before, .picker__button--close:before { + position: relative; + display: inline-block; + height: 0; } + +.picker__button--today:before, .picker__button--clear:before { + content: " "; + margin-right: .45em; } + +.picker__button--today:before { + top: -0.05em; + width: 0; + border-top: 0.66em solid #0059bc; + border-left: .66em solid transparent; } + +.picker__button--clear:before { + top: -0.25em; + width: .66em; + border-top: 3px solid #ee2200; } + +.picker__button--close:before { + content: "\D7"; + top: -0.1em; + vertical-align: top; + font-size: 1.1em; + margin-right: .35em; + color: #777777; } + +.picker__button--today[disabled], .picker__button--today[disabled]:hover { + background: #f5f5f5; + border-color: #f5f5f5; + color: #dddddd; + cursor: default; } + +.picker__button--today[disabled]:before { + border-top-color: #aaaaaa; } + +/* ========================================================================== + CUSTOM MATERIALIZE STYLES + ========================================================================== */ +.picker__box { + border-radius: 2px; + overflow: hidden; } + +.picker__date-display { + text-align: center; + background-color: #26a69a; + color: #fff; + padding-bottom: 15px; + font-weight: 300; } + +.picker__nav--prev:hover, .picker__nav--next:hover { + cursor: pointer; + color: #000000; + background: #a1ded8; } + +.picker__weekday-display { + background-color: #1f897f; + padding: 10px; + font-weight: 200; + letter-spacing: .5; + font-size: 1rem; + margin-bottom: 15px; } + +.picker__month-display { + text-transform: uppercase; + font-size: 2rem; } + +.picker__day-display { + font-size: 4.5rem; + font-weight: 400; } + +.picker__year-display { + font-size: 1.8rem; + color: rgba(255, 255, 255, 0.4); } + +.picker__box { + padding: 0; } + +.picker__calendar-container { + padding: 0 1rem; } + .picker__calendar-container thead { + border: none; } + +.picker__table { + margin-top: 0; + margin-bottom: .5em; } + +.picker__day--infocus { + color: #595959; + letter-spacing: -.3; + padding: .75rem 0; + font-weight: 400; + border: 1px solid transparent; } + +.picker__day.picker__day--today { + color: #26a69a; } + +.picker__day.picker__day--today.picker__day--selected { + color: #fff; } + +.picker__weekday { + font-size: .9rem; } + +.picker__day--selected, .picker__day--selected:hover, .picker--focused .picker__day--selected { + border-radius: 50%; + -webkit-transform: scale(.9); + -moz-transform: scale(.9); + -ms-transform: scale(.9); + -o-transform: scale(.9); + transform: scale(.9); + background-color: #26a69a; + color: #ffffff; } + .picker__day--selected.picker__day--outfocus, .picker__day--selected:hover.picker__day--outfocus, .picker--focused .picker__day--selected.picker__day--outfocus { + background-color: #a1ded8; } + +.picker__footer { + text-align: right; + padding: 5px 10px; } + +.picker__close, .picker__today { + font-size: 1.1rem; + padding: 0 1rem; + color: #26a69a; } + +.picker__nav--prev:before, .picker__nav--next:before { + content: " "; + border-top: .5em solid transparent; + border-bottom: .5em solid transparent; + border-right: 0.75em solid #676767; + width: 0; + height: 0; + display: block; + margin: 0 auto; } + +.picker__nav--next:before { + border-right: 0; + border-left: 0.75em solid #676767; } + +button.picker__today:focus, button.picker__clear:focus, button.picker__close:focus { + background-color: #a1ded8; } + +/* ========================================================================== + $BASE-TIME-PICKER + ========================================================================== */ +/** + * The list of times. + */ +.picker__list { + list-style: none; + padding: 0.75em 0 4.2em; + margin: 0; } + +/** + * The times on the clock. + */ +.picker__list-item { + border-bottom: 1px solid #dddddd; + border-top: 1px solid #dddddd; + margin-bottom: -1px; + position: relative; + background: #ffffff; + padding: .75em 1.25em; } + +@media (min-height: 46.75em) { + .picker__list-item { + padding: .5em 1em; } } + +/* Hovered time */ +.picker__list-item:hover { + cursor: pointer; + color: #000000; + background: #b1dcfb; + border-color: #0089ec; + z-index: 10; } + +/* Highlighted and hovered/focused time */ +.picker__list-item--highlighted { + border-color: #0089ec; + z-index: 10; } + +.picker__list-item--highlighted:hover, .picker--focused .picker__list-item--highlighted { + cursor: pointer; + color: #000000; + background: #b1dcfb; } + +/* Selected and hovered/focused time */ +.picker__list-item--selected, .picker__list-item--selected:hover, .picker--focused .picker__list-item--selected { + background: #0089ec; + color: #ffffff; + z-index: 10; } + +/* Disabled time */ +.picker__list-item--disabled, .picker__list-item--disabled:hover, .picker--focused .picker__list-item--disabled { + background: #f5f5f5; + border-color: #f5f5f5; + color: #dddddd; + cursor: default; + border-color: #dddddd; + z-index: auto; } + +/** + * The clear button + */ +.picker--time .picker__button--clear { + display: block; + width: 80%; + margin: 1em auto 0; + padding: 1em 1.25em; + background: none; + border: 0; + font-weight: 500; + font-size: .67em; + text-align: center; + text-transform: uppercase; + color: #666; } + +.picker--time .picker__button--clear:hover, .picker--time .picker__button--clear:focus { + color: #000000; + background: #b1dcfb; + background: #ee2200; + border-color: #ee2200; + cursor: pointer; + color: #ffffff; + outline: none; } + +.picker--time .picker__button--clear:before { + top: -0.25em; + color: #666; + font-size: 1.25em; + font-weight: bold; } + +.picker--time .picker__button--clear:hover:before, .picker--time .picker__button--clear:focus:before { + color: #ffffff; } + +/* ========================================================================== + $DEFAULT-TIME-PICKER + ========================================================================== */ +/** + * The frame the bounds the time picker. + */ +.picker--time .picker__frame { + min-width: 256px; + max-width: 320px; } + +/** + * The picker box. + */ +.picker--time .picker__box { + font-size: 1em; + background: #f2f2f2; + padding: 0; } + +@media (min-height: 40.125em) { + .picker--time .picker__box { + margin-bottom: 5em; } } diff --git a/public/stylesheets/style-fonts.css b/public/stylesheets/style-fonts.css new file mode 100644 index 0000000..ad3ac99 --- /dev/null +++ b/public/stylesheets/style-fonts.css @@ -0,0 +1,325 @@ +@font-face { + font-family: 'icomoon'; + src:url('../fonts/icomoon.eot?-x9pdqo'); + src:url('../fonts/icomoon.eot?#iefix-x9pdqo') format('embedded-opentype'), + url('../fonts/icomoon.ttf?-x9pdqo') format('truetype'), + url('../fonts/icomoon.woff?-x9pdqo') format('woff'), + url('../fonts/icomoon.svg?-x9pdqo#icomoon') format('svg'); + font-weight: normal; + font-style: normal; +} + +[class^="icon-"], [class*=" icon-"] { + font-family: 'icomoon'; + speak: none; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + + /* Enable Ligatures ================ */ + letter-spacing: 0; + -webkit-font-feature-settings: "liga"; + -moz-font-feature-settings: "liga=1"; + -moz-font-feature-settings: "liga"; + -ms-font-feature-settings: "liga" 1; + -o-font-feature-settings: "liga"; + font-feature-settings: "liga"; + + /* Better Font Rendering =========== */ + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.icon-logos_Logoytexto:before { + content: "\e657"; +} +.icon-logo_archivo:before { + content: "\e658"; +} +.icon-logo_Basededatos:before { + content: "\e659"; +} +.icon-logo_Carrito:before { + content: "\e65a"; +} +.icon-logo_Estadisticas:before { + content: "\e65b"; +} +.icon-logo_Logo1:before { + content: "\e65c"; +} +.icon-logo_Logo2:before { + content: "\e65d"; +} +.icon-logo_nave:before { + content: "\e65e"; +} +.icon-logo_nerd:before { + content: "\e65f"; +} +.icon-logo_Usuario:before { + content: "\e660"; +} +.icon-school:before { + content: "\e600"; +} +.icon-tie:before { + content: "\e601"; +} +.icon-home:before { + content: "\e602"; +} +.icon-home3:before { + content: "\e60d"; +} +.icon-pencil:before { + content: "\e60e"; +} +.icon-play:before { + content: "\e60f"; +} +.icon-book:before { + content: "\e610"; +} +.icon-library:before { + content: "\e603"; +} +.icon-file-text2:before { + content: "\e611"; +} +.icon-stack:before { + content: "\e612"; +} +.icon-folder:before { + content: "\e613"; +} +.icon-ticket:before { + content: "\e614"; +} +.icon-cart:before { + content: "\e615"; +} +.icon-credit-card:before { + content: "\e616"; +} +.icon-phone:before { + content: "\e604"; +} +.icon-address-book:before { + content: "\e617"; +} +.icon-envelop:before { + content: "\e618"; +} +.icon-location2:before { + content: "\e619"; +} +.icon-calendario:before { + content: "\e605"; +} +.icon-display:before { + content: "\e61a"; +} +.icon-laptop:before { + content: "\e61b"; +} +.icon-mobile:before { + content: "\e606"; +} +.icon-tablet:before { + content: "\e61c"; +} +.icon-drawer:before { + content: "\e61d"; +} +.icon-drawer2:before { + content: "\e61e"; +} +.icon-download:before { + content: "\e61f"; +} +.icon-upload:before { + content: "\e620"; +} +.icon-database:before { + content: "\e621"; +} +.icon-undo2:before { + content: "\e622"; +} +.icon-redo2:before { + content: "\e623"; +} +.icon-forward:before { + content: "\e624"; +} +.icon-reply:before { + content: "\e625"; +} +.icon-bubbles:before { + content: "\e626"; +} +.icon-user:before { + content: "\e627"; +} +.icon-users:before { + content: "\e628"; +} +.icon-user-plus:before { + content: "\e629"; +} +.icon-user-minus:before { + content: "\e62a"; +} +.icon-user-tie:before { + content: "\e607"; +} +.icon-quotes-left:before { + content: "\e62b"; +} +.icon-quotes-right:before { + content: "\e62c"; +} +.icon-spinner6:before { + content: "\e62d"; +} +.icon-search:before { + content: "\e62e"; +} +.icon-key:before { + content: "\e62f"; +} +.icon-cog:before { + content: "\e630"; +} +.icon-grafica:before { + content: "\e608"; +} +.icon-rocket:before { + content: "\e631"; +} +.icon-bin:before { + content: "\e632"; +} +.icon-portafolio:before { + content: "\e609"; +} +.icon-power:before { + content: "\e633"; +} +.icon-menu:before { + content: "\e634"; +} +.icon-menu2:before { + content: "\e635"; +} +.icon-menu3:before { + content: "\e636"; +} +.icon-menu4:before { + content: "\e637"; +} +.icon-cloud:before { + content: "\e638"; +} +.icon-sphere:before { + content: "\e639"; +} +.icon-eye:before { + content: "\e63a"; +} +.icon-star:before { + content: "\e60a"; +} +.icon-happy:before { + content: "\e63b"; +} +.icon-angry:before { + content: "\e63c"; +} +.icon-plus:before { + content: "\e63d"; +} +.icon-minus:before { + content: "\e63e"; +} +.icon-cross:before { + content: "\e63f"; +} +.icon-checkmark:before { + content: "\e640"; +} +.icon-share2:before { + content: "\e641"; +} +.icon-mail:before { + content: "\e60b"; +} +.icon-facebook:before { + content: "\e642"; +} +.icon-facebook2:before { + content: "\e643"; +} +.icon-instagram:before { + content: "\e644"; +} +.icon-twitter:before { + content: "\e645"; +} +.icon-twitter2:before { + content: "\e646"; +} +.icon-youtube:before { + content: "\e647"; +} +.icon-youtube3:before { + content: "\e648"; +} +.icon-youtube4:before { + content: "\e649"; +} +.icon-github:before { + content: "\e64a"; +} +.icon-github2:before { + content: "\e64b"; +} +.icon-github4:before { + content: "\e64c"; +} +.icon-wordpress2:before { + content: "\e64d"; +} +.icon-tumblr2:before { + content: "\e64e"; +} +.icon-skype:before { + content: "\e64f"; +} +.icon-linkedin:before { + content: "\e60c"; +} +.icon-linkedin2:before { + content: "\e650"; +} +.icon-paypal:before { + content: "\e651"; +} +.icon-file-word:before { + content: "\e652"; +} +.icon-file-excel:before { + content: "\e653"; +} +.icon-html5:before { + content: "\e654"; +} +.icon-html52:before { + content: "\e655"; +} +.icon-git:before { + content: "\e656"; +} diff --git a/public/stylesheets/style-fuentes.css b/public/stylesheets/style-fuentes.css new file mode 100644 index 0000000..f257b9c --- /dev/null +++ b/public/stylesheets/style-fuentes.css @@ -0,0 +1,40 @@ +.Font-playfair { + font-family: 'Playfair Display' serif; +} +.Font-abril { + font-family: 'Abril Fatface' cursive; +} +.Font-bevan { + font-family: 'Bevan' cursive; +} +.Font-alegreya { + font-family: 'Alegreya Sans' sans-serif; +} +.Font-francois { + font-family: 'Francois One' sans-serif; +} +.Font-librebasker { + font-family: 'Libre Baskerville' serif; +} +.Font-lato { + font-family: 'Lato' sans-serif; +} +.Font-merriw { + font-family: 'Merriweather' serif; +} +.Font-merriws { + font-family: 'Merriweather Sans' sans-serif; +} +.Font-openssans { + font-family: 'Open Sans' sans-serif; +} +.Font-roboto { + font-family: 'Roboto Condensed' sans-serif; +} +.FontStylebold { + font-style: bold; + font-weight: 700; +} +.Fontcolor1 { + color: rgba(39,62,72,0.86); +} diff --git a/public/stylesheets/style.css b/public/stylesheets/style.css new file mode 100644 index 0000000..369db11 --- /dev/null +++ b/public/stylesheets/style.css @@ -0,0 +1,583 @@ +/* normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + font-size: 2em; + margin: 0.67em 0; +} +mark { + background: #ff0; + color: #000; +} +small { + font-size: 80%; +} +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + box-sizing: content-box; + height: 0; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-appearance: textfield; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} +legend { + border: 0; + padding: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +td, +th { + padding: 0; +} +.bg-primary { + background-color: rgba(26,35,126,0.7); +} +.bg-secundary { + background-color: rgba(227,242,253,0.4); +} +.box { + background-color: #fff; + padding: 5px 10px; + border-radius: 2px; + box-shadow: 0px 2px 1px rgba(0,0,0,0.1); +} +.minwidth1 { + min-width: 300px; +} +.margin10 { + margin: 10px auto 10px 2px; +} +.margin20 { + margin: 10px auto 10px 20px; +} +.marginbtm { + margin-bottom: 10px; +} +.titulo1 { + font-size: 1.6rem; + padding: 5px; + color: rgba(33,33,33,0.95); +} +.titulo2 { + font-size: 1.1rem; + color: rgba(33,33,33,0.7); +} +.titulo3 { + font-size: 1.4rem; + color: rgba(33,33,33,0.9); + font-weight: 600; +} +.titulo4 { + font-size: 0.9rem; + font-weight: 500; + color: rgba(33,33,33,0.9); +} +.divider { + height: 1px; + overflow: hidden; + background-color: #e0e0e0; +} +.linknone { + text-decoration: none; + color: rgba(229,229,229,0.9); +} +.linksocial { + color: #273e48; +} +.loginsocial { + text-align: center; +} +.styleicon { + font-size: 4rem; + text-align: center; + margin: 10px auto; + color: #273e48; +} +.styleicon:hover { + color: rgba(39,62,72,0.7); +} +.justifytext { + text-align: justify; +} +body { + font-size: 18px; +} +.Main { + display: flex; + align-items: stretch; +} +.Formpanel { + items-align: center; + margin-top: 2rem; + width: 50vw; +} +input { + background-color: transparent; + border-width: 0px; + border-bottom: 1px solid rgba(39,62,72,0.6); + border-radius: 0; + outline: none; + width: 100%; + font-size: 1rem; + margin: 0 0 15px 0; + padding: 0; + box-shadow: none; + height: 1.3rem; + font-family: 'Merriweather' serif; +} +input:focus { + outline: none; + border-width: 0px; + border-bottom: 2px solid rgba(38,166,152,0.9); +} +.btn { + text-decoration: none; + color: #fff; + background-color: #26a69a; + box-shadow: 0px 2px 1px rgba(0,0,0,0.18); + text-align: center; + letter-spacing: 0.5px; + border: none; + border-radius: 2px; + display: inline-block; + height: 36px; + line-height: 36px; + outline: 0; + padding: 0 2rem; + text-transform: capitalize; + width: 200px; +} +.btn:hover { + background-color: #2bbbad; + box-shadow: 0 5px 11px 0 rgba(0,0,0,0.18), 0 4px 15px 0 rgba(0,0,0,0.15); +} +.Form-add { + display: flex; + flex-direction: column; + justify-content: space-around; +} +.inputstyle { + display: flex; + flex-direction: column; + margin: 10px 0px 20px 0px; +} +.btnstyle { + display: flex; + justify-content: flex-end; + items-align: center; + margin: 10px 0px 0px 0px; +} +.btnstyle1 { + display: flex; + justify-content: center; + items-align: center; + margin: 10px 0px 10px 0px; +} +.selectbox { + font-size: 1em; + font-family: 'Merriweather' serif; +} +select option { + font-family: 'Merriweather' serif; +} +select option["selected"] { + font-family: 'Merriweather' serif; +} +.lbl { + font-family: 'Noto Serif'; + margin-bottom: 5px; + font-weight: 600; +} +.Header { + background-color: #273e48; + box-shadow: 0px -5px 7px 5px #777; +} +.Header-sidenav { + padding: 5px 20px; + min-height: 100vh; + width: 15vw; +} +.Header-logo { + color: #fff; + font-size: 6rem; + text-align: center; +} +.Nav { + color: #fff; + margin: 30px auto; + color: rgba(229,229,229,0.7); +} +.Nav-item { + display: flex; + align-items: center; + margin: 10px auto; + color: rgba(229,229,229,0.7); + cursor: pointer; +} +.Nav-item:hover { + color: #f0f0f0; +} +.Nav-item-text { + font-size: 0.8rem; + margin-left: 15px; +} +.Nav-item[data-lastitem] { + margin-top: 15px; +} +.iconstyle { + font-size: 1.4rem; + display: flex; + align-items: center; +} +.iconstyle[data-cross] { + font-size: 1.4rem; +} +.notifi { + background-color: rgba(88,114,125,0.9); + margin-left: 30px; + font-size: 0.8rem; + width: 16px; + text-align: center; + padding: 2px; + border-radius: 2px; +} +.MyCard { + margin-top: 10px; + margin-bottom: 30px; + display: flex; + flex-direction: column; + align-items: center; + text-align: center; +} +.MyCard-photo { + width: 100px; + border-radius: 50%; + padding: 2px; +} +.MyCard-photo-img { + background-color: #e0e0e0; + width: 80px; + border-radius: 50%; +} +.MyCard-name { + display: flex; + flex-direction: column; + text-align: center; + justify-content: center; +} +.MyCard--textStyle { + font-family: 'Roboto Condensed', sans-serif; + color: rgba(229,229,229,0.7); +} +.MyCard-title { + color: #fafafa; + font-family: 'Noto Serif'; + font-style: italic; + margin-top: -7px; + display: flex; + align-items: center; + justify-content: center; +} +.Section { + width: 85vw; + background-color: rgba(229,229,229,0.7); +} +.Section-secciones { + display: flex; + flex-wrap: wrap; + margin: 30px auto; + flex-direction: row; + justify-content: space-around; + align-items: flex-stretch; + align-content: space-around; +} +.Section-item { + width: 250px; + margin: 10px; +} +.Table { + width: 800px; +} +.Table-user-photo { + width: 40px; + border-radius: 50%; +} +.th { + text-align: justify; +} +.td { + margin-top: 10px; +} +.Font-playfair { + font-family: 'Playfair Display' serif; +} +.Font-abril { + font-family: 'Abril Fatface' cursive; +} +.Font-bevan { + font-family: 'Bevan' cursive; +} +.Font-alegreya { + font-family: 'Alegreya Sans' sans-serif; +} +.Font-francois { + font-family: 'Francois One' sans-serif; +} +.Font-librebasker { + font-family: 'Libre Baskerville' serif; +} +.Font-lato { + font-family: 'Lato' sans-serif; +} +.Font-merriw { + font-family: 'Merriweather' serif; +} +.Font-merriws { + font-family: 'Merriweather Sans' sans-serif; +} +.Font-openssans { + font-family: 'Open Sans' sans-serif; +} +.Font-roboto { + font-family: 'Roboto Condensed' sans-serif; +} +.FontStylebold { + font-style: bold; + font-weight: 700; +} +.Fontcolor1 { + color: rgba(39,62,72,0.86); +} +@media screen and (max-width: 320px) { + .titulo1 { + font-size: 1.3rem; + } + .titulo2 { + font-size: 0.9rem; + } + .titulo3 { + font-size: 1.1rem; + } + .titulo4 { + font-size: 0.8rem; + } + main { + display: flex; + flex-direction: row; + } + .Section { + width: 100vw; + } + .Section-secciones { + flex-direction: column; + } + .Header { + box-shadow: -1px 4px 2px 0px #777; + max-height: 100%; + } + .Header-sidenav { + width: 100%; + padding: 0px; + } + .MyCard { + margin-top: 0px; + } + .MyCard-photo { + text-align: center; + } + .MyCard-photo-img { + text-align: center; + width: 70px; + } + .Formpanel { + items-align: center; + margin-top: 2rem; + width: 90vw; + } +} +@media screen and (max-width: 720px) { + main { + display: flex; + flex-direction: column; + } + .Section { + width: 100vw; + } + .Section-secciones { + flex-direction: row; + flex-wrap: wrap; + } + .Header { + box-shadow: -1px 4px 2px 0px #777; + max-height: 100%; + } + .Header-sidenav { + padding: 0px; + width: 100%; + } + .Header-logo { + font-size: 4.5rem; + } + .MyCard { + margin-top: 0px; + } + .MyCard-photo { + text-align: center; + } + .MyCard-photo-img { + text-align: center; + width: 70px; + } + .Formpanel { + items-align: center; + margin-top: 2rem; + width: 90vw; + } +} diff --git a/routes/admin-users.js b/routes/admin-users.js new file mode 100644 index 0000000..5e0d207 --- /dev/null +++ b/routes/admin-users.js @@ -0,0 +1,26 @@ +var express = require('express'); +var router = express.Router(); + +var db = require('../config/mongodb-config'), + User = require('../models/user'); + +router.get('/', function(req, res, next) { + //db.conectar(); + console.log(req.user); + + User.find({}, function(err, docs){ + if(err) throw(err) + else{ + res.render('admin-users', { + title: 'Stored', + user: req.user, + users: docs + }); + } + + }); + + +}); + +module.exports = router; \ No newline at end of file diff --git a/routes/form.js b/routes/form.js new file mode 100644 index 0000000..bb64371 --- /dev/null +++ b/routes/form.js @@ -0,0 +1,52 @@ +var express = require('express'); +var router = express.Router(); + + +var dbconfig = require('../config/mongodb-config'); +var web = require('../models/web'); +//var mongoose = require('mongoose'); + + +router.get('/', function(req, res, next) { + res.render('form', { + title: 'Form get', + user: req.user + }); +}); + +router.post('/', function(req, res) { + var webname = req.body.namepage; + console.log(webname); + // var propietario = req.body.propietario; + // User.addUser(username, propietario, function(err, user){ + // console.log(username + " " + password); + +// -- abrir conexion a la db +// guardar informacion +// -- cerrar conexion + //dbconfig.conectar; + dbconfig.conectar(); + + var nweb = new web({ + name: webname + /* type: 'type', + category: 'category', + urloffline: 'urloff', + owner: 'owner', + urlonline: 'urlon', + price: 'price' +*/ + }); + console.log(nweb); + nweb.save(function (err) { + if (err) { + console.log('error: '+err) + } + console.log('insercion exitosa'); + res.redirect('/form'); + }); + dbconfig.desconectar(); + +}); + +module.exports = router; diff --git a/routes/index.js b/routes/index.js new file mode 100644 index 0000000..ae08a2a --- /dev/null +++ b/routes/index.js @@ -0,0 +1,37 @@ +var express = require('express'); +var router = express.Router(); + +var passport = require('passport'); + +/* GET home page. */ +router.get('/', function(req, res, next) { + res.render('index', { title: 'Express' }); +}); + + +// Ruta para autenticarse con Twitter (enlace de login) +router.get('/auth/twitter', passport.authenticate('twitter')); +// Ruta para autenticarse con Facebook (enlace de login) +router.get('/auth/facebook', passport.authenticate('facebook')); +// Ruta de callback, a la que redirigirá tras autenticarse con Twitter. +router.get('/auth/github', passport.authenticate('github', { scope: [ 'user:email' ] })); + +// En caso de fallo redirige a otra vista '/login' +router.get('/auth/twitter/callback', passport.authenticate('twitter', + { successRedirect: '/session', failureRedirect: '/webadmin' } +)); +// Ruta de callback, a la que redirigirá tras autenticarse con Facebook. +// En caso de fallo redirige a otra vista '/login' +router.get('/auth/facebook/callback', passport.authenticate('facebook', + { successRedirect: '/session', failureRedirect: '/webadmin' } +)); +router.get('/auth/github/callback', passport.authenticate('github', + { successRedirect: '/session', failureRedirect: '/webadmin' } +));/*, + function(req, res) { + // Successful authentication, redirect home. + res.redirect('/index'); + } +); +*/ +module.exports = router; diff --git a/routes/session.js b/routes/session.js new file mode 100644 index 0000000..25b45e4 --- /dev/null +++ b/routes/session.js @@ -0,0 +1,14 @@ +var express = require('express'); +var router = express.Router(); + + +router.get('/', function(req, res, next){ + res.render('session',{ + title: 'Index', + user: req.user + }); +}); + + + +module.exports = router; \ No newline at end of file diff --git a/routes/stored.js b/routes/stored.js new file mode 100644 index 0000000..df44a5e --- /dev/null +++ b/routes/stored.js @@ -0,0 +1,17 @@ +var express = require('express'); +var router = express.Router(); + +router.get('/', function(req, res, next) { + User.find({}, function(err, docs){ + if(err) throw(err) + else{ + res.render('stored', { + title: 'Stored', + user: req.user, + users: docs + }); + } + }) +}); + +module.exports = router; \ No newline at end of file diff --git a/routes/users.js b/routes/users.js new file mode 100644 index 0000000..623e430 --- /dev/null +++ b/routes/users.js @@ -0,0 +1,9 @@ +var express = require('express'); +var router = express.Router(); + +/* GET users listing. */ +router.get('/', function(req, res, next) { + res.send('respond with a resource'); +}); + +module.exports = router; diff --git a/routes/webadmin.js b/routes/webadmin.js new file mode 100644 index 0000000..ac8450f --- /dev/null +++ b/routes/webadmin.js @@ -0,0 +1,9 @@ +var express = require('express'); +var router = express.Router(); + +router.get("/", function(req, res, next){ + //res.send('respond with a resource'); + res.render("login"); +}); + +module.exports = router; \ No newline at end of file diff --git a/views/admin-users.jade b/views/admin-users.jade new file mode 100644 index 0000000..6fc709f --- /dev/null +++ b/views/admin-users.jade @@ -0,0 +1,7 @@ +extends layout + +block content + + include ./models_jade/Header/template.jade + include ./models_jade/Section-main/template.jade + include ./models_jade/Admin-users/template.jade diff --git a/views/error.jade b/views/error.jade new file mode 100644 index 0000000..51ec12c --- /dev/null +++ b/views/error.jade @@ -0,0 +1,6 @@ +extends layout + +block content + h1= message + h2= error.status + pre #{error.stack} diff --git a/views/form.jade b/views/form.jade new file mode 100644 index 0000000..bc097f6 --- /dev/null +++ b/views/form.jade @@ -0,0 +1,20 @@ +extends layout + +block content + //- h1= title + //- p Welcome to #{title} + //- form(action="/signup", method="post") + //- div + //- label Username + //- input(type="text", name="username") + //- br + //- div + //- label Password + //- input(type="password", name="password") + //- br + //- div + //- input(type="submit", value="sign up") + include ./models_jade/Header/template.jade + include ./models_jade/Section-main/template.jade + include ./models_jade/Add-nueva-pagina/template.jade + //- script(src="https://code.jquery.com/jquery-2.1.1.min.js") diff --git a/views/index.jade b/views/index.jade new file mode 100644 index 0000000..3d63b9a --- /dev/null +++ b/views/index.jade @@ -0,0 +1,5 @@ +extends layout + +block content + h1= title + p Welcome to #{title} diff --git a/views/layout.jade b/views/layout.jade new file mode 100644 index 0000000..84a2c65 --- /dev/null +++ b/views/layout.jade @@ -0,0 +1,20 @@ +doctype html +//- html +//- head +//- title= title +//- link(rel='stylesheet', href='/stylesheets/style.css') +//- body +//- block content +html(lang="en") + head + meta(charset="UTF-8") + meta(name="viewport", content="width=device-width, user-scalable=no") + title #{title} + link(rel="stylesheet", href="/stylesheets/style.css") + link(rel="stylesheet", href="/stylesheets/style-fonts.css") + //- link(rel="stylesheet", href='https://fonts.googleapis.com/css?family=Playfair+Display:400,700,400italic,700italic|Abril+Fatface|Bevan|Alegreya+Sans:400,700,400italic,500italic,700italic|Francois+One|Libre+Baskerville:400,400italic,700|Lato:400,700,400italic,700italic|Merriweather:400,400italic,700,700italic|Merriweather+Sans:400,400italic,700|Open+Sans:400,400italic,700,700italic|Roboto+Condensed:400,400italic,700,700italic') + meta(name="viewport", content="width=device-width, initial-scale=1.0") + body + main.Main + block content + script(src="https://code.jquery.com/jquery-2.1.1.min.js") \ No newline at end of file diff --git a/views/login.jade b/views/login.jade new file mode 100644 index 0000000..8ebcab5 --- /dev/null +++ b/views/login.jade @@ -0,0 +1,18 @@ +extends layout + +block content + include ./models_jade/Header/template.jade + //nav Sistema de Administración + include ./models_jade/Section-main/template.jade + .Section-secciones + .Section-item.box.flexbox-colwrp + .styleicon.icon-facebook + .titulo3.margin10.Font-francois.Fontcolor1.loginsocial + a(href='auth/facebook', class="linknone linksocial") Iniciar con Facebook + //.Section-secciones + .Section-item.box.flexbox-colwrp + .styleicon.icon-github + .titulo3.margin10.Font-francois.Fontcolor1.loginsocial + a(href='auth/github', class="linknone linksocial") Iniciar con Github + //- .Section-item.box.flexbox-colwrp + //- a(href='auth/facebook') Login con Facebook diff --git a/views/models_jade/Add-nueva-pagina/style.styl b/views/models_jade/Add-nueva-pagina/style.styl new file mode 100644 index 0000000..455af11 --- /dev/null +++ b/views/models_jade/Add-nueva-pagina/style.styl @@ -0,0 +1,83 @@ +.Formpanel + // display flex + // justify-content center + // flex-wrap wrap + // flex-direction column + items-align center + margin-top 2rem + width 50vw + +/*input + border-radius 2px + border-width 0px + + margin 10px*/ + +input + background-color transparent + border-width 0px + border-bottom 1px solid rgba(#273e48, 0.6) + border-radius 0 + outline none + width 100% + font-size 1rem + margin 0 0 15px 0 + padding 0 + box-shadow none + height 1.3rem + font-family 'Merriweather' serif +input:focus + outline none + border-width 0px + border-bottom 2px solid rgba(38, 166, 152, 0.9) + +.btn + text-decoration: none; + color: #fff; + background-color: #26a69a; + box-shadow 0px 2px 1px rgba(0, 0, 0, 0.18) + text-align: center; + letter-spacing: .5px; + border: none; + border-radius: 2px; + display: inline-block; + height: 36px; + line-height: 36px; + outline: 0; + padding: 0 2rem; + text-transform: capitalize + width 200px + &:hover + background-color: #2bbbad; + box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15); + +.Form-add + display flex + flex-direction column + justify-content space-around + +.inputstyle + display flex + flex-direction column + margin 10px 0px 20px 0px +.btnstyle + display flex + justify-content flex-end + items-align center + margin 10px 0px 0px 0px +.btnstyle1 + display flex + justify-content center + items-align center + margin 10px 0px 10px 0px +.selectbox + font-size 1em + font-family 'Merriweather' serif +select option + font-family 'Merriweather' serif +select option["selected"] + font-family 'Merriweather' serif +.lbl + font-family 'Noto Serif' + margin-bottom 5px + font-weight 600 diff --git a/views/models_jade/Add-nueva-pagina/template.jade b/views/models_jade/Add-nueva-pagina/template.jade new file mode 100644 index 0000000..bf5273e --- /dev/null +++ b/views/models_jade/Add-nueva-pagina/template.jade @@ -0,0 +1,31 @@ +section + .titulo1.margin20.Font-francois.FontStylebold.Fontcolor1 Agregar nueva página al catálogo + .titulo2.Font-alegreya Sistema de Administración de catálogo + .divider +.Section-secciones + .Section-agregar.box.Formpanel + .titulo3.margin10.Font-francois.Fontcolor1 Formulario + .divider + .Form + form(id="agregarweb", method="post", action="/form", class="Form-add") + .inputstyle.Fontcolor1 + label(for="input-nombre", class="lbl") Nombre de la nueva web: + input(type="text", id="input-nombre", name="namepage") + .inputstyle.Fontcolor1 + label(for="input-nombre", class="lbl") Nombre del propietario: + input(type="text", id="input-propietario", placeholder="", name="propietario") + .inputstyle.Fontcolor1 + label(class="lbl") Categoría: + select.box + option(selected) Negocios: + option Música + option Blogs + .inputstyle.Font-openssans.Fontcolor1 + label(class="lbl") Tipo: + select.box + option(selected) Estática + option Dinamicas + option Sistemas + .divider + .btnstyle.Font-openssans + input(type="submit", class="btn", value="Salvar") diff --git a/views/models_jade/Admin-users/style.styl b/views/models_jade/Admin-users/style.styl new file mode 100644 index 0000000..14f9b71 --- /dev/null +++ b/views/models_jade/Admin-users/style.styl @@ -0,0 +1,25 @@ +.Table + width 800px + &-user-photo + width 40px + border-radius 50% +.th + text-align justify +.td + margin-top 10px + +.facebook-label + background-color #00f + padding 4px + border-radius 0px 5px + color white + text-align center + width 85px + +.github-label + background-color #000 + padding 4px + border-radius 0px 5px + color white + text-align center + width 85px \ No newline at end of file diff --git a/views/models_jade/Admin-users/template.jade b/views/models_jade/Admin-users/template.jade new file mode 100644 index 0000000..6a7fac9 --- /dev/null +++ b/views/models_jade/Admin-users/template.jade @@ -0,0 +1,24 @@ +section + .titulo1.margin20.Font-francois.FontStylebold.Fontcolor1 Usuarios Administradores + .titulo2.Font-alegreya Sistema de Administración de catálogo + .divider +.Section-secciones + .box + table(class="Table") + thead + tr + th(class="th" data-field='id') Usuario + th(class="th" data-field='name') Provedor + th(class="th" data-field='price') Foto + tbody + each user in users + tr(class="tr") + td(class="td") #{user.name} + if(user.provider == "facebook") + td(class="td") + div.facebook-label #{user.provider} + else + td(class="td") + div.github-label #{user.provider} + td(class="td") + img(src="#{user.photo}", class="Table-user-photo") diff --git a/views/models_jade/Bienvenido/style.styl b/views/models_jade/Bienvenido/style.styl new file mode 100644 index 0000000..8ba9898 --- /dev/null +++ b/views/models_jade/Bienvenido/style.styl @@ -0,0 +1,16 @@ +.Section + width 85vw + background-color rgba(#E5E5E5, 0.7) + // &-main + // width 100% + &-secciones + display flex + flex-wrap wrap + margin 30px auto + flex-direction row + justify-content space-around + align-items flex-stretch + align-content space-around + &-item + width 250px + margin 10px diff --git a/views/models_jade/Bienvenido/template.jade b/views/models_jade/Bienvenido/template.jade new file mode 100644 index 0000000..1d9e6d3 --- /dev/null +++ b/views/models_jade/Bienvenido/template.jade @@ -0,0 +1,54 @@ +.titulo1.margin20.Font-francois.FontStylebold Bienvenido + .titulo2.Font-alegreya Sistema de Administración de catálogo +.divider +.Section-secciones + .Section-item.box.flexbox-colwrp + .titulo3.margin10.Font-francois.Fontcolor1 Agregar nueva página + .divider + .styleicon.icon-logo_nave + p.Font-lato.Fontcolor1 Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis + .divider + .btnstyle1 + button.btn(onClick="location.href='/form'") Ir + //a(href="/form", class="linknone") Ir + .Section-item.box.flexbox-colwrp + .titulo3.margin10.Font-francois.Fontcolor1 Agregar categoría + .divider + .styleicon.icon-logo_Carrito + p.Font-lato.Fontcolor1 Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis + .divider + .btnstyle1 + button.btn(onClick="location.href='/stored'") Ir + .Section-item.box.flexbox-colwrp + .titulo3.margin10.Font-francois.Fontcolor1 Ver la base de datos + .divider + .styleicon.icon-logo_Basededatos + p.Font-lato.Fontcolor1 Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis + .divider + .btnstyle1 + button.btn(onClick="location.href='/stored'") Ir + + .Section-item.box.flexbox-colwrp + .titulo3.margin10.Font-francois.Fontcolor1 Ver estadísticas + .divider + .styleicon.icon-logo_Estadisticas + p.Font-lato.Fontcolor1 Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis + .divider + .btnstyle1 + button.btn Ir + .Section-item.box.flexbox-colwrp + .titulo3.margin10.Font-francois.Fontcolor1 Ver usuarios + .divider + .styleicon.icon-logo_Usuario + p.Font-lato.Fontcolor1 Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis + .divider + .btnstyle1 + button.btn(onClick="location.href='/admin-users'") Ir + .Section-item.box.flexbox-colwrp + .titulo3.margin10.Font-francois.Fontcolor1 Ver archivos + .divider + .styleicon.icon-logo_archivo + p.Font-lato.Fontcolor1 Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perspiciatis + .divider + .btnstyle1 + button.btn Ir diff --git a/views/models_jade/Card/style.styl b/views/models_jade/Card/style.styl new file mode 100644 index 0000000..07b55ba --- /dev/null +++ b/views/models_jade/Card/style.styl @@ -0,0 +1,39 @@ +.MyCard + margin-top 10px + margin-bottom 30px + display flex + flex-direction column + align-items center + text-align center + &-photo + width 100px + border-radius 50% + // border 2px dotted #FBC02D + padding 2px + &-photo-img + background-color #E0E0E0 + width 80px + border-radius 50% + &-name + display flex + flex-direction column + //align-items center + text-align center + justify-content center + //background-color #FBC02D + //height 50px + &--textStyle + //padding 15px auto + //letter-spacing 0.3em + font-family: 'Roboto Condensed', sans-serif; + color rgba(229,229,229,0.7) + &-title + color #FAFAFA + font-family 'Noto Serif' + font-style italic + margin-top -7px + //letter-spacing 0.1em + //height: 50px; + display: flex; + align-items: center; + justify-content: center; diff --git a/views/models_jade/Card/template.jade b/views/models_jade/Card/template.jade new file mode 100644 index 0000000..4daeb0e --- /dev/null +++ b/views/models_jade/Card/template.jade @@ -0,0 +1,12 @@ +.MyCard + .MyCard-photo + if(user) + img(src="#{user.photo}", class="MyCard-photo-img") + else + img(src="/images/cara.png", class="MyCard-photo-img") + .MyCard-name + if(user) + .MyCard--textStyle.borderStyle.titulo1 #{user.name} + else + .MyCard--textStyle.borderStyle.titulo1 Daniel + .MyCard-title.titulo2 Administrador diff --git a/views/models_jade/Header/style.styl b/views/models_jade/Header/style.styl new file mode 100644 index 0000000..91b0e0f --- /dev/null +++ b/views/models_jade/Header/style.styl @@ -0,0 +1,49 @@ +.Header + background-color rgba(#273e48, 1) + box-shadow: 0px -5px 7px 5px #777; + &-sidenav + padding 5px 20px + min-height 100vh + width 15vw + &-logo + color white + font-size 6rem + text-align center + + +.Nav + color white + margin 30px auto + color rgba(229,229,229,0.7) + &-item + display flex + align-items center + margin 10px auto + color rgba(229,229,229,0.7) + cursor pointer + &:hover + color rgba(240,240,240,1) + &-item-text + font-size 0.8rem + margin-left 15px + +.Nav-item[data-lastitem] + margin-top 15px + +.iconstyle + font-size 1.4rem + display flex + align-items center + +.iconstyle[data-cross] + font-size 1.4rem + +.notifi + background-color rgba(88, 114, 125,0.9) + //border 1px solid rgba(38, 166, 152, 0.9) + margin-left 30px + font-size 0.8rem + width 16px + text-align center + padding 2px + border-radius 2px diff --git a/views/models_jade/Header/template.jade b/views/models_jade/Header/template.jade new file mode 100644 index 0000000..b9e910f --- /dev/null +++ b/views/models_jade/Header/template.jade @@ -0,0 +1,25 @@ +header.Header + .Header-sidenav + .Header-logo.icon-logos_Logoytexto.margin10 + if(user) + include ../Card/template.jade + .divider + .Nav + if(user) + .Nav-item + .iconstyle.icon-user + div.Nav-item-text Ver perfil + .Nav-item + .iconstyle.icon-cog + div.Nav-item-text Configuración + .Nav-item(data-bandeja) + .iconstyle.icon-drawer + div.Nav-item-text Bandeja de entrada + .notifi 2 + .Nav-item(data-lastitem) + .iconstyle(data-cross).icon-cross + a(href="/logout", class="linknone") + div.Nav-item-text Cerrar sesión + + + diff --git a/views/models_jade/Section-main/template.jade b/views/models_jade/Section-main/template.jade new file mode 100644 index 0000000..966814b --- /dev/null +++ b/views/models_jade/Section-main/template.jade @@ -0,0 +1,3 @@ +section.Section + .Section-main + \ No newline at end of file diff --git a/views/models_jade/styles/style-fuentes.styl b/views/models_jade/styles/style-fuentes.styl new file mode 100644 index 0000000..080396b --- /dev/null +++ b/views/models_jade/styles/style-fuentes.styl @@ -0,0 +1,28 @@ +.Font-playfair + font-family 'Playfair Display' serif +.Font-abril + font-family 'Abril Fatface' cursive +.Font-bevan + font-family 'Bevan' cursive +.Font-alegreya + font-family 'Alegreya Sans' sans-serif +.Font-francois + font-family 'Francois One' sans-serif +.Font-librebasker + font-family 'Libre Baskerville' serif +.Font-lato + font-family 'Lato' sans-serif +.Font-merriw + font-family 'Merriweather' serif +.Font-merriws + font-family 'Merriweather Sans' sans-serif +.Font-openssans + font-family 'Open Sans' sans-serif +.Font-roboto + font-family 'Roboto Condensed' sans-serif + +.FontStylebold + font-style bold + font-weight 700 +.Fontcolor1 + color rgba(#273e48, 0.86) diff --git a/views/models_jade/styles/style.styl b/views/models_jade/styles/style.styl new file mode 100644 index 0000000..d1c4646 --- /dev/null +++ b/views/models_jade/styles/style.styl @@ -0,0 +1,163 @@ +@import "../../../node_modules/normalize-styl/normalize.styl" + +// Código de Compra +// 26979700 + +.bg-primary + background-color rgba(#1a237e, 0.7) +.bg-secundary + background-color rgba(#e3f2fd, 0.4) + + +.box + background-color white + padding 5px 10px + border-radius 2px + box-shadow 0px 2px 1px rgba(0,0,0,0.1) +.minwidth1 + min-width 300px +// .widthbox1 +// width 250px +// .flexbox-colwrp +// display flex +// flex-wrap wrap +// flex-direction column +.margin10 + margin 10px auto 10px 2px +.margin20 + margin 10px auto 10px 20px +.marginbtm + margin-bottom 10px +.titulo1 + font-size 1.6rem + padding 5px + color rgba(#212121, .95) +.titulo2 + font-size 1.1rem + color rgba(#212121, 0.7) +.titulo3 + font-size 1.4rem + color rgba(#212121, 0.9) + font-weight 600 +.titulo4 + font-size .9rem + font-weight 500 + color rgba(#212121, 0.9) +.divider + height 1px + overflow hidden + background-color #e0e0e0 + + +.linknone + text-decoration none + color rgba(229,229,229,0.9) +.linksocial + color: #273e48; +.loginsocial + text-align center + +.styleicon + font-size 4rem + text-align center + margin 10px auto + color rgba(#273e48, 1) + &:hover + color rgba(#273e48, .7) +.justifytext + text-align justify + + +body + font-size 18px +.Main + display flex + align-items stretch + + +@import "../Add-nueva-pagina/style.styl" +@import "../Header/style.styl" +@import "../Card/style.styl" +@import "../Bienvenido/style.styl" +//@import "../Pages-stored/style.styl" +@import "style-fuentes.styl" + + + +@media screen and (max-width: 320px) + .titulo1 + font-size 1.3rem + .titulo2 + font-size 0.9rem + .titulo3 + font-size 1.1rem + .titulo4 + font-size .8rem + + main + display flex + flex-direction row + + .Section + width 100vw + &-secciones + flex-direction column + + .Header + box-shadow: -1px 4px 2px 0px #777; + max-height 100% + &-sidenav + width 100% + padding 0px + .MyCard + margin-top 0px + &-photo + text-align center + &-photo-img + text-align center + width 70px + .Formpanel + // display flex + // justify-content center + // flex-wrap wrap + // flex-direction column + items-align center + margin-top 2rem + width 90vw + +@media screen and (max-width: 720px) + + main + display flex + flex-direction column + .Section + width 100vw + &-secciones + flex-direction row + flex-wrap wrap + .Header + box-shadow: -1px 4px 2px 0px #777; + max-height 100% + &-sidenav + padding 0px + width 100% + &-logo + font-size 4.5rem + .MyCard + margin-top 0px + &-photo + text-align center + &-photo-img + text-align center + width 70px + .Formpanel + // display flex + // justify-content center + // flex-wrap wrap + // flex-direction column + items-align center + margin-top 2rem + width 90vw + + +@import "../Admin-users/style.styl" \ No newline at end of file diff --git a/views/session.jade b/views/session.jade new file mode 100644 index 0000000..5ac21cb --- /dev/null +++ b/views/session.jade @@ -0,0 +1,10 @@ +extends layout + +block content + //- h1= title + //- p Welcome to #{title} + include ./models_jade/Header/template.jade + include ./models_jade/Section-main/template.jade + include ./models_jade/Bienvenido/template.jade + //- script(src="https://code.jquery.com/jquery-2.1.1.min.js") + //- script(src="./js/materialize.js") diff --git a/views/stored.jade b/views/stored.jade new file mode 100644 index 0000000..f0358dc --- /dev/null +++ b/views/stored.jade @@ -0,0 +1,7 @@ +extends layout + +block content + + include ./models_jade/Header/template.jade + include ./models_jade/Section-main/template.jade + include ./models_jade/Admin-users/template.jade