diff --git a/modules/__init__.py b/modules/__init__.py index e69de29..1c0dc39 100755 --- a/modules/__init__.py +++ b/modules/__init__.py @@ -0,0 +1,4 @@ +from modules.core.core import CraftBeerPI, Addon + +cbpi = CraftBeerPI() +cbpi.addon = Addon(cbpi) \ No newline at end of file diff --git a/modules/action/__init__.py b/modules/action/__init__.py index c9d5761..9351d45 100644 --- a/modules/action/__init__.py +++ b/modules/action/__init__.py @@ -1,6 +1,8 @@ import json + +from flask import request from flask_classy import FlaskView, route -from modules.core.core import cbpi +from modules import cbpi class ActionView(FlaskView): @@ -15,9 +17,10 @@ class ActionView(FlaskView): 200: description: action invoked """ + data = request.json - self.cbpi.cache["actions"][action]["function"](self.cbpi) - + obj = self.cbpi.cache["actions"][action]["class"](self.cbpi) + obj.execute(**data) return ('',204) @cbpi.addon.core.initializer() @@ -28,4 +31,4 @@ def init(cbpi): :return: None """ ActionView.cbpi = cbpi - ActionView.register(cbpi._app, route_base='/api/action') + ActionView.register(cbpi.web, route_base='/api/action') diff --git a/modules/actor/__init__.py b/modules/actor/__init__.py index 4a4102f..ac68448 100755 --- a/modules/actor/__init__.py +++ b/modules/actor/__init__.py @@ -1,14 +1,16 @@ import time + +from flask import request from flask_classy import route from flask_login import login_required from modules.core.db import DBModel -from modules.core.core import cbpi -from modules.core.baseview import BaseView +from modules import cbpi +from modules.core.baseview import RestApi from modules.database.dbmodel import Actor -class ActorView(BaseView): +class ActorView(RestApi): model = Actor cache_key = "actors" @@ -121,7 +123,7 @@ class ActorView(BaseView): def toggleTimeJob(self, id, t): self.api.cache.get("actors").get(int(id)).timer = int(time.time()) + int(t) self.toggle(int(id)) - self.api._socketio.sleep(t) + self.api.sleep(t) self.api.cache.get("actors").get(int(id)).timer = None self.toggle(int(id)) @@ -179,13 +181,18 @@ class ActorView(BaseView): 200: description: Actor Action called """ - - self.api.actor.action(id, method) + data = request.json + if data: + cbpi.actor.action(id, method, **data) + else: + cbpi.actor.action(id, method) return ('', 204) + + @cbpi.addon.core.initializer(order=1000) def init(cbpi): - ActorView.register(cbpi._app, route_base='/api/actor') + ActorView.register(cbpi.web, route_base='/api/actor') ActorView.init_cache() #cbpi.init_actors() diff --git a/modules/base_plugins/actor.py b/modules/base_plugins/actor.py index 8788267..1b39258 100644 --- a/modules/base_plugins/actor.py +++ b/modules/base_plugins/actor.py @@ -1,15 +1,37 @@ from modules.core.baseapi import Buzzer from modules.core.basetypes import Actor, KettleController, FermenterController -from modules.core.core import cbpi +from modules import cbpi +from modules.core.proptypes import Property @cbpi.addon.actor.type("Dummy Actor") class Dummy(Actor): - @cbpi.addon.actor.action("WOHOO") - def myaction(self): - print "WOOHOO" - pass + # Decorator to create a parameter based action + @cbpi.addon.actor.action("Run until Temp reached", parameters={"t": Property.Text(label="Target Temp")}) + def check_sensor_value(self, t=1): + + def check(api, id, value): + ''' + Background Prozess which checks the sensor value every second + :param api: + :param id: + :param value: + :return: + ''' + while api.sensor.get_value(1) < value: + api.sleep(1) + api.actor.off(id) + + target_value = int(t) + + # Create notificaiton + self.api.notify(headline="Waiting", message="Waiting for temp %s" % target_value) + # Switch actor on + self.api.actor.on(self.id, 100) + # Start Background task + self.api.start_background_task(check, self.api, id=self.id, value=target_value) + def on(self, power=100): ''' @@ -17,11 +39,10 @@ class Dummy(Actor): :param power: int value between 0 - 100 :return: ''' - print "ON" + print "ID %s ON" % self.id def off(self): - print "OFF" - + print "ID %s OFF" % self.id @cbpi.addon.kettle.controller() @@ -29,7 +50,7 @@ class MyController(KettleController): def run(self): while self.is_running(): - + print "HALLO" self.sleep(1) @@ -49,6 +70,7 @@ def init(cbpi): class MyBuzzer(Buzzer): def beep(self): + print "BEEEEEP" pass cbpi.buzzer = MyBuzzer() diff --git a/modules/base_plugins/sensor.py b/modules/base_plugins/sensor.py index f6ed8e4..7594f08 100644 --- a/modules/base_plugins/sensor.py +++ b/modules/base_plugins/sensor.py @@ -3,11 +3,12 @@ import os from os.path import join -from modules.core.basetypes import Actor, Sensor -from modules.core.core import cbpi +from modules.core.basetypes import Actor, Sensor, Action +from modules import cbpi from modules.core.proptypes import Property import random + @cbpi.addon.sensor.type("Dummy Sensor") class Dummy(Sensor): @@ -21,10 +22,15 @@ class Dummy(Sensor): else: self.unit = "°F" - @cbpi.addon.sensor.action("WOHOO") - def myaction(self): + @cbpi.addon.sensor.action(label="Set Dummy Temp", parameters={ + "p1":Property.Select(label="Temp",options=[1,2,3]), + + }) + def myaction(self, p1): + self.text = p1 + self.update_value(int(p1)) + - self.api.notify(headline="WOHOO", message="HALLO") def execute(self): while True: @@ -34,14 +40,28 @@ class Dummy(Sensor): pass self.api.sleep(5) -@cbpi.addon.core.action(key="clear", label="Clear all Logs") -def woohoo(cbpi): - dir = "./logs" - test = os.listdir(dir) +@cbpi.addon.core.action(name="Delete All Logs") +class ParameterAction(Action): + + p1 = Property.Number("P1", configurable=True, description="Target Temperature of Mash Step", unit="C") + p2 = Property.Number("P2", configurable=True, description="Target Temperature of Mash Step", unit="C") + + + def execute(self, p1, p2, **kwargs): + for i in range(5): + cbpi.sleep(1) + cbpi.notify(headline="Woohoo", message="%s %s" % (p1, p2)) + + +@cbpi.addon.core.action(name="Delete All Logs") +class DeleteAllLogs(Action): + def execute(self, **kwargs): + dir = "./logs" + test = os.listdir(dir) - for item in test: + for item in test: - if item.endswith(".log"): - os.remove(join(dir, item)) - cbpi.notify(headline="Logs Deleted",message="All Logs Cleared") + if item.endswith(".log"): + os.remove(join(dir, item)) + cbpi.notify(headline="Logs Deleted", message="All Logs Cleared") \ No newline at end of file diff --git a/modules/base_plugins/steps.py b/modules/base_plugins/steps.py index a77fb8e..39be383 100644 --- a/modules/base_plugins/steps.py +++ b/modules/base_plugins/steps.py @@ -1,5 +1,5 @@ from modules.core.basetypes import Step -from modules.core.core import cbpi +from modules import cbpi from modules.core.proptypes import Property import time @@ -18,7 +18,7 @@ class Dummy(Step): time = Property.Text(label="Text", configurable=True, description="WOHOOO") def execute(self): - #print self.text + pass def reset(self): @@ -36,8 +36,8 @@ class MashStep(Step): Just put the decorator @cbpi.step on top of a method ''' # Properties - temp = Property.Number("Temperature", configurable=True, description="Target Temperature of Mash Step") - kettle = Property.Kettle("Kettle", description="Kettle in which the mashing takes place") + temp = Property.Number("Temperature", configurable=True, description="Target Temperature of Mash Step", unit="C") + kettle = Property.Kettle("Kettle", description="Kettle in which the mashing takes place" ) timer = Property.Number("Timer in Minutes", configurable=True, description="Timer is started when the target temperature is reached") def init(self): @@ -79,6 +79,7 @@ class MashStep(Step): # Check if timer finished and go to next step if self.is_timer_finished() == True: + self.api.beep() self.notify("Mash Step Completed!", "Starting the next step", timeout=None) self.next() @@ -243,3 +244,5 @@ class BoilStep(Step): if self.is_timer_finished() == True: self.notify("Boil Step Completed!", "Starting the next step", timeout=None) self.next() + + diff --git a/modules/buzzer/__init__.py b/modules/buzzer/__init__.py index 7e443c9..90e60ed 100755 --- a/modules/buzzer/__init__.py +++ b/modules/buzzer/__init__.py @@ -2,7 +2,7 @@ import time from thread import start_new_thread from modules.core.baseapi import Buzzer -from modules.core.core import cbpi +from modules import cbpi try: import RPi.GPIO as GPIO @@ -16,19 +16,19 @@ class GPIOBuzzer(Buzzer): def __init__(self, gpio): try: - cbpi._app.logger.info("INIT BUZZER NOW GPIO%s" % gpio) + cbpi.web.logger.info("INIT BUZZER NOW GPIO%s" % gpio) self.gpio = int(gpio) GPIO.setmode(GPIO.BCM) GPIO.setup(self.gpio, GPIO.OUT) self.state = True - cbpi._app.logger.info("BUZZER SETUP OK") + cbpi.web.logger.info("BUZZER SETUP OK") except Exception as e: - cbpi._app.logger.info("BUZZER EXCEPTION %s" % str(e)) + cbpi.web.logger.info("BUZZER EXCEPTION %s" % str(e)) self.state = False def beep(self): if self.state is False: - cbpi._app.logger.error("BUZZER not working") + cbpi.web.logger.error("BUZZER not working") return def play(sound): diff --git a/modules/config/__init__.py b/modules/config/__init__.py index 253e188..6a433fa 100755 --- a/modules/config/__init__.py +++ b/modules/config/__init__.py @@ -2,13 +2,13 @@ import time from flask import json, request from flask_classy import route -from modules.core.core import cbpi +from modules import cbpi from modules.core.db import DBModel -from modules.core.baseview import BaseView +from modules.core.baseview import RestApi from modules.database.dbmodel import Config -class ConfigView(BaseView): +class ConfigView(RestApi): model = Config cache_key = "config" @@ -77,7 +77,7 @@ class ConfigView(BaseView): @classmethod def init_cache(cls): - with cls.api._app.app_context(): + with cls.api.web.app_context(): cls.api.cache[cls.cache_key] = {} for key, value in cls.model.get_all().iteritems(): cls.post_init_callback(value) @@ -85,5 +85,5 @@ class ConfigView(BaseView): @cbpi.addon.core.initializer(order=0) def init(cbpi): - ConfigView.register(cbpi._app, route_base='/api/config') + ConfigView.register(cbpi.web, route_base='/api/config') ConfigView.init_cache() diff --git a/modules/core/baseapi.py b/modules/core/baseapi.py index 1f0d96e..0efd79d 100755 --- a/modules/core/baseapi.py +++ b/modules/core/baseapi.py @@ -22,6 +22,9 @@ class BaseAPI(object): except: doc = "" + if self.cbpi.cache.get(key) is None: + self.cbpi.cache[key] = {} + self.cbpi.logger.debug(name) self.cbpi.cache.get(key)[name] = {"name": name, "class": cls, "description":doc, "properties": [], "actions": []} self.cbpi.cache.get(key)[name].update(options) members = [attr for attr in dir(tmpObj) if not callable(getattr(tmpObj, attr)) and not attr.startswith("__")] @@ -29,23 +32,39 @@ class BaseAPI(object): t = tmpObj.__getattribute__(m) if isinstance(t, Property.Number): - self.cbpi.cache.get(key)[name]["properties"].append({"name": m, "label": t.label, "type": "number", "configurable": t.configurable, "description": t.description, "default_value": t.default_value}) + self.cbpi.cache.get(key)[name]["properties"].append({"name": m, "label": t.label, "type": "number", "configurable": t.configurable, "description": t.description, "default_value": t.default_value, "unit": t.unit}) elif isinstance(t, Property.Text): self.cbpi.cache.get(key)[name]["properties"].append({"name": m, "label": t.label, "type": "text", "required": t.required, "configurable": t.configurable, "description": t.description, "default_value": t.default_value}) - elif isinstance(tmpObj.__getattribute__(m), Property.Select): + elif isinstance(t, Property.Select): self.cbpi.cache.get(key)[name]["properties"].append({"name": m, "label": t.label, "type": "select", "configurable": True, "options": t.options, "description": t.description}) - elif isinstance(tmpObj.__getattribute__(m), Property.Actor): + elif isinstance(t, Property.Actor): self.cbpi.cache.get(key)[name]["properties"].append({"name": m, "label": t.label, "type": "actor", "configurable": True, "description": t.description}) - elif isinstance(tmpObj.__getattribute__(m), Property.Sensor): + elif isinstance(t, Property.Sensor): self.cbpi.cache.get(key)[name]["properties"].append({"name": m, "label": t.label, "type": "sensor", "configurable": True, "description": t.description}) - elif isinstance(tmpObj.__getattribute__(m), Property.Kettle): + elif isinstance(t, Property.Kettle): self.cbpi.cache.get(key)[name]["properties"].append({"name": m, "label": t.label, "type": "kettle", "configurable": True, "description": t.description}) for method_name, method in cls.__dict__.iteritems(): if hasattr(method, "action"): label = method.__getattribute__("label") - self.cbpi.cache.get(key)[name]["actions"].append({"method": method_name, "label": label}) - + parameters = method.__getattribute__("parameters") + props = [] + if parameters is not None: + for k, t in parameters.iteritems(): + if isinstance(t, Property.Number): + props.append({"name": k, "label": t.label, "type": "number", "configurable": t.configurable, "description": t.description, "default_value": t.default_value, "unit": t.unit}) + elif isinstance(t, Property.Text): + props.append({"name": k, "label": t.label, "type": "text", "required": t.required, "configurable": t.configurable, "description": t.description, "default_value": t.default_value}) + elif isinstance(t, Property.Select): + props.append({"name": k, "label": t.label, "type": "select", "configurable": True, "options": t.options, "description": t.description}) + elif isinstance(t, Property.Actor): + props.append({"name": k, "label": t.label, "type": "actor", "configurable": True, "description": t.description}) + elif isinstance(t, Property.Sensor): + props.append({"name": k, "label": t.label, "type": "sensor", "configurable": True, "description": t.description}) + elif isinstance(t, Property.Kettle): + props.append({"name": k, "label": t.label, "type": "kettle", "configurable": True, "description": t.description}) + + self.cbpi.cache.get(key)[name]["actions"].append({"method": method_name, "label": label, "properties":props }) return cls @@ -59,9 +78,11 @@ class SensorAPI(BaseAPI): return f return decorator - def action(self, label): + def action(self, label, parameters=None): + def real_decorator(func): func.action = True + func.parameters = parameters func.label = label return func return real_decorator @@ -80,10 +101,11 @@ class StepAPI(BaseAPI): return f return decorator - def action(self, label): + def action(self, label, parameters=None): def real_decorator(func): func.action = True func.label = label + func.parameters = parameters return func return real_decorator @@ -100,10 +122,11 @@ class ActorAPI(BaseAPI): return f return decorator - def action(self, label): + def action(self, label, parameters=None): def real_decorator(func): func.action = True func.label = label + func.parameters = parameters return func return real_decorator @@ -119,10 +142,11 @@ class KettleAPI(BaseAPI): return f return decorator - def action(self, label): + def action(self, label, parameters=None): def real_decorator(func): func.action = True func.label = label + func.parameters = parameters return func return real_decorator @@ -136,10 +160,11 @@ class FermenterAPI(BaseAPI): return f return decorator - def action(self, label): + def action(self, label, parameters=None): def real_decorator(func): func.action = True func.label = label + func.parameters = parameters return func return real_decorator @@ -156,7 +181,6 @@ class CoreAPI(BaseAPI): self.cbpi.cache["web_menu"] =[] def init(self): - self.cbpi.cache["init"] = sorted(self.cbpi.cache["init"], key=lambda k: k['order']) for value in self.cbpi.cache.get("init"): @@ -168,12 +192,17 @@ class CoreAPI(BaseAPI): try: method(self.cbpi) except Exception as e: - print e - self.cbpi._socketio.sleep(interval) + self.cbpi.logger.error(e) + self.cbpi.sleep(interval) for value in self.cbpi.cache.get("background"): - t = self.cbpi._socketio.start_background_task(target=job, interval=value.get("interval"), method=value.get("function")) + t = self.cbpi.start_background_task(target=job, interval=value.get("interval"), method=value.get("function")) + def action(self, **options): + def decorator(f): + BaseAPI.parseProps(self, "actions", f) + return f + return decorator def add_js(self, name, file): self.cbpi.cache["js"][name] = file @@ -187,15 +216,7 @@ class CoreAPI(BaseAPI): return f return decorator - - def action(self, key, label, **options): - def decorator(f): - self.cbpi.cache.get("actions")[key] = {"label": label, "function": f} - return f - return decorator - - - def backgroundjob(self, key, interval, **options): + def backgroundtask(self, key, interval, **options): def decorator(f): self.cbpi.cache.get("background").append({"function": f, "key": key, "interval": interval}) return f @@ -220,5 +241,20 @@ class CoreAPI(BaseAPI): class Buzzer(object): - def beep(): - pass \ No newline at end of file + def beep(self): + pass + +class Addon(object): + def __init__(self, cbpi): + self.step = StepAPI(cbpi) + self.actor = ActorAPI(cbpi) + self.sensor = SensorAPI(cbpi) + self.kettle = KettleAPI(cbpi) + self.fermenter = FermenterAPI(cbpi) + self.core = CoreAPI(cbpi) + + def init(self): + self.core.init() + self.step.init() + self.actor.init() + self.sensor.init() \ No newline at end of file diff --git a/modules/core/basetypes.py b/modules/core/basetypes.py index 25201f6..f395f5e 100755 --- a/modules/core/basetypes.py +++ b/modules/core/basetypes.py @@ -12,11 +12,15 @@ class Base(object): self.value = None self.__dirty = False +class Action(Base): + + def execute(self): + pass + class Actor(Base): @classmethod def init_global(cls): - pass def init(self): @@ -68,9 +72,6 @@ class Sensor(Base): print "EXECUTE" pass - - - class ControllerBase(object): __dirty = False __running = False @@ -271,7 +272,6 @@ class Step(Base, Timer): def set_target_temp(self, temp, id=None): temp = float(temp) - try: if id is None: self.api.emit("SET_TARGET_TEMP", id=self.kettle_id, temp=temp) @@ -281,7 +281,6 @@ class Step(Base, Timer): self.api.notify("Faild to set Target Temp", "", type="warning") - def get_kettle_temp(self, id=None): id = int(id) if id is None: @@ -294,6 +293,8 @@ class Step(Base, Timer): def reset_dirty(self): self.__dirty = False + def notify(self, headline, messsage, timeout=None): + self.api.notify(headline, messsage, timeout) def __setattr__(self, name, value): if name != "_StepBase__dirty" and name in self.managed_fields: diff --git a/modules/core/baseview.py b/modules/core/baseview.py index 62705b4..84e5a7d 100755 --- a/modules/core/baseview.py +++ b/modules/core/baseview.py @@ -2,10 +2,10 @@ from flask import request, json from flask_classy import route, FlaskView from flask_login import login_required -from modules.core.core import cbpi +from modules import cbpi -class BaseView(FlaskView): +class RestApi(FlaskView): as_array = False cache_key = None @@ -39,7 +39,7 @@ class BaseView(FlaskView): def post(self): data = request.json - self.api._app.logger.info("INSERT Model %s", self.model.__name__) + self.api.web.logger.info("INSERT Model %s", self.model.__name__) self._pre_post_callback(data) m = self.model.insert(**data) if self.api.cache.get(self.cache_key) is not None: @@ -101,7 +101,7 @@ class BaseView(FlaskView): @classmethod def init_cache(cls): - with cls.api._app.app_context(): + with cls.api.web.app_context(): if cls.model.__as_array__ is True: cls.api.cache[cls.cache_key] = [] diff --git a/modules/core/core.py b/modules/core/core.py index 5400858..ece5dde 100755 --- a/modules/core/core.py +++ b/modules/core/core.py @@ -22,7 +22,6 @@ from modules.database.dbmodel import Kettle class ComplexEncoder(json.JSONEncoder): def default(self, obj): try: - if isinstance(obj, DBModel): return obj.__dict__ elif isinstance(obj, Actor): @@ -33,31 +32,11 @@ class ComplexEncoder(json.JSONEncoder): return obj() else: return None - return None except TypeError as e: pass return None - -class Addon(object): - def __init__(self, cbpi): - self.step = StepAPI(cbpi) - self.actor = ActorAPI(cbpi) - self.sensor = SensorAPI(cbpi) - self.kettle = KettleAPI(cbpi) - self.fermenter = FermenterAPI(cbpi) - self.core = CoreAPI(cbpi) - - def init(self): - self.core.init() - self.step.init() - self.actor.init() - self.sensor.init() - # self.kettle.init() - # self.fermenter.init() - - class ActorCore(object): key = "actor_types" @@ -82,8 +61,7 @@ class ActorCore(object): actor.power = 100 self.cbpi.emit("INIT_ACTOR", id=id) except Exception as e: - print e - self.cbpi._app.logger.error(e) + self.cbpi.web.logger.error(e) def stop_one(self, id): self.cbpi.cache["actors"][id]["instance"].stop() @@ -99,7 +77,7 @@ class ActorCore(object): self.cbpi.emit("SWITCH_ACTOR_ON", id=id, power=power) return True except Exception as e: - print e + self.cbpi.logger.error(e) return False def off(self, id): @@ -111,7 +89,7 @@ class ActorCore(object): self.cbpi.emit("SWITCH_ACTOR_OFF", id=id) return True except Exception as e: - print e + self.cbpi.logger.error(e) return False def toggle(self, id): @@ -129,11 +107,11 @@ class ActorCore(object): self.cbpi.emit("SWITCH_ACTOR_POWER_CHANGE", id=id, power=power) return True except Exception as e: - print e + self.cbpi.logger.error(e) return False - def action(self, id, method): - self.cbpi.cache.get("actors").get(id).instance.__getattribute__(method)() + def action(self, id, method, **data): + self.cbpi.cache.get("actors").get(id).instance.__getattribute__(method)(**data) def toggle_timeout(self, id, seconds): @@ -182,7 +160,7 @@ class SensorCore(object): except Exception as e: print "ERROR" - self.cbpi._app.logger.error(e) + self.cbpi.web.logger.error(e) def stop_one(self, id): @@ -206,12 +184,12 @@ class SensorCore(object): with open(filename, "a") as file: file.write(msg) - def action(self, id, method): - self.cbpi.cache.get("sensors").get(id).instance.__getattribute__(method)() - + def action(self, id, method, **data): + self.cbpi.cache.get("sensors").get(id).instance.__getattribute__(method)(**data) class BrewingCore(object): + def __init__(self, cbpi): self.cbpi = cbpi self.cbpi.cache["step_types"] = {} @@ -240,7 +218,7 @@ class BrewingCore(object): # Start controller if kettle.logic is not None: cfg = kettle.config.copy() - cfg.update(dict(api=cbpi, kettle_id=kettle.id, heater=kettle.heater, sensor=kettle.sensor)) + cfg.update(dict(api=self.cbpi, kettle_id=kettle.id, heater=kettle.heater, sensor=kettle.sensor)) instance = self.get_controller(kettle.logic).get("class")(**cfg) instance.init() kettle.instance = instance @@ -250,13 +228,13 @@ class BrewingCore(object): t = self.cbpi._socketio.start_background_task(target=run, instance=instance) kettle.state = not kettle.state - self.cbpi.ws_emit("UPDATE_KETTLE", cbpi.cache.get("kettle").get(id)) + self.cbpi.ws_emit("UPDATE_KETTLE", self.cbpi.cache.get("kettle").get(id)) self.cbpi.emit("KETTLE_CONTROLLER_STARTED", id=id) else: # Stop controller kettle.instance.stop() kettle.state = not kettle.state - self.cbpi.ws_emit("UPDATE_KETTLE", cbpi.cache.get("kettle").get(id)) + self.cbpi.ws_emit("UPDATE_KETTLE", self.cbpi.cache.get("kettle").get(id)) self.cbpi.emit("KETTLE_CONTROLLER_STOPPED", id=id) @@ -270,28 +248,50 @@ class FermentationCore(object): return self.cbpi.cache["fermentation_controller_types"].get(name) +class Logger(object): + def __init__(self, cbpi): + self.cbpi = cbpi + + def error(self, msg, *args, **kwargs): + self.cbpi.web.logger.error(msg, *args, **kwargs) + + def info(self, msg, *args, **kwargs): + self.cbpi.web.logger.info(msg, *args, **kwargs) + + def debug(self, msg, *args, **kwargs): + self.cbpi.web.logger.debug(msg, *args, **kwargs) + + def warning(self, msg, *args, **kwargs): + self.cbpi.web.logger.warning(msg, *args, **kwargs) + class CraftBeerPI(object): cache = {} eventbus = {} def __init__(self): - FORMAT = '%(asctime)-15s - %(levelname)s - %(message)s' - logging.basicConfig(filename='./logs/app.log', level=logging.INFO, format=FORMAT) self.cache["messages"] = [] self.cache["version"] = "3.1" - self.modules = {} + FORMAT = '%(asctime)-15s - %(levelname)s - %(message)s' + logging.basicConfig(filename='./logs/app.log', level=logging.INFO, format=FORMAT) + logging.getLogger('socketio').setLevel(logging.ERROR) + logging.getLogger('engineio').setLevel(logging.ERROR) + self.web = Flask(__name__) + self.logger = Logger(self) + self.logger.info("###Startup CraftBeerPi %s ###" % self.cache.get("version")) + self.web.secret_key = 'Cr4ftB33rP1' + self.web.json_encoder = ComplexEncoder + self._socketio = SocketIO(self.web, json=json, logging=False) + + + self.modules = {} self.addon = Addon(self) self.actor = ActorCore(self) self.sensor = SensorCore(self) self.brewing = BrewingCore(self) self.fermentation = FermentationCore(self) - self._app = Flask(__name__) - self._app.secret_key = 'Cr4ftB33rP1' - self._app.json_encoder = ComplexEncoder - self._socketio = SocketIO(self._app, json=json, logging=False) - @self._app.route('/') + @self.web.route('/') def index(): return redirect('ui') @@ -303,11 +303,11 @@ class CraftBeerPI(object): self.actor.init() self.beep() try: - port = int(cbpi.get_config_parameter('port', '5000')) + port = int(self.get_config_parameter('port', '5000')) except ValueError: port = 5000 - print port - self._socketio.run(self._app, host='0.0.0.0', port=port) + + self._socketio.run(self.web, host='0.0.0.0', port=port) def beep(self): self.buzzer.beep() @@ -315,6 +315,10 @@ class CraftBeerPI(object): def sleep(self, seconds): self._socketio.sleep(seconds) + def start_background_task(self, target, *args, **kwargs): + + self._socketio.start_background_task(target, *args, **kwargs) + def notify(self, headline, message, type="success", timeout=5000): msg = {"id": str(uuid.uuid1()), "type": type, "headline": headline, "message": message, "timeout": timeout} self.ws_emit("NOTIFY", msg) @@ -324,10 +328,10 @@ class CraftBeerPI(object): def __init_db(self, ): - with self._app.app_context(): + with self.web.app_context(): db = self.get_db() try: - with self._app.open_resource('../../config/schema.sql', mode='r') as f: + with self.web.open_resource('../../config/schema.sql', mode='r') as f: db.cursor().executescript(f.read()) db.commit() except Exception as e: @@ -373,7 +377,7 @@ class CraftBeerPI(object): def set_config_parameter(self, name, value): from modules.config import Config - with self._app.app_context(): + with self.web.app_context(): update_data = {"name": name, "value": value} self.cache.get("config")[name].__dict__.update(**update_data) c = Config.update(**update_data) @@ -381,7 +385,6 @@ class CraftBeerPI(object): def emit(self, key, **kwargs): - if self.eventbus.get(key) is not None: for value in self.eventbus[key]: if value["async"] is False: @@ -400,6 +403,3 @@ class CraftBeerPI(object): self.notify("Failed to load plugin %s " % filename, str(e), type="danger", timeout=None) - -cbpi = CraftBeerPI() -addon = cbpi.addon diff --git a/modules/core/db_migrate.py b/modules/core/db_migrate.py index 11e4bb3..cf23732 100644 --- a/modules/core/db_migrate.py +++ b/modules/core/db_migrate.py @@ -1,11 +1,11 @@ import sqlite3 import os -from modules.core.core import cbpi +from modules import cbpi from modules.core.db import get_db def execute_file(curernt_version, data): if curernt_version >= data["version"]: - cbpi._app.logger.info("SKIP DB FILE: %s" % data["file"]) + cbpi.web.logger.info("SKIP DB FILE: %s" % data["file"]) return try: with sqlite3.connect("craftbeerpi.db") as conn: @@ -18,14 +18,13 @@ def execute_file(curernt_version, data): cur.execute("INSERT INTO schema_info (version,filename) values (?,?)", (data["version"], data["file"])) conn.commit() - except sqlite3.OperationalError as err: - - print err + except sqlite3.OperationalError as e: + cbpi.logger.error(e) @cbpi.addon.core.initializer(order=-9999) def init(cbpi): - with cbpi._app.app_context(): + with cbpi.web.app_context(): conn = get_db() cur = conn.cursor() current_version = None diff --git a/modules/core/proptypes.py b/modules/core/proptypes.py index 912b2f5..6b4b74c 100755 --- a/modules/core/proptypes.py +++ b/modules/core/proptypes.py @@ -16,6 +16,7 @@ class Property(object): self.configurable = configurable self.default_value = default_value self.description = description + self.unit = unit class Text(PropertyType): def __init__(self, label, configurable=False, required=False, default_value="", description=""): @@ -44,5 +45,6 @@ class Property(object): def __init__(self, label, description=""): PropertyType.__init__(self) self.label = label + self.unit = "" self.configurable = True self.description = description diff --git a/modules/core/step.py b/modules/core/step.py deleted file mode 100755 index e69de29..0000000 diff --git a/modules/example_plugins/WebViewJquery/__init__.py b/modules/example_plugins/WebViewJquery/__init__.py index 6e96ba1..442f02f 100644 --- a/modules/example_plugins/WebViewJquery/__init__.py +++ b/modules/example_plugins/WebViewJquery/__init__.py @@ -1,11 +1,11 @@ from flask import Blueprint -from modules.core.core import cbpi, addon +from modules import cbpi from flask_swagger import swagger from flask import json from flask import Blueprint -@addon.core.initializer(order=22) +@cbpi.addon.core.initializer(order=22) def web(cbpi): s = Blueprint('web_view', __name__, template_folder='templates', static_folder='static') @@ -16,4 +16,4 @@ def web(cbpi): cbpi.addon.core.add_menu_link("JQuery View", "/web_view") - cbpi._app.register_blueprint(s, url_prefix='/web_view') + cbpi.web.register_blueprint(s, url_prefix='/web_view') diff --git a/modules/example_plugins/WebViewReactJs/__init__.py b/modules/example_plugins/WebViewReactJs/__init__.py index 9d82cc0..3048047 100644 --- a/modules/example_plugins/WebViewReactJs/__init__.py +++ b/modules/example_plugins/WebViewReactJs/__init__.py @@ -1,11 +1,11 @@ from flask import Blueprint -from modules.core.core import cbpi, addon +from modules import cbpi from flask_swagger import swagger from flask import json from flask import Blueprint -@addon.core.initializer(order=22) +@cbpi.addon.core.initializer(order=22) def web(cbpi): s = Blueprint('webviewreact', __name__, template_folder='templates', static_folder='static') @@ -16,4 +16,4 @@ def web(cbpi): cbpi.addon.core.add_menu_link("ReactJS View", "/webviewreact") - cbpi._app.register_blueprint(s, url_prefix='/webviewreact') + cbpi.web.register_blueprint(s, url_prefix='/webviewreact') diff --git a/modules/example_plugins/swagger/__init__.py b/modules/example_plugins/swagger/__init__.py index 3e944f3..ccc6dba 100755 --- a/modules/example_plugins/swagger/__init__.py +++ b/modules/example_plugins/swagger/__init__.py @@ -1,9 +1,9 @@ -from modules.core.core import cbpi, addon +from modules import cbpi from flask_swagger import swagger from flask import json from flask import Blueprint -@addon.core.initializer(order=22) +@cbpi.addon.core.initializer(order=22) def hello(cbpi): s = Blueprint('react', __name__, template_folder='templates', static_folder='static') @@ -14,10 +14,10 @@ def hello(cbpi): @s.route('/swagger.json', methods=["GET"]) def spec(): - swag = swagger(cbpi._app) + swag = swagger(cbpi.web) swag['info']['version'] = "3.0" swag['info']['title'] = "CraftBeerPi" return json.dumps(swag) cbpi.addon.core.add_menu_link("Swagger API", "/swagger") - cbpi._app.register_blueprint(s, url_prefix='/swagger') + cbpi.web.register_blueprint(s, url_prefix='/swagger') diff --git a/modules/fermenter/__init__.py b/modules/fermenter/__init__.py index 056bcc3..4d87a4c 100644 --- a/modules/fermenter/__init__.py +++ b/modules/fermenter/__init__.py @@ -2,13 +2,13 @@ import time from flask import request from flask_classy import route -from modules.core.core import cbpi +from modules import cbpi from modules.core.db import get_db, DBModel -from modules.core.baseview import BaseView +from modules.core.baseview import RestApi from modules.database.dbmodel import Fermenter, FermenterStep -class FermenterView(BaseView): +class FermenterView(RestApi): model = Fermenter cache_key = "fermenter" @@ -212,10 +212,9 @@ class FermenterView(BaseView): cbpi.ws_emit("UPDATE_FERMENTER", cbpi.cache.get(self.cache_key)[id]) def check_step(self): - print "CHECK STEP" - print cbpi.cache["fermenter_task"] + for key, value in cbpi.cache["fermenter_task"].iteritems(): - print value + try: fermenter = self.get_fermenter(key) current_temp = current_temp = cbpi.sensor.get_value(int(fermenter.sensor)) @@ -236,11 +235,11 @@ class FermenterView(BaseView): else: pass except Exception as e: - print e + self.api.looger.error(e) pass -@cbpi.addon.core.backgroundjob(key="read_target_temps_fermenter", interval=5) +@cbpi.addon.core.backgroundtask(key="read_target_temps_fermenter", interval=5) def read_target_temps(cbpi): """ background process that reads all passive sensors in interval of 1 second @@ -253,9 +252,9 @@ def read_target_temps(cbpi): instance = FermenterView() -@cbpi.addon.core.backgroundjob(key="fermentation_task", interval=1) +@cbpi.addon.core.backgroundtask(key="fermentation_task", interval=1) def execute_fermentation_step(cbpi): - with cbpi._app.app_context(): + with cbpi.web.app_context(): instance.check_step() @@ -268,5 +267,5 @@ def init_active_steps(): def init(cbpi): cbpi.cache["fermenter_task"] = {} - FermenterView.register(cbpi._app, route_base='/api/fermenter') + FermenterView.register(cbpi.web, route_base='/api/fermenter') FermenterView.init_cache() diff --git a/modules/kettle/__init__.py b/modules/kettle/__init__.py index b373d22..abef011 100755 --- a/modules/kettle/__init__.py +++ b/modules/kettle/__init__.py @@ -1,11 +1,11 @@ from flask import request from flask_classy import FlaskView, route -from modules.core.core import cbpi -from modules.core.baseview import BaseView +from modules import cbpi +from modules.core.baseview import RestApi from modules.core.db import DBModel from modules.database.dbmodel import Kettle -class KettleView(BaseView): +class KettleView(RestApi): model = Kettle cache_key = "kettle" @@ -228,7 +228,7 @@ def set_target_temp(id, temp): ''' KettleView().postTargetTemp(id,temp) -@cbpi.addon.core.backgroundjob(key="read_target_temps", interval=5) +@cbpi.addon.core.backgroundtask(key="read_target_temps", interval=5) def read_target_temps(api): """ background process that reads all passive sensors in interval of 1 second @@ -241,5 +241,5 @@ def read_target_temps(api): @cbpi.addon.core.initializer() def init(cbpi): KettleView.api = cbpi - KettleView.register(cbpi._app, route_base='/api/kettle') + KettleView.register(cbpi.web, route_base='/api/kettle') KettleView.init_cache() diff --git a/modules/login/__init__.py b/modules/login/__init__.py index 938ba62..0183e8d 100644 --- a/modules/login/__init__.py +++ b/modules/login/__init__.py @@ -1,18 +1,19 @@ import flask_login from flask import request -from modules.core.core import cbpi, addon +from modules import cbpi class User(flask_login.UserMixin): pass -@addon.core.initializer(order=0) +@cbpi.addon.core.initializer(order=0) def log(cbpi): cbpi._login_manager = flask_login.LoginManager() - cbpi._login_manager.init_app(cbpi._app) - @cbpi._app.route('/login', methods=['POST']) + cbpi._login_manager.init_app(cbpi.web) + + @cbpi.web.route('/login', methods=['POST']) def login(): data = request.json @@ -30,15 +31,29 @@ def log(cbpi): return ('',401) - @cbpi._app.route('/logout', methods=['POST']) + @cbpi.web.route('/logout', methods=['POST']) def logout(): flask_login.logout_user() return 'Logged out' - @cbpi._login_manager.user_loader - def user_loader(user): + @cbpi._login_manager.request_loader + def load_user_from_request(request): + api_key = request.args.get('api_key') + + if cbpi.get_config_parameter("password_security", "NO") == "NO": + user = User() + user.id = "craftbeerpi" + return user + elif api_key == "123": + user = User() + user.id = "craftbeerpi" + return user + return None + + @cbpi._login_manager.user_loader + def user_loader(user): if cbpi.get_config_parameter("password_security", "NO") == "YES": if user != "craftbeerpi": @@ -53,4 +68,6 @@ def log(cbpi): @cbpi._login_manager.unauthorized_handler def unauthorized_handler(): + + return ('Please login',401) diff --git a/modules/logs/__init__.py b/modules/logs/__init__.py index d3dfc4e..c08315f 100755 --- a/modules/logs/__init__.py +++ b/modules/logs/__init__.py @@ -2,7 +2,7 @@ import datetime import os from flask import Blueprint, request, send_from_directory, json from flask_classy import FlaskView, route -from modules.core.core import cbpi +from modules import cbpi class LogView(FlaskView): @@ -172,4 +172,4 @@ def init(cbpi): :param app: the flask app :return: None """ - LogView.register(cbpi._app, route_base='/api/logs') + LogView.register(cbpi.web, route_base='/api/logs') diff --git a/modules/notification/__init__.py b/modules/notification/__init__.py index 1003ed5..1c590db 100644 --- a/modules/notification/__init__.py +++ b/modules/notification/__init__.py @@ -1,6 +1,6 @@ import json from flask_classy import FlaskView, route -from modules.core.core import cbpi +from modules import cbpi class NotificationView(FlaskView): @@ -63,4 +63,4 @@ def init(cbpi): msg = {"id": len(cbpi.cache["messages"]), "type": "info", "headline": "Support CraftBeerPi with your donation", "message": "You will find the PayPay Donation button in the system menu" , "read": False} cbpi.cache["messages"].append(msg) - NotificationView.register(cbpi._app, route_base='/api/notification') + NotificationView.register(cbpi.web, route_base='/api/notification') diff --git a/modules/plugin/__init__.py b/modules/plugin/__init__.py index e4fec65..56bd8dd 100755 --- a/modules/plugin/__init__.py +++ b/modules/plugin/__init__.py @@ -1,7 +1,7 @@ import sys from flask import request, send_from_directory, json from importlib import import_module -from modules.core.core import cbpi +from modules import cbpi from git import Repo import os import requests @@ -46,7 +46,7 @@ class PluginView(FlaskView): response = requests.get("https://raw.githubusercontent.com/Manuel83/craftbeerpi-plugins/master/plugins.yaml") self.api.cache["plugins"] = self.merge(yaml.load(response.text), self.api.cache["plugins"]) for key, value in cbpi.cache["plugins"].iteritems(): - print key + value["installed"] = os.path.isdir("./plugins/%s/" % (key)) return json.dumps(cbpi.cache["plugins"]) @@ -136,4 +136,4 @@ class PluginView(FlaskView): def init(cbpi): cbpi.cache["plugins"] = {} PluginView.api = cbpi - PluginView.register(cbpi._app, route_base='/api/plugin') \ No newline at end of file + PluginView.register(cbpi.web, route_base='/api/plugin') \ No newline at end of file diff --git a/modules/recipe_book/__init__.py b/modules/recipe_book/__init__.py index 9bcf9cd..224cea1 100644 --- a/modules/recipe_book/__init__.py +++ b/modules/recipe_book/__init__.py @@ -7,8 +7,8 @@ from flask import json, request, send_from_directory from flask_classy import route, FlaskView from modules.core.db import DBModel -from modules.core.baseview import BaseView -from modules.core.core import cbpi +from modules.core.baseview import RestApi +from modules import cbpi from modules.database.dbmodel import Step from yaml import Loader, Dumper from yaml import load, dump @@ -59,7 +59,7 @@ class RecipeBook(FlaskView): description: Log file downloaded """ file = "%s.json" % name - print file + if not self.check_filename(file): return ('File Not Found111', 404) return send_from_directory('../../recipes', file, as_attachment=True, attachment_filename=file) @@ -143,4 +143,4 @@ class RecipeBook(FlaskView): @cbpi.addon.core.initializer(order=2000) def init(cbpi): RecipeBook.api = cbpi - RecipeBook.register(cbpi._app, route_base='/api/recipebook') \ No newline at end of file + RecipeBook.register(cbpi.web, route_base='/api/recipebook') \ No newline at end of file diff --git a/modules/recipe_import/beerxml.py b/modules/recipe_import/beerxml.py index 4fda11a..41a3e4c 100644 --- a/modules/recipe_import/beerxml.py +++ b/modules/recipe_import/beerxml.py @@ -2,7 +2,7 @@ from flask import json, request from flask_classy import FlaskView, route from git import Repo, Git import sqlite3 -from modules.core.core import cbpi +from modules import cbpi from werkzeug.utils import secure_filename import pprint import time @@ -60,7 +60,7 @@ class BeerXMLImport(FlaskView): return ('', 204) return ('', 404) except Exception as e: - print e + self.api.logger.error(e) self.api.notify(headline="Upload Failed", message="Failed to upload Beer xml", type="danger") return ('', 500) @@ -143,4 +143,4 @@ class BeerXMLImport(FlaskView): def init(cbpi): BeerXMLImport.api = cbpi - BeerXMLImport.register(cbpi._app, route_base='/api/beerxml') + BeerXMLImport.register(cbpi.web, route_base='/api/beerxml') diff --git a/modules/recipe_import/kbh.py b/modules/recipe_import/kbh.py index 8cdfd4b..2afca5a9 100644 --- a/modules/recipe_import/kbh.py +++ b/modules/recipe_import/kbh.py @@ -2,7 +2,7 @@ from flask import json, request from flask_classy import FlaskView, route from git import Repo, Git import sqlite3 -from modules.core.core import cbpi +from modules import cbpi from werkzeug.utils import secure_filename import pprint import time @@ -39,7 +39,7 @@ class KBH(FlaskView): result.append({"id": row[0], "name": row[1], "brewed": row[2]}) return json.dumps(result) except Exception as e: - print e + self.api.logger.error(e) self.api.notify(headline="Failed to load KHB database", message="ERROR", type="danger") return ('', 500) finally: @@ -143,4 +143,4 @@ class KBH(FlaskView): def init(cbpi): KBH.api = cbpi - KBH.register(cbpi._app, route_base='/api/kbh') + KBH.register(cbpi.web, route_base='/api/kbh') diff --git a/modules/recipe_import/restapi.py b/modules/recipe_import/restapi.py index b1e71b5..c52f201 100644 --- a/modules/recipe_import/restapi.py +++ b/modules/recipe_import/restapi.py @@ -2,7 +2,7 @@ from flask import json, request from flask_classy import FlaskView, route from git import Repo, Git import sqlite3 -from modules.core.core import cbpi +from modules import cbpi from werkzeug.utils import secure_filename import pprint import time @@ -59,4 +59,4 @@ class RESTImport(FlaskView): @cbpi.addon.core.initializer() def init(cbpi): RESTImport.api = cbpi - RESTImport.register(cbpi._app, route_base='/api/recipe/import/v1') + RESTImport.register(cbpi.web, route_base='/api/recipe/import/v1') diff --git a/modules/sensor/__init__.py b/modules/sensor/__init__.py index 385b95c..152ec79 100644 --- a/modules/sensor/__init__.py +++ b/modules/sensor/__init__.py @@ -1,12 +1,12 @@ import time from flask_classy import route -from modules.core.core import cbpi +from modules import cbpi from modules.core.db import DBModel -from modules.core.baseview import BaseView +from modules.core.baseview import RestApi from modules.database.dbmodel import Sensor +from flask import request - -class SensorView(BaseView): +class SensorView(RestApi): model = Sensor cache_key = "sensors" @@ -34,7 +34,11 @@ class SensorView(BaseView): 200: description: Sensor Action called """ - cbpi.sensor.action(id, method) + data = request.json + if data: + cbpi.sensor.action(id, method, **data) + else: + cbpi.sensor.action(id, method) return ('', 204) def _post_post_callback(self, m): @@ -51,17 +55,19 @@ class SensorView(BaseView): @cbpi.addon.core.initializer(order=1000) def init(cbpi): - SensorView.register(cbpi._app, route_base='/api/sensor') + SensorView.register(cbpi.web, route_base='/api/sensor') SensorView.init_cache() -#@cbpi.backgroundtask(key="read_passiv_sensor", interval=5) +#@cbpi.addon.core.backgroundtask(key="read_passiv_sensor", interval=5) def read_passive_sensor(api): """ background process that reads all passive sensors in interval of 1 second :return: None """ - for key, value in cbpi.cache.get("sensors").iteritems(): - if value.mode == "P": - value.instance.read() + + + #for key, value in cbpi.cache.get("sensors").iteritems(): + # if value.mode == "P": + # value.instance.read() diff --git a/modules/step/__init__.py b/modules/step/__init__.py index c6cfe50..38332ce 100755 --- a/modules/step/__init__.py +++ b/modules/step/__init__.py @@ -3,12 +3,12 @@ from flask import json, request from flask_classy import route from modules.core.db import DBModel -from modules.core.baseview import BaseView -from modules.core.core import cbpi +from modules.core.baseview import RestApi +from modules import cbpi from modules.database.dbmodel import Step -class StepView(BaseView): +class StepView(RestApi): model = Step def _pre_post_callback(self, data): order = self.model.get_max_order() @@ -207,24 +207,25 @@ def init_after_startup(): @cbpi.addon.core.initializer(order=2000) def init(cbpi): - StepView.register(cbpi._app, route_base='/api/step') + StepView.register(cbpi.web, route_base='/api/step') def get_all(): - with cbpi._app.app_context(): + with cbpi.web.app_context(): return Step.get_all() - with cbpi._app.app_context(): + with cbpi.web.app_context(): init_after_startup() cbpi.add_cache_callback("steps", get_all) -@cbpi.addon.core.backgroundjob(key="step_task", interval=0.1) +@cbpi.addon.core.backgroundtask(key="step_task", interval=0.1) def execute_step(api): ''' Background job which executes the step :return: ''' - with cbpi._app.app_context(): + with cbpi.web.app_context(): + step = cbpi.cache.get("active_step") if step is not None: step.execute() diff --git a/modules/system/__init__.py b/modules/system/__init__.py index 084de05..4f3fb96 100755 --- a/modules/system/__init__.py +++ b/modules/system/__init__.py @@ -5,7 +5,7 @@ from flask import json, url_for, Response, request from flask_classy import FlaskView, route from flask_login import login_required, current_user from git import Repo, Git -from modules.core.core import cbpi +from modules import cbpi import pprint import time @@ -190,4 +190,4 @@ class SystemView(FlaskView): def init(cbpi): SystemView.api = cbpi - SystemView.register(cbpi._app, route_base='/api/system') + SystemView.register(cbpi.web, route_base='/api/system') diff --git a/modules/ui/__init__.py b/modules/ui/__init__.py index 2b2210a..e5b609a 100755 --- a/modules/ui/__init__.py +++ b/modules/ui/__init__.py @@ -1,12 +1,12 @@ from flask import Blueprint,render_template -from modules.core.core import cbpi +from modules import cbpi react = Blueprint('ui', __name__, template_folder='templates', static_folder='static') @cbpi.addon.core.initializer(order=10) def init(cbpi): - cbpi._app.register_blueprint(react, url_prefix='/ui') + cbpi.web.register_blueprint(react, url_prefix='/ui') @react.route('/', methods=["GET"]) @@ -22,7 +22,7 @@ def index(): -@cbpi._app.errorhandler(404) +@cbpi.web.errorhandler(404) def page_not_found(e): return render_template('404.html'), 404 diff --git a/modules/ui/static/bg.jpg b/modules/ui/static/bg.jpg new file mode 100644 index 0000000..4ca29c3 Binary files /dev/null and b/modules/ui/static/bg.jpg differ diff --git a/modules/ui/static/bg1.jpg b/modules/ui/static/bg1.jpg new file mode 100644 index 0000000..80aa188 Binary files /dev/null and b/modules/ui/static/bg1.jpg differ diff --git a/modules/ui/static/bg2.jpg b/modules/ui/static/bg2.jpg new file mode 100644 index 0000000..edc7bfc Binary files /dev/null and b/modules/ui/static/bg2.jpg differ diff --git a/modules/ui/static/bootstrap.dark.css b/modules/ui/static/bootstrap.dark.css index 5eb3a4c..95f95d1 100644 --- a/modules/ui/static/bootstrap.dark.css +++ b/modules/ui/static/bootstrap.dark.css @@ -1,4 +1,4 @@ -/*! +bootstrap.dark.css /*! * bootswatch v3.3.7 * Homepage: http://bootswatch.com * Copyright 2012-2016 Thomas Park @@ -8,4 +8,7715 @@ * Bootstrap v3.3.7 (http://getbootstrap.com) * Copyright 2011-2016 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - *//*! 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{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;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"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;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;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #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}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,*:before,*:after{background:transparent !important;color:#000 !important;-webkit-box-shadow:none !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-euro:before,.glyphicon-eur:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#c8c8c8;background-color:#272b30}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#ffffff;text-decoration:none}a:hover,a:focus{color:#ffffff;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#1c1e22;border:1px solid #0c0d0e;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #1c1e22}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role="button"]{cursor:pointer}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:normal;line-height:1;color:#7a8288}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}mark,.mark{background-color:#f89406;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#7a8288}.text-primary{color:#7a8288}a.text-primary:hover,a.text-primary:focus{color:#62686d}.text-success{color:#ffffff}a.text-success:hover,a.text-success:focus{color:#e6e6e6}.text-info{color:#ffffff}a.text-info:hover,a.text-info:focus{color:#e6e6e6}.text-warning{color:#ffffff}a.text-warning:hover,a.text-warning:focus{color:#e6e6e6}.text-danger{color:#ffffff}a.text-danger:hover,a.text-danger:focus{color:#e6e6e6}.bg-primary{color:#fff;background-color:#7a8288}a.bg-primary:hover,a.bg-primary:focus{background-color:#62686d}.bg-success{background-color:#62c462}a.bg-success:hover,a.bg-success:focus{background-color:#42b142}.bg-info{background-color:#5bc0de}a.bg-info:hover,a.bg-info:focus{background-color:#31b0d5}.bg-warning{background-color:#f89406}a.bg-warning:hover,a.bg-warning:focus{background-color:#c67605}.bg-danger{background-color:#ee5f5b}a.bg-danger:hover,a.bg-danger:focus{background-color:#e9322d}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #1c1e22}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:bold}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #7a8288}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #7a8288}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#7a8288}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #7a8288;border-left:0;text-align:right}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#ffffff;background-color:#333333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.25)}kbd kbd{padding:0;font-size:100%;font-weight:bold;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#3a3f44;background-color:#f5f5f5;border:1px solid #cccccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0%}@media (min-width:768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0%}}@media (min-width:992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0%}}@media (min-width:1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0%}}table{background-color:#2e3338}caption{padding-top:8px;padding-bottom:8px;color:#7a8288;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #1c1e22}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #1c1e22}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #1c1e22}.table .table{background-color:#272b30}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #1c1e22}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #1c1e22}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#353a41}.table-hover>tbody>tr:hover{background-color:#49515a}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#49515a}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#3e444c}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#62c462}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#4fbd4f}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#5bc0de}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#46b8da}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#f89406}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#df8505}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#ee5f5b}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ec4844}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #1c1e22}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#c8c8c8;border:0;border-bottom:1px solid #1c1e22}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}input[type="range"]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:9px;font-size:14px;line-height:1.42857143;color:#272b30}.form-control{display:block;width:100%;height:38px;padding:8px 12px;font-size:14px;line-height:1.42857143;color:#272b30;background-color:#ffffff;background-image:none;border:1px solid #000000;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control::-moz-placeholder{color:#7a8288;opacity:1}.form-control:-ms-input-placeholder{color:#7a8288}.form-control::-webkit-input-placeholder{color:#7a8288}.form-control::-ms-expand{border:0;background-color:transparent}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#999999;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type="search"]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type="date"].form-control,input[type="time"].form-control,input[type="datetime-local"].form-control,input[type="month"].form-control{line-height:38px}input[type="date"].input-sm,input[type="time"].input-sm,input[type="datetime-local"].input-sm,input[type="month"].input-sm,.input-group-sm input[type="date"],.input-group-sm input[type="time"],.input-group-sm input[type="datetime-local"],.input-group-sm input[type="month"]{line-height:30px}input[type="date"].input-lg,input[type="time"].input-lg,input[type="datetime-local"].input-lg,input[type="month"].input-lg,.input-group-lg input[type="date"],.input-group-lg input[type="time"],.input-group-lg input[type="datetime-local"],.input-group-lg input[type="month"]{line-height:54px}}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"].disabled,input[type="checkbox"].disabled,fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}.radio-inline.disabled,.checkbox-inline.disabled,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,.checkbox.disabled label,fieldset[disabled] .radio label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:9px;padding-bottom:9px;margin-bottom:0;min-height:34px}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm,select[multiple].input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm textarea.form-control,.form-group-sm select[multiple].form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:54px;padding:14px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:54px;line-height:54px}textarea.input-lg,select[multiple].input-lg{height:auto}.form-group-lg .form-control{height:54px;padding:14px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:54px;line-height:54px}.form-group-lg textarea.form-control,.form-group-lg select[multiple].form-control{height:auto}.form-group-lg .form-control-static{height:54px;min-height:38px;padding:15px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:47.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:38px;height:38px;line-height:38px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback,.input-group-lg+.form-control-feedback,.form-group-lg .form-control+.form-control-feedback{width:54px;height:54px;line-height:54px}.input-sm+.form-control-feedback,.input-group-sm+.form-control-feedback,.form-group-sm .form-control+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#ffffff}.has-success .form-control{border-color:#ffffff;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-success .input-group-addon{color:#ffffff;border-color:#ffffff;background-color:#62c462}.has-success .form-control-feedback{color:#ffffff}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#ffffff}.has-warning .form-control{border-color:#ffffff;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-warning .input-group-addon{color:#ffffff;border-color:#ffffff;background-color:#f89406}.has-warning .form-control-feedback{color:#ffffff}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#ffffff}.has-error .form-control{border-color:#ffffff;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#e6e6e6;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #fff}.has-error .input-group-addon{color:#ffffff;border-color:#ffffff;background-color:#ee5f5b}.has-error .form-control-feedback{color:#ffffff}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#ffffff}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.form-inline .input-group .form-control{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.form-inline .checkbox label{padding-left:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:9px}.form-horizontal .radio,.form-horizontal .checkbox{min-height:29px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}@media (min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:9px}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:15px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:8px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus,.btn:active:focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn.active.focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus,.btn.focus{color:#ffffff;text-decoration:none}.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:0.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#ffffff;background-color:#3a3f44;border-color:#3a3f44}.btn-default:focus,.btn-default.focus{color:#ffffff;background-color:#232628;border-color:#000000}.btn-default:hover{color:#ffffff;background-color:#232628;border-color:#1e2023}.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#ffffff;background-color:#232628;border-color:#1e2023}.btn-default:active:hover,.btn-default.active:hover,.open>.dropdown-toggle.btn-default:hover,.btn-default:active:focus,.btn-default.active:focus,.open>.dropdown-toggle.btn-default:focus,.btn-default:active.focus,.btn-default.active.focus,.open>.dropdown-toggle.btn-default.focus{color:#ffffff;background-color:#121415;border-color:#000000}.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled.focus,.btn-default[disabled].focus,fieldset[disabled] .btn-default.focus{background-color:#3a3f44;border-color:#3a3f44}.btn-default .badge{color:#3a3f44;background-color:#ffffff}.btn-primary{color:#ffffff;background-color:#7a8288;border-color:#7a8288}.btn-primary:focus,.btn-primary.focus{color:#ffffff;background-color:#62686d;border-color:#3e4245}.btn-primary:hover{color:#ffffff;background-color:#62686d;border-color:#5d6368}.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#ffffff;background-color:#62686d;border-color:#5d6368}.btn-primary:active:hover,.btn-primary.active:hover,.open>.dropdown-toggle.btn-primary:hover,.btn-primary:active:focus,.btn-primary.active:focus,.open>.dropdown-toggle.btn-primary:focus,.btn-primary:active.focus,.btn-primary.active.focus,.open>.dropdown-toggle.btn-primary.focus{color:#ffffff;background-color:#51565a;border-color:#3e4245}.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled.focus,.btn-primary[disabled].focus,fieldset[disabled] .btn-primary.focus{background-color:#7a8288;border-color:#7a8288}.btn-primary .badge{color:#7a8288;background-color:#ffffff}.btn-success{color:#ffffff;background-color:#62c462;border-color:#62c462}.btn-success:focus,.btn-success.focus{color:#ffffff;background-color:#42b142;border-color:#2d792d}.btn-success:hover{color:#ffffff;background-color:#42b142;border-color:#40a940}.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#ffffff;background-color:#42b142;border-color:#40a940}.btn-success:active:hover,.btn-success.active:hover,.open>.dropdown-toggle.btn-success:hover,.btn-success:active:focus,.btn-success.active:focus,.open>.dropdown-toggle.btn-success:focus,.btn-success:active.focus,.btn-success.active.focus,.open>.dropdown-toggle.btn-success.focus{color:#ffffff;background-color:#399739;border-color:#2d792d}.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled.focus,.btn-success[disabled].focus,fieldset[disabled] .btn-success.focus{background-color:#62c462;border-color:#62c462}.btn-success .badge{color:#62c462;background-color:#ffffff}.btn-info{color:#ffffff;background-color:#5bc0de;border-color:#5bc0de}.btn-info:focus,.btn-info.focus{color:#ffffff;background-color:#31b0d5;border-color:#1f7e9a}.btn-info:hover{color:#ffffff;background-color:#31b0d5;border-color:#2aabd2}.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#ffffff;background-color:#31b0d5;border-color:#2aabd2}.btn-info:active:hover,.btn-info.active:hover,.open>.dropdown-toggle.btn-info:hover,.btn-info:active:focus,.btn-info.active:focus,.open>.dropdown-toggle.btn-info:focus,.btn-info:active.focus,.btn-info.active.focus,.open>.dropdown-toggle.btn-info.focus{color:#ffffff;background-color:#269abc;border-color:#1f7e9a}.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled.focus,.btn-info[disabled].focus,fieldset[disabled] .btn-info.focus{background-color:#5bc0de;border-color:#5bc0de}.btn-info .badge{color:#5bc0de;background-color:#ffffff}.btn-warning{color:#ffffff;background-color:#f89406;border-color:#f89406}.btn-warning:focus,.btn-warning.focus{color:#ffffff;background-color:#c67605;border-color:#7c4a03}.btn-warning:hover{color:#ffffff;background-color:#c67605;border-color:#bc7005}.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#ffffff;background-color:#c67605;border-color:#bc7005}.btn-warning:active:hover,.btn-warning.active:hover,.open>.dropdown-toggle.btn-warning:hover,.btn-warning:active:focus,.btn-warning.active:focus,.open>.dropdown-toggle.btn-warning:focus,.btn-warning:active.focus,.btn-warning.active.focus,.open>.dropdown-toggle.btn-warning.focus{color:#ffffff;background-color:#a36104;border-color:#7c4a03}.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled.focus,.btn-warning[disabled].focus,fieldset[disabled] .btn-warning.focus{background-color:#f89406;border-color:#f89406}.btn-warning .badge{color:#f89406;background-color:#ffffff}.btn-danger{color:#ffffff;background-color:#ee5f5b;border-color:#ee5f5b}.btn-danger:focus,.btn-danger.focus{color:#ffffff;background-color:#e9322d;border-color:#b71713}.btn-danger:hover{color:#ffffff;background-color:#e9322d;border-color:#e82924}.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#ffffff;background-color:#e9322d;border-color:#e82924}.btn-danger:active:hover,.btn-danger.active:hover,.open>.dropdown-toggle.btn-danger:hover,.btn-danger:active:focus,.btn-danger.active:focus,.open>.dropdown-toggle.btn-danger:focus,.btn-danger:active.focus,.btn-danger.active.focus,.open>.dropdown-toggle.btn-danger.focus{color:#ffffff;background-color:#dc1c17;border-color:#b71713}.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled.focus,.btn-danger[disabled].focus,fieldset[disabled] .btn-danger.focus{background-color:#ee5f5b;border-color:#ee5f5b}.btn-danger .badge{color:#ee5f5b;background-color:#ffffff}.btn-link{color:#ffffff;font-weight:normal;border-radius:0}.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#ffffff;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#7a8288;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:14px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity 0.15s linear;-o-transition:opacity 0.15s linear;transition:opacity 0.15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height, visibility;-o-transition-property:height, visibility;transition-property:height, visibility;-webkit-transition-duration:0.35s;-o-transition-duration:0.35s;transition-duration:0.35s;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid \9;border-right:4px solid transparent;border-left:4px solid transparent}.dropup,.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#3a3f44;border:1px solid #272b30;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);-webkit-background-clip:padding-box;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#272b30}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.42857143;color:#c8c8c8;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{text-decoration:none;color:#ffffff;background-color:#272b30}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#ffffff;text-decoration:none;outline:0;background-color:#272b30}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#7a8288}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#7a8288;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px dashed;border-bottom:4px solid \9;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle="buttons"]>.btn input[type="radio"],[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],[data-toggle="buttons"]>.btn input[type="checkbox"],[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*="col-"]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:54px;padding:14px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:54px;line-height:54px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:8px 12px;font-size:14px;font-weight:normal;line-height:1;color:#272b30;text-align:center;background-color:#3a3f44;border:1px solid rgba(0,0,0,0.6);border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:14px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#3e444c}.nav>li.disabled>a{color:#7a8288}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#7a8288;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#3e444c;border-color:#ffffff}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #1c1e22}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#1c1e22 #1c1e22 #1c1e22}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#ffffff;background-color:#3e444c;border:1px solid #1c1e22;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #1c1e22}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #1c1e22;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#272b30}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#ffffff;background-color:transparent}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #1c1e22}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #1c1e22;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#272b30}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block !important;height:auto !important;padding-bottom:0;overflow:visible !important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px;height:50px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{margin-left:-15px;margin-right:-15px;padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);margin-top:6px;margin-bottom:6px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:6px;margin-bottom:6px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-left:15px;margin-right:15px}}@media (min-width:768px){.navbar-left{float:left !important}.navbar-right{float:right !important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#3a3f44;border-color:#2b2e32}.navbar-default .navbar-brand{color:#c8c8c8}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#ffffff;background-color:none}.navbar-default .navbar-text{color:#c8c8c8}.navbar-default .navbar-nav>li>a{color:#c8c8c8}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#ffffff;background-color:#272b2e}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#ffffff;background-color:#272b2e}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#cccccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#272b2e}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#272b2e}.navbar-default .navbar-toggle .icon-bar{background-color:#c8c8c8}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#2b2e32}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{background-color:#272b2e;color:#ffffff}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#c8c8c8}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#ffffff;background-color:#272b2e}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#ffffff;background-color:#272b2e}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#cccccc;background-color:transparent}}.navbar-default .navbar-link{color:#c8c8c8}.navbar-default .navbar-link:hover{color:#ffffff}.navbar-default .btn-link{color:#c8c8c8}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#ffffff}.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:focus{color:#cccccc}.navbar-inverse{background-color:#7a8288;border-color:#62686d}.navbar-inverse .navbar-brand{color:#cccccc}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#ffffff;background-color:none}.navbar-inverse .navbar-text{color:#cccccc}.navbar-inverse .navbar-nav>li>a{color:#cccccc}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#ffffff;background-color:#5d6368}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#ffffff;background-color:#5d6368}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#cccccc;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#5d6368}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#5d6368}.navbar-inverse .navbar-toggle .icon-bar{background-color:#ffffff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#697075}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{background-color:#5d6368;color:#ffffff}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#62686d}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#62686d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#cccccc}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#ffffff;background-color:#5d6368}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#ffffff;background-color:#5d6368}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#cccccc;background-color:transparent}}.navbar-inverse .navbar-link{color:#cccccc}.navbar-inverse .navbar-link:hover{color:#ffffff}.navbar-inverse .btn-link{color:#cccccc}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#ffffff}.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#cccccc}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:transparent;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#cccccc}.breadcrumb>.active{color:#7a8288}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:8px 12px;line-height:1.42857143;text-decoration:none;color:#ffffff;background-color:#3a3f44;border:1px solid rgba(0,0,0,0.6);margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{z-index:2;color:#ffffff;background-color:transparent;border-color:rgba(0,0,0,0.6)}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:3;color:#ffffff;background-color:#232628;border-color:rgba(0,0,0,0.6);cursor:default}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#7a8288;background-color:#ffffff;border-color:rgba(0,0,0,0.6);cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:14px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#3a3f44;border:1px solid rgba(0,0,0,0.6);border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:transparent}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#7a8288;background-color:#3a3f44;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#ffffff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:hover,a.label:focus{color:#ffffff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#3a3f44}.label-default[href]:hover,.label-default[href]:focus{background-color:#232628}.label-primary{background-color:#7a8288}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#62686d}.label-success{background-color:#62c462}.label-success[href]:hover,.label-success[href]:focus{background-color:#42b142}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f89406}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#c67605}.label-danger{background-color:#ee5f5b}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#e9322d}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;color:#ffffff;line-height:1;vertical-align:middle;white-space:nowrap;text-align:center;background-color:#7a8288;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge,.btn-group-xs>.btn .badge{top:0;padding:1px 5px}a.badge:hover,a.badge:focus{color:#ffffff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#ffffff;background-color:#7a8288}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#1c1e22}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#050506}.container .jumbotron,.container-fluid .jumbotron{border-radius:6px;padding-left:15px;padding-right:15px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-left:60px;padding-right:60px}.jumbotron h1,.jumbotron .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#1c1e22;border:1px solid #0c0d0e;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-left:auto;margin-right:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#ffffff}.thumbnail .caption{padding:9px;color:#c8c8c8}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#62c462;border-color:#62bd4f;color:#ffffff}.alert-success hr{border-top-color:#55b142}.alert-success .alert-link{color:#e6e6e6}.alert-info{background-color:#5bc0de;border-color:#3dced8;color:#ffffff}.alert-info hr{border-top-color:#2ac7d2}.alert-info .alert-link{color:#e6e6e6}.alert-warning{background-color:#f89406;border-color:#e96506;color:#ffffff}.alert-warning hr{border-top-color:#d05a05}.alert-warning .alert-link{color:#e6e6e6}.alert-danger{background-color:#ee5f5b;border-color:#ed4d63;color:#ffffff}.alert-danger hr{border-top-color:#ea364f}.alert-danger .alert-link{color:#e6e6e6}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#1c1e22;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#ffffff;text-align:center;background-color:#7a8288;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;-o-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar,.progress-bar-striped{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#62c462}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f89406}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#ee5f5b}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{zoom:1;overflow:hidden}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-left,.media-right,.media-body{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#32383e;border:1px solid rgba(0,0,0,0.6)}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#c8c8c8}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#ffffff}a.list-group-item:hover,button.list-group-item:hover,a.list-group-item:focus,button.list-group-item:focus{text-decoration:none;color:#c8c8c8;background-color:#3e444c}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{background-color:#999999;color:#7a8288;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#7a8288}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#ffffff;background-color:#3e444c;border-color:rgba(0,0,0,0.6)}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#a2aab4}.list-group-item-success{color:#ffffff;background-color:#62c462}a.list-group-item-success,button.list-group-item-success{color:#ffffff}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,button.list-group-item-success:hover,a.list-group-item-success:focus,button.list-group-item-success:focus{color:#ffffff;background-color:#4fbd4f}a.list-group-item-success.active,button.list-group-item-success.active,a.list-group-item-success.active:hover,button.list-group-item-success.active:hover,a.list-group-item-success.active:focus,button.list-group-item-success.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-info{color:#ffffff;background-color:#5bc0de}a.list-group-item-info,button.list-group-item-info{color:#ffffff}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,button.list-group-item-info:hover,a.list-group-item-info:focus,button.list-group-item-info:focus{color:#ffffff;background-color:#46b8da}a.list-group-item-info.active,button.list-group-item-info.active,a.list-group-item-info.active:hover,button.list-group-item-info.active:hover,a.list-group-item-info.active:focus,button.list-group-item-info.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-warning{color:#ffffff;background-color:#f89406}a.list-group-item-warning,button.list-group-item-warning{color:#ffffff}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,button.list-group-item-warning:hover,a.list-group-item-warning:focus,button.list-group-item-warning:focus{color:#ffffff;background-color:#df8505}a.list-group-item-warning.active,button.list-group-item-warning.active,a.list-group-item-warning.active:hover,button.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus,button.list-group-item-warning.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-danger{color:#ffffff;background-color:#ee5f5b}a.list-group-item-danger,button.list-group-item-danger{color:#ffffff}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,button.list-group-item-danger:hover,a.list-group-item-danger:focus,button.list-group-item-danger:focus{color:#ffffff;background-color:#ec4844}a.list-group-item-danger.active,button.list-group-item-danger.active,a.list-group-item-danger.active:hover,button.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus,button.list-group-item-danger.active:focus{color:#fff;background-color:#ffffff;border-color:#ffffff}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#2e3338;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a,.panel-title>small,.panel-title>.small,.panel-title>small>a,.panel-title>.small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#3e444c;border-top:1px solid rgba(0,0,0,0.6);border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table{margin-bottom:0}.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #1c1e22}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body,.panel-group .panel-heading+.panel-collapse>.list-group{border-top:1px solid rgba(0,0,0,0.6)}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid rgba(0,0,0,0.6)}.panel-default{border-color:rgba(0,0,0,0.6)}.panel-default>.panel-heading{color:#c8c8c8;background-color:#3e444c;border-color:rgba(0,0,0,0.6)}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:rgba(0,0,0,0.6)}.panel-default>.panel-heading .badge{color:#3e444c;background-color:#c8c8c8}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:rgba(0,0,0,0.6)}.panel-primary{border-color:rgba(0,0,0,0.6)}.panel-primary>.panel-heading{color:#ffffff;background-color:#7a8288;border-color:rgba(0,0,0,0.6)}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:rgba(0,0,0,0.6)}.panel-primary>.panel-heading .badge{color:#7a8288;background-color:#ffffff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:rgba(0,0,0,0.6)}.panel-success{border-color:rgba(0,0,0,0.6)}.panel-success>.panel-heading{color:#ffffff;background-color:#62c462;border-color:rgba(0,0,0,0.6)}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:rgba(0,0,0,0.6)}.panel-success>.panel-heading .badge{color:#62c462;background-color:#ffffff}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:rgba(0,0,0,0.6)}.panel-info{border-color:rgba(0,0,0,0.6)}.panel-info>.panel-heading{color:#ffffff;background-color:#5bc0de;border-color:rgba(0,0,0,0.6)}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:rgba(0,0,0,0.6)}.panel-info>.panel-heading .badge{color:#5bc0de;background-color:#ffffff}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:rgba(0,0,0,0.6)}.panel-warning{border-color:rgba(0,0,0,0.6)}.panel-warning>.panel-heading{color:#ffffff;background-color:#f89406;border-color:rgba(0,0,0,0.6)}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:rgba(0,0,0,0.6)}.panel-warning>.panel-heading .badge{color:#f89406;background-color:#ffffff}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:rgba(0,0,0,0.6)}.panel-danger{border-color:rgba(0,0,0,0.6)}.panel-danger>.panel-heading{color:#ffffff;background-color:#ee5f5b;border-color:rgba(0,0,0,0.6)}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:rgba(0,0,0,0.6)}.panel-danger>.panel-heading .badge{color:#ee5f5b;background-color:#ffffff}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:rgba(0,0,0,0.6)}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#1c1e22;border:1px solid #0c0d0e;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000000;text-shadow:0 1px 0 #ffffff;opacity:0.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000000;text-decoration:none;cursor:pointer;opacity:0.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0, -25%);-ms-transform:translate(0, -25%);-o-transform:translate(0, -25%);transform:translate(0, -25%);-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#2e3338;border:1px solid #999999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);-webkit-background-clip:padding-box;background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:0.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #1c1e22}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{padding:20px;text-align:right;border-top:1px solid #1c1e22}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:normal;letter-spacing:normal;line-break:auto;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:12px;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:0.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#ffffff;text-align:center;background-color:#000000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:normal;letter-spacing:normal;line-break:auto;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:14px;background-color:#2e3338;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#2e3338;border-bottom:1px solid #22262a;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#666666;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#2e3338}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#666666;border-right-color:rgba(0,0,0,0.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#2e3338}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#666666;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#2e3338}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#666666;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#2e3338;bottom:-10px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.next,.carousel-inner>.item.active.right{-webkit-transform:translate3d(100%, 0, 0);transform:translate3d(100%, 0, 0);left:0}.carousel-inner>.item.prev,.carousel-inner>.item.active.left{-webkit-transform:translate3d(-100%, 0, 0);transform:translate3d(-100%, 0, 0);left:0}.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right,.carousel-inner>.item.active{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);left:0}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:0.5;filter:alpha(opacity=50);font-size:20px;color:#ffffff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);background-color:rgba(0,0,0,0)}.carousel-control.left{background-image:-webkit-linear-gradient(left, rgba(0,0,0,0.5) 0, rgba(0,0,0,0.0001) 100%);background-image:-o-linear-gradient(left, rgba(0,0,0,0.5) 0, rgba(0,0,0,0.0001) 100%);background-image:-webkit-gradient(linear, left top, right top, from(rgba(0,0,0,0.5)), to(rgba(0,0,0,0.0001)));background-image:linear-gradient(to right, rgba(0,0,0,0.5) 0, rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left, rgba(0,0,0,0.0001) 0, rgba(0,0,0,0.5) 100%);background-image:-o-linear-gradient(left, rgba(0,0,0,0.0001) 0, rgba(0,0,0,0.5) 100%);background-image:-webkit-gradient(linear, left top, right top, from(rgba(0,0,0,0.0001)), to(rgba(0,0,0,0.5)));background-image:linear-gradient(to right, rgba(0,0,0,0.0001) 0, rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:hover,.carousel-control:focus{outline:0;color:#ffffff;text-decoration:none;opacity:0.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;margin-top:-10px;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%;margin-left:-10px}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%;margin-right:-10px}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;line-height:1;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #ffffff;border-radius:10px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0)}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#ffffff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#ffffff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.dl-horizontal dd:before,.dl-horizontal dd:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-header:before,.modal-header:after,.modal-footer:before,.modal-footer:after{content:" ";display:table}.clearfix:after,.dl-horizontal dd:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-header:after,.modal-footer:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none !important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none !important}@media (max-width:767px){.visible-xs{display:block !important}table.visible-xs{display:table !important}tr.visible-xs{display:table-row !important}th.visible-xs,td.visible-xs{display:table-cell !important}}@media (max-width:767px){.visible-xs-block{display:block !important}}@media (max-width:767px){.visible-xs-inline{display:inline !important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block !important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block !important}table.visible-sm{display:table !important}tr.visible-sm{display:table-row !important}th.visible-sm,td.visible-sm{display:table-cell !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline !important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block !important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block !important}table.visible-md{display:table !important}tr.visible-md{display:table-row !important}th.visible-md,td.visible-md{display:table-cell !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline !important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block !important}}@media (min-width:1200px){.visible-lg{display:block !important}table.visible-lg{display:table !important}tr.visible-lg{display:table-row !important}th.visible-lg,td.visible-lg{display:table-cell !important}}@media (min-width:1200px){.visible-lg-block{display:block !important}}@media (min-width:1200px){.visible-lg-inline{display:inline !important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block !important}}@media (max-width:767px){.hidden-xs{display:none !important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none !important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none !important}}@media (min-width:1200px){.hidden-lg{display:none !important}}.visible-print{display:none !important}@media print{.visible-print{display:block !important}table.visible-print{display:table !important}tr.visible-print{display:table-row !important}th.visible-print,td.visible-print{display:table-cell !important}}.visible-print-block{display:none !important}@media print{.visible-print-block{display:block !important}}.visible-print-inline{display:none !important}@media print{.visible-print-inline{display:inline !important}}.visible-print-inline-block{display:none !important}@media print{.visible-print-inline-block{display:inline-block !important}}@media print{.hidden-print{display:none !important}}.navbar-default,.navbar-inverse{border:1px solid rgba(0,0,0,0.6);text-shadow:1px 1px 1px rgba(0,0,0,0.3)}@media (min-width:768px){.navbar-default .navbar-nav>li>a,.navbar-inverse .navbar-nav>li>a{border-right:1px solid rgba(0,0,0,0.2);border-left:1px solid rgba(255,255,255,0.1)}.navbar-default .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:hover{border-left-color:transparent}.navbar-default .nav .open>a,.navbar-inverse .nav .open>a{border-color:transparent}.navbar-default .navbar-nav>li.active>a,.navbar-inverse .navbar-nav>li.active>a{border-left-color:transparent}.navbar-default .navbar-form,.navbar-inverse .navbar-form{margin-left:5px;margin-right:5px}}.navbar-default{background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none}.navbar-default .navbar-nav>li>a:hover{background-image:-webkit-linear-gradient(#020202, #101112 40%, #141618);background-image:-o-linear-gradient(#020202, #101112 40%, #141618);background-image:-webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));background-image:linear-gradient(#020202, #101112 40%, #141618);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);-webkit-filter:none;filter:none}.navbar-inverse{background-image:-webkit-linear-gradient(#8a9196, #7a8288 60%, #70787d);background-image:-o-linear-gradient(#8a9196, #7a8288 60%, #70787d);background-image:-webkit-gradient(linear, left top, left bottom, from(#8a9196), color-stop(60%, #7a8288), to(#70787d));background-image:linear-gradient(#8a9196, #7a8288 60%, #70787d);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff8a9196', endColorstr='#ff70787d', GradientType=0);-webkit-filter:none;filter:none}.navbar-inverse .badge{background-color:#5d6368}.navbar-inverse .navbar-nav>li>a:hover{background-image:-webkit-linear-gradient(#404448, #4e5458 40%, #53595d);background-image:-o-linear-gradient(#404448, #4e5458 40%, #53595d);background-image:-webkit-gradient(linear, left top, left bottom, from(#404448), color-stop(40%, #4e5458), to(#53595d));background-image:linear-gradient(#404448, #4e5458 40%, #53595d);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff404448', endColorstr='#ff53595d', GradientType=0);-webkit-filter:none;filter:none}.btn,.btn:hover{border-color:rgba(0,0,0,0.6);text-shadow:1px 1px 1px rgba(0,0,0,0.3)}.btn-default{background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none}.btn-default:hover{background-image:-webkit-linear-gradient(#020202, #101112 40%, #141618);background-image:-o-linear-gradient(#020202, #101112 40%, #141618);background-image:-webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));background-image:linear-gradient(#020202, #101112 40%, #141618);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);-webkit-filter:none;filter:none}.btn-primary{background-image:-webkit-linear-gradient(#8a9196, #7a8288 60%, #70787d);background-image:-o-linear-gradient(#8a9196, #7a8288 60%, #70787d);background-image:-webkit-gradient(linear, left top, left bottom, from(#8a9196), color-stop(60%, #7a8288), to(#70787d));background-image:linear-gradient(#8a9196, #7a8288 60%, #70787d);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff8a9196', endColorstr='#ff70787d', GradientType=0);-webkit-filter:none;filter:none}.btn-primary:hover{background-image:-webkit-linear-gradient(#404448, #4e5458 40%, #53595d);background-image:-o-linear-gradient(#404448, #4e5458 40%, #53595d);background-image:-webkit-gradient(linear, left top, left bottom, from(#404448), color-stop(40%, #4e5458), to(#53595d));background-image:linear-gradient(#404448, #4e5458 40%, #53595d);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff404448', endColorstr='#ff53595d', GradientType=0);-webkit-filter:none;filter:none}.btn-success{background-image:-webkit-linear-gradient(#78cc78, #62c462 60%, #53be53);background-image:-o-linear-gradient(#78cc78, #62c462 60%, #53be53);background-image:-webkit-gradient(linear, left top, left bottom, from(#78cc78), color-stop(60%, #62c462), to(#53be53));background-image:linear-gradient(#78cc78, #62c462 60%, #53be53);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff78cc78', endColorstr='#ff53be53', GradientType=0);-webkit-filter:none;filter:none}.btn-success:hover{background-image:-webkit-linear-gradient(#2f7d2f, #379337 40%, #3a9a3a);background-image:-o-linear-gradient(#2f7d2f, #379337 40%, #3a9a3a);background-image:-webkit-gradient(linear, left top, left bottom, from(#2f7d2f), color-stop(40%, #379337), to(#3a9a3a));background-image:linear-gradient(#2f7d2f, #379337 40%, #3a9a3a);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2f7d2f', endColorstr='#ff3a9a3a', GradientType=0);-webkit-filter:none;filter:none}.btn-info{background-image:-webkit-linear-gradient(#74cae3, #5bc0de 60%, #4ab9db);background-image:-o-linear-gradient(#74cae3, #5bc0de 60%, #4ab9db);background-image:-webkit-gradient(linear, left top, left bottom, from(#74cae3), color-stop(60%, #5bc0de), to(#4ab9db));background-image:linear-gradient(#74cae3, #5bc0de 60%, #4ab9db);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff74cae3', endColorstr='#ff4ab9db', GradientType=0);-webkit-filter:none;filter:none}.btn-info:hover{background-image:-webkit-linear-gradient(#20829f, #2596b8 40%, #279dc1);background-image:-o-linear-gradient(#20829f, #2596b8 40%, #279dc1);background-image:-webkit-gradient(linear, left top, left bottom, from(#20829f), color-stop(40%, #2596b8), to(#279dc1));background-image:linear-gradient(#20829f, #2596b8 40%, #279dc1);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff20829f', endColorstr='#ff279dc1', GradientType=0);-webkit-filter:none;filter:none}.btn-warning{background-image:-webkit-linear-gradient(#faa123, #f89406 60%, #e48806);background-image:-o-linear-gradient(#faa123, #f89406 60%, #e48806);background-image:-webkit-gradient(linear, left top, left bottom, from(#faa123), color-stop(60%, #f89406), to(#e48806));background-image:linear-gradient(#faa123, #f89406 60%, #e48806);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffaa123', endColorstr='#ffe48806', GradientType=0);-webkit-filter:none;filter:none}.btn-warning:hover{background-image:-webkit-linear-gradient(#804d03, #9e5f04 40%, #a86404);background-image:-o-linear-gradient(#804d03, #9e5f04 40%, #a86404);background-image:-webkit-gradient(linear, left top, left bottom, from(#804d03), color-stop(40%, #9e5f04), to(#a86404));background-image:linear-gradient(#804d03, #9e5f04 40%, #a86404);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff804d03', endColorstr='#ffa86404', GradientType=0);-webkit-filter:none;filter:none}.btn-danger{background-image:-webkit-linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49);background-image:-o-linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49);background-image:-webkit-gradient(linear, left top, left bottom, from(#f17a77), color-stop(60%, #ee5f5b), to(#ec4d49));background-image:linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff17a77', endColorstr='#ffec4d49', GradientType=0);-webkit-filter:none;filter:none}.btn-danger:hover{background-image:-webkit-linear-gradient(#bb1813, #d71c16 40%, #e01d17);background-image:-o-linear-gradient(#bb1813, #d71c16 40%, #e01d17);background-image:-webkit-gradient(linear, left top, left bottom, from(#bb1813), color-stop(40%, #d71c16), to(#e01d17));background-image:linear-gradient(#bb1813, #d71c16 40%, #e01d17);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffbb1813', endColorstr='#ffe01d17', GradientType=0);-webkit-filter:none;filter:none}.btn-link,.btn-link:hover{border-color:transparent}h1,h2,h3,h4,h5,h6{text-shadow:-1px -1px 0 rgba(0,0,0,0.3)}.text-primary,.text-primary:hover{color:#7a8288}.text-success,.text-success:hover{color:#62c462}.text-danger,.text-danger:hover{color:#ee5f5b}.text-warning,.text-warning:hover{color:#f89406}.text-info,.text-info:hover{color:#5bc0de}.table .success,.table .warning,.table .danger,.table .info{color:#fff}.table-bordered tbody tr.success td,.table-bordered tbody tr.warning td,.table-bordered tbody tr.danger td,.table-bordered tbody tr.success:hover td,.table-bordered tbody tr.warning:hover td,.table-bordered tbody tr.danger:hover td{border-color:#1c1e22}.table-responsive>.table{background-color:#2e3338}input,textarea{color:#272b30}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label,.has-warning .form-control-feedback{color:#f89406}.has-warning .form-control,.has-warning .form-control:focus{border-color:#f89406}.has-warning .input-group-addon{border-color:rgba(0,0,0,0.6)}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label,.has-error .form-control-feedback{color:#ee5f5b}.has-error .form-control,.has-error .form-control:focus{border-color:#ee5f5b}.has-error .input-group-addon{border-color:rgba(0,0,0,0.6)}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label,.has-success .form-control-feedback{color:#62c462}.has-success .form-control,.has-success .form-control:focus{border-color:#62c462}.has-success .input-group-addon{border-color:rgba(0,0,0,0.6)}legend{color:#fff}.input-group-addon{background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none;text-shadow:1px 1px 1px rgba(0,0,0,0.3);color:#ffffff}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{border-color:rgba(0,0,0,0.6)}.nav-pills>li>a{background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none;border:1px solid rgba(0,0,0,0.6);text-shadow:1px 1px 1px rgba(0,0,0,0.3)}.nav-pills>li>a:hover{background-image:-webkit-linear-gradient(#020202, #101112 40%, #141618);background-image:-o-linear-gradient(#020202, #101112 40%, #141618);background-image:-webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));background-image:linear-gradient(#020202, #101112 40%, #141618);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);-webkit-filter:none;filter:none;border:1px solid rgba(0,0,0,0.6)}.nav-pills>li.active>a,.nav-pills>li.active>a:hover{background-color:none;background-image:-webkit-linear-gradient(#020202, #101112 40%, #141618);background-image:-o-linear-gradient(#020202, #101112 40%, #141618);background-image:-webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));background-image:linear-gradient(#020202, #101112 40%, #141618);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);-webkit-filter:none;filter:none;border:1px solid rgba(0,0,0,0.6)}.nav-pills>li.disabled>a,.nav-pills>li.disabled>a:hover{background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none}.pagination>li>a,.pagination>li>span{text-shadow:1px 1px 1px rgba(0,0,0,0.3);background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none}.pagination>li>a:hover,.pagination>li>span:hover{background-image:-webkit-linear-gradient(#020202, #101112 40%, #141618);background-image:-o-linear-gradient(#020202, #101112 40%, #141618);background-image:-webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));background-image:linear-gradient(#020202, #101112 40%, #141618);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);-webkit-filter:none;filter:none}.pagination>li.active>a,.pagination>li.active>span{background-image:-webkit-linear-gradient(#020202, #101112 40%, #141618);background-image:-o-linear-gradient(#020202, #101112 40%, #141618);background-image:-webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));background-image:linear-gradient(#020202, #101112 40%, #141618);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);-webkit-filter:none;filter:none}.pagination>li.disabled>a,.pagination>li.disabled>a:hover,.pagination>li.disabled>span,.pagination>li.disabled>span:hover{background-color:transparent;background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none}.pager>li>a{background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none;text-shadow:1px 1px 1px rgba(0,0,0,0.3)}.pager>li>a:hover{background-image:-webkit-linear-gradient(#020202, #101112 40%, #141618);background-image:-o-linear-gradient(#020202, #101112 40%, #141618);background-image:-webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));background-image:linear-gradient(#020202, #101112 40%, #141618);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);-webkit-filter:none;filter:none}.pager>li.disabled>a,.pager>li.disabled>a:hover{background-color:transparent;background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none}.breadcrumb{border:1px solid rgba(0,0,0,0.6);text-shadow:1px 1px 1px rgba(0,0,0,0.3);background-image:-webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-o-linear-gradient(#484e55, #3a3f44 60%, #313539);background-image:-webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));background-image:linear-gradient(#484e55, #3a3f44 60%, #313539);background-repeat:no-repeat;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);-webkit-filter:none;filter:none}.alert .alert-link,.alert a{color:#fff;text-decoration:underline}.alert .close{color:#000000;text-decoration:none}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#0c0d0e}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{border-color:rgba(0,0,0,0.6)}a.list-group-item-success.active{background-color:#62c462}a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{background-color:#4fbd4f}a.list-group-item-warning.active{background-color:#f89406}a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{background-color:#df8505}a.list-group-item-danger.active{background-color:#ee5f5b}a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{background-color:#ec4844}.jumbotron{border:1px solid rgba(0,0,0,0.6)}.panel-primary .panel-heading,.panel-success .panel-heading,.panel-danger .panel-heading,.panel-warning .panel-heading,.panel-info .panel-heading{border-color:#000} \ No newline at end of file + *//*! 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 { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + 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"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + 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; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box +} + +input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none +} + +fieldset { + border: 1px solid #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 +} + +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, *:before, *:after { + background: transparent !important; + color: #000 !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + text-shadow: none !important + } + + a, a:visited { + text-decoration: underline + } + + a[href]:after { + content: " (" attr(href) ")" + } + + abbr[title]:after { + content: " (" attr(title) ")" + } + + a[href^="#"]:after, a[href^="javascript:"]:after { + content: "" + } + + pre, blockquote { + border: 1px solid #999; + page-break-inside: avoid + } + + thead { + display: table-header-group + } + + tr, img { + page-break-inside: avoid + } + + img { + max-width: 100% !important + } + + p, h2, h3 { + orphans: 3; + widows: 3 + } + + h2, h3 { + page-break-after: avoid + } + + .navbar { + display: none + } + + .btn > .caret, .dropup > .btn > .caret { + border-top-color: #000 !important + } + + .label { + border: 1px solid #000 + } + + .table { + border-collapse: collapse !important + } + + .table td, .table th { + background-color: #fff !important + } + + .table-bordered th, .table-bordered td { + border: 1px solid #ddd !important + } +} + +@font-face { + font-family: 'Glyphicons Halflings'; + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg') +} + +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale +} + +.glyphicon-asterisk:before { + content: "\002a" +} + +.glyphicon-plus:before { + content: "\002b" +} + +.glyphicon-euro:before, .glyphicon-eur:before { + content: "\20ac" +} + +.glyphicon-minus:before { + content: "\2212" +} + +.glyphicon-cloud:before { + content: "\2601" +} + +.glyphicon-envelope:before { + content: "\2709" +} + +.glyphicon-pencil:before { + content: "\270f" +} + +.glyphicon-glass:before { + content: "\e001" +} + +.glyphicon-music:before { + content: "\e002" +} + +.glyphicon-search:before { + content: "\e003" +} + +.glyphicon-heart:before { + content: "\e005" +} + +.glyphicon-star:before { + content: "\e006" +} + +.glyphicon-star-empty:before { + content: "\e007" +} + +.glyphicon-user:before { + content: "\e008" +} + +.glyphicon-film:before { + content: "\e009" +} + +.glyphicon-th-large:before { + content: "\e010" +} + +.glyphicon-th:before { + content: "\e011" +} + +.glyphicon-th-list:before { + content: "\e012" +} + +.glyphicon-ok:before { + content: "\e013" +} + +.glyphicon-remove:before { + content: "\e014" +} + +.glyphicon-zoom-in:before { + content: "\e015" +} + +.glyphicon-zoom-out:before { + content: "\e016" +} + +.glyphicon-off:before { + content: "\e017" +} + +.glyphicon-signal:before { + content: "\e018" +} + +.glyphicon-cog:before { + content: "\e019" +} + +.glyphicon-trash:before { + content: "\e020" +} + +.glyphicon-home:before { + content: "\e021" +} + +.glyphicon-file:before { + content: "\e022" +} + +.glyphicon-time:before { + content: "\e023" +} + +.glyphicon-road:before { + content: "\e024" +} + +.glyphicon-download-alt:before { + content: "\e025" +} + +.glyphicon-download:before { + content: "\e026" +} + +.glyphicon-upload:before { + content: "\e027" +} + +.glyphicon-inbox:before { + content: "\e028" +} + +.glyphicon-play-circle:before { + content: "\e029" +} + +.glyphicon-repeat:before { + content: "\e030" +} + +.glyphicon-refresh:before { + content: "\e031" +} + +.glyphicon-list-alt:before { + content: "\e032" +} + +.glyphicon-lock:before { + content: "\e033" +} + +.glyphicon-flag:before { + content: "\e034" +} + +.glyphicon-headphones:before { + content: "\e035" +} + +.glyphicon-volume-off:before { + content: "\e036" +} + +.glyphicon-volume-down:before { + content: "\e037" +} + +.glyphicon-volume-up:before { + content: "\e038" +} + +.glyphicon-qrcode:before { + content: "\e039" +} + +.glyphicon-barcode:before { + content: "\e040" +} + +.glyphicon-tag:before { + content: "\e041" +} + +.glyphicon-tags:before { + content: "\e042" +} + +.glyphicon-book:before { + content: "\e043" +} + +.glyphicon-bookmark:before { + content: "\e044" +} + +.glyphicon-print:before { + content: "\e045" +} + +.glyphicon-camera:before { + content: "\e046" +} + +.glyphicon-font:before { + content: "\e047" +} + +.glyphicon-bold:before { + content: "\e048" +} + +.glyphicon-italic:before { + content: "\e049" +} + +.glyphicon-text-height:before { + content: "\e050" +} + +.glyphicon-text-width:before { + content: "\e051" +} + +.glyphicon-align-left:before { + content: "\e052" +} + +.glyphicon-align-center:before { + content: "\e053" +} + +.glyphicon-align-right:before { + content: "\e054" +} + +.glyphicon-align-justify:before { + content: "\e055" +} + +.glyphicon-list:before { + content: "\e056" +} + +.glyphicon-indent-left:before { + content: "\e057" +} + +.glyphicon-indent-right:before { + content: "\e058" +} + +.glyphicon-facetime-video:before { + content: "\e059" +} + +.glyphicon-picture:before { + content: "\e060" +} + +.glyphicon-map-marker:before { + content: "\e062" +} + +.glyphicon-adjust:before { + content: "\e063" +} + +.glyphicon-tint:before { + content: "\e064" +} + +.glyphicon-edit:before { + content: "\e065" +} + +.glyphicon-share:before { + content: "\e066" +} + +.glyphicon-check:before { + content: "\e067" +} + +.glyphicon-move:before { + content: "\e068" +} + +.glyphicon-step-backward:before { + content: "\e069" +} + +.glyphicon-fast-backward:before { + content: "\e070" +} + +.glyphicon-backward:before { + content: "\e071" +} + +.glyphicon-play:before { + content: "\e072" +} + +.glyphicon-pause:before { + content: "\e073" +} + +.glyphicon-stop:before { + content: "\e074" +} + +.glyphicon-forward:before { + content: "\e075" +} + +.glyphicon-fast-forward:before { + content: "\e076" +} + +.glyphicon-step-forward:before { + content: "\e077" +} + +.glyphicon-eject:before { + content: "\e078" +} + +.glyphicon-chevron-left:before { + content: "\e079" +} + +.glyphicon-chevron-right:before { + content: "\e080" +} + +.glyphicon-plus-sign:before { + content: "\e081" +} + +.glyphicon-minus-sign:before { + content: "\e082" +} + +.glyphicon-remove-sign:before { + content: "\e083" +} + +.glyphicon-ok-sign:before { + content: "\e084" +} + +.glyphicon-question-sign:before { + content: "\e085" +} + +.glyphicon-info-sign:before { + content: "\e086" +} + +.glyphicon-screenshot:before { + content: "\e087" +} + +.glyphicon-remove-circle:before { + content: "\e088" +} + +.glyphicon-ok-circle:before { + content: "\e089" +} + +.glyphicon-ban-circle:before { + content: "\e090" +} + +.glyphicon-arrow-left:before { + content: "\e091" +} + +.glyphicon-arrow-right:before { + content: "\e092" +} + +.glyphicon-arrow-up:before { + content: "\e093" +} + +.glyphicon-arrow-down:before { + content: "\e094" +} + +.glyphicon-share-alt:before { + content: "\e095" +} + +.glyphicon-resize-full:before { + content: "\e096" +} + +.glyphicon-resize-small:before { + content: "\e097" +} + +.glyphicon-exclamation-sign:before { + content: "\e101" +} + +.glyphicon-gift:before { + content: "\e102" +} + +.glyphicon-leaf:before { + content: "\e103" +} + +.glyphicon-fire:before { + content: "\e104" +} + +.glyphicon-eye-open:before { + content: "\e105" +} + +.glyphicon-eye-close:before { + content: "\e106" +} + +.glyphicon-warning-sign:before { + content: "\e107" +} + +.glyphicon-plane:before { + content: "\e108" +} + +.glyphicon-calendar:before { + content: "\e109" +} + +.glyphicon-random:before { + content: "\e110" +} + +.glyphicon-comment:before { + content: "\e111" +} + +.glyphicon-magnet:before { + content: "\e112" +} + +.glyphicon-chevron-up:before { + content: "\e113" +} + +.glyphicon-chevron-down:before { + content: "\e114" +} + +.glyphicon-retweet:before { + content: "\e115" +} + +.glyphicon-shopping-cart:before { + content: "\e116" +} + +.glyphicon-folder-close:before { + content: "\e117" +} + +.glyphicon-folder-open:before { + content: "\e118" +} + +.glyphicon-resize-vertical:before { + content: "\e119" +} + +.glyphicon-resize-horizontal:before { + content: "\e120" +} + +.glyphicon-hdd:before { + content: "\e121" +} + +.glyphicon-bullhorn:before { + content: "\e122" +} + +.glyphicon-bell:before { + content: "\e123" +} + +.glyphicon-certificate:before { + content: "\e124" +} + +.glyphicon-thumbs-up:before { + content: "\e125" +} + +.glyphicon-thumbs-down:before { + content: "\e126" +} + +.glyphicon-hand-right:before { + content: "\e127" +} + +.glyphicon-hand-left:before { + content: "\e128" +} + +.glyphicon-hand-up:before { + content: "\e129" +} + +.glyphicon-hand-down:before { + content: "\e130" +} + +.glyphicon-circle-arrow-right:before { + content: "\e131" +} + +.glyphicon-circle-arrow-left:before { + content: "\e132" +} + +.glyphicon-circle-arrow-up:before { + content: "\e133" +} + +.glyphicon-circle-arrow-down:before { + content: "\e134" +} + +.glyphicon-globe:before { + content: "\e135" +} + +.glyphicon-wrench:before { + content: "\e136" +} + +.glyphicon-tasks:before { + content: "\e137" +} + +.glyphicon-filter:before { + content: "\e138" +} + +.glyphicon-briefcase:before { + content: "\e139" +} + +.glyphicon-fullscreen:before { + content: "\e140" +} + +.glyphicon-dashboard:before { + content: "\e141" +} + +.glyphicon-paperclip:before { + content: "\e142" +} + +.glyphicon-heart-empty:before { + content: "\e143" +} + +.glyphicon-link:before { + content: "\e144" +} + +.glyphicon-phone:before { + content: "\e145" +} + +.glyphicon-pushpin:before { + content: "\e146" +} + +.glyphicon-usd:before { + content: "\e148" +} + +.glyphicon-gbp:before { + content: "\e149" +} + +.glyphicon-sort:before { + content: "\e150" +} + +.glyphicon-sort-by-alphabet:before { + content: "\e151" +} + +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152" +} + +.glyphicon-sort-by-order:before { + content: "\e153" +} + +.glyphicon-sort-by-order-alt:before { + content: "\e154" +} + +.glyphicon-sort-by-attributes:before { + content: "\e155" +} + +.glyphicon-sort-by-attributes-alt:before { + content: "\e156" +} + +.glyphicon-unchecked:before { + content: "\e157" +} + +.glyphicon-expand:before { + content: "\e158" +} + +.glyphicon-collapse-down:before { + content: "\e159" +} + +.glyphicon-collapse-up:before { + content: "\e160" +} + +.glyphicon-log-in:before { + content: "\e161" +} + +.glyphicon-flash:before { + content: "\e162" +} + +.glyphicon-log-out:before { + content: "\e163" +} + +.glyphicon-new-window:before { + content: "\e164" +} + +.glyphicon-record:before { + content: "\e165" +} + +.glyphicon-save:before { + content: "\e166" +} + +.glyphicon-open:before { + content: "\e167" +} + +.glyphicon-saved:before { + content: "\e168" +} + +.glyphicon-import:before { + content: "\e169" +} + +.glyphicon-export:before { + content: "\e170" +} + +.glyphicon-send:before { + content: "\e171" +} + +.glyphicon-floppy-disk:before { + content: "\e172" +} + +.glyphicon-floppy-saved:before { + content: "\e173" +} + +.glyphicon-floppy-remove:before { + content: "\e174" +} + +.glyphicon-floppy-save:before { + content: "\e175" +} + +.glyphicon-floppy-open:before { + content: "\e176" +} + +.glyphicon-credit-card:before { + content: "\e177" +} + +.glyphicon-transfer:before { + content: "\e178" +} + +.glyphicon-cutlery:before { + content: "\e179" +} + +.glyphicon-header:before { + content: "\e180" +} + +.glyphicon-compressed:before { + content: "\e181" +} + +.glyphicon-earphone:before { + content: "\e182" +} + +.glyphicon-phone-alt:before { + content: "\e183" +} + +.glyphicon-tower:before { + content: "\e184" +} + +.glyphicon-stats:before { + content: "\e185" +} + +.glyphicon-sd-video:before { + content: "\e186" +} + +.glyphicon-hd-video:before { + content: "\e187" +} + +.glyphicon-subtitles:before { + content: "\e188" +} + +.glyphicon-sound-stereo:before { + content: "\e189" +} + +.glyphicon-sound-dolby:before { + content: "\e190" +} + +.glyphicon-sound-5-1:before { + content: "\e191" +} + +.glyphicon-sound-6-1:before { + content: "\e192" +} + +.glyphicon-sound-7-1:before { + content: "\e193" +} + +.glyphicon-copyright-mark:before { + content: "\e194" +} + +.glyphicon-registration-mark:before { + content: "\e195" +} + +.glyphicon-cloud-download:before { + content: "\e197" +} + +.glyphicon-cloud-upload:before { + content: "\e198" +} + +.glyphicon-tree-conifer:before { + content: "\e199" +} + +.glyphicon-tree-deciduous:before { + content: "\e200" +} + +.glyphicon-cd:before { + content: "\e201" +} + +.glyphicon-save-file:before { + content: "\e202" +} + +.glyphicon-open-file:before { + content: "\e203" +} + +.glyphicon-level-up:before { + content: "\e204" +} + +.glyphicon-copy:before { + content: "\e205" +} + +.glyphicon-paste:before { + content: "\e206" +} + +.glyphicon-alert:before { + content: "\e209" +} + +.glyphicon-equalizer:before { + content: "\e210" +} + +.glyphicon-king:before { + content: "\e211" +} + +.glyphicon-queen:before { + content: "\e212" +} + +.glyphicon-pawn:before { + content: "\e213" +} + +.glyphicon-bishop:before { + content: "\e214" +} + +.glyphicon-knight:before { + content: "\e215" +} + +.glyphicon-baby-formula:before { + content: "\e216" +} + +.glyphicon-tent:before { + content: "\26fa" +} + +.glyphicon-blackboard:before { + content: "\e218" +} + +.glyphicon-bed:before { + content: "\e219" +} + +.glyphicon-apple:before { + content: "\f8ff" +} + +.glyphicon-erase:before { + content: "\e221" +} + +.glyphicon-hourglass:before { + content: "\231b" +} + +.glyphicon-lamp:before { + content: "\e223" +} + +.glyphicon-duplicate:before { + content: "\e224" +} + +.glyphicon-piggy-bank:before { + content: "\e225" +} + +.glyphicon-scissors:before { + content: "\e226" +} + +.glyphicon-bitcoin:before { + content: "\e227" +} + +.glyphicon-btc:before { + content: "\e227" +} + +.glyphicon-xbt:before { + content: "\e227" +} + +.glyphicon-yen:before { + content: "\00a5" +} + +.glyphicon-jpy:before { + content: "\00a5" +} + +.glyphicon-ruble:before { + content: "\20bd" +} + +.glyphicon-rub:before { + content: "\20bd" +} + +.glyphicon-scale:before { + content: "\e230" +} + +.glyphicon-ice-lolly:before { + content: "\e231" +} + +.glyphicon-ice-lolly-tasted:before { + content: "\e232" +} + +.glyphicon-education:before { + content: "\e233" +} + +.glyphicon-option-horizontal:before { + content: "\e234" +} + +.glyphicon-option-vertical:before { + content: "\e235" +} + +.glyphicon-menu-hamburger:before { + content: "\e236" +} + +.glyphicon-modal-window:before { + content: "\e237" +} + +.glyphicon-oil:before { + content: "\e238" +} + +.glyphicon-grain:before { + content: "\e239" +} + +.glyphicon-sunglasses:before { + content: "\e240" +} + +.glyphicon-text-size:before { + content: "\e241" +} + +.glyphicon-text-color:before { + content: "\e242" +} + +.glyphicon-text-background:before { + content: "\e243" +} + +.glyphicon-object-align-top:before { + content: "\e244" +} + +.glyphicon-object-align-bottom:before { + content: "\e245" +} + +.glyphicon-object-align-horizontal:before { + content: "\e246" +} + +.glyphicon-object-align-left:before { + content: "\e247" +} + +.glyphicon-object-align-vertical:before { + content: "\e248" +} + +.glyphicon-object-align-right:before { + content: "\e249" +} + +.glyphicon-triangle-right:before { + content: "\e250" +} + +.glyphicon-triangle-left:before { + content: "\e251" +} + +.glyphicon-triangle-bottom:before { + content: "\e252" +} + +.glyphicon-triangle-top:before { + content: "\e253" +} + +.glyphicon-console:before { + content: "\e254" +} + +.glyphicon-superscript:before { + content: "\e255" +} + +.glyphicon-subscript:before { + content: "\e256" +} + +.glyphicon-menu-left:before { + content: "\e257" +} + +.glyphicon-menu-right:before { + content: "\e258" +} + +.glyphicon-menu-down:before { + content: "\e259" +} + +.glyphicon-menu-up:before { + content: "\e260" +} + +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box +} + +*:before, *:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box +} + +html { + font-size: 10px; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0) +} + +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #c8c8c8; + background-color: #272b30 +} + +input, button, select, textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit +} + +a { + color: #ffffff; + text-decoration: none +} + +a:hover, a:focus { + color: #ffffff; + text-decoration: underline +} + +a:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px +} + +figure { + margin: 0 +} + +img { + vertical-align: middle +} + +.img-responsive, .thumbnail > img, .thumbnail a > img, .carousel-inner > .item > img, .carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto +} + +.img-rounded { + border-radius: 6px +} + +.img-thumbnail { + padding: 4px; + line-height: 1.42857143; + background-color: #1c1e22; + border: 1px solid #0c0d0e; + border-radius: 4px; + -webkit-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; + display: inline-block; + max-width: 100%; + height: auto +} + +.img-circle { + border-radius: 50% +} + +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #1c1e22 +} + +.sr-only { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0 +} + +.sr-only-focusable:active, .sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto +} + +[role="button"] { + cursor: pointer +} + +h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-weight: 500; + line-height: 1.1; + color: inherit +} + +h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 .small, h2 .small, h3 .small, h4 .small, h5 .small, h6 .small, .h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small { + font-weight: normal; + line-height: 1; + color: #7a8288 +} + +h1, .h1, h2, .h2, h3, .h3 { + margin-top: 20px; + margin-bottom: 10px +} + +h1 small, .h1 small, h2 small, .h2 small, h3 small, .h3 small, h1 .small, .h1 .small, h2 .small, .h2 .small, h3 .small, .h3 .small { + font-size: 65% +} + +h4, .h4, h5, .h5, h6, .h6 { + margin-top: 10px; + margin-bottom: 10px +} + +h4 small, .h4 small, h5 small, .h5 small, h6 small, .h6 small, h4 .small, .h4 .small, h5 .small, .h5 .small, h6 .small, .h6 .small { + font-size: 75% +} + +h1, .h1 { + font-size: 36px +} + +h2, .h2 { + font-size: 30px +} + +h3, .h3 { + font-size: 24px +} + +h4, .h4 { + font-size: 18px +} + +h5, .h5 { + font-size: 14px +} + +h6, .h6 { + font-size: 12px +} + +p { + margin: 0 0 10px +} + +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4 +} + +@media (min-width: 768px) { + .lead { + font-size: 21px + } +} + +small, .small { + font-size: 85% +} + +mark, .mark { + background-color: #f89406; + padding: .2em +} + +.text-left { + text-align: left +} + +.text-right { + text-align: right +} + +.text-center { + text-align: center +} + +.text-justify { + text-align: justify +} + +.text-nowrap { + white-space: nowrap +} + +.text-lowercase { + text-transform: lowercase +} + +.text-uppercase { + text-transform: uppercase +} + +.text-capitalize { + text-transform: capitalize +} + +.text-muted { + color: #7a8288 +} + +.text-primary { + color: #7a8288 +} + +a.text-primary:hover, a.text-primary:focus { + color: #62686d +} + +.text-success { + color: #ffffff +} + +a.text-success:hover, a.text-success:focus { + color: #e6e6e6 +} + +.text-info { + color: #ffffff +} + +a.text-info:hover, a.text-info:focus { + color: #e6e6e6 +} + +.text-warning { + color: #ffffff +} + +a.text-warning:hover, a.text-warning:focus { + color: #e6e6e6 +} + +.text-danger { + color: #ffffff +} + +a.text-danger:hover, a.text-danger:focus { + color: #e6e6e6 +} + +.bg-primary { + color: #fff; + background-color: #7a8288 +} + +a.bg-primary:hover, a.bg-primary:focus { + background-color: #62686d +} + +.bg-success { + background-color: #62c462 +} + +a.bg-success:hover, a.bg-success:focus { + background-color: #42b142 +} + +.bg-info { + background-color: #5bc0de +} + +a.bg-info:hover, a.bg-info:focus { + background-color: #31b0d5 +} + +.bg-warning { + background-color: #f89406 +} + +a.bg-warning:hover, a.bg-warning:focus { + background-color: #c67605 +} + +.bg-danger { + background-color: #ee5f5b +} + +a.bg-danger:hover, a.bg-danger:focus { + background-color: #e9322d +} + +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #1c1e22 +} + +ul, ol { + margin-top: 0; + margin-bottom: 10px +} + +ul ul, ol ul, ul ol, ol ol { + margin-bottom: 0 +} + +.list-unstyled { + padding-left: 0; + list-style: none +} + +.list-inline { + padding-left: 0; + list-style: none; + margin-left: -5px +} + +.list-inline > li { + display: inline-block; + padding-left: 5px; + padding-right: 5px +} + +dl { + margin-top: 0; + margin-bottom: 20px +} + +dt, dd { + line-height: 1.42857143 +} + +dt { + font-weight: bold +} + +dd { + margin-left: 0 +} + +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + clear: left; + text-align: right; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap + } + + .dl-horizontal dd { + margin-left: 180px + } +} + +abbr[title], abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #7a8288 +} + +.initialism { + font-size: 90%; + text-transform: uppercase +} + +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #7a8288 +} + +blockquote p:last-child, blockquote ul:last-child, blockquote ol:last-child { + margin-bottom: 0 +} + +blockquote footer, blockquote small, blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #7a8288 +} + +blockquote footer:before, blockquote small:before, blockquote .small:before { + content: '\2014 \00A0' +} + +.blockquote-reverse, blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #7a8288; + border-left: 0; + text-align: right +} + +.blockquote-reverse footer:before, blockquote.pull-right footer:before, .blockquote-reverse small:before, blockquote.pull-right small:before, .blockquote-reverse .small:before, blockquote.pull-right .small:before { + content: '' +} + +.blockquote-reverse footer:after, blockquote.pull-right footer:after, .blockquote-reverse small:after, blockquote.pull-right small:after, .blockquote-reverse .small:after, blockquote.pull-right .small:after { + content: '\00A0 \2014' +} + +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143 +} + +code, kbd, pre, samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace +} + +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px +} + +kbd { + padding: 2px 4px; + font-size: 90%; + color: #ffffff; + background-color: #333333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25) +} + +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none +} + +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + word-break: break-all; + word-wrap: break-word; + color: #3a3f44; + background-color: #f5f5f5; + border: 1px solid #cccccc; + border-radius: 4px +} + +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0 +} + +.pre-scrollable { + max-height: 340px; + overflow-y: scroll +} + +.container { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px +} + +@media (min-width: 768px) { + .container { + width: 750px + } +} + +@media (min-width: 992px) { + .container { + width: 970px + } +} + +@media (min-width: 1200px) { + .container { + width: 1170px + } +} + +.container-fluid { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px +} + +.row { + margin-left: -15px; + margin-right: -15px +} + +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-left: 15px; + padding-right: 15px +} + +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left +} + +.col-xs-12 { + width: 100% +} + +.col-xs-11 { + width: 91.66666667% +} + +.col-xs-10 { + width: 83.33333333% +} + +.col-xs-9 { + width: 75% +} + +.col-xs-8 { + width: 66.66666667% +} + +.col-xs-7 { + width: 58.33333333% +} + +.col-xs-6 { + width: 50% +} + +.col-xs-5 { + width: 41.66666667% +} + +.col-xs-4 { + width: 33.33333333% +} + +.col-xs-3 { + width: 25% +} + +.col-xs-2 { + width: 16.66666667% +} + +.col-xs-1 { + width: 8.33333333% +} + +.col-xs-pull-12 { + right: 100% +} + +.col-xs-pull-11 { + right: 91.66666667% +} + +.col-xs-pull-10 { + right: 83.33333333% +} + +.col-xs-pull-9 { + right: 75% +} + +.col-xs-pull-8 { + right: 66.66666667% +} + +.col-xs-pull-7 { + right: 58.33333333% +} + +.col-xs-pull-6 { + right: 50% +} + +.col-xs-pull-5 { + right: 41.66666667% +} + +.col-xs-pull-4 { + right: 33.33333333% +} + +.col-xs-pull-3 { + right: 25% +} + +.col-xs-pull-2 { + right: 16.66666667% +} + +.col-xs-pull-1 { + right: 8.33333333% +} + +.col-xs-pull-0 { + right: auto +} + +.col-xs-push-12 { + left: 100% +} + +.col-xs-push-11 { + left: 91.66666667% +} + +.col-xs-push-10 { + left: 83.33333333% +} + +.col-xs-push-9 { + left: 75% +} + +.col-xs-push-8 { + left: 66.66666667% +} + +.col-xs-push-7 { + left: 58.33333333% +} + +.col-xs-push-6 { + left: 50% +} + +.col-xs-push-5 { + left: 41.66666667% +} + +.col-xs-push-4 { + left: 33.33333333% +} + +.col-xs-push-3 { + left: 25% +} + +.col-xs-push-2 { + left: 16.66666667% +} + +.col-xs-push-1 { + left: 8.33333333% +} + +.col-xs-push-0 { + left: auto +} + +.col-xs-offset-12 { + margin-left: 100% +} + +.col-xs-offset-11 { + margin-left: 91.66666667% +} + +.col-xs-offset-10 { + margin-left: 83.33333333% +} + +.col-xs-offset-9 { + margin-left: 75% +} + +.col-xs-offset-8 { + margin-left: 66.66666667% +} + +.col-xs-offset-7 { + margin-left: 58.33333333% +} + +.col-xs-offset-6 { + margin-left: 50% +} + +.col-xs-offset-5 { + margin-left: 41.66666667% +} + +.col-xs-offset-4 { + margin-left: 33.33333333% +} + +.col-xs-offset-3 { + margin-left: 25% +} + +.col-xs-offset-2 { + margin-left: 16.66666667% +} + +.col-xs-offset-1 { + margin-left: 8.33333333% +} + +.col-xs-offset-0 { + margin-left: 0% +} + +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left + } + + .col-sm-12 { + width: 100% + } + + .col-sm-11 { + width: 91.66666667% + } + + .col-sm-10 { + width: 83.33333333% + } + + .col-sm-9 { + width: 75% + } + + .col-sm-8 { + width: 66.66666667% + } + + .col-sm-7 { + width: 58.33333333% + } + + .col-sm-6 { + width: 50% + } + + .col-sm-5 { + width: 41.66666667% + } + + .col-sm-4 { + width: 33.33333333% + } + + .col-sm-3 { + width: 25% + } + + .col-sm-2 { + width: 16.66666667% + } + + .col-sm-1 { + width: 8.33333333% + } + + .col-sm-pull-12 { + right: 100% + } + + .col-sm-pull-11 { + right: 91.66666667% + } + + .col-sm-pull-10 { + right: 83.33333333% + } + + .col-sm-pull-9 { + right: 75% + } + + .col-sm-pull-8 { + right: 66.66666667% + } + + .col-sm-pull-7 { + right: 58.33333333% + } + + .col-sm-pull-6 { + right: 50% + } + + .col-sm-pull-5 { + right: 41.66666667% + } + + .col-sm-pull-4 { + right: 33.33333333% + } + + .col-sm-pull-3 { + right: 25% + } + + .col-sm-pull-2 { + right: 16.66666667% + } + + .col-sm-pull-1 { + right: 8.33333333% + } + + .col-sm-pull-0 { + right: auto + } + + .col-sm-push-12 { + left: 100% + } + + .col-sm-push-11 { + left: 91.66666667% + } + + .col-sm-push-10 { + left: 83.33333333% + } + + .col-sm-push-9 { + left: 75% + } + + .col-sm-push-8 { + left: 66.66666667% + } + + .col-sm-push-7 { + left: 58.33333333% + } + + .col-sm-push-6 { + left: 50% + } + + .col-sm-push-5 { + left: 41.66666667% + } + + .col-sm-push-4 { + left: 33.33333333% + } + + .col-sm-push-3 { + left: 25% + } + + .col-sm-push-2 { + left: 16.66666667% + } + + .col-sm-push-1 { + left: 8.33333333% + } + + .col-sm-push-0 { + left: auto + } + + .col-sm-offset-12 { + margin-left: 100% + } + + .col-sm-offset-11 { + margin-left: 91.66666667% + } + + .col-sm-offset-10 { + margin-left: 83.33333333% + } + + .col-sm-offset-9 { + margin-left: 75% + } + + .col-sm-offset-8 { + margin-left: 66.66666667% + } + + .col-sm-offset-7 { + margin-left: 58.33333333% + } + + .col-sm-offset-6 { + margin-left: 50% + } + + .col-sm-offset-5 { + margin-left: 41.66666667% + } + + .col-sm-offset-4 { + margin-left: 33.33333333% + } + + .col-sm-offset-3 { + margin-left: 25% + } + + .col-sm-offset-2 { + margin-left: 16.66666667% + } + + .col-sm-offset-1 { + margin-left: 8.33333333% + } + + .col-sm-offset-0 { + margin-left: 0% + } +} + +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left + } + + .col-md-12 { + width: 100% + } + + .col-md-11 { + width: 91.66666667% + } + + .col-md-10 { + width: 83.33333333% + } + + .col-md-9 { + width: 75% + } + + .col-md-8 { + width: 66.66666667% + } + + .col-md-7 { + width: 58.33333333% + } + + .col-md-6 { + width: 50% + } + + .col-md-5 { + width: 41.66666667% + } + + .col-md-4 { + width: 33.33333333% + } + + .col-md-3 { + width: 25% + } + + .col-md-2 { + width: 16.66666667% + } + + .col-md-1 { + width: 8.33333333% + } + + .col-md-pull-12 { + right: 100% + } + + .col-md-pull-11 { + right: 91.66666667% + } + + .col-md-pull-10 { + right: 83.33333333% + } + + .col-md-pull-9 { + right: 75% + } + + .col-md-pull-8 { + right: 66.66666667% + } + + .col-md-pull-7 { + right: 58.33333333% + } + + .col-md-pull-6 { + right: 50% + } + + .col-md-pull-5 { + right: 41.66666667% + } + + .col-md-pull-4 { + right: 33.33333333% + } + + .col-md-pull-3 { + right: 25% + } + + .col-md-pull-2 { + right: 16.66666667% + } + + .col-md-pull-1 { + right: 8.33333333% + } + + .col-md-pull-0 { + right: auto + } + + .col-md-push-12 { + left: 100% + } + + .col-md-push-11 { + left: 91.66666667% + } + + .col-md-push-10 { + left: 83.33333333% + } + + .col-md-push-9 { + left: 75% + } + + .col-md-push-8 { + left: 66.66666667% + } + + .col-md-push-7 { + left: 58.33333333% + } + + .col-md-push-6 { + left: 50% + } + + .col-md-push-5 { + left: 41.66666667% + } + + .col-md-push-4 { + left: 33.33333333% + } + + .col-md-push-3 { + left: 25% + } + + .col-md-push-2 { + left: 16.66666667% + } + + .col-md-push-1 { + left: 8.33333333% + } + + .col-md-push-0 { + left: auto + } + + .col-md-offset-12 { + margin-left: 100% + } + + .col-md-offset-11 { + margin-left: 91.66666667% + } + + .col-md-offset-10 { + margin-left: 83.33333333% + } + + .col-md-offset-9 { + margin-left: 75% + } + + .col-md-offset-8 { + margin-left: 66.66666667% + } + + .col-md-offset-7 { + margin-left: 58.33333333% + } + + .col-md-offset-6 { + margin-left: 50% + } + + .col-md-offset-5 { + margin-left: 41.66666667% + } + + .col-md-offset-4 { + margin-left: 33.33333333% + } + + .col-md-offset-3 { + margin-left: 25% + } + + .col-md-offset-2 { + margin-left: 16.66666667% + } + + .col-md-offset-1 { + margin-left: 8.33333333% + } + + .col-md-offset-0 { + margin-left: 0% + } +} + +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left + } + + .col-lg-12 { + width: 100% + } + + .col-lg-11 { + width: 91.66666667% + } + + .col-lg-10 { + width: 83.33333333% + } + + .col-lg-9 { + width: 75% + } + + .col-lg-8 { + width: 66.66666667% + } + + .col-lg-7 { + width: 58.33333333% + } + + .col-lg-6 { + width: 50% + } + + .col-lg-5 { + width: 41.66666667% + } + + .col-lg-4 { + width: 33.33333333% + } + + .col-lg-3 { + width: 25% + } + + .col-lg-2 { + width: 16.66666667% + } + + .col-lg-1 { + width: 8.33333333% + } + + .col-lg-pull-12 { + right: 100% + } + + .col-lg-pull-11 { + right: 91.66666667% + } + + .col-lg-pull-10 { + right: 83.33333333% + } + + .col-lg-pull-9 { + right: 75% + } + + .col-lg-pull-8 { + right: 66.66666667% + } + + .col-lg-pull-7 { + right: 58.33333333% + } + + .col-lg-pull-6 { + right: 50% + } + + .col-lg-pull-5 { + right: 41.66666667% + } + + .col-lg-pull-4 { + right: 33.33333333% + } + + .col-lg-pull-3 { + right: 25% + } + + .col-lg-pull-2 { + right: 16.66666667% + } + + .col-lg-pull-1 { + right: 8.33333333% + } + + .col-lg-pull-0 { + right: auto + } + + .col-lg-push-12 { + left: 100% + } + + .col-lg-push-11 { + left: 91.66666667% + } + + .col-lg-push-10 { + left: 83.33333333% + } + + .col-lg-push-9 { + left: 75% + } + + .col-lg-push-8 { + left: 66.66666667% + } + + .col-lg-push-7 { + left: 58.33333333% + } + + .col-lg-push-6 { + left: 50% + } + + .col-lg-push-5 { + left: 41.66666667% + } + + .col-lg-push-4 { + left: 33.33333333% + } + + .col-lg-push-3 { + left: 25% + } + + .col-lg-push-2 { + left: 16.66666667% + } + + .col-lg-push-1 { + left: 8.33333333% + } + + .col-lg-push-0 { + left: auto + } + + .col-lg-offset-12 { + margin-left: 100% + } + + .col-lg-offset-11 { + margin-left: 91.66666667% + } + + .col-lg-offset-10 { + margin-left: 83.33333333% + } + + .col-lg-offset-9 { + margin-left: 75% + } + + .col-lg-offset-8 { + margin-left: 66.66666667% + } + + .col-lg-offset-7 { + margin-left: 58.33333333% + } + + .col-lg-offset-6 { + margin-left: 50% + } + + .col-lg-offset-5 { + margin-left: 41.66666667% + } + + .col-lg-offset-4 { + margin-left: 33.33333333% + } + + .col-lg-offset-3 { + margin-left: 25% + } + + .col-lg-offset-2 { + margin-left: 16.66666667% + } + + .col-lg-offset-1 { + margin-left: 8.33333333% + } + + .col-lg-offset-0 { + margin-left: 0% + } +} + +table { + background-color: #2e3338 +} + +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #7a8288; + text-align: left +} + +th { + text-align: left +} + +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px +} + +.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #1c1e22 +} + +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #1c1e22 +} + +.table > caption + thead > tr:first-child > th, .table > colgroup + thead > tr:first-child > th, .table > thead:first-child > tr:first-child > th, .table > caption + thead > tr:first-child > td, .table > colgroup + thead > tr:first-child > td, .table > thead:first-child > tr:first-child > td { + border-top: 0 +} + +.table > tbody + tbody { + border-top: 2px solid #1c1e22 +} + +.table .table { + background-color: #272b30 +} + +.table-condensed > thead > tr > th, .table-condensed > tbody > tr > th, .table-condensed > tfoot > tr > th, .table-condensed > thead > tr > td, .table-condensed > tbody > tr > td, .table-condensed > tfoot > tr > td { + padding: 5px +} + +.table-bordered { + border: 1px solid #1c1e22 +} + +.table-bordered > thead > tr > th, .table-bordered > tbody > tr > th, .table-bordered > tfoot > tr > th, .table-bordered > thead > tr > td, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > td { + border: 1px solid #1c1e22 +} + +.table-bordered > thead > tr > th, .table-bordered > thead > tr > td { + border-bottom-width: 2px +} + +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #353a41 +} + +.table-hover > tbody > tr:hover { + background-color: #49515a +} + +table col[class*="col-"] { + position: static; + float: none; + display: table-column +} + +table td[class*="col-"], table th[class*="col-"] { + position: static; + float: none; + display: table-cell +} + +.table > thead > tr > td.active, .table > tbody > tr > td.active, .table > tfoot > tr > td.active, .table > thead > tr > th.active, .table > tbody > tr > th.active, .table > tfoot > tr > th.active, .table > thead > tr.active > td, .table > tbody > tr.active > td, .table > tfoot > tr.active > td, .table > thead > tr.active > th, .table > tbody > tr.active > th, .table > tfoot > tr.active > th { + background-color: #49515a +} + +.table-hover > tbody > tr > td.active:hover, .table-hover > tbody > tr > th.active:hover, .table-hover > tbody > tr.active:hover > td, .table-hover > tbody > tr:hover > .active, .table-hover > tbody > tr.active:hover > th { + background-color: #3e444c +} + +.table > thead > tr > td.success, .table > tbody > tr > td.success, .table > tfoot > tr > td.success, .table > thead > tr > th.success, .table > tbody > tr > th.success, .table > tfoot > tr > th.success, .table > thead > tr.success > td, .table > tbody > tr.success > td, .table > tfoot > tr.success > td, .table > thead > tr.success > th, .table > tbody > tr.success > th, .table > tfoot > tr.success > th { + background-color: #62c462 +} + +.table-hover > tbody > tr > td.success:hover, .table-hover > tbody > tr > th.success:hover, .table-hover > tbody > tr.success:hover > td, .table-hover > tbody > tr:hover > .success, .table-hover > tbody > tr.success:hover > th { + background-color: #4fbd4f +} + +.table > thead > tr > td.info, .table > tbody > tr > td.info, .table > tfoot > tr > td.info, .table > thead > tr > th.info, .table > tbody > tr > th.info, .table > tfoot > tr > th.info, .table > thead > tr.info > td, .table > tbody > tr.info > td, .table > tfoot > tr.info > td, .table > thead > tr.info > th, .table > tbody > tr.info > th, .table > tfoot > tr.info > th { + background-color: #5bc0de +} + +.table-hover > tbody > tr > td.info:hover, .table-hover > tbody > tr > th.info:hover, .table-hover > tbody > tr.info:hover > td, .table-hover > tbody > tr:hover > .info, .table-hover > tbody > tr.info:hover > th { + background-color: #46b8da +} + +.table > thead > tr > td.warning, .table > tbody > tr > td.warning, .table > tfoot > tr > td.warning, .table > thead > tr > th.warning, .table > tbody > tr > th.warning, .table > tfoot > tr > th.warning, .table > thead > tr.warning > td, .table > tbody > tr.warning > td, .table > tfoot > tr.warning > td, .table > thead > tr.warning > th, .table > tbody > tr.warning > th, .table > tfoot > tr.warning > th { + background-color: #f89406 +} + +.table-hover > tbody > tr > td.warning:hover, .table-hover > tbody > tr > th.warning:hover, .table-hover > tbody > tr.warning:hover > td, .table-hover > tbody > tr:hover > .warning, .table-hover > tbody > tr.warning:hover > th { + background-color: #df8505 +} + +.table > thead > tr > td.danger, .table > tbody > tr > td.danger, .table > tfoot > tr > td.danger, .table > thead > tr > th.danger, .table > tbody > tr > th.danger, .table > tfoot > tr > th.danger, .table > thead > tr.danger > td, .table > tbody > tr.danger > td, .table > tfoot > tr.danger > td, .table > thead > tr.danger > th, .table > tbody > tr.danger > th, .table > tfoot > tr.danger > th { + background-color: #ee5f5b +} + +.table-hover > tbody > tr > td.danger:hover, .table-hover > tbody > tr > th.danger:hover, .table-hover > tbody > tr.danger:hover > td, .table-hover > tbody > tr:hover > .danger, .table-hover > tbody > tr.danger:hover > th { + background-color: #ec4844 +} + +.table-responsive { + overflow-x: auto; + min-height: 0.01% +} + +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #1c1e22 + } + + .table-responsive > .table { + margin-bottom: 0 + } + + .table-responsive > .table > thead > tr > th, .table-responsive > .table > tbody > tr > th, .table-responsive > .table > tfoot > tr > th, .table-responsive > .table > thead > tr > td, .table-responsive > .table > tbody > tr > td, .table-responsive > .table > tfoot > tr > td { + white-space: nowrap + } + + .table-responsive > .table-bordered { + border: 0 + } + + .table-responsive > .table-bordered > thead > tr > th:first-child, .table-responsive > .table-bordered > tbody > tr > th:first-child, .table-responsive > .table-bordered > tfoot > tr > th:first-child, .table-responsive > .table-bordered > thead > tr > td:first-child, .table-responsive > .table-bordered > tbody > tr > td:first-child, .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0 + } + + .table-responsive > .table-bordered > thead > tr > th:last-child, .table-responsive > .table-bordered > tbody > tr > th:last-child, .table-responsive > .table-bordered > tfoot > tr > th:last-child, .table-responsive > .table-bordered > thead > tr > td:last-child, .table-responsive > .table-bordered > tbody > tr > td:last-child, .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0 + } + + .table-responsive > .table-bordered > tbody > tr:last-child > th, .table-responsive > .table-bordered > tfoot > tr:last-child > th, .table-responsive > .table-bordered > tbody > tr:last-child > td, .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0 + } +} + +fieldset { + padding: 0; + margin: 0; + border: 0; + min-width: 0 +} + +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #c8c8c8; + border: 0; + border-bottom: 1px solid #1c1e22 +} + +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold +} + +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box +} + +input[type="radio"], input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal +} + +input[type="file"] { + display: block +} + +input[type="range"] { + display: block; + width: 100% +} + +select[multiple], select[size] { + height: auto +} + +input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px +} + +output { + display: block; + padding-top: 9px; + font-size: 14px; + line-height: 1.42857143; + color: #272b30 +} + +.form-control { + display: block; + width: 100%; + height: 38px; + padding: 8px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #272b30; + background-color: #ffffff; + background-image: none; + border: 1px solid #000000; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s +} + +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6) +} + +.form-control::-moz-placeholder { + color: #7a8288; + opacity: 1 +} + +.form-control:-ms-input-placeholder { + color: #7a8288 +} + +.form-control::-webkit-input-placeholder { + color: #7a8288 +} + +.form-control::-ms-expand { + border: 0; + background-color: transparent +} + +.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control { + background-color: #999999; + opacity: 1 +} + +.form-control[disabled], fieldset[disabled] .form-control { + cursor: not-allowed +} + +textarea.form-control { + height: auto +} + +input[type="search"] { + -webkit-appearance: none +} + +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, input[type="time"].form-control, input[type="datetime-local"].form-control, input[type="month"].form-control { + line-height: 38px + } + + input[type="date"].input-sm, input[type="time"].input-sm, input[type="datetime-local"].input-sm, input[type="month"].input-sm, .input-group-sm input[type="date"], .input-group-sm input[type="time"], .input-group-sm input[type="datetime-local"], .input-group-sm input[type="month"] { + line-height: 30px + } + + input[type="date"].input-lg, input[type="time"].input-lg, input[type="datetime-local"].input-lg, input[type="month"].input-lg, .input-group-lg input[type="date"], .input-group-lg input[type="time"], .input-group-lg input[type="datetime-local"], .input-group-lg input[type="month"] { + line-height: 54px + } +} + +.form-group { + margin-bottom: 15px +} + +.radio, .checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px +} + +.radio label, .checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer +} + +.radio input[type="radio"], .radio-inline input[type="radio"], .checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"] { + position: absolute; + margin-left: -20px; + margin-top: 4px \9 +} + +.radio + .radio, .checkbox + .checkbox { + margin-top: -5px +} + +.radio-inline, .checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + vertical-align: middle; + font-weight: normal; + cursor: pointer +} + +.radio-inline + .radio-inline, .checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px +} + +input[type="radio"][disabled], input[type="checkbox"][disabled], input[type="radio"].disabled, input[type="checkbox"].disabled, fieldset[disabled] input[type="radio"], fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed +} + +.radio-inline.disabled, .checkbox-inline.disabled, fieldset[disabled] .radio-inline, fieldset[disabled] .checkbox-inline { + cursor: not-allowed +} + +.radio.disabled label, .checkbox.disabled label, fieldset[disabled] .radio label, fieldset[disabled] .checkbox label { + cursor: not-allowed +} + +.form-control-static { + padding-top: 9px; + padding-bottom: 9px; + margin-bottom: 0; + min-height: 34px +} + +.form-control-static.input-lg, .form-control-static.input-sm { + padding-left: 0; + padding-right: 0 +} + +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px +} + +select.input-sm { + height: 30px; + line-height: 30px +} + +textarea.input-sm, select[multiple].input-sm { + height: auto +} + +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px +} + +.form-group-sm select.form-control { + height: 30px; + line-height: 30px +} + +.form-group-sm textarea.form-control, .form-group-sm select[multiple].form-control { + height: auto +} + +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5 +} + +.input-lg { + height: 54px; + padding: 14px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px +} + +select.input-lg { + height: 54px; + line-height: 54px +} + +textarea.input-lg, select[multiple].input-lg { + height: auto +} + +.form-group-lg .form-control { + height: 54px; + padding: 14px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px +} + +.form-group-lg select.form-control { + height: 54px; + line-height: 54px +} + +.form-group-lg textarea.form-control, .form-group-lg select[multiple].form-control { + height: auto +} + +.form-group-lg .form-control-static { + height: 54px; + min-height: 38px; + padding: 15px 16px; + font-size: 18px; + line-height: 1.3333333 +} + +.has-feedback { + position: relative +} + +.has-feedback .form-control { + padding-right: 47.5px +} + +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 38px; + height: 38px; + line-height: 38px; + text-align: center; + pointer-events: none +} + +.input-lg + .form-control-feedback, .input-group-lg + .form-control-feedback, .form-group-lg .form-control + .form-control-feedback { + width: 54px; + height: 54px; + line-height: 54px +} + +.input-sm + .form-control-feedback, .input-group-sm + .form-control-feedback, .form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px +} + +.has-success .help-block, .has-success .control-label, .has-success .radio, .has-success .checkbox, .has-success .radio-inline, .has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label { + color: #ffffff +} + +.has-success .form-control { + border-color: #ffffff; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) +} + +.has-success .form-control:focus { + border-color: #e6e6e6; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff +} + +.has-success .input-group-addon { + color: #ffffff; + border-color: #ffffff; + background-color: #62c462 +} + +.has-success .form-control-feedback { + color: #ffffff +} + +.has-warning .help-block, .has-warning .control-label, .has-warning .radio, .has-warning .checkbox, .has-warning .radio-inline, .has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label { + color: #ffffff +} + +.has-warning .form-control { + border-color: #ffffff; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) +} + +.has-warning .form-control:focus { + border-color: #e6e6e6; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff +} + +.has-warning .input-group-addon { + color: #ffffff; + border-color: #ffffff; + background-color: #f89406 +} + +.has-warning .form-control-feedback { + color: #ffffff +} + +.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label { + color: #ffffff +} + +.has-error .form-control { + border-color: #ffffff; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075) +} + +.has-error .form-control:focus { + border-color: #e6e6e6; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff +} + +.has-error .input-group-addon { + color: #ffffff; + border-color: #ffffff; + background-color: #ee5f5b +} + +.has-error .form-control-feedback { + color: #ffffff +} + +.has-feedback label ~ .form-control-feedback { + top: 25px +} + +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0 +} + +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #ffffff +} + +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle + } + + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle + } + + .form-inline .form-control-static { + display: inline-block + } + + .form-inline .input-group { + display: inline-table; + vertical-align: middle + } + + .form-inline .input-group .input-group-addon, .form-inline .input-group .input-group-btn, .form-inline .input-group .form-control { + width: auto + } + + .form-inline .input-group > .form-control { + width: 100% + } + + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle + } + + .form-inline .radio, .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle + } + + .form-inline .radio label, .form-inline .checkbox label { + padding-left: 0 + } + + .form-inline .radio input[type="radio"], .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0 + } + + .form-inline .has-feedback .form-control-feedback { + top: 0 + } +} + +.form-horizontal .radio, .form-horizontal .checkbox, .form-horizontal .radio-inline, .form-horizontal .checkbox-inline { + margin-top: 0; + margin-bottom: 0; + padding-top: 9px +} + +.form-horizontal .radio, .form-horizontal .checkbox { + min-height: 29px +} + +.form-horizontal .form-group { + margin-left: -15px; + margin-right: -15px +} + +@media (min-width: 768px) { + .form-horizontal .control-label { + text-align: right; + margin-bottom: 0; + padding-top: 9px + } +} + +.form-horizontal .has-feedback .form-control-feedback { + right: 15px +} + +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 15px; + font-size: 18px + } +} + +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px + } +} + +.btn { + display: inline-block; + margin-bottom: 0; + font-weight: normal; + text-align: center; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 8px 12px; + font-size: 14px; + line-height: 1.42857143; + border-radius: 4px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none +} + +.btn:focus, .btn:active:focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn.active.focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px +} + +.btn:hover, .btn:focus, .btn.focus { + color: #ffffff; + text-decoration: none +} + +.btn:active, .btn.active { + outline: 0; + background-image: none; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) +} + +.btn.disabled, .btn[disabled], fieldset[disabled] .btn { + cursor: not-allowed; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none +} + +a.btn.disabled, fieldset[disabled] a.btn { + pointer-events: none +} + +.btn-default { + color: #ffffff; + background-color: #3a3f44; + border-color: #3a3f44 +} + +.btn-default:focus, .btn-default.focus { + color: #ffffff; + background-color: #232628; + border-color: #000000 +} + +.btn-default:hover { + color: #ffffff; + background-color: #232628; + border-color: #1e2023 +} + +.btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default { + color: #ffffff; + background-color: #232628; + border-color: #1e2023 +} + +.btn-default:active:hover, .btn-default.active:hover, .open > .dropdown-toggle.btn-default:hover, .btn-default:active:focus, .btn-default.active:focus, .open > .dropdown-toggle.btn-default:focus, .btn-default:active.focus, .btn-default.active.focus, .open > .dropdown-toggle.btn-default.focus { + color: #ffffff; + background-color: #121415; + border-color: #000000 +} + +.btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default { + background-image: none +} + +.btn-default.disabled:hover, .btn-default[disabled]:hover, fieldset[disabled] .btn-default:hover, .btn-default.disabled:focus, .btn-default[disabled]:focus, fieldset[disabled] .btn-default:focus, .btn-default.disabled.focus, .btn-default[disabled].focus, fieldset[disabled] .btn-default.focus { + background-color: #3a3f44; + border-color: #3a3f44 +} + +.btn-default .badge { + color: #3a3f44; + background-color: #ffffff +} + +.btn-primary { + color: #ffffff; + background-color: #7a8288; + border-color: #7a8288 +} + +.btn-primary:focus, .btn-primary.focus { + color: #ffffff; + background-color: #62686d; + border-color: #3e4245 +} + +.btn-primary:hover { + color: #ffffff; + background-color: #62686d; + border-color: #5d6368 +} + +.btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary { + color: #ffffff; + background-color: #62686d; + border-color: #5d6368 +} + +.btn-primary:active:hover, .btn-primary.active:hover, .open > .dropdown-toggle.btn-primary:hover, .btn-primary:active:focus, .btn-primary.active:focus, .open > .dropdown-toggle.btn-primary:focus, .btn-primary:active.focus, .btn-primary.active.focus, .open > .dropdown-toggle.btn-primary.focus { + color: #ffffff; + background-color: #51565a; + border-color: #3e4245 +} + +.btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary { + background-image: none +} + +.btn-primary.disabled:hover, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary:hover, .btn-primary.disabled:focus, .btn-primary[disabled]:focus, fieldset[disabled] .btn-primary:focus, .btn-primary.disabled.focus, .btn-primary[disabled].focus, fieldset[disabled] .btn-primary.focus { + background-color: #7a8288; + border-color: #7a8288 +} + +.btn-primary .badge { + color: #7a8288; + background-color: #ffffff +} + +.btn-success { + color: #ffffff; + background-color: #62c462; + border-color: #62c462 +} + +.btn-success:focus, .btn-success.focus { + color: #ffffff; + background-color: #42b142; + border-color: #2d792d +} + +.btn-success:hover { + color: #ffffff; + background-color: #42b142; + border-color: #40a940 +} + +.btn-success:active, .btn-success.active, .open > .dropdown-toggle.btn-success { + color: #ffffff; + background-color: #42b142; + border-color: #40a940 +} + +.btn-success:active:hover, .btn-success.active:hover, .open > .dropdown-toggle.btn-success:hover, .btn-success:active:focus, .btn-success.active:focus, .open > .dropdown-toggle.btn-success:focus, .btn-success:active.focus, .btn-success.active.focus, .open > .dropdown-toggle.btn-success.focus { + color: #ffffff; + background-color: #399739; + border-color: #2d792d +} + +.btn-success:active, .btn-success.active, .open > .dropdown-toggle.btn-success { + background-image: none +} + +.btn-success.disabled:hover, .btn-success[disabled]:hover, fieldset[disabled] .btn-success:hover, .btn-success.disabled:focus, .btn-success[disabled]:focus, fieldset[disabled] .btn-success:focus, .btn-success.disabled.focus, .btn-success[disabled].focus, fieldset[disabled] .btn-success.focus { + background-color: #62c462; + border-color: #62c462 +} + +.btn-success .badge { + color: #62c462; + background-color: #ffffff +} + +.btn-info { + color: #ffffff; + background-color: #5bc0de; + border-color: #5bc0de +} + +.btn-info:focus, .btn-info.focus { + color: #ffffff; + background-color: #31b0d5; + border-color: #1f7e9a +} + +.btn-info:hover { + color: #ffffff; + background-color: #31b0d5; + border-color: #2aabd2 +} + +.btn-info:active, .btn-info.active, .open > .dropdown-toggle.btn-info { + color: #ffffff; + background-color: #31b0d5; + border-color: #2aabd2 +} + +.btn-info:active:hover, .btn-info.active:hover, .open > .dropdown-toggle.btn-info:hover, .btn-info:active:focus, .btn-info.active:focus, .open > .dropdown-toggle.btn-info:focus, .btn-info:active.focus, .btn-info.active.focus, .open > .dropdown-toggle.btn-info.focus { + color: #ffffff; + background-color: #269abc; + border-color: #1f7e9a +} + +.btn-info:active, .btn-info.active, .open > .dropdown-toggle.btn-info { + background-image: none +} + +.btn-info.disabled:hover, .btn-info[disabled]:hover, fieldset[disabled] .btn-info:hover, .btn-info.disabled:focus, .btn-info[disabled]:focus, fieldset[disabled] .btn-info:focus, .btn-info.disabled.focus, .btn-info[disabled].focus, fieldset[disabled] .btn-info.focus { + background-color: #5bc0de; + border-color: #5bc0de +} + +.btn-info .badge { + color: #5bc0de; + background-color: #ffffff +} + +.btn-warning { + color: #ffffff; + background-color: #f89406; + border-color: #f89406 +} + +.btn-warning:focus, .btn-warning.focus { + color: #ffffff; + background-color: #c67605; + border-color: #7c4a03 +} + +.btn-warning:hover { + color: #ffffff; + background-color: #c67605; + border-color: #bc7005 +} + +.btn-warning:active, .btn-warning.active, .open > .dropdown-toggle.btn-warning { + color: #ffffff; + background-color: #c67605; + border-color: #bc7005 +} + +.btn-warning:active:hover, .btn-warning.active:hover, .open > .dropdown-toggle.btn-warning:hover, .btn-warning:active:focus, .btn-warning.active:focus, .open > .dropdown-toggle.btn-warning:focus, .btn-warning:active.focus, .btn-warning.active.focus, .open > .dropdown-toggle.btn-warning.focus { + color: #ffffff; + background-color: #a36104; + border-color: #7c4a03 +} + +.btn-warning:active, .btn-warning.active, .open > .dropdown-toggle.btn-warning { + background-image: none +} + +.btn-warning.disabled:hover, .btn-warning[disabled]:hover, fieldset[disabled] .btn-warning:hover, .btn-warning.disabled:focus, .btn-warning[disabled]:focus, fieldset[disabled] .btn-warning:focus, .btn-warning.disabled.focus, .btn-warning[disabled].focus, fieldset[disabled] .btn-warning.focus { + background-color: #f89406; + border-color: #f89406 +} + +.btn-warning .badge { + color: #f89406; + background-color: #ffffff +} + +.btn-danger { + color: #ffffff; + background-color: #ee5f5b; + border-color: #ee5f5b +} + +.btn-danger:focus, .btn-danger.focus { + color: #ffffff; + background-color: #e9322d; + border-color: #b71713 +} + +.btn-danger:hover { + color: #ffffff; + background-color: #e9322d; + border-color: #e82924 +} + +.btn-danger:active, .btn-danger.active, .open > .dropdown-toggle.btn-danger { + color: #ffffff; + background-color: #e9322d; + border-color: #e82924 +} + +.btn-danger:active:hover, .btn-danger.active:hover, .open > .dropdown-toggle.btn-danger:hover, .btn-danger:active:focus, .btn-danger.active:focus, .open > .dropdown-toggle.btn-danger:focus, .btn-danger:active.focus, .btn-danger.active.focus, .open > .dropdown-toggle.btn-danger.focus { + color: #ffffff; + background-color: #dc1c17; + border-color: #b71713 +} + +.btn-danger:active, .btn-danger.active, .open > .dropdown-toggle.btn-danger { + background-image: none +} + +.btn-danger.disabled:hover, .btn-danger[disabled]:hover, fieldset[disabled] .btn-danger:hover, .btn-danger.disabled:focus, .btn-danger[disabled]:focus, fieldset[disabled] .btn-danger:focus, .btn-danger.disabled.focus, .btn-danger[disabled].focus, fieldset[disabled] .btn-danger.focus { + background-color: #ee5f5b; + border-color: #ee5f5b +} + +.btn-danger .badge { + color: #ee5f5b; + background-color: #ffffff +} + +.btn-link { + color: #ffffff; + font-weight: normal; + border-radius: 0 +} + +.btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled], fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none +} + +.btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active { + border-color: transparent +} + +.btn-link:hover, .btn-link:focus { + color: #ffffff; + text-decoration: underline; + background-color: transparent +} + +.btn-link[disabled]:hover, fieldset[disabled] .btn-link:hover, .btn-link[disabled]:focus, fieldset[disabled] .btn-link:focus { + color: #7a8288; + text-decoration: none +} + +.btn-lg, .btn-group-lg > .btn { + padding: 14px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px +} + +.btn-sm, .btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px +} + +.btn-xs, .btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px +} + +.btn-block { + display: block; + width: 100% +} + +.btn-block + .btn-block { + margin-top: 5px +} + +input[type="submit"].btn-block, input[type="reset"].btn-block, input[type="button"].btn-block { + width: 100% +} + +.fade { + opacity: 0; + -webkit-transition: opacity 0.15s linear; + -o-transition: opacity 0.15s linear; + transition: opacity 0.15s linear +} + +.fade.in { + opacity: 1 +} + +.collapse { + display: none +} + +.collapse.in { + display: block +} + +tr.collapse.in { + display: table-row +} + +tbody.collapse.in { + display: table-row-group +} + +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; + -webkit-transition-duration: 0.35s; + -o-transition-duration: 0.35s; + transition-duration: 0.35s; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease +} + +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent +} + +.dropup, .dropdown { + position: relative +} + +.dropdown-toggle:focus { + outline: 0 +} + +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + list-style: none; + font-size: 14px; + text-align: left; + background-color: #3a3f44; + border: 1px solid #272b30; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + -webkit-background-clip: padding-box; + background-clip: padding-box +} + +.dropdown-menu.pull-right { + right: 0; + left: auto +} + +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #272b30 +} + +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #c8c8c8; + white-space: nowrap +} + +.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus { + text-decoration: none; + color: #ffffff; + background-color: #272b30 +} + +.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus { + color: #ffffff; + text-decoration: none; + outline: 0; + background-color: #272b30 +} + +.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus { + color: #7a8288 +} + +.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus { + text-decoration: none; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + cursor: not-allowed +} + +.open > .dropdown-menu { + display: block +} + +.open > a { + outline: 0 +} + +.dropdown-menu-right { + left: auto; + right: 0 +} + +.dropdown-menu-left { + left: 0; + right: auto +} + +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #7a8288; + white-space: nowrap +} + +.dropdown-backdrop { + position: fixed; + left: 0; + right: 0; + bottom: 0; + top: 0; + z-index: 990 +} + +.pull-right > .dropdown-menu { + right: 0; + left: auto +} + +.dropup .caret, .navbar-fixed-bottom .dropdown .caret { + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; + content: "" +} + +.dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px +} + +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + left: auto; + right: 0 + } + + .navbar-right .dropdown-menu-left { + left: 0; + right: auto + } +} + +.btn-group, .btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle +} + +.btn-group > .btn, .btn-group-vertical > .btn { + position: relative; + float: left +} + +.btn-group > .btn:hover, .btn-group-vertical > .btn:hover, .btn-group > .btn:focus, .btn-group-vertical > .btn:focus, .btn-group > .btn:active, .btn-group-vertical > .btn:active, .btn-group > .btn.active, .btn-group-vertical > .btn.active { + z-index: 2 +} + +.btn-group .btn + .btn, .btn-group .btn + .btn-group, .btn-group .btn-group + .btn, .btn-group .btn-group + .btn-group { + margin-left: -1px +} + +.btn-toolbar { + margin-left: -5px +} + +.btn-toolbar .btn, .btn-toolbar .btn-group, .btn-toolbar .input-group { + float: left +} + +.btn-toolbar > .btn, .btn-toolbar > .btn-group, .btn-toolbar > .input-group { + margin-left: 5px +} + +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0 +} + +.btn-group > .btn:first-child { + margin-left: 0 +} + +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-bottom-right-radius: 0; + border-top-right-radius: 0 +} + +.btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0 +} + +.btn-group > .btn-group { + float: left +} + +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0 +} + +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, .btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-top-right-radius: 0 +} + +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-bottom-left-radius: 0; + border-top-left-radius: 0 +} + +.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle { + outline: 0 +} + +.btn-group > .btn + .dropdown-toggle { + padding-left: 8px; + padding-right: 8px +} + +.btn-group > .btn-lg + .dropdown-toggle { + padding-left: 12px; + padding-right: 12px +} + +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) +} + +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none +} + +.btn .caret { + margin-left: 0 +} + +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0 +} + +.dropup .btn-lg .caret { + border-width: 0 5px 5px +} + +.btn-group-vertical > .btn, .btn-group-vertical > .btn-group, .btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100% +} + +.btn-group-vertical > .btn-group > .btn { + float: none +} + +.btn-group-vertical > .btn + .btn, .btn-group-vertical > .btn + .btn-group, .btn-group-vertical > .btn-group + .btn, .btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0 +} + +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0 +} + +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0 +} + +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-right-radius: 0; + border-top-left-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px +} + +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0 +} + +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, .btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0 +} + +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0 +} + +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate +} + +.btn-group-justified > .btn, .btn-group-justified > .btn-group { + float: none; + display: table-cell; + width: 1% +} + +.btn-group-justified > .btn-group .btn { + width: 100% +} + +.btn-group-justified > .btn-group .dropdown-menu { + left: auto +} + +[data-toggle="buttons"] > .btn input[type="radio"], [data-toggle="buttons"] > .btn-group > .btn input[type="radio"], [data-toggle="buttons"] > .btn input[type="checkbox"], [data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none +} + +.input-group { + position: relative; + display: table; + border-collapse: separate +} + +.input-group[class*="col-"] { + float: none; + padding-left: 0; + padding-right: 0 +} + +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0 +} + +.input-group .form-control:focus { + z-index: 3 +} + +.input-group-lg > .form-control, .input-group-lg > .input-group-addon, .input-group-lg > .input-group-btn > .btn { + height: 54px; + padding: 14px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px +} + +select.input-group-lg > .form-control, select.input-group-lg > .input-group-addon, select.input-group-lg > .input-group-btn > .btn { + height: 54px; + line-height: 54px +} + +textarea.input-group-lg > .form-control, textarea.input-group-lg > .input-group-addon, textarea.input-group-lg > .input-group-btn > .btn, select[multiple].input-group-lg > .form-control, select[multiple].input-group-lg > .input-group-addon, select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto +} + +.input-group-sm > .form-control, .input-group-sm > .input-group-addon, .input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px +} + +select.input-group-sm > .form-control, select.input-group-sm > .input-group-addon, select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px +} + +textarea.input-group-sm > .form-control, textarea.input-group-sm > .input-group-addon, textarea.input-group-sm > .input-group-btn > .btn, select[multiple].input-group-sm > .form-control, select[multiple].input-group-sm > .input-group-addon, select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto +} + +.input-group-addon, .input-group-btn, .input-group .form-control { + display: table-cell +} + +.input-group-addon:not(:first-child):not(:last-child), .input-group-btn:not(:first-child):not(:last-child), .input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0 +} + +.input-group-addon, .input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle +} + +.input-group-addon { + padding: 8px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #272b30; + text-align: center; + background-color: #3a3f44; + border: 1px solid rgba(0, 0, 0, 0.6); + border-radius: 4px +} + +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px +} + +.input-group-addon.input-lg { + padding: 14px 16px; + font-size: 18px; + border-radius: 6px +} + +.input-group-addon input[type="radio"], .input-group-addon input[type="checkbox"] { + margin-top: 0 +} + +.input-group .form-control:first-child, .input-group-addon:first-child, .input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group > .btn, .input-group-btn:first-child > .dropdown-toggle, .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), .input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-top-right-radius: 0 +} + +.input-group-addon:first-child { + border-right: 0 +} + +.input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group > .btn, .input-group-btn:last-child > .dropdown-toggle, .input-group-btn:first-child > .btn:not(:first-child), .input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-bottom-left-radius: 0; + border-top-left-radius: 0 +} + +.input-group-addon:last-child { + border-left: 0 +} + +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap +} + +.input-group-btn > .btn { + position: relative +} + +.input-group-btn > .btn + .btn { + margin-left: -1px +} + +.input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active { + z-index: 2 +} + +.input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group { + margin-right: -1px +} + +.input-group-btn:last-child > .btn, .input-group-btn:last-child > .btn-group { + z-index: 2; + margin-left: -1px +} + +.nav { + margin-bottom: 0; + padding-left: 0; + list-style: none +} + +.nav > li { + position: relative; + display: block +} + +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px +} + +.nav > li > a:hover, .nav > li > a:focus { + text-decoration: none; + background-color: #3e444c +} + +.nav > li.disabled > a { + color: #7a8288 +} + +.nav > li.disabled > a:hover, .nav > li.disabled > a:focus { + color: #7a8288; + text-decoration: none; + background-color: transparent; + cursor: not-allowed +} + +.nav .open > a, .nav .open > a:hover, .nav .open > a:focus { + background-color: #3e444c; + border-color: #ffffff +} + +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5 +} + +.nav > li > a > img { + max-width: none +} + +.nav-tabs { + border-bottom: 1px solid #1c1e22 +} + +.nav-tabs > li { + float: left; + margin-bottom: -1px +} + +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0 +} + +.nav-tabs > li > a:hover { + border-color: #1c1e22 #1c1e22 #1c1e22 +} + +.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus { + color: #ffffff; + background-color: #3e444c; + border: 1px solid #1c1e22; + border-bottom-color: transparent; + cursor: default +} + +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0 +} + +.nav-tabs.nav-justified > li { + float: none +} + +.nav-tabs.nav-justified > li > a { + text-align: center; + margin-bottom: 5px +} + +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto +} + +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1% + } + + .nav-tabs.nav-justified > li > a { + margin-bottom: 0 + } +} + +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px +} + +.nav-tabs.nav-justified > .active > a, .nav-tabs.nav-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #1c1e22 +} + +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #1c1e22; + border-radius: 4px 4px 0 0 + } + + .nav-tabs.nav-justified > .active > a, .nav-tabs.nav-justified > .active > a:hover, .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #272b30 + } +} + +.nav-pills > li { + float: left +} + +.nav-pills > li > a { + border-radius: 4px +} + +.nav-pills > li + li { + margin-left: 2px +} + +.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus { + color: #ffffff; + background-color: transparent +} + +.nav-stacked > li { + float: none +} + +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0 +} + +.nav-justified { + width: 100% +} + +.nav-justified > li { + float: none +} + +.nav-justified > li > a { + text-align: center; + margin-bottom: 5px +} + +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto +} + +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1% + } + + .nav-justified > li > a { + margin-bottom: 0 + } +} + +.nav-tabs-justified { + border-bottom: 0 +} + +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px +} + +.nav-tabs-justified > .active > a, .nav-tabs-justified > .active > a:hover, .nav-tabs-justified > .active > a:focus { + border: 1px solid #1c1e22 +} + +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #1c1e22; + border-radius: 4px 4px 0 0 + } + + .nav-tabs-justified > .active > a, .nav-tabs-justified > .active > a:hover, .nav-tabs-justified > .active > a:focus { + border-bottom-color: #272b30 + } +} + +.tab-content > .tab-pane { + display: none +} + +.tab-content > .active { + display: block +} + +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-right-radius: 0; + border-top-left-radius: 0 +} + +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent +} + +@media (min-width: 768px) { + .navbar { + border-radius: 4px + } +} + +@media (min-width: 768px) { + .navbar-header { + float: left + } +} + +.navbar-collapse { + overflow-x: visible; + padding-right: 15px; + padding-left: 15px; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + -webkit-overflow-scrolling: touch +} + +.navbar-collapse.in { + overflow-y: auto +} + +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none + } + + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important + } + + .navbar-collapse.in { + overflow-y: visible + } + + .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { + padding-left: 0; + padding-right: 0 + } +} + +.navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { + max-height: 340px +} + +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { + max-height: 200px + } +} + +.container > .navbar-header, .container-fluid > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px +} + +@media (min-width: 768px) { + .container > .navbar-header, .container-fluid > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0 + } +} + +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px +} + +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0 + } +} + +.navbar-fixed-top, .navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030 +} + +@media (min-width: 768px) { + .navbar-fixed-top, .navbar-fixed-bottom { + border-radius: 0 + } +} + +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px +} + +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0 +} + +.navbar-brand { + float: left; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; + height: 50px +} + +.navbar-brand:hover, .navbar-brand:focus { + text-decoration: none +} + +.navbar-brand > img { + display: block +} + +@media (min-width: 768px) { + .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand { + margin-left: -15px + } +} + +.navbar-toggle { + position: relative; + float: right; + margin-right: 15px; + padding: 9px 10px; + margin-top: 8px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px +} + +.navbar-toggle:focus { + outline: 0 +} + +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px +} + +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px +} + +@media (min-width: 768px) { + .navbar-toggle { + display: none + } +} + +.navbar-nav { + margin: 7.5px -15px +} + +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px +} + +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none + } + + .navbar-nav .open .dropdown-menu > li > a, .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px + } + + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px + } + + .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none + } +} + +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0 + } + + .navbar-nav > li { + float: left + } + + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px + } +} + +.navbar-form { + margin-left: -15px; + margin-right: -15px; + padding: 10px 15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + margin-top: 6px; + margin-bottom: 6px +} + +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle + } + + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle + } + + .navbar-form .form-control-static { + display: inline-block + } + + .navbar-form .input-group { + display: inline-table; + vertical-align: middle + } + + .navbar-form .input-group .input-group-addon, .navbar-form .input-group .input-group-btn, .navbar-form .input-group .form-control { + width: auto + } + + .navbar-form .input-group > .form-control { + width: 100% + } + + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle + } + + .navbar-form .radio, .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle + } + + .navbar-form .radio label, .navbar-form .checkbox label { + padding-left: 0 + } + + .navbar-form .radio input[type="radio"], .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0 + } + + .navbar-form .has-feedback .form-control-feedback { + top: 0 + } +} + +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px + } + + .navbar-form .form-group:last-child { + margin-bottom: 0 + } +} + +@media (min-width: 768px) { + .navbar-form { + width: auto; + border: 0; + margin-left: 0; + margin-right: 0; + padding-top: 0; + padding-bottom: 0; + -webkit-box-shadow: none; + box-shadow: none + } +} + +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0 +} + +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0 +} + +.navbar-btn { + margin-top: 6px; + margin-bottom: 6px +} + +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px +} + +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px +} + +.navbar-text { + margin-top: 15px; + margin-bottom: 15px +} + +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-left: 15px; + margin-right: 15px + } +} + +@media (min-width: 768px) { + .navbar-left { + float: left !important + } + + .navbar-right { + float: right !important; + margin-right: -15px + } + + .navbar-right ~ .navbar-right { + margin-right: 0 + } +} + +.navbar-default { + background-color: #3a3f44; + border-color: #2b2e32 +} + +.navbar-default .navbar-brand { + color: #c8c8c8 +} + +.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus { + color: #ffffff; + background-color: none +} + +.navbar-default .navbar-text { + color: #c8c8c8 +} + +.navbar-default .navbar-nav > li > a { + color: #c8c8c8 +} + +.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus { + color: #ffffff; + background-color: #272b2e +} + +.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: #272b2e +} + +.navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus { + color: #cccccc; + background-color: transparent +} + +.navbar-default .navbar-toggle { + border-color: #272b2e +} + +.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus { + background-color: #272b2e +} + +.navbar-default .navbar-toggle .icon-bar { + background-color: #c8c8c8 +} + +.navbar-default .navbar-collapse, .navbar-default .navbar-form { + border-color: #2b2e32 +} + +.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus { + background-color: #272b2e; + color: #ffffff +} + +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #c8c8c8 + } + + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + background-color: #272b2e + } + + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #ffffff; + background-color: #272b2e + } + + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #cccccc; + background-color: transparent + } +} + +.navbar-default .navbar-link { + color: #c8c8c8 +} + +.navbar-default .navbar-link:hover { + color: #ffffff +} + +.navbar-default .btn-link { + color: #c8c8c8 +} + +.navbar-default .btn-link:hover, .navbar-default .btn-link:focus { + color: #ffffff +} + +.navbar-default .btn-link[disabled]:hover, fieldset[disabled] .navbar-default .btn-link:hover, .navbar-default .btn-link[disabled]:focus, fieldset[disabled] .navbar-default .btn-link:focus { + color: #cccccc +} + +.navbar-inverse { + background-color: #7a8288; + border-color: #62686d +} + +.navbar-inverse .navbar-brand { + color: #cccccc +} + +.navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus { + color: #ffffff; + background-color: none +} + +.navbar-inverse .navbar-text { + color: #cccccc +} + +.navbar-inverse .navbar-nav > li > a { + color: #cccccc +} + +.navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus { + color: #ffffff; + background-color: #5d6368 +} + +.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: #5d6368 +} + +.navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus { + color: #cccccc; + background-color: transparent +} + +.navbar-inverse .navbar-toggle { + border-color: #5d6368 +} + +.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus { + background-color: #5d6368 +} + +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #ffffff +} + +.navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form { + border-color: #697075 +} + +.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus { + background-color: #5d6368; + color: #ffffff +} + +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #62686d + } + + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #62686d + } + + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #cccccc + } + + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + background-color: #5d6368 + } + + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #ffffff; + background-color: #5d6368 + } + + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #cccccc; + background-color: transparent + } +} + +.navbar-inverse .navbar-link { + color: #cccccc +} + +.navbar-inverse .navbar-link:hover { + color: #ffffff +} + +.navbar-inverse .btn-link { + color: #cccccc +} + +.navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus { + color: #ffffff +} + +.navbar-inverse .btn-link[disabled]:hover, fieldset[disabled] .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link[disabled]:focus, fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #cccccc +} + +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: transparent; + border-radius: 4px +} + +.breadcrumb > li { + display: inline-block +} + +.breadcrumb > li + li:before { + content: "/\00a0"; + padding: 0 5px; + color: #cccccc +} + +.breadcrumb > .active { + color: #7a8288 +} + +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px +} + +.pagination > li { + display: inline +} + +.pagination > li > a, .pagination > li > span { + position: relative; + float: left; + padding: 8px 12px; + line-height: 1.42857143; + text-decoration: none; + color: #ffffff; + background-color: #3a3f44; + border: 1px solid rgba(0, 0, 0, 0.6); + margin-left: -1px +} + +.pagination > li:first-child > a, .pagination > li:first-child > span { + margin-left: 0; + border-bottom-left-radius: 4px; + border-top-left-radius: 4px +} + +.pagination > li:last-child > a, .pagination > li:last-child > span { + border-bottom-right-radius: 4px; + border-top-right-radius: 4px +} + +.pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus { + z-index: 2; + color: #ffffff; + background-color: transparent; + border-color: rgba(0, 0, 0, 0.6) +} + +.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { + z-index: 3; + color: #ffffff; + background-color: #232628; + border-color: rgba(0, 0, 0, 0.6); + cursor: default +} + +.pagination > .disabled > span, .pagination > .disabled > span:hover, .pagination > .disabled > span:focus, .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus { + color: #7a8288; + background-color: #ffffff; + border-color: rgba(0, 0, 0, 0.6); + cursor: not-allowed +} + +.pagination-lg > li > a, .pagination-lg > li > span { + padding: 14px 16px; + font-size: 18px; + line-height: 1.3333333 +} + +.pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span { + border-bottom-left-radius: 6px; + border-top-left-radius: 6px +} + +.pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span { + border-bottom-right-radius: 6px; + border-top-right-radius: 6px +} + +.pagination-sm > li > a, .pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5 +} + +.pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px +} + +.pagination-sm > li:last-child > a, .pagination-sm > li:last-child > span { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px +} + +.pager { + padding-left: 0; + margin: 20px 0; + list-style: none; + text-align: center +} + +.pager li { + display: inline +} + +.pager li > a, .pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #3a3f44; + border: 1px solid rgba(0, 0, 0, 0.6); + border-radius: 15px +} + +.pager li > a:hover, .pager li > a:focus { + text-decoration: none; + background-color: transparent +} + +.pager .next > a, .pager .next > span { + float: right +} + +.pager .previous > a, .pager .previous > span { + float: left +} + +.pager .disabled > a, .pager .disabled > a:hover, .pager .disabled > a:focus, .pager .disabled > span { + color: #7a8288; + background-color: #3a3f44; + cursor: not-allowed +} + +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #ffffff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em +} + +a.label:hover, a.label:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer +} + +.label:empty { + display: none +} + +.btn .label { + position: relative; + top: -1px +} + +.label-default { + background-color: #3a3f44 +} + +.label-default[href]:hover, .label-default[href]:focus { + background-color: #232628 +} + +.label-primary { + background-color: #7a8288 +} + +.label-primary[href]:hover, .label-primary[href]:focus { + background-color: #62686d +} + +.label-success { + background-color: #62c462 +} + +.label-success[href]:hover, .label-success[href]:focus { + background-color: #42b142 +} + +.label-info { + background-color: #5bc0de +} + +.label-info[href]:hover, .label-info[href]:focus { + background-color: #31b0d5 +} + +.label-warning { + background-color: #f89406 +} + +.label-warning[href]:hover, .label-warning[href]:focus { + background-color: #c67605 +} + +.label-danger { + background-color: #ee5f5b +} + +.label-danger[href]:hover, .label-danger[href]:focus { + background-color: #e9322d +} + +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + color: #ffffff; + line-height: 1; + vertical-align: middle; + white-space: nowrap; + text-align: center; + background-color: #7a8288; + border-radius: 10px +} + +.badge:empty { + display: none +} + +.btn .badge { + position: relative; + top: -1px +} + +.btn-xs .badge, .btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px +} + +a.badge:hover, a.badge:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer +} + +.list-group-item.active > .badge, .nav-pills > .active > a > .badge { + color: #ffffff; + background-color: #7a8288 +} + +.list-group-item > .badge { + float: right +} + +.list-group-item > .badge + .badge { + margin-right: 5px +} + +.nav-pills > li > a > .badge { + margin-left: 3px +} + +.jumbotron { + padding-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #1c1e22 +} + +.jumbotron h1, .jumbotron .h1 { + color: inherit +} + +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200 +} + +.jumbotron > hr { + border-top-color: #050506 +} + +.container .jumbotron, .container-fluid .jumbotron { + border-radius: 6px; + padding-left: 15px; + padding-right: 15px +} + +.jumbotron .container { + max-width: 100% +} + +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px + } + + .container .jumbotron, .container-fluid .jumbotron { + padding-left: 60px; + padding-right: 60px + } + + .jumbotron h1, .jumbotron .h1 { + font-size: 63px + } +} + +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #1c1e22; + border: 1px solid #0c0d0e; + border-radius: 4px; + -webkit-transition: border .2s ease-in-out; + -o-transition: border .2s ease-in-out; + transition: border .2s ease-in-out +} + +.thumbnail > img, .thumbnail a > img { + margin-left: auto; + margin-right: auto +} + +a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active { + border-color: #ffffff +} + +.thumbnail .caption { + padding: 9px; + color: #c8c8c8 +} + +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px +} + +.alert h4 { + margin-top: 0; + color: inherit +} + +.alert .alert-link { + font-weight: bold +} + +.alert > p, .alert > ul { + margin-bottom: 0 +} + +.alert > p + p { + margin-top: 5px +} + +.alert-dismissable, .alert-dismissible { + padding-right: 35px +} + +.alert-dismissable .close, .alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit +} + +.alert-success { + background-color: #62c462; + border-color: #62bd4f; + color: #ffffff +} + +.alert-success hr { + border-top-color: #55b142 +} + +.alert-success .alert-link { + color: #e6e6e6 +} + +.alert-info { + background-color: #5bc0de; + border-color: #3dced8; + color: #ffffff +} + +.alert-info hr { + border-top-color: #2ac7d2 +} + +.alert-info .alert-link { + color: #e6e6e6 +} + +.alert-warning { + background-color: #f89406; + border-color: #e96506; + color: #ffffff +} + +.alert-warning hr { + border-top-color: #d05a05 +} + +.alert-warning .alert-link { + color: #e6e6e6 +} + +.alert-danger { + background-color: #ee5f5b; + border-color: #ed4d63; + color: #ffffff +} + +.alert-danger hr { + border-top-color: #ea364f +} + +.alert-danger .alert-link { + color: #e6e6e6 +} + +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0 + } + to { + background-position: 0 0 + } +} + +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0 + } + to { + background-position: 0 0 + } +} + +@keyframes progress-bar-stripes { + from { + background-position: 40px 0 + } + to { + background-position: 0 0 + } +} + +.progress { + overflow: hidden; + height: 20px; + margin-bottom: 20px; + background-color: #1c1e22; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1) +} + +.progress-bar { + float: left; + width: 0%; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #ffffff; + text-align: center; + background-color: #7a8288; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-transition: width 0.6s ease; + -o-transition: width 0.6s ease; + transition: width 0.6s ease +} + +.progress-striped .progress-bar, .progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + background-size: 40px 40px +} + +.progress.active .progress-bar, .progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite +} + +.progress-bar-success { + background-color: #62c462 +} + +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent) +} + +.progress-bar-info { + background-color: #5bc0de +} + +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent) +} + +.progress-bar-warning { + background-color: #f89406 +} + +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent) +} + +.progress-bar-danger { + background-color: #ee5f5b +} + +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent) +} + +.media { + margin-top: 15px +} + +.media:first-child { + margin-top: 0 +} + +.media, .media-body { + zoom: 1; + overflow: hidden +} + +.media-body { + width: 10000px +} + +.media-object { + display: block +} + +.media-object.img-thumbnail { + max-width: none +} + +.media-right, .media > .pull-right { + padding-left: 10px +} + +.media-left, .media > .pull-left { + padding-right: 10px +} + +.media-left, .media-right, .media-body { + display: table-cell; + vertical-align: top +} + +.media-middle { + vertical-align: middle +} + +.media-bottom { + vertical-align: bottom +} + +.media-heading { + margin-top: 0; + margin-bottom: 5px +} + +.media-list { + padding-left: 0; + list-style: none +} + +.list-group { + margin-bottom: 20px; + padding-left: 0 +} + +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #32383e; + border: 1px solid rgba(0, 0, 0, 0.6) +} + +.list-group-item:first-child { + border-top-right-radius: 4px; + border-top-left-radius: 4px +} + +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px +} + +a.list-group-item, button.list-group-item { + color: #c8c8c8 +} + +a.list-group-item .list-group-item-heading, button.list-group-item .list-group-item-heading { + color: #ffffff +} + +a.list-group-item:hover, button.list-group-item:hover, a.list-group-item:focus, button.list-group-item:focus { + text-decoration: none; + color: #c8c8c8; + background-color: #3e444c +} + +button.list-group-item { + width: 100%; + text-align: left +} + +.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus { + background-color: #999999; + color: #7a8288; + cursor: not-allowed +} + +.list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading { + color: inherit +} + +.list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text { + color: #7a8288 +} + +.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus { + z-index: 2; + color: #ffffff; + background-color: #3e444c; + border-color: rgba(0, 0, 0, 0.6) +} + +.list-group-item.active .list-group-item-heading, .list-group-item.active:hover .list-group-item-heading, .list-group-item.active:focus .list-group-item-heading, .list-group-item.active .list-group-item-heading > small, .list-group-item.active:hover .list-group-item-heading > small, .list-group-item.active:focus .list-group-item-heading > small, .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading > .small { + color: inherit +} + +.list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text { + color: #a2aab4 +} + +.list-group-item-success { + color: #ffffff; + background-color: #62c462 +} + +a.list-group-item-success, button.list-group-item-success { + color: #ffffff +} + +a.list-group-item-success .list-group-item-heading, button.list-group-item-success .list-group-item-heading { + color: inherit +} + +a.list-group-item-success:hover, button.list-group-item-success:hover, a.list-group-item-success:focus, button.list-group-item-success:focus { + color: #ffffff; + background-color: #4fbd4f +} + +a.list-group-item-success.active, button.list-group-item-success.active, a.list-group-item-success.active:hover, button.list-group-item-success.active:hover, a.list-group-item-success.active:focus, button.list-group-item-success.active:focus { + color: #fff; + background-color: #ffffff; + border-color: #ffffff +} + +.list-group-item-info { + color: #ffffff; + background-color: #5bc0de +} + +a.list-group-item-info, button.list-group-item-info { + color: #ffffff +} + +a.list-group-item-info .list-group-item-heading, button.list-group-item-info .list-group-item-heading { + color: inherit +} + +a.list-group-item-info:hover, button.list-group-item-info:hover, a.list-group-item-info:focus, button.list-group-item-info:focus { + color: #ffffff; + background-color: #46b8da +} + +a.list-group-item-info.active, button.list-group-item-info.active, a.list-group-item-info.active:hover, button.list-group-item-info.active:hover, a.list-group-item-info.active:focus, button.list-group-item-info.active:focus { + color: #fff; + background-color: #ffffff; + border-color: #ffffff +} + +.list-group-item-warning { + color: #ffffff; + background-color: #f89406 +} + +a.list-group-item-warning, button.list-group-item-warning { + color: #ffffff +} + +a.list-group-item-warning .list-group-item-heading, button.list-group-item-warning .list-group-item-heading { + color: inherit +} + +a.list-group-item-warning:hover, button.list-group-item-warning:hover, a.list-group-item-warning:focus, button.list-group-item-warning:focus { + color: #ffffff; + background-color: #df8505 +} + +a.list-group-item-warning.active, button.list-group-item-warning.active, a.list-group-item-warning.active:hover, button.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus, button.list-group-item-warning.active:focus { + color: #fff; + background-color: #ffffff; + border-color: #ffffff +} + +.list-group-item-danger { + color: #ffffff; + background-color: #ee5f5b +} + +a.list-group-item-danger, button.list-group-item-danger { + color: #ffffff +} + +a.list-group-item-danger .list-group-item-heading, button.list-group-item-danger .list-group-item-heading { + color: inherit +} + +a.list-group-item-danger:hover, button.list-group-item-danger:hover, a.list-group-item-danger:focus, button.list-group-item-danger:focus { + color: #ffffff; + background-color: #ec4844 +} + +a.list-group-item-danger.active, button.list-group-item-danger.active, a.list-group-item-danger.active:hover, button.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus, button.list-group-item-danger.active:focus { + color: #fff; + background-color: #ffffff; + border-color: #ffffff +} + +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px +} + +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3 +} + +.panel { + margin-bottom: 20px; + background-color: #2e3338; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05) +} + +.panel-body { + padding: 15px +} + +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-right-radius: 3px; + border-top-left-radius: 3px +} + +.panel-heading > .dropdown .dropdown-toggle { + color: inherit +} + +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit +} + +.panel-title > a, .panel-title > small, .panel-title > .small, .panel-title > small > a, .panel-title > .small > a { + color: inherit +} + +.panel-footer { + padding: 10px 15px; + background-color: #3e444c; + border-top: 1px solid rgba(0, 0, 0, 0.6); + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px +} + +.panel > .list-group, .panel > .panel-collapse > .list-group { + margin-bottom: 0 +} + +.panel > .list-group .list-group-item, .panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0 +} + +.panel > .list-group:first-child .list-group-item:first-child, .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-right-radius: 3px; + border-top-left-radius: 3px +} + +.panel > .list-group:last-child .list-group-item:last-child, .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px +} + +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0 +} + +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0 +} + +.list-group + .panel-footer { + border-top-width: 0 +} + +.panel > .table, .panel > .table-responsive > .table, .panel > .panel-collapse > .table { + margin-bottom: 0 +} + +.panel > .table caption, .panel > .table-responsive > .table caption, .panel > .panel-collapse > .table caption { + padding-left: 15px; + padding-right: 15px +} + +.panel > .table:first-child, .panel > .table-responsive:first-child > .table:first-child { + border-top-right-radius: 3px; + border-top-left-radius: 3px +} + +.panel > .table:first-child > thead:first-child > tr:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px +} + +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, .panel > .table:first-child > thead:first-child > tr:first-child th:first-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px +} + +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, .panel > .table:first-child > thead:first-child > tr:first-child th:last-child, .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px +} + +.panel > .table:last-child, .panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px +} + +.panel > .table:last-child > tbody:last-child > tr:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px +} + +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px +} + +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px +} + +.panel > .panel-body + .table, .panel > .panel-body + .table-responsive, .panel > .table + .panel-body, .panel > .table-responsive + .panel-body { + border-top: 1px solid #1c1e22 +} + +.panel > .table > tbody:first-child > tr:first-child th, .panel > .table > tbody:first-child > tr:first-child td { + border-top: 0 +} + +.panel > .table-bordered, .panel > .table-responsive > .table-bordered { + border: 0 +} + +.panel > .table-bordered > thead > tr > th:first-child, .panel > .table-responsive > .table-bordered > thead > tr > th:first-child, .panel > .table-bordered > tbody > tr > th:first-child, .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, .panel > .table-bordered > tfoot > tr > th:first-child, .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, .panel > .table-bordered > thead > tr > td:first-child, .panel > .table-responsive > .table-bordered > thead > tr > td:first-child, .panel > .table-bordered > tbody > tr > td:first-child, .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, .panel > .table-bordered > tfoot > tr > td:first-child, .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0 +} + +.panel > .table-bordered > thead > tr > th:last-child, .panel > .table-responsive > .table-bordered > thead > tr > th:last-child, .panel > .table-bordered > tbody > tr > th:last-child, .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, .panel > .table-bordered > tfoot > tr > th:last-child, .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, .panel > .table-bordered > thead > tr > td:last-child, .panel > .table-responsive > .table-bordered > thead > tr > td:last-child, .panel > .table-bordered > tbody > tr > td:last-child, .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, .panel > .table-bordered > tfoot > tr > td:last-child, .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0 +} + +.panel > .table-bordered > thead > tr:first-child > td, .panel > .table-responsive > .table-bordered > thead > tr:first-child > td, .panel > .table-bordered > tbody > tr:first-child > td, .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, .panel > .table-bordered > thead > tr:first-child > th, .panel > .table-responsive > .table-bordered > thead > tr:first-child > th, .panel > .table-bordered > tbody > tr:first-child > th, .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0 +} + +.panel > .table-bordered > tbody > tr:last-child > td, .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, .panel > .table-bordered > tfoot > tr:last-child > td, .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, .panel > .table-bordered > tbody > tr:last-child > th, .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, .panel > .table-bordered > tfoot > tr:last-child > th, .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0 +} + +.panel > .table-responsive { + border: 0; + margin-bottom: 0 +} + +.panel-group { + margin-bottom: 20px +} + +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px +} + +.panel-group .panel + .panel { + margin-top: 5px +} + +.panel-group .panel-heading { + border-bottom: 0 +} + +.panel-group .panel-heading + .panel-collapse > .panel-body, .panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid rgba(0, 0, 0, 0.6) +} + +.panel-group .panel-footer { + border-top: 0 +} + +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid rgba(0, 0, 0, 0.6) +} + +.panel-default { + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-default > .panel-heading { + color: #c8c8c8; + background-color: #3e444c; + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: rgba(0, 0, 0, 0.6) +} + +.panel-default > .panel-heading .badge { + color: #3e444c; + background-color: #c8c8c8 +} + +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: rgba(0, 0, 0, 0.6) +} + +.panel-primary { + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-primary > .panel-heading { + color: #ffffff; + background-color: #7a8288; + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: rgba(0, 0, 0, 0.6) +} + +.panel-primary > .panel-heading .badge { + color: #7a8288; + background-color: #ffffff +} + +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: rgba(0, 0, 0, 0.6) +} + +.panel-success { + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-success > .panel-heading { + color: #ffffff; + background-color: #62c462; + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: rgba(0, 0, 0, 0.6) +} + +.panel-success > .panel-heading .badge { + color: #62c462; + background-color: #ffffff +} + +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: rgba(0, 0, 0, 0.6) +} + +.panel-info { + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-info > .panel-heading { + color: #ffffff; + background-color: #5bc0de; + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: rgba(0, 0, 0, 0.6) +} + +.panel-info > .panel-heading .badge { + color: #5bc0de; + background-color: #ffffff +} + +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: rgba(0, 0, 0, 0.6) +} + +.panel-warning { + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-warning > .panel-heading { + color: #ffffff; + background-color: #f89406; + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: rgba(0, 0, 0, 0.6) +} + +.panel-warning > .panel-heading .badge { + color: #f89406; + background-color: #ffffff +} + +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: rgba(0, 0, 0, 0.6) +} + +.panel-danger { + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-danger > .panel-heading { + color: #ffffff; + background-color: #ee5f5b; + border-color: rgba(0, 0, 0, 0.6) +} + +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: rgba(0, 0, 0, 0.6) +} + +.panel-danger > .panel-heading .badge { + color: #ee5f5b; + background-color: #ffffff +} + +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: rgba(0, 0, 0, 0.6) +} + +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden +} + +.embed-responsive .embed-responsive-item, .embed-responsive iframe, .embed-responsive embed, .embed-responsive object, .embed-responsive video { + position: absolute; + top: 0; + left: 0; + bottom: 0; + height: 100%; + width: 100%; + border: 0 +} + +.embed-responsive-16by9 { + padding-bottom: 56.25% +} + +.embed-responsive-4by3 { + padding-bottom: 75% +} + +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #1c1e22; + border: 1px solid #0c0d0e; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05) +} + +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15) +} + +.well-lg { + padding: 24px; + border-radius: 6px +} + +.well-sm { + padding: 9px; + border-radius: 3px +} + +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000000; + text-shadow: 0 1px 0 #ffffff; + opacity: 0.2; + filter: alpha(opacity=20) +} + +.close:hover, .close:focus { + color: #000000; + text-decoration: none; + cursor: pointer; + opacity: 0.5; + filter: alpha(opacity=50) +} + +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none +} + +.modal-open { + overflow: hidden +} + +.modal { + display: none; + overflow: hidden; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + -webkit-overflow-scrolling: touch; + outline: 0 +} + +.modal.fade .modal-dialog { + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); + -webkit-transition: -webkit-transform .3s ease-out; + -o-transition: -o-transform .3s ease-out; + transition: transform .3s ease-out +} + +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0) +} + +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto +} + +.modal-dialog { + position: relative; + width: auto; + margin: 10px +} + +.modal-content { + position: relative; + background-color: #2e3338; + border: 1px solid #999999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + -webkit-background-clip: padding-box; + background-clip: padding-box; + outline: 0 +} + +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000000 +} + +.modal-backdrop.fade { + opacity: 0; + filter: alpha(opacity=0) +} + +.modal-backdrop.in { + opacity: 0.5; + filter: alpha(opacity=50) +} + +.modal-header { + padding: 15px; + border-bottom: 1px solid #1c1e22 +} + +.modal-header .close { + margin-top: -2px +} + +.modal-title { + margin: 0; + line-height: 1.42857143 +} + +.modal-body { + position: relative; + padding: 20px +} + +.modal-footer { + padding: 20px; + text-align: right; + border-top: 1px solid #1c1e22 +} + +.modal-footer .btn + .btn { + margin-left: 5px; + margin-bottom: 0 +} + +.modal-footer .btn-group .btn + .btn { + margin-left: -1px +} + +.modal-footer .btn-block + .btn-block { + margin-left: 0 +} + +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll +} + +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto + } + + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5) + } + + .modal-sm { + width: 300px + } +} + +@media (min-width: 992px) { + .modal-lg { + width: 900px + } +} + +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-style: normal; + font-weight: normal; + letter-spacing: normal; + line-break: auto; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + white-space: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + font-size: 12px; + opacity: 0; + filter: alpha(opacity=0) +} + +.tooltip.in { + opacity: 0.9; + filter: alpha(opacity=90) +} + +.tooltip.top { + margin-top: -3px; + padding: 5px 0 +} + +.tooltip.right { + margin-left: 3px; + padding: 0 5px +} + +.tooltip.bottom { + margin-top: 3px; + padding: 5px 0 +} + +.tooltip.left { + margin-left: -3px; + padding: 0 5px +} + +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #ffffff; + text-align: center; + background-color: #000000; + border-radius: 4px +} + +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid +} + +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000000 +} + +.tooltip.top-left .tooltip-arrow { + bottom: 0; + right: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000000 +} + +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000000 +} + +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000000 +} + +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000000 +} + +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000000 +} + +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000000 +} + +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000000 +} + +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-style: normal; + font-weight: normal; + letter-spacing: normal; + line-break: auto; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + white-space: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + font-size: 14px; + background-color: #2e3338; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #999999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2) +} + +.popover.top { + margin-top: -10px +} + +.popover.right { + margin-left: 10px +} + +.popover.bottom { + margin-top: 10px +} + +.popover.left { + margin-left: -10px +} + +.popover-title { + margin: 0; + padding: 8px 14px; + font-size: 14px; + background-color: #2e3338; + border-bottom: 1px solid #22262a; + border-radius: 5px 5px 0 0 +} + +.popover-content { + padding: 9px 14px +} + +.popover > .arrow, .popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid +} + +.popover > .arrow { + border-width: 11px +} + +.popover > .arrow:after { + border-width: 10px; + content: "" +} + +.popover.top > .arrow { + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #666666; + border-top-color: rgba(0, 0, 0, 0.25); + bottom: -11px +} + +.popover.top > .arrow:after { + content: " "; + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #2e3338 +} + +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-left-width: 0; + border-right-color: #666666; + border-right-color: rgba(0, 0, 0, 0.25) +} + +.popover.right > .arrow:after { + content: " "; + left: 1px; + bottom: -10px; + border-left-width: 0; + border-right-color: #2e3338 +} + +.popover.bottom > .arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #666666; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px +} + +.popover.bottom > .arrow:after { + content: " "; + top: 1px; + margin-left: -10px; + border-top-width: 0; + border-bottom-color: #2e3338 +} + +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #666666; + border-left-color: rgba(0, 0, 0, 0.25) +} + +.popover.left > .arrow:after { + content: " "; + right: 1px; + border-right-width: 0; + border-left-color: #2e3338; + bottom: -10px +} + +.carousel { + position: relative +} + +.carousel-inner { + position: relative; + overflow: hidden; + width: 100% +} + +.carousel-inner > .item { + display: none; + position: relative; + -webkit-transition: .6s ease-in-out left; + -o-transition: .6s ease-in-out left; + transition: .6s ease-in-out left +} + +.carousel-inner > .item > img, .carousel-inner > .item > a > img { + line-height: 1 +} + +@media all and (transform-3d),(-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform .6s ease-in-out; + -o-transition: -o-transform .6s ease-in-out; + transition: transform .6s ease-in-out; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px + } + + .carousel-inner > .item.next, .carousel-inner > .item.active.right { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + left: 0 + } + + .carousel-inner > .item.prev, .carousel-inner > .item.active.left { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + left: 0 + } + + .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + left: 0 + } +} + +.carousel-inner > .active, .carousel-inner > .next, .carousel-inner > .prev { + display: block +} + +.carousel-inner > .active { + left: 0 +} + +.carousel-inner > .next, .carousel-inner > .prev { + position: absolute; + top: 0; + width: 100% +} + +.carousel-inner > .next { + left: 100% +} + +.carousel-inner > .prev { + left: -100% +} + +.carousel-inner > .next.left, .carousel-inner > .prev.right { + left: 0 +} + +.carousel-inner > .active.left { + left: -100% +} + +.carousel-inner > .active.right { + left: 100% +} + +.carousel-control { + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 15%; + opacity: 0.5; + filter: alpha(opacity=50); + font-size: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); + background-color: rgba(0, 0, 0, 0) +} + +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1) +} + +.carousel-control.right { + left: auto; + right: 0; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1) +} + +.carousel-control:hover, .carousel-control:focus { + outline: 0; + color: #ffffff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90) +} + +.carousel-control .icon-prev, .carousel-control .icon-next, .carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + margin-top: -10px; + z-index: 5; + display: inline-block +} + +.carousel-control .icon-prev, .carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px +} + +.carousel-control .icon-next, .carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px +} + +.carousel-control .icon-prev, .carousel-control .icon-next { + width: 20px; + height: 20px; + line-height: 1; + font-family: serif +} + +.carousel-control .icon-prev:before { + content: '\2039' +} + +.carousel-control .icon-next:before { + content: '\203a' +} + +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + margin-left: -30%; + padding-left: 0; + list-style: none; + text-align: center +} + +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + border: 1px solid #ffffff; + border-radius: 10px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0) +} + +.carousel-indicators .active { + margin: 0; + width: 12px; + height: 12px; + background-color: #ffffff +} + +.carousel-caption { + position: absolute; + left: 15%; + right: 15%; + bottom: 20px; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6) +} + +.carousel-caption .btn { + text-shadow: none +} + +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right, .carousel-control .icon-prev, .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -10px; + font-size: 30px + } + + .carousel-control .glyphicon-chevron-left, .carousel-control .icon-prev { + margin-left: -10px + } + + .carousel-control .glyphicon-chevron-right, .carousel-control .icon-next { + margin-right: -10px + } + + .carousel-caption { + left: 20%; + right: 20%; + padding-bottom: 30px + } + + .carousel-indicators { + bottom: 20px + } +} + +.clearfix:before, .clearfix:after, .dl-horizontal dd:before, .dl-horizontal dd:after, .container:before, .container:after, .container-fluid:before, .container-fluid:after, .row:before, .row:after, .form-horizontal .form-group:before, .form-horizontal .form-group:after, .btn-toolbar:before, .btn-toolbar:after, .btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after, .nav:before, .nav:after, .navbar:before, .navbar:after, .navbar-header:before, .navbar-header:after, .navbar-collapse:before, .navbar-collapse:after, .pager:before, .pager:after, .panel-body:before, .panel-body:after, .modal-header:before, .modal-header:after, .modal-footer:before, .modal-footer:after { + content: " "; + display: table +} + +.clearfix:after, .dl-horizontal dd:after, .container:after, .container-fluid:after, .row:after, .form-horizontal .form-group:after, .btn-toolbar:after, .btn-group-vertical > .btn-group:after, .nav:after, .navbar:after, .navbar-header:after, .navbar-collapse:after, .pager:after, .panel-body:after, .modal-header:after, .modal-footer:after { + clear: both +} + +.center-block { + display: block; + margin-left: auto; + margin-right: auto +} + +.pull-right { + float: right !important +} + +.pull-left { + float: left !important +} + +.hide { + display: none !important +} + +.show { + display: block !important +} + +.invisible { + visibility: hidden +} + +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0 +} + +.hidden { + display: none !important +} + +.affix { + position: fixed +} + +@-ms-viewport { + width: device-width +} + +.visible-xs, .visible-sm, .visible-md, .visible-lg { + display: none !important +} + +.visible-xs-block, .visible-xs-inline, .visible-xs-inline-block, .visible-sm-block, .visible-sm-inline, .visible-sm-inline-block, .visible-md-block, .visible-md-inline, .visible-md-inline-block, .visible-lg-block, .visible-lg-inline, .visible-lg-inline-block { + display: none !important +} + +@media (max-width: 767px) { + .visible-xs { + display: block !important + } + + table.visible-xs { + display: table !important + } + + tr.visible-xs { + display: table-row !important + } + + th.visible-xs, td.visible-xs { + display: table-cell !important + } +} + +@media (max-width: 767px) { + .visible-xs-block { + display: block !important + } +} + +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important + } +} + +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important + } + + table.visible-sm { + display: table !important + } + + tr.visible-sm { + display: table-row !important + } + + th.visible-sm, td.visible-sm { + display: table-cell !important + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important + } + + table.visible-md { + display: table !important + } + + tr.visible-md { + display: table-row !important + } + + th.visible-md, td.visible-md { + display: table-cell !important + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important + } +} + +@media (min-width: 1200px) { + .visible-lg { + display: block !important + } + + table.visible-lg { + display: table !important + } + + tr.visible-lg { + display: table-row !important + } + + th.visible-lg, td.visible-lg { + display: table-cell !important + } +} + +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important + } +} + +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important + } +} + +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important + } +} + +@media (max-width: 767px) { + .hidden-xs { + display: none !important + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important + } +} + +@media (min-width: 1200px) { + .hidden-lg { + display: none !important + } +} + +.visible-print { + display: none !important +} + +@media print { + .visible-print { + display: block !important + } + + table.visible-print { + display: table !important + } + + tr.visible-print { + display: table-row !important + } + + th.visible-print, td.visible-print { + display: table-cell !important + } +} + +.visible-print-block { + display: none !important +} + +@media print { + .visible-print-block { + display: block !important + } +} + +.visible-print-inline { + display: none !important +} + +@media print { + .visible-print-inline { + display: inline !important + } +} + +.visible-print-inline-block { + display: none !important +} + +@media print { + .visible-print-inline-block { + display: inline-block !important + } +} + +@media print { + .hidden-print { + display: none !important + } +} + +.navbar-default, .navbar-inverse { + border: 1px solid rgba(0, 0, 0, 0.6); + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3) +} + +@media (min-width: 768px) { + .navbar-default .navbar-nav > li > a, .navbar-inverse .navbar-nav > li > a { + border-right: 1px solid rgba(0, 0, 0, 0.2); + border-left: 1px solid rgba(255, 255, 255, 0.1) + } + + .navbar-default .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:hover { + border-left-color: transparent + } + + .navbar-default .nav .open > a, .navbar-inverse .nav .open > a { + border-color: transparent + } + + .navbar-default .navbar-nav > li.active > a, .navbar-inverse .navbar-nav > li.active > a { + border-left-color: transparent + } + + .navbar-default .navbar-form, .navbar-inverse .navbar-form { + margin-left: 5px; + margin-right: 5px + } +} + +.navbar-default { + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none +} + +.navbar-default .navbar-nav > li > a:hover { + background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618); + background-image: -o-linear-gradient(#020202, #101112 40%, #141618); + background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618)); + background-image: linear-gradient(#020202, #101112 40%, #141618); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0); + -webkit-filter: none; + filter: none +} + +.navbar-inverse { + background-image: -webkit-linear-gradient(#8a9196, #7a8288 60%, #70787d); + background-image: -o-linear-gradient(#8a9196, #7a8288 60%, #70787d); + background-image: -webkit-gradient(linear, left top, left bottom, from(#8a9196), color-stop(60%, #7a8288), to(#70787d)); + background-image: linear-gradient(#8a9196, #7a8288 60%, #70787d); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff8a9196', endColorstr='#ff70787d', GradientType=0); + -webkit-filter: none; + filter: none +} + +.navbar-inverse .badge { + background-color: #5d6368 +} + +.navbar-inverse .navbar-nav > li > a:hover { + background-image: -webkit-linear-gradient(#404448, #4e5458 40%, #53595d); + background-image: -o-linear-gradient(#404448, #4e5458 40%, #53595d); + background-image: -webkit-gradient(linear, left top, left bottom, from(#404448), color-stop(40%, #4e5458), to(#53595d)); + background-image: linear-gradient(#404448, #4e5458 40%, #53595d); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff404448', endColorstr='#ff53595d', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn, .btn:hover { + border-color: rgba(0, 0, 0, 0.6); + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3) +} + +.btn-default { + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-default:hover { + background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618); + background-image: -o-linear-gradient(#020202, #101112 40%, #141618); + background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618)); + background-image: linear-gradient(#020202, #101112 40%, #141618); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-primary { + background-image: -webkit-linear-gradient(#8a9196, #7a8288 60%, #70787d); + background-image: -o-linear-gradient(#8a9196, #7a8288 60%, #70787d); + background-image: -webkit-gradient(linear, left top, left bottom, from(#8a9196), color-stop(60%, #7a8288), to(#70787d)); + background-image: linear-gradient(#8a9196, #7a8288 60%, #70787d); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff8a9196', endColorstr='#ff70787d', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-primary:hover { + background-image: -webkit-linear-gradient(#404448, #4e5458 40%, #53595d); + background-image: -o-linear-gradient(#404448, #4e5458 40%, #53595d); + background-image: -webkit-gradient(linear, left top, left bottom, from(#404448), color-stop(40%, #4e5458), to(#53595d)); + background-image: linear-gradient(#404448, #4e5458 40%, #53595d); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff404448', endColorstr='#ff53595d', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-success { + background-image: -webkit-linear-gradient(#78cc78, #62c462 60%, #53be53); + background-image: -o-linear-gradient(#78cc78, #62c462 60%, #53be53); + background-image: -webkit-gradient(linear, left top, left bottom, from(#78cc78), color-stop(60%, #62c462), to(#53be53)); + background-image: linear-gradient(#78cc78, #62c462 60%, #53be53); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff78cc78', endColorstr='#ff53be53', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-success:hover { + background-image: -webkit-linear-gradient(#2f7d2f, #379337 40%, #3a9a3a); + background-image: -o-linear-gradient(#2f7d2f, #379337 40%, #3a9a3a); + background-image: -webkit-gradient(linear, left top, left bottom, from(#2f7d2f), color-stop(40%, #379337), to(#3a9a3a)); + background-image: linear-gradient(#2f7d2f, #379337 40%, #3a9a3a); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2f7d2f', endColorstr='#ff3a9a3a', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-info { + background-image: -webkit-linear-gradient(#74cae3, #5bc0de 60%, #4ab9db); + background-image: -o-linear-gradient(#74cae3, #5bc0de 60%, #4ab9db); + background-image: -webkit-gradient(linear, left top, left bottom, from(#74cae3), color-stop(60%, #5bc0de), to(#4ab9db)); + background-image: linear-gradient(#74cae3, #5bc0de 60%, #4ab9db); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff74cae3', endColorstr='#ff4ab9db', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-info:hover { + background-image: -webkit-linear-gradient(#20829f, #2596b8 40%, #279dc1); + background-image: -o-linear-gradient(#20829f, #2596b8 40%, #279dc1); + background-image: -webkit-gradient(linear, left top, left bottom, from(#20829f), color-stop(40%, #2596b8), to(#279dc1)); + background-image: linear-gradient(#20829f, #2596b8 40%, #279dc1); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff20829f', endColorstr='#ff279dc1', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-warning { + background-image: -webkit-linear-gradient(#faa123, #f89406 60%, #e48806); + background-image: -o-linear-gradient(#faa123, #f89406 60%, #e48806); + background-image: -webkit-gradient(linear, left top, left bottom, from(#faa123), color-stop(60%, #f89406), to(#e48806)); + background-image: linear-gradient(#faa123, #f89406 60%, #e48806); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffaa123', endColorstr='#ffe48806', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-warning:hover { + background-image: -webkit-linear-gradient(#804d03, #9e5f04 40%, #a86404); + background-image: -o-linear-gradient(#804d03, #9e5f04 40%, #a86404); + background-image: -webkit-gradient(linear, left top, left bottom, from(#804d03), color-stop(40%, #9e5f04), to(#a86404)); + background-image: linear-gradient(#804d03, #9e5f04 40%, #a86404); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff804d03', endColorstr='#ffa86404', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-danger { + background-image: -webkit-linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49); + background-image: -o-linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f17a77), color-stop(60%, #ee5f5b), to(#ec4d49)); + background-image: linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff17a77', endColorstr='#ffec4d49', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-danger:hover { + background-image: -webkit-linear-gradient(#bb1813, #d71c16 40%, #e01d17); + background-image: -o-linear-gradient(#bb1813, #d71c16 40%, #e01d17); + background-image: -webkit-gradient(linear, left top, left bottom, from(#bb1813), color-stop(40%, #d71c16), to(#e01d17)); + background-image: linear-gradient(#bb1813, #d71c16 40%, #e01d17); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffbb1813', endColorstr='#ffe01d17', GradientType=0); + -webkit-filter: none; + filter: none +} + +.btn-link, .btn-link:hover { + border-color: transparent +} + +h1, h2, h3, h4, h5, h6 { + text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3) +} + +.text-primary, .text-primary:hover { + color: #7a8288 +} + +.text-success, .text-success:hover { + color: #62c462 +} + +.text-danger, .text-danger:hover { + color: #ee5f5b +} + +.text-warning, .text-warning:hover { + color: #f89406 +} + +.text-info, .text-info:hover { + color: #5bc0de +} + +.table .success, .table .warning, .table .danger, .table .info { + color: #fff +} + +.table-bordered tbody tr.success td, .table-bordered tbody tr.warning td, .table-bordered tbody tr.danger td, .table-bordered tbody tr.success:hover td, .table-bordered tbody tr.warning:hover td, .table-bordered tbody tr.danger:hover td { + border-color: #1c1e22 +} + +.table-responsive > .table { + background-color: #2e3338 +} + +input, textarea { + color: #272b30 +} + +.has-warning .help-block, .has-warning .control-label, .has-warning .radio, .has-warning .checkbox, .has-warning .radio-inline, .has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label, .has-warning .form-control-feedback { + color: #f89406 +} + +.has-warning .form-control, .has-warning .form-control:focus { + border-color: #f89406 +} + +.has-warning .input-group-addon { + border-color: rgba(0, 0, 0, 0.6) +} + +.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label, .has-error .form-control-feedback { + color: #ee5f5b +} + +.has-error .form-control, .has-error .form-control:focus { + border-color: #ee5f5b +} + +.has-error .input-group-addon { + border-color: rgba(0, 0, 0, 0.6) +} + +.has-success .help-block, .has-success .control-label, .has-success .radio, .has-success .checkbox, .has-success .radio-inline, .has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label, .has-success .form-control-feedback { + color: #62c462 +} + +.has-success .form-control, .has-success .form-control:focus { + border-color: #62c462 +} + +.has-success .input-group-addon { + border-color: rgba(0, 0, 0, 0.6) +} + +legend { + color: #fff +} + +.input-group-addon { + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none; + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3); + color: #ffffff +} + +.nav .open > a, .nav .open > a:hover, .nav .open > a:focus { + border-color: rgba(0, 0, 0, 0.6) +} + +.nav-pills > li > a { + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none; + border: 1px solid rgba(0, 0, 0, 0.6); + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3) +} + +.nav-pills > li > a:hover { + background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618); + background-image: -o-linear-gradient(#020202, #101112 40%, #141618); + background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618)); + background-image: linear-gradient(#020202, #101112 40%, #141618); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0); + -webkit-filter: none; + filter: none; + border: 1px solid rgba(0, 0, 0, 0.6) +} + +.nav-pills > li.active > a, .nav-pills > li.active > a:hover { + background-color: none; + background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618); + background-image: -o-linear-gradient(#020202, #101112 40%, #141618); + background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618)); + background-image: linear-gradient(#020202, #101112 40%, #141618); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0); + -webkit-filter: none; + filter: none; + border: 1px solid rgba(0, 0, 0, 0.6) +} + +.nav-pills > li.disabled > a, .nav-pills > li.disabled > a:hover { + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none +} + +.pagination > li > a, .pagination > li > span { + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3); + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none +} + +.pagination > li > a:hover, .pagination > li > span:hover { + background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618); + background-image: -o-linear-gradient(#020202, #101112 40%, #141618); + background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618)); + background-image: linear-gradient(#020202, #101112 40%, #141618); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0); + -webkit-filter: none; + filter: none +} + +.pagination > li.active > a, .pagination > li.active > span { + background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618); + background-image: -o-linear-gradient(#020202, #101112 40%, #141618); + background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618)); + background-image: linear-gradient(#020202, #101112 40%, #141618); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0); + -webkit-filter: none; + filter: none +} + +.pagination > li.disabled > a, .pagination > li.disabled > a:hover, .pagination > li.disabled > span, .pagination > li.disabled > span:hover { + background-color: transparent; + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none +} + +.pager > li > a { + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none; + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3) +} + +.pager > li > a:hover { + background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618); + background-image: -o-linear-gradient(#020202, #101112 40%, #141618); + background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618)); + background-image: linear-gradient(#020202, #101112 40%, #141618); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0); + -webkit-filter: none; + filter: none +} + +.pager > li.disabled > a, .pager > li.disabled > a:hover { + background-color: transparent; + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none +} + +.breadcrumb { + border: 1px solid rgba(0, 0, 0, 0.6); + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3); + background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539); + background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539)); + background-image: linear-gradient(#484e55, #3a3f44 60%, #313539); + background-repeat: no-repeat; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0); + -webkit-filter: none; + filter: none +} + +.alert .alert-link, .alert a { + color: #fff; + text-decoration: underline +} + +.alert .close { + color: #000000; + text-decoration: none +} + +a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active { + border-color: #0c0d0e +} + +a.list-group-item.active, a.list-group-item.active:hover, a.list-group-item.active:focus { + border-color: rgba(0, 0, 0, 0.6) +} + +a.list-group-item-success.active { + background-color: #62c462 +} + +a.list-group-item-success.active:hover, a.list-group-item-success.active:focus { + background-color: #4fbd4f +} + +a.list-group-item-warning.active { + background-color: #f89406 +} + +a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus { + background-color: #df8505 +} + +a.list-group-item-danger.active { + background-color: #ee5f5b +} + +a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus { + background-color: #ec4844 +} + +.jumbotron { + border: 1px solid rgba(0, 0, 0, 0.6) +} + +.panel-primary .panel-heading, .panel-success .panel-heading, .panel-danger .panel-heading, .panel-warning .panel-heading, .panel-info .panel-heading { + border-color: #000 +} \ No newline at end of file diff --git a/modules/ui/static/bundle.js b/modules/ui/static/bundle.js index 9b795c0..642c48f 100644 --- a/modules/ui/static/bundle.js +++ b/modules/ui/static/bundle.js @@ -1,27 +1,28 @@ -!function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={exports:{},id:o,loaded:!1};return e[o].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}var r=n(1),i=o(r),a=n(18),s=o(a),l=n(397),u=o(l);n(944),s.default.render(i.default.createElement(u.default,null),document.getElementById("root"))},function(e,t,n){"use strict";e.exports=n(76)},function(e,t){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function r(e){if(c===setTimeout)return setTimeout(e,0);if((c===n||!c)&&setTimeout)return c=setTimeout,setTimeout(e,0);try{return c(e,0)}catch(t){try{return c.call(null,e,0)}catch(t){return c.call(this,e,0)}}}function i(e){if(d===clearTimeout)return clearTimeout(e);if((d===o||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(e);try{return d(e)}catch(t){try{return d.call(null,e)}catch(t){return d.call(this,e)}}}function a(){m&&p&&(m=!1,p.length?h=p.concat(h):v=-1,h.length&&s())}function s(){if(!m){var e=r(a);m=!0;for(var t=h.length;t;){for(p=h,h=[];++v1)for(var n=1;n=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}},function(e,t,n){var o,r;/*! +!function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={exports:{},id:o,loaded:!1};return e[o].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}var r=n(1),i=o(r),a=n(18),s=o(a),l=n(398),u=o(l);n(945),s.default.render(i.default.createElement(u.default,null),document.getElementById("root"))},function(e,t,n){"use strict";e.exports=n(77)},function(e,t){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function r(e){if(c===setTimeout)return setTimeout(e,0);if((c===n||!c)&&setTimeout)return c=setTimeout,setTimeout(e,0);try{return c(e,0)}catch(t){try{return c.call(null,e,0)}catch(t){return c.call(this,e,0)}}}function i(e){if(d===clearTimeout)return clearTimeout(e);if((d===o||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(e);try{return d(e)}catch(t){try{return d.call(null,e)}catch(t){return d.call(this,e)}}}function a(){m&&p&&(m=!1,p.length?h=p.concat(h):v=-1,h.length&&s())}function s(){if(!m){var e=r(a);m=!0;for(var t=h.length;t;){for(p=h,h=[];++v1)for(var n=1;n=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}},function(e,t,n){var o,r;/*! Copyright (c) 2016 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ -!function(){"use strict";function n(){for(var e=[],t=0;t1?t-1:0),o=1;o1?t-1:0),o=1;o2?n-2:0),r=2;r2?o-2:0);for(var r=2;r1?t-1:0),o=1;o1?t-1:0),o=1;o2?n-2:0),r=2;r2?o-2:0);for(var r=2;r0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"UPDATE_CONFIG":return i({},e,{list:i({},e.list,r({},t.payload.name,t.payload))});case"LOAD_STATE":return i({},e,{list:t.payload.config});default:return e}});t.default=u},function(e,t){"use strict";var n=!("undefined"==typeof window||!window.document||!window.document.createElement),o={canUseDOM:n,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:n&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:n&&!!window.screen,isInWorker:!n};e.exports=o},function(e,t,n){(function(t){"use strict";var n=function(e,n,o,r,i,a,s,l){if("production"!==t.env.NODE_ENV&&void 0===n)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===n)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[o,r,i,a,s,l],d=0;u=new Error(n.replace(/%s/g,function(){return c[d++]})),u.name="Invariant Violation"}throw u.framesToPop=1,u}};e.exports=n}).call(t,n(2))},function(e,t){"use strict";function n(){for(var e=arguments.length,t=Array(e),n=0;n=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}Object.defineProperty(t,"__esModule",{value:!0}),t.CheckboxField=t.SelectField=t.SliderField=t.NumberField=t.TextField=void 0;var u=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:void 0;if(void 0===e){var t=this.props.form;e={};for(var n in t)switch(t[n].type){case"checkbox":e[t[n].name]=!1;break;default:e[t[n].name]=""}}else this.props.configfield&&!e.hasOwnProperty("config")&&(e.config={});this.setState({showModal:!0,data:e})}},{key:"hide",value:function(){this.setState({showModal:!1})}},{key:"_clear_config",value:function(e){var t={};for(var n in e)t[e[n].name]=e[n].default_value;return t}},{key:"_handle",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(n)this.setState({data:(0,m.default)(this.state.data,{config:r({},e.name,{$set:t.target.value})})});else if(e.clear_config){var o,i=""==t.target.value?{}:this._clear_config(this.props.types[t.target.value].properties);this.setState({data:(0,m.default)(this.state.data,(o={},r(o,e.name,{$set:t.target.value}),r(o,"config",{$set:i}),o))})}else this.setState({data:(0,m.default)(this.state.data,r({},e.name,{$set:t.target.value}))})}},{key:"_handleSlider",value:function(e,t){arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.setState({data:(0,m.default)(this.state.data,r({},e.name,{$set:t}))})}},{key:"_handleCheckBox",value:function(e,t){this.setState({data:(0,m.default)(this.state.data,r({},e.name,{$set:!this.state.data[e.name]}))})}},{key:"render_field",value:function(e,t){var n=this,o=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!e.condition||e.condition(this.state.data)){var r={key:t,value:this.state.data[e.name],label:e.label};switch(e.type){case"text":return f.default.createElement(g,c({onChange:function(t){n._handle(e,t,o)}},r));case"actor":return f.default.createElement(E,c({onChange:function(t){n._handle(e,t,o)}},r,{options:this.props.actors}));case"sensor":return f.default.createElement(E,c({onChange:function(t){n._handle(e,t,o)}},r,{options:this.props.sensors}));case"kettle":return f.default.createElement(E,c({onChange:function(t){n._handle(e,t,o)}},r,{options:this.props.kettle}));case"number":return f.default.createElement(b,c({onChange:function(t){n._handle(e,t,o)}},r));case"select":return f.default.createElement(E,c({onChange:function(t){n._handle(e,t,o)}},r,{options:e.options}));case"checkbox":return f.default.createElement(_,c({checked:this.state.data[e.name]||!1,onChange:function(t){n._handleCheckBox(e,t)}},r));case"slider":return f.default.createElement(x,c({marks:e.marks,min:e.min,max:e.max,onChange:function(t){n._handleSlider(e,t)}},r));default:return}}}},{key:"render_field_config",value:function(e,t){var n=this,o=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(e.configurable)switch(e.type){case"text":return f.default.createElement(g,{key:t,onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],label:e.label,required:e.required,description:e.description});case"actor":return f.default.createElement(E,{onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],key:t,label:e.label,options:this.props.actors,description:e.description});case"sensor":return f.default.createElement(E,{onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],key:t,label:e.label,options:this.props.sensors,description:e.description});case"kettle":return f.default.createElement(E,{onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],key:t,label:e.label,options:this.props.kettle,description:e.description});case"number":return f.default.createElement(b,{key:t,onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],label:e.label,description:e.description});case"select":return f.default.createElement(E,{onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],key:t,label:e.label,options:e.options,description:e.description});default:return}}},{key:"render_config",value:function(){var e=this;if(void 0!==this.state.data[this.props.configfield]&&""!==this.state.data[this.props.configfield]){var t=this.state.data[this.props.configfield];if(this.props.types.hasOwnProperty(t)){var n=this.props.types[t].properties||[];return n.map(function(t,n){return e.render_field_config(t,n,!0)})}return f.default.createElement("div",null,'Configuration Error. Type "',t,'" configured but not found')}}},{key:"_add",value:function(){this.props.btn_add(this.state.data)===!0&&this.hide()}},{key:"_save",value:function(){this.props.btn_save(this.state.data)===!0&&this.hide()}},{key:"_delete",value:function(){this.props.btn_delete(this.state.data)===!0&&this.hide()}},{key:"render_body",value:function(){var e=this,t=this.props.form;return this.props.configfield?f.default.createElement(p.Row,{className:"show-grid"},f.default.createElement(p.Col,{xs:12,sm:6,md:6},t.map(function(t,n){return e.render_field(t,n)})),f.default.createElement(p.Col,{xs:12,sm:6,md:6},this.render_config())):t.map(function(t,n){return e.render_field(t,n)})}},{key:"render",value:function(){var e=this.props,t=e.add,n=e.save,o=e.remove,r=e.title,i=e.bsSize,a=e.btn_save_label,s=e.btn_add_label,l=e.btn_delete_label;return f.default.createElement(p.Modal,{bsSize:i,animation:!1,show:this.state.showModal,onHide:this.hide.bind(this)},f.default.createElement(p.Modal.Header,null,f.default.createElement(p.Modal.Title,null,r||"Modal")),f.default.createElement(p.Modal.Body,null,this.render_body()),f.default.createElement(p.Modal.Footer,null,f.default.createElement(p.Button,{onClick:this.hide.bind(this)},"Close"),o?f.default.createElement(p.Button,{className:"btn-danger",onClick:this._delete.bind(this)},l):void 0,t?f.default.createElement(p.Button,{className:"btn-success",onClick:this._add.bind(this)},s):void 0,n?f.default.createElement(p.Button,{className:"btn-success",onClick:this._save.bind(this)},a):void 0))}}]),t}(d.Component);w.defaultProps={sensors:{},kettle:{},actors:{},bsSize:"small",btn_save_label:"Update",btn_add_label:"Add",btn_delete_label:"Delete"},t.default=w},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){var o=0;return p.default.Children.map(e,function(e){return p.default.isValidElement(e)?t.call(n,e,o++):e})}function i(e,t,n){var o=0;p.default.Children.forEach(e,function(e){p.default.isValidElement(e)&&t.call(n,e,o++)})}function a(e){var t=0;return p.default.Children.forEach(e,function(e){p.default.isValidElement(e)&&++t}),t}function s(e,t,n){var o=0,r=[];return p.default.Children.forEach(e,function(e){p.default.isValidElement(e)&&t.call(n,e,o++)&&r.push(e)}),r}function l(e,t,n){var o=0,r=void 0;return p.default.Children.forEach(e,function(e){r||p.default.isValidElement(e)&&t.call(n,e,o++)&&(r=e)}),r}function u(e,t,n){var o=0,r=!0;return p.default.Children.forEach(e,function(e){r&&p.default.isValidElement(e)&&(t.call(n,e,o++)||(r=!1))}),r}function c(e,t,n){var o=0,r=!1;return p.default.Children.forEach(e,function(e){r||p.default.isValidElement(e)&&t.call(n,e,o++)&&(r=!0)}),r}function d(e){var t=[];return p.default.Children.forEach(e,function(e){p.default.isValidElement(e)&&t.push(e)}),t}t.__esModule=!0;var f=n(1),p=o(f);t.default={map:r,forEach:i,count:a,find:l,filter:s,every:u,some:c,toArray:d},e.exports=t.default},function(e,t,n){(function(t){"use strict";function o(e){var t=Function.prototype.toString,n=Object.prototype.hasOwnProperty,o=RegExp("^"+t.call(n).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");try{var r=t.call(e);return o.test(r)}catch(e){return!1}}function r(e){var t=u(e);if(t){var n=t.childIDs;c(e),n.forEach(r)}}function i(e,t,n){return"\n in "+(e||"Unknown")+(t?" (at "+t.fileName.replace(/^.*[\\\/]/,"")+":"+t.lineNumber+")":n?" (created by "+n+")":"")}function a(e){return null==e?"#empty":"string"==typeof e||"number"==typeof e?"#text":"string"==typeof e.type?e.type:e.type.displayName||e.type.name||"Unknown"}function s(e){var n,o=T.getDisplayName(e),r=T.getElement(e),a=T.getOwnerID(e);return a&&(n=T.getDisplayName(a)),"production"!==t.env.NODE_ENV?g(r,"ReactComponentTreeHook: Missing React element for debugID %s when building stack",e):void 0,i(o,r&&r._source,n)}var l,u,c,d,f,p,h,m=n(77),v=n(39),y=n(12),g=n(13),b="function"==typeof Array.from&&"function"==typeof Map&&o(Map)&&null!=Map.prototype&&"function"==typeof Map.prototype.keys&&o(Map.prototype.keys)&&"function"==typeof Set&&o(Set)&&null!=Set.prototype&&"function"==typeof Set.prototype.keys&&o(Set.prototype.keys);if(b){var x=new Map,E=new Set;l=function(e,t){x.set(e,t)},u=function(e){return x.get(e)},c=function(e){x.delete(e)},d=function(){return Array.from(x.keys())},f=function(e){E.add(e)},p=function(e){E.delete(e)},h=function(){return Array.from(E.keys())}}else{var _={},w={},C=function(e){return"."+e},O=function(e){return parseInt(e.substr(1),10)};l=function(e,t){var n=C(e);_[n]=t},u=function(e){var t=C(e);return _[t]},c=function(e){var t=C(e);delete _[t]},d=function(){return Object.keys(_).map(O)},f=function(e){var t=C(e);w[t]=!0},p=function(e){var t=C(e);delete w[t]},h=function(){return Object.keys(w).map(O)}}var k=[],T={onSetChildren:function(e,n){var o=u(e);o?void 0:"production"!==t.env.NODE_ENV?y(!1,"Item must have been set"):m("144"),o.childIDs=n;for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:"Question",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"ARE YOU SURE?",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){return!0},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){return!0};this.setState({showModal:!0,title:e,message:t,confirm:n,cancel:o})}},{key:"hide",value:function(){this.setState({showModal:!1})}},{key:"_confirm",value:function(){this.props.confirm()===!0&&this.hide()}},{key:"_cancel",value:function(){this.props.cancel()===!0&&this.hide()}},{key:"render",value:function(){var e=this.props,t=e.cancel,n=e.confirm,o=e.message,r=e.title,i=e.bsSize,a=e.btn_confirm_label,s=e.btn_cancel_label;return u.default.createElement(c.Modal,{bsSize:i,animation:!1,show:this.state.showModal,onHide:this.hide.bind(this)},u.default.createElement(c.Modal.Header,null,u.default.createElement(c.Modal.Title,null,r||"Modal")),u.default.createElement(c.Modal.Body,null,o),u.default.createElement(c.Modal.Footer,null,n?u.default.createElement(c.Button,{className:"btn-success",onClick:this._confirm.bind(this)},a):void 0,t?u.default.createElement(c.Button,{className:"btn-danger",onClick:this._cancel.bind(this)},s):void 0))}}]),t}(l.Component);d.defaultProps={bsSize:"small",btn_confirm_label:"Confirm",btn_cancel_label:"Cancel"},t.default=d},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"LOAD_STATE":return i({},e,{actors:t.payload.actors,config_type:t.payload.actor_types});case"UPDATE_ACTOR":case"ADD_ACTOR":return i({},e,{actors:i({},e.actors,r({},t.payload.id,t.payload))});case"DELETE_ACTOR":return delete e.actors[t.id],i({},e,{actors:i({},e.actors)});case"SWITCH_ACTOR":return i({},e,{actors:i({},e.actors,r({},t.payload.id,t.payload))});default:return e}});t.default=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.action=t.connect=t.logout=t.login=t.checkout_tag=t.git_pull=t.get_git_status=t.reboot=t.shutdown=t.set_time=t.load_state=void 0;var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"UPDATE_GIT_STATUS":return r({},e,{gitstatus:t.payload,loading:!1});case"GIT_LOADING_STARTED":return r({},e,{loading:!0});case"GIT_LOADING_FINISED":return r({},e,{loading:!1});case"LOAD_STATE":return r({},e,{ready:!0,actions:t.payload.actions,custom_web_menu:t.payload.web_menu});case"CONNECTED":return r({},e,{ready:!0,setup:t.payload.setup,loggedin:t.payload.loggedin});case"LOGOUT_SUCCESS":return r({},e,{loggedin:!1,login_result:void 0});case"LOGIN_FAILED":return r({},e,{login_result:!1});case"LOGGED_IN_SUCCESS":return r({},e,{loggedin:!0});default:return e}});t.default=d},function(e,t,n){e.exports=!n(64)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){function o(e,t){var n=i(e,t);return r(n)?n:void 0}var r=n(618),i=n(648);e.exports=o},function(e,t,n){(function(t){"use strict";var o=n(16),r=n(12),i=function(e){var t=this;if(t.instancePool.length){var n=t.instancePool.pop();return t.call(n,e),n}return new t(e)},a=function(e,t){var n=this;if(n.instancePool.length){var o=n.instancePool.pop();return n.call(o,e,t),o}return new n(e,t)},s=function(e,t,n){var o=this;if(o.instancePool.length){var r=o.instancePool.pop();return o.call(r,e,t,n),r}return new o(e,t,n)},l=function(e,t,n,o){var r=this;if(r.instancePool.length){var i=r.instancePool.pop();return r.call(i,e,t,n,o),i}return new r(e,t,n,o)},u=function(e){var n=this;e instanceof n?void 0:"production"!==t.env.NODE_ENV?r(!1,"Trying to release an instance into a pool of a different type."):o("25"),e.destructor(),n.instancePool.length1){for(var x=Array(b),E=0;E1){for(var b=Array(g),x=0;x0&&void 0!==arguments[0]?arguments[0]:d(),t=arguments[1];switch(t.type){case"LOAD_STATE":return a({},e,{list:t.payload.fermenter,config_type:t.payload.fermentation_controller_types});case"DELETE_FERMENTER":return delete e.list[t.id],a({},e,{list:a({},e.list)});case"UPDATE_FERMENTER_TARGET_TEMP":return a({},e,{list:a({},e.list,i({},t.payload.id,(0,c.default)(e.list[t.payload.id],{target_temp:{$set:t.payload.target_temp}})))});case"UPDATE_FERMENTER_BREWNAME":return a({},e,{list:a({},e.list,i({},t.payload.id,(0,c.default)(e.list[t.payload.id],{brewname:{$set:t.payload.brewname}})))});case"ADD_FERMENTER_STEP":return a({},e,{list:a({},e.list,i({},t.payload.fermenter_id,a({},e.list[t.payload.fermenter_id],{steps:[].concat(r(e.list[t.payload.fermenter_id].steps),[t.payload])})))});case"DELETE_FERMENTER_STEP":return a({},e,{list:a({},e.list,i({},t.payload.fermenter_id,a({},e.list[t.payload.fermenter_id],{steps:e.list[t.payload.fermenter_id].steps.filter(function(e,n){return e.id!==t.payload.id})})))});case"UPDATE_FERMENTER_STEP":return a({},e,{list:a({},e.list,i({},t.payload.fermenter_id,a({},e.list[t.payload.fermenter_id],{steps:e.list[t.payload.fermenter_id].steps.map(function(e,n){return e.id!==t.payload.id?e:a({},e,t.payload)})})))});case"UPDATE_FERMENTER_STEPS":return a({},e,{list:a({},e.list,i({},t.payload.fermenter_id,a({},e.list[t.payload.fermenter_id],{steps:e.list[t.payload.fermenter_id].steps.map(function(e,n){return e.id!==t.payload.id?e:a({},e,t.payload)})})))});case"ADD_FERMENTER":case"UPDATE_FERMENTER":return a({},e,{list:a({},e.list,i({},t.payload.id,t.payload))});default:return e}});t.default=f},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}Object.defineProperty(t,"__esModule",{value:!0}),t.action=t.remove=t.save=t.add=void 0;var i=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"LOAD_STATE":return i({},e,{sensors:t.payload.sensors,config_type:t.payload.sensor_types});case"SENSOR_UPDATE":return i({},e,{sensors:i({},e.sensors,r({},t.payload.id,t.payload))});case"DELETE_SENSOR":return delete e.sensors[t.id],i({},e,{sensors:i({},e.sensors)});case"ADD_SENSOR":case"UPDATE_SENSOR":return i({},e,{sensors:i({},e.sensors,r({},t.payload.id,t.payload))});default:return e}});t.default=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"LOAD_STATE":return i({},e,{list:t.payload.steps,type:t.payload.step_types});case"UPDATE_ALL_STEPS":return i({},e,{list:t.payload});case"ADD_STEP":return i({},e,{list:[].concat(r(e.list),[t.payload])});case"REMOVE_STEP":return i({},e,{list:e.list.filter(function(e,n){return e.id!==t.payload})});case"UPDATE_STEP":return i({},e,{list:e.list.map(function(e,n){return e.id!==t.payload.id?e:i({},e,t.payload)})});default:return e}});t.default=u},function(e,t,n){e.exports={default:n(463),__esModule:!0}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(230),i=o(r);t.default=function(e,t,n){return t in e?(0,i.default)(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(448),i=o(r),a=n(447),s=o(a),l="function"==typeof s.default&&"symbol"==typeof i.default?function(e){return typeof e}:function(e){return e&&"function"==typeof s.default&&e.constructor===s.default&&e!==s.default.prototype?"symbol":typeof e};t.default="function"==typeof s.default&&"symbol"===l(i.default)?function(e){return"undefined"==typeof e?"undefined":l(e)}:function(e){return e&&"function"==typeof s.default&&e.constructor===s.default&&e!==s.default.prototype?"symbol":"undefined"==typeof e?"undefined":l(e)}},function(e,t,n){var o=n(80);e.exports=function(e){if(!o(e))throw TypeError(e+" is not an object!");return e}},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t,n){var o=n(45),r=n(84);e.exports=n(52)?function(e,t,n){return o.f(e,t,r(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t){"use strict";function n(e){return e&&e.ownerDocument||document}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(t)do if(t===e)return!0;while(t=t.parentNode);return!1}Object.defineProperty(t,"__esModule",{value:!0});var i=n(40),a=o(i);t.default=function(){return a.default?function(e,t){return e.contains?e.contains(t):e.compareDocumentPosition?e===t||!!(16&e.compareDocumentPosition(t)):r(e,t)}:r}(),e.exports=t.default},function(e,t,n){(function(e){function o(e,n){var o="b"+t.packets[e.type]+e.data.data;return n(o)}function r(e,n,o){if(!n)return t.encodeBase64Packet(e,o);var r=e.data,i=new Uint8Array(r),a=new Uint8Array(1+r.byteLength);a[0]=g[e.type];for(var s=0;s1?{type:b[r],data:e.substring(1)}:{type:b[r]}:x}var i=new Uint8Array(e),r=i[0],a=f(e,1);return E&&"blob"===n&&(a=new E([a])),{type:b[r],data:a}},t.decodeBase64Packet=function(e,t){var n=b[e.charAt(0)];if(!u)return{type:n,data:{base64:!0,data:e.substr(1)}};var o=u.decode(e.substr(1));return"blob"===t&&E&&(o=new E([o])),{type:n,data:o}},t.encodePayload=function(e,n,o){function r(e){return e.length+":"+e}function i(e,o){t.encodePacket(e,!!a&&n,!0,function(e){o(null,r(e))})}"function"==typeof n&&(o=n,n=null);var a=d(e);return n&&a?E&&!y?t.encodePayloadAsBlob(e,o):t.encodePayloadAsArrayBuffer(e,o):e.length?void l(e,i,function(e,t){return o(t.join(""))}):o("0:")},t.decodePayload=function(e,n,o){if("string"!=typeof e)return t.decodePayloadAsBinary(e,n,o);"function"==typeof n&&(o=n,n=null);var r;if(""==e)return o(x,0,1);for(var i,a,s="",l=0,u=e.length;l0;){for(var s=new Uint8Array(r),l=0===s[0],u="",c=1;255!=s[c];c++){if(u.length>310){a=!0;break}u+=s[c]}if(a)return o(x,0,1);r=f(r,2+u.length),u=parseInt(u);var d=f(r,0,u);if(l)try{d=String.fromCharCode.apply(null,new Uint8Array(d))}catch(e){var p=new Uint8Array(d);d="";for(var c=0;c0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"UPDATE_CONFIG":return i({},e,{list:i({},e.list,r({},t.payload.name,t.payload))});case"LOAD_STATE":return i({},e,{list:t.payload.config});default:return e}});t.default=u},function(e,t){"use strict";var n=!("undefined"==typeof window||!window.document||!window.document.createElement),o={canUseDOM:n,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:n&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:n&&!!window.screen,isInWorker:!n};e.exports=o},function(e,t,n){(function(t){"use strict";var n=function(e,n,o,r,i,a,s,l){if("production"!==t.env.NODE_ENV&&void 0===n)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===n)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[o,r,i,a,s,l],d=0;u=new Error(n.replace(/%s/g,function(){return c[d++]})),u.name="Invariant Violation"}throw u.framesToPop=1,u}};e.exports=n}).call(t,n(2))},function(e,t){"use strict";function n(){for(var e=arguments.length,t=Array(e),n=0;n=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}Object.defineProperty(t,"__esModule",{value:!0}),t.CheckboxField=t.SelectField=t.SliderField=t.NumberField=t.TextField=void 0;var u=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:void 0;if(void 0===e){var t=this.props.form;e={};for(var n in t)switch(t[n].type){case"checkbox":e[t[n].name]=!1;break;default:e[t[n].name]=""}}else this.props.configfield&&!e.hasOwnProperty("config")&&(e.config={});this.setState({showModal:!0,data:e})}},{key:"hide",value:function(){this.setState({showModal:!1})}},{key:"_clear_config",value:function(e){var t={};for(var n in e)t[e[n].name]=e[n].default_value;return t}},{key:"_handle",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(n)this.setState({data:(0,m.default)(this.state.data,{config:r({},e.name,{$set:t.target.value})})});else if(e.clear_config){var o,i=""==t.target.value?{}:this._clear_config(this.props.types[t.target.value].properties);this.setState({data:(0,m.default)(this.state.data,(o={},r(o,e.name,{$set:t.target.value}),r(o,"config",{$set:i}),o))})}else this.setState({data:(0,m.default)(this.state.data,r({},e.name,{$set:t.target.value}))})}},{key:"_handleSlider",value:function(e,t){arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.setState({data:(0,m.default)(this.state.data,r({},e.name,{$set:t}))})}},{key:"_handleCheckBox",value:function(e,t){this.setState({data:(0,m.default)(this.state.data,r({},e.name,{$set:!this.state.data[e.name]}))})}},{key:"render_field",value:function(e,t){var n=this,o=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!e.condition||e.condition(this.state.data)){var r={key:t,value:this.state.data[e.name],label:e.label};switch(e.type){case"text":return f.default.createElement(g,c({onChange:function(t){n._handle(e,t,o)}},r));case"actor":return f.default.createElement(E,c({onChange:function(t){n._handle(e,t,o)}},r,{options:this.props.actors}));case"sensor":return f.default.createElement(E,c({onChange:function(t){n._handle(e,t,o)}},r,{options:this.props.sensors}));case"kettle":return f.default.createElement(E,c({onChange:function(t){n._handle(e,t,o)}},r,{options:this.props.kettle}));case"number":return f.default.createElement(b,c({onChange:function(t){n._handle(e,t,o)}},r));case"select":return f.default.createElement(E,c({onChange:function(t){n._handle(e,t,o)}},r,{options:e.options}));case"checkbox":return f.default.createElement(_,c({checked:this.state.data[e.name]||!1,onChange:function(t){n._handleCheckBox(e,t)}},r));case"slider":return f.default.createElement(x,c({marks:e.marks,min:e.min,max:e.max,onChange:function(t){n._handleSlider(e,t)}},r));default:return}}}},{key:"render_field_config",value:function(e,t){var n=this,o=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(e.configurable)switch(e.type){case"text":return f.default.createElement(g,{key:t,onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],label:e.label,required:e.required,description:e.description});case"actor":return f.default.createElement(E,{onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],key:t,label:e.label,options:this.props.actors,description:e.description});case"sensor":return f.default.createElement(E,{onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],key:t,label:e.label,options:this.props.sensors,description:e.description});case"kettle":return f.default.createElement(E,{onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],key:t,label:e.label,options:this.props.kettle,description:e.description});case"number":return f.default.createElement(b,{key:t,onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],label:e.label,description:e.description});case"select":return f.default.createElement(E,{onChange:function(t){n._handle(e,t,o)},value:this.state.data.config[e.name],key:t,label:e.label,options:e.options,description:e.description});default:return}}},{key:"render_config",value:function(){var e=this;if(void 0!==this.state.data[this.props.configfield]&&""!==this.state.data[this.props.configfield]){var t=this.state.data[this.props.configfield];if(this.props.types.hasOwnProperty(t)){var n=this.props.types[t].properties||[];return n.map(function(t,n){return e.render_field_config(t,n,!0)})}return f.default.createElement("div",null,'Configuration Error. Type "',t,'" configured but not found')}}},{key:"_add",value:function(){this.props.btn_add(this.state.data)===!0&&this.hide()}},{key:"_save",value:function(){this.props.btn_save(this.state.data)===!0&&this.hide()}},{key:"_delete",value:function(){this.props.btn_delete(this.state.data)===!0&&this.hide()}},{key:"render_body",value:function(){var e=this,t=this.props.form;return this.props.configfield?f.default.createElement(p.Row,{className:"show-grid"},f.default.createElement(p.Col,{xs:12,sm:6,md:6},t.map(function(t,n){return e.render_field(t,n)})),f.default.createElement(p.Col,{xs:12,sm:6,md:6},this.render_config())):t.map(function(t,n){return e.render_field(t,n)})}},{key:"render",value:function(){var e=this.props,t=e.add,n=e.save,o=e.remove,r=e.title,i=e.bsSize,a=e.btn_save_label,s=e.btn_add_label,l=e.btn_delete_label;return f.default.createElement(p.Modal,{bsSize:i,animation:!1,show:this.state.showModal,onHide:this.hide.bind(this)},f.default.createElement(p.Modal.Header,null,f.default.createElement(p.Modal.Title,null,r||"Modal")),f.default.createElement(p.Modal.Body,null,this.render_body()),f.default.createElement(p.Modal.Footer,null,f.default.createElement(p.Button,{onClick:this.hide.bind(this)},"Close"),o?f.default.createElement(p.Button,{className:"btn-danger",onClick:this._delete.bind(this)},l):void 0,t?f.default.createElement(p.Button,{className:"btn-success",onClick:this._add.bind(this)},s):void 0,n?f.default.createElement(p.Button,{className:"btn-success",onClick:this._save.bind(this)},a):void 0))}}]),t}(d.Component);w.defaultProps={sensors:{},kettle:{},actors:{},bsSize:"small",btn_save_label:"Update",btn_add_label:"Add",btn_delete_label:"Delete"},t.default=w},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){var o=0;return p.default.Children.map(e,function(e){return p.default.isValidElement(e)?t.call(n,e,o++):e})}function i(e,t,n){var o=0;p.default.Children.forEach(e,function(e){p.default.isValidElement(e)&&t.call(n,e,o++)})}function a(e){var t=0;return p.default.Children.forEach(e,function(e){p.default.isValidElement(e)&&++t}),t}function s(e,t,n){var o=0,r=[];return p.default.Children.forEach(e,function(e){p.default.isValidElement(e)&&t.call(n,e,o++)&&r.push(e)}),r}function l(e,t,n){var o=0,r=void 0;return p.default.Children.forEach(e,function(e){r||p.default.isValidElement(e)&&t.call(n,e,o++)&&(r=e)}),r}function u(e,t,n){var o=0,r=!0;return p.default.Children.forEach(e,function(e){r&&p.default.isValidElement(e)&&(t.call(n,e,o++)||(r=!1))}),r}function c(e,t,n){var o=0,r=!1;return p.default.Children.forEach(e,function(e){r||p.default.isValidElement(e)&&t.call(n,e,o++)&&(r=!0)}),r}function d(e){var t=[];return p.default.Children.forEach(e,function(e){p.default.isValidElement(e)&&t.push(e)}),t}t.__esModule=!0;var f=n(1),p=o(f);t.default={map:r,forEach:i,count:a,find:l,filter:s,every:u,some:c,toArray:d},e.exports=t.default},function(e,t,n){(function(t){"use strict";function o(e){var t=Function.prototype.toString,n=Object.prototype.hasOwnProperty,o=RegExp("^"+t.call(n).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");try{var r=t.call(e);return o.test(r)}catch(e){return!1}}function r(e){var t=u(e);if(t){var n=t.childIDs;c(e),n.forEach(r)}}function i(e,t,n){return"\n in "+(e||"Unknown")+(t?" (at "+t.fileName.replace(/^.*[\\\/]/,"")+":"+t.lineNumber+")":n?" (created by "+n+")":"")}function a(e){return null==e?"#empty":"string"==typeof e||"number"==typeof e?"#text":"string"==typeof e.type?e.type:e.type.displayName||e.type.name||"Unknown"}function s(e){var n,o=T.getDisplayName(e),r=T.getElement(e),a=T.getOwnerID(e);return a&&(n=T.getDisplayName(a)),"production"!==t.env.NODE_ENV?g(r,"ReactComponentTreeHook: Missing React element for debugID %s when building stack",e):void 0,i(o,r&&r._source,n)}var l,u,c,d,f,p,h,m=n(78),v=n(39),y=n(12),g=n(13),b="function"==typeof Array.from&&"function"==typeof Map&&o(Map)&&null!=Map.prototype&&"function"==typeof Map.prototype.keys&&o(Map.prototype.keys)&&"function"==typeof Set&&o(Set)&&null!=Set.prototype&&"function"==typeof Set.prototype.keys&&o(Set.prototype.keys);if(b){var x=new Map,E=new Set;l=function(e,t){x.set(e,t)},u=function(e){return x.get(e)},c=function(e){x.delete(e)},d=function(){return Array.from(x.keys())},f=function(e){E.add(e)},p=function(e){E.delete(e)},h=function(){return Array.from(E.keys())}}else{var _={},w={},C=function(e){return"."+e},O=function(e){return parseInt(e.substr(1),10)};l=function(e,t){var n=C(e);_[n]=t},u=function(e){var t=C(e);return _[t]},c=function(e){var t=C(e);delete _[t]},d=function(){return Object.keys(_).map(O)},f=function(e){var t=C(e);w[t]=!0},p=function(e){var t=C(e);delete w[t]},h=function(){return Object.keys(w).map(O)}}var k=[],T={onSetChildren:function(e,n){var o=u(e);o?void 0:"production"!==t.env.NODE_ENV?y(!1,"Item must have been set"):m("144"),o.childIDs=n;for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:"Question",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"ARE YOU SURE?",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){return!0},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){return!0};this.setState({showModal:!0,title:e,message:t,confirm:n,cancel:o})}},{key:"hide",value:function(){this.setState({showModal:!1})}},{key:"_confirm",value:function(){this.props.confirm()===!0&&this.hide()}},{key:"_cancel",value:function(){this.props.cancel()===!0&&this.hide()}},{key:"render",value:function(){var e=this.props,t=e.cancel,n=e.confirm,o=e.message,r=e.title,i=e.bsSize,a=e.btn_confirm_label,s=e.btn_cancel_label;return u.default.createElement(c.Modal,{bsSize:i,animation:!1,show:this.state.showModal,onHide:this.hide.bind(this)},u.default.createElement(c.Modal.Header,null,u.default.createElement(c.Modal.Title,null,r||"Modal")),u.default.createElement(c.Modal.Body,null,o),u.default.createElement(c.Modal.Footer,null,n?u.default.createElement(c.Button,{className:"btn-success",onClick:this._confirm.bind(this)},a):void 0,t?u.default.createElement(c.Button,{className:"btn-danger",onClick:this._cancel.bind(this)},s):void 0))}}]),t}(l.Component);d.defaultProps={bsSize:"small",btn_confirm_label:"Confirm",btn_cancel_label:"Cancel"},t.default=d},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"LOAD_STATE":return i({},e,{actors:t.payload.actors,config_type:t.payload.actor_types});case"UPDATE_ACTOR":case"ADD_ACTOR":return i({},e,{actors:i({},e.actors,r({},t.payload.id,t.payload))});case"DELETE_ACTOR":return delete e.actors[t.id],i({},e,{actors:i({},e.actors)});case"SWITCH_ACTOR":return i({},e,{actors:i({},e.actors,r({},t.payload.id,t.payload))});default:return e}});t.default=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.action=t.connect=t.logout=t.login=t.checkout_tag=t.git_pull=t.get_git_status=t.reboot=t.shutdown=t.set_time=t.load_state=void 0;var r=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};return function(n,o){return a.default.post("/api/action/"+e,t).then(function(e){})}},function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"UPDATE_GIT_STATUS":return r({},e,{gitstatus:t.payload,loading:!1});case"GIT_LOADING_STARTED":return r({},e,{loading:!0});case"GIT_LOADING_FINISED":return r({},e,{loading:!1});case"LOAD_STATE":return r({},e,{ready:!0,actions:t.payload.actions,custom_web_menu:t.payload.web_menu});case"CONNECTED":return r({},e,{ready:!0,setup:t.payload.setup,loggedin:t.payload.loggedin});case"LOGOUT_SUCCESS":return r({},e,{loggedin:!1,login_result:void 0});case"LOGIN_FAILED":return r({},e,{login_result:!1});case"LOGGED_IN_SUCCESS":return r({},e,{loggedin:!0});default:return e}});t.default=d},function(e,t,n){e.exports=!n(64)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){function o(e,t){var n=i(e,t);return r(n)?n:void 0}var r=n(619),i=n(649);e.exports=o},function(e,t,n){(function(t){"use strict";var o=n(16),r=n(12),i=function(e){var t=this;if(t.instancePool.length){var n=t.instancePool.pop();return t.call(n,e),n}return new t(e)},a=function(e,t){var n=this;if(n.instancePool.length){var o=n.instancePool.pop();return n.call(o,e,t),o}return new n(e,t)},s=function(e,t,n){var o=this;if(o.instancePool.length){var r=o.instancePool.pop();return o.call(r,e,t,n),r}return new o(e,t,n)},l=function(e,t,n,o){var r=this;if(r.instancePool.length){var i=r.instancePool.pop();return r.call(i,e,t,n,o),i}return new r(e,t,n,o)},u=function(e){var n=this;e instanceof n?void 0:"production"!==t.env.NODE_ENV?r(!1,"Trying to release an instance into a pool of a different type."):o("25"),e.destructor(),n.instancePool.length1){for(var x=Array(b),E=0;E1){for(var b=Array(g),x=0;x0&&void 0!==arguments[0]?arguments[0]:d(),t=arguments[1];switch(t.type){case"LOAD_STATE":return a({},e,{list:t.payload.fermenter,config_type:t.payload.fermentation_controller_types});case"DELETE_FERMENTER":return delete e.list[t.id],a({},e,{list:a({},e.list)});case"UPDATE_FERMENTER_TARGET_TEMP":return a({},e,{list:a({},e.list,i({},t.payload.id,(0,c.default)(e.list[t.payload.id],{target_temp:{$set:t.payload.target_temp}})))});case"UPDATE_FERMENTER_BREWNAME":return a({},e,{list:a({},e.list,i({},t.payload.id,(0,c.default)(e.list[t.payload.id],{brewname:{$set:t.payload.brewname}})))});case"ADD_FERMENTER_STEP":return a({},e,{list:a({},e.list,i({},t.payload.fermenter_id,a({},e.list[t.payload.fermenter_id],{steps:[].concat(r(e.list[t.payload.fermenter_id].steps),[t.payload])})))});case"DELETE_FERMENTER_STEP":return a({},e,{list:a({},e.list,i({},t.payload.fermenter_id,a({},e.list[t.payload.fermenter_id],{steps:e.list[t.payload.fermenter_id].steps.filter(function(e,n){return e.id!==t.payload.id})})))});case"UPDATE_FERMENTER_STEP":return a({},e,{list:a({},e.list,i({},t.payload.fermenter_id,a({},e.list[t.payload.fermenter_id],{steps:e.list[t.payload.fermenter_id].steps.map(function(e,n){return e.id!==t.payload.id?e:a({},e,t.payload)})})))});case"UPDATE_FERMENTER_STEPS":return a({},e,{list:a({},e.list,i({},t.payload.fermenter_id,a({},e.list[t.payload.fermenter_id],{steps:e.list[t.payload.fermenter_id].steps.map(function(e,n){return e.id!==t.payload.id?e:a({},e,t.payload)})})))});case"ADD_FERMENTER":case"UPDATE_FERMENTER":return a({},e,{list:a({},e.list,i({},t.payload.id,t.payload))});default:return e}});t.default=f},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}Object.defineProperty(t,"__esModule",{value:!0}),t.action=t.remove=t.save=t.add=void 0;var i=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"LOAD_STATE":return i({},e,{sensors:t.payload.sensors,config_type:t.payload.sensor_types});case"SENSOR_UPDATE":return i({},e,{sensors:i({},e.sensors,r({},t.payload.id,t.payload))});case"DELETE_SENSOR":return delete e.sensors[t.id],i({},e,{sensors:i({},e.sensors)});case"ADD_SENSOR":case"UPDATE_SENSOR":return i({},e,{sensors:i({},e.sensors,r({},t.payload.id,t.payload))});default:return e}});t.default=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:l(),t=arguments[1];switch(t.type){case"LOAD_STATE":return i({},e,{list:t.payload.steps,type:t.payload.step_types});case"UPDATE_ALL_STEPS":return i({},e,{list:t.payload});case"ADD_STEP":return i({},e,{list:[].concat(r(e.list),[t.payload])});case"REMOVE_STEP":return i({},e,{list:e.list.filter(function(e,n){return e.id!==t.payload})});case"UPDATE_STEP":return i({},e,{list:e.list.map(function(e,n){return e.id!==t.payload.id?e:i({},e,t.payload)})});default:return e}});t.default=u},function(e,t,n){e.exports={default:n(464),__esModule:!0}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(231),i=o(r);t.default=function(e,t,n){return t in e?(0,i.default)(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(449),i=o(r),a=n(448),s=o(a),l="function"==typeof s.default&&"symbol"==typeof i.default?function(e){return typeof e}:function(e){return e&&"function"==typeof s.default&&e.constructor===s.default&&e!==s.default.prototype?"symbol":typeof e};t.default="function"==typeof s.default&&"symbol"===l(i.default)?function(e){return"undefined"==typeof e?"undefined":l(e)}:function(e){return e&&"function"==typeof s.default&&e.constructor===s.default&&e!==s.default.prototype?"symbol":"undefined"==typeof e?"undefined":l(e)}},function(e,t,n){var o=n(81);e.exports=function(e){if(!o(e))throw TypeError(e+" is not an object!");return e}},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t,n){var o=n(45),r=n(85);e.exports=n(52)?function(e,t,n){return o.f(e,t,r(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t){"use strict";function n(e){return e&&e.ownerDocument||document}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(t)do if(t===e)return!0;while(t=t.parentNode);return!1}Object.defineProperty(t,"__esModule",{value:!0});var i=n(40),a=o(i);t.default=function(){return a.default?function(e,t){return e.contains?e.contains(t):e.compareDocumentPosition?e===t||!!(16&e.compareDocumentPosition(t)):r(e,t)}:r}(),e.exports=t.default},function(e,t,n){(function(e){function o(e,n){var o="b"+t.packets[e.type]+e.data.data;return n(o)}function r(e,n,o){if(!n)return t.encodeBase64Packet(e,o);var r=e.data,i=new Uint8Array(r),a=new Uint8Array(1+r.byteLength);a[0]=g[e.type];for(var s=0;s1?{type:b[r],data:e.substring(1)}:{type:b[r]}:x}var i=new Uint8Array(e),r=i[0],a=f(e,1);return E&&"blob"===n&&(a=new E([a])),{type:b[r],data:a}},t.decodeBase64Packet=function(e,t){var n=b[e.charAt(0)];if(!u)return{type:n,data:{base64:!0,data:e.substr(1)}};var o=u.decode(e.substr(1));return"blob"===t&&E&&(o=new E([o])),{type:n,data:o}},t.encodePayload=function(e,n,o){function r(e){return e.length+":"+e}function i(e,o){t.encodePacket(e,!!a&&n,!0,function(e){o(null,r(e))})}"function"==typeof n&&(o=n,n=null);var a=d(e);return n&&a?E&&!y?t.encodePayloadAsBlob(e,o):t.encodePayloadAsArrayBuffer(e,o):e.length?void l(e,i,function(e,t){return o(t.join(""))}):o("0:")},t.decodePayload=function(e,n,o){if("string"!=typeof e)return t.decodePayloadAsBinary(e,n,o);"function"==typeof n&&(o=n,n=null);var r;if(""==e)return o(x,0,1);for(var i,a,s="",l=0,u=e.length;l0;){for(var s=new Uint8Array(r),l=0===s[0],u="",c=1;255!=s[c];c++){if(u.length>310){a=!0;break}u+=s[c]}if(a)return o(x,0,1);r=f(r,2+u.length),u=parseInt(u);var d=f(r,0,u);if(l)try{d=String.fromCharCode.apply(null,new Uint8Array(d))}catch(e){var p=new Uint8Array(d);d="";for(var c=0;c0&&void 0!==arguments[0]?arguments[0]:c(),t=arguments[1];switch(t.type){case"LOAD_STATE":return i({},e,{list:t.payload.kettle,config_type:t.payload.controller_types});case"DELETE_KETTLE":return delete e.list[t.id],i({},e,{list:i({},e.list)});case"UPDATE_KETTLE_TARGET_TEMP":return i({},e,{list:i({},e.list,r({},t.payload.id,(0,u.default)(e.list[t.payload.id],{target_temp:{$set:t.payload.target_temp}})))});case"ADD_KETTLE":case"UPDATE_KETTLE":return i({},e,{list:i({},e.list,r({},t.payload.id,t.payload))});default:return e}});t.default=d},function(e,t){e.exports=function(e,t){var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},function(e,t,n){var o=n(145);e.exports=function(e){return Object(o(e))}},function(e,t){var n=0,o=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+o).toString(36))}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(40),i=o(r),a=function(){};i.default&&(a=function(){return document.addEventListener?function(e,t,n,o){return e.addEventListener(t,n,o||!1)}:document.attachEvent?function(e,t,n){return e.attachEvent("on"+t,function(t){t=t||window.event,t.target=t.target||t.srcElement,t.currentTarget=e,n.call(e,t)})}:void 0}()),t.default=a,e.exports=t.default},function(e,t){"use strict";function n(e){return e===e.window?e:9===e.nodeType&&(e.defaultView||e.parentWindow)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){var o="",r="",i=t;if("string"==typeof t){if(void 0===n)return e.style[(0,a.default)(t)]||(0,c.default)(e).getPropertyValue((0,l.default)(t));(i={})[t]=n}Object.keys(i).forEach(function(t){var n=i[t];n||0===n?(0,m.default)(t)?r+=t+"("+n+") ":o+=(0,l.default)(t)+": "+n+";":(0,f.default)(e,(0,l.default)(t))}),r&&(o+=p.transform+": "+r+";"),e.style.cssText+=";"+o}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(255),a=o(i),s=n(532),l=o(s),u=n(527),c=o(u),d=n(528),f=o(d),p=n(161),h=n(529),m=o(h);e.exports=t.default},function(e,t,n){(function(o){function r(){return"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style||window.console&&(console.firebug||console.exception&&console.table)||navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31}function i(){var e=arguments,n=this.useColors;if(e[0]=(n?"%c":"")+this.namespace+(n?" %c":" ")+e[0]+(n?"%c ":" ")+"+"+t.humanize(this.diff),!n)return e;var o="color: "+this.color;e=[e[0],o,"color: inherit"].concat(Array.prototype.slice.call(e,1));var r=0,i=0;return e[0].replace(/%[a-z%]/g,function(e){"%%"!==e&&(r++,"%c"===e&&(i=r))}),e.splice(i,0,o),e}function a(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function s(e){try{null==e?t.storage.removeItem("debug"):t.storage.debug=e}catch(e){}}function l(){try{return t.storage.debug}catch(e){}if("undefined"!=typeof o&&"env"in o)return o.env.DEBUG}function u(){try{return window.localStorage}catch(e){}}t=e.exports=n(540),t.log=a,t.formatArgs=i,t.save=s,t.load=l,t.useColors=r,t.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:u(),t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],t.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},t.enable(l())}).call(t,n(2))},function(e,t,n){(function(t){"use strict";var n={};"production"!==t.env.NODE_ENV&&Object.freeze(n),e.exports=n}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.locationsAreEqual=t.createLocation=void 0;var r=Object.assign||function(e){for(var t=1;t` components. To apply a ref to the component use the callback signature:\n\n https://facebook.github.io/react/docs/more-about-refs.html#the-ref-callback-attribute"):void 0:r=(0,q.default)(e.ref,r),(0,w.cloneElement)(e,(0,l.default)({},t,{ref:r,bsClass:(0,G.prefix)(t,"toggle"),onClick:(0,q.default)(e.props.onClick,this.handleClick),onKeyDown:(0,q.default)(e.props.onKeyDown,this.handleKeyDown)}))},t.prototype.renderMenu=function(e,t){var n=this,r=t.id,i=t.onClose,s=t.onSelect,u=t.rootCloseEvent,c=(0,a.default)(t,["id","onClose","onSelect","rootCloseEvent"]),d=function(e){n.menu=e};return"string"==typeof e.ref?"production"!==o.env.NODE_ENV?(0,B.default)(!1,"String refs are not supported on `` components. To apply a ref to the component use the callback signature:\n\n https://facebook.github.io/react/docs/more-about-refs.html#the-ref-callback-attribute"):void 0:d=(0,q.default)(e.ref,d),(0,w.cloneElement)(e,(0,l.default)({},c,{ref:d,labelledBy:r,bsClass:(0,G.prefix)(c,"menu"),onClose:(0,q.default)(e.props.onClose,i,this.handleClose),onSelect:(0,q.default)(e.props.onSelect,s,function(e,t){return n.handleClose(t,{source:"select"})}),rootCloseEvent:u}))},t.prototype.render=function(){var e,t=this,n=this.props,o=n.componentClass,r=n.id,i=n.dropup,s=n.disabled,u=n.pullRight,c=n.open,d=n.onClose,f=n.onSelect,p=n.role,h=n.bsClass,m=n.className,y=n.rootCloseEvent,g=n.children,b=(0,a.default)(n,["componentClass","id","dropup","disabled","pullRight","open","onClose","onSelect","role","bsClass","className","rootCloseEvent","children"]);delete b.onToggle;var x=(e={},e[h]=!0,e.open=c,e.disabled=s,e);return i&&(x[h]=!1,x.dropup=!0),C.default.createElement(o,(0,l.default)({},b,{className:(0,v.default)(m,x)}),$.default.map(g,function(e){switch(e.props.bsRole){case Z:return t.renderToggle(e,{id:r,disabled:s,open:c,role:p,bsClass:h});case J:return t.renderMenu(e,{id:r,open:c,pullRight:u,bsClass:h,onClose:d,onSelect:f,rootCloseEvent:y});default:return e}}))},t}(C.default.Component);te.propTypes=Q,te.defaultProps=ee,(0,G.bsClass)("dropdown",te);var ne=(0,I.default)(te,{open:"onToggle"});ne.Toggle=W.default,ne.Menu=H.default,t.default=ne,e.exports=t.default}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(5),s=o(a),l=n(7),u=o(l),c=n(6),d=o(c),f=n(9),p=o(f),h=n(1),m=o(h),v=n(3),y=o(v),g=n(343),b=o(g),x={in:y.default.bool,mountOnEnter:y.default.bool,unmountOnExit:y.default.bool,transitionAppear:y.default.bool,timeout:y.default.number,onEnter:y.default.func,onEntering:y.default.func,onEntered:y.default.func,onExit:y.default.func,onExiting:y.default.func,onExited:y.default.func},E={in:!1,timeout:300,mountOnEnter:!1,unmountOnExit:!1,transitionAppear:!1},_=function(e){function t(){return(0,s.default)(this,t),(0,u.default)(this,e.apply(this,arguments))}return(0,d.default)(t,e),t.prototype.render=function(){return m.default.createElement(b.default,(0,i.default)({},this.props,{className:(0,p.default)(this.props.className,"fade"),enteredClassName:"in",enteringClassName:"in"}))},t}(m.default.Component);_.propTypes=x,_.defaultProps=E,t.default=_,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n=t.propTypes,o={},r={};return(0,a.default)(e).forEach(function(e){var t=e[0],i=e[1];n[t]?o[t]=i:r[t]=i}),[o,r]}t.__esModule=!0;var i=n(231),a=o(i);t.default=r,e.exports=t.default},function(e,t,n){(function(t){"use strict";function o(){if(l)for(var e in u){var n=u[e],o=l.indexOf(e);if(o>-1?void 0:"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e):a("96",e),!c.plugins[o]){n.extractEvents?void 0:"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e):a("97",e),c.plugins[o]=n;var i=n.eventTypes;for(var d in i)r(i[d],n,d)?void 0:"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",d,e):a("98",d,e)}}}function r(e,n,o){c.eventNameDispatchConfigs.hasOwnProperty(o)?"production"!==t.env.NODE_ENV?s(!1,"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",o):a("99",o):void 0,c.eventNameDispatchConfigs[o]=e;var r=e.phasedRegistrationNames;if(r){for(var l in r)if(r.hasOwnProperty(l)){var u=r[l];i(u,n,o)}return!0}return!!e.registrationName&&(i(e.registrationName,n,o),!0)}function i(e,n,o){if(c.registrationNameModules[e]?"production"!==t.env.NODE_ENV?s(!1,"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e):a("100",e):void 0,c.registrationNameModules[e]=n,c.registrationNameDependencies[e]=n.eventTypes[o].dependencies,"production"!==t.env.NODE_ENV){var r=e.toLowerCase();c.possibleRegistrationNames[r]=e,"onDoubleClick"===e&&(c.possibleRegistrationNames.ondblclick=e)}}var a=n(16),s=n(12),l=null,u={},c={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},possibleRegistrationNames:"production"!==t.env.NODE_ENV?{}:null,injectEventPluginOrder:function(e){l?"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React."):a("101"):void 0,l=Array.prototype.slice.call(e),o()},injectEventPluginsByName:function(e){var n=!1;for(var r in e)if(e.hasOwnProperty(r)){var i=e[r];u.hasOwnProperty(r)&&u[r]===i||(u[r]?"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",r):a("102",r):void 0,u[r]=i,n=!0)}n&&o()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return c.registrationNameModules[t.registrationName]||null;if(void 0!==t.phasedRegistrationNames){var n=t.phasedRegistrationNames;for(var o in n)if(n.hasOwnProperty(o)){var r=c.registrationNameModules[n[o]];if(r)return r}}return null},_resetEventPlugins:function(){l=null;for(var e in u)u.hasOwnProperty(e)&&delete u[e];c.plugins.length=0;var n=c.eventNameDispatchConfigs;for(var o in n)n.hasOwnProperty(o)&&delete n[o];var r=c.registrationNameModules;for(var i in r)r.hasOwnProperty(i)&&delete r[i];if("production"!==t.env.NODE_ENV){var a=c.possibleRegistrationNames;for(var s in a)a.hasOwnProperty(s)&&delete a[s]}}};e.exports=c}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return Object.prototype.hasOwnProperty.call(e,m)||(e[m]=p++,d[e[m]]={}),d[e[m]]}var r,i=n(19),a=n(122),s=n(828),l=n(329),u=n(863),c=n(202),d={},f=!1,p=0,h={topAbort:"abort",topAnimationEnd:u("animationend")||"animationend",topAnimationIteration:u("animationiteration")||"animationiteration",topAnimationStart:u("animationstart")||"animationstart",topBlur:"blur",topCanPlay:"canplay",topCanPlayThrough:"canplaythrough",topChange:"change",topClick:"click",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topDurationChange:"durationchange",topEmptied:"emptied",topEncrypted:"encrypted",topEnded:"ended",topError:"error",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topLoadedData:"loadeddata",topLoadedMetadata:"loadedmetadata",topLoadStart:"loadstart",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topPause:"pause",topPlay:"play",topPlaying:"playing",topProgress:"progress",topRateChange:"ratechange",topScroll:"scroll",topSeeked:"seeked",topSeeking:"seeking",topSelectionChange:"selectionchange",topStalled:"stalled",topSuspend:"suspend",topTextInput:"textInput",topTimeUpdate:"timeupdate",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topTransitionEnd:u("transitionend")||"transitionend",topVolumeChange:"volumechange",topWaiting:"waiting",topWheel:"wheel"},m="_reactListenersID"+String(Math.random()).slice(2),v=i({},s,{ReactEventListener:null,injection:{injectReactEventListener:function(e){e.setHandleTopLevel(v.handleTopLevel),v.ReactEventListener=e}},setEnabled:function(e){v.ReactEventListener&&v.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!v.ReactEventListener||!v.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,r=o(n),i=a.registrationNameDependencies[e],s=0;s]/;e.exports=o},function(e,t,n){"use strict";var o,r=n(22),i=n(191),a=/^[ \r\n\t\f]/,s=/<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/,l=n(198),u=l(function(e,t){if(e.namespaceURI!==i.svg||"innerHTML"in e)e.innerHTML=t;else{o=o||document.createElement("div"),o.innerHTML=""+t+"";for(var n=o.firstChild;n.firstChild;)e.appendChild(n.firstChild)}});if(r.canUseDOM){var c=document.createElement("div");c.innerHTML=" ",""===c.innerHTML&&(u=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),a.test(t)||"<"===t[0]&&s.test(t)){e.innerHTML=String.fromCharCode(65279)+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t}),c=null}e.exports=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(){function e(){for(var e=arguments.length,t=Array(e),o=0;o>",s=i||n;if(null==t[n])return new Error("The "+r+" `"+s+"` is required to make "+("`"+a+"` accessible for users of assistive ")+"technologies such as screen readers.");for(var l=arguments.length,u=Array(l>5?l-5:0),c=5;c>",l=a||o;if(null==n[o])return t?new Error("Required "+i+" `"+l+"` was not specified "+("in `"+s+"`.")):null;for(var u=arguments.length,c=Array(u>6?u-6:0),d=6;d may have only one child element"),this.unlisten=o.listen(function(){e.setState({match:e.computeMatch(o.location.pathname)})})},t.prototype.componentWillReceiveProps=function(e){(0,u.default)(this.props.history===e.history,"You cannot change ")},t.prototype.componentWillUnmount=function(){this.unlisten()},t.prototype.render=function(){var e=this.props.children;return e?p.default.Children.only(e):null},t}(p.default.Component);v.propTypes={history:m.default.object.isRequired,children:m.default.node},v.contextTypes={router:m.default.object},v.childContextTypes={router:m.default.object.isRequired},t.default=v},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(702),i=o(r),a={},s=1e4,l=0,u=function(e,t){var n=""+t.end+t.strict+t.sensitive,o=a[n]||(a[n]={});if(o[e])return o[e];var r=[],u=(0,i.default)(e,r,t),c={re:u,keys:r};return l1&&void 0!==arguments[1]?arguments[1]:{};"string"==typeof t&&(t={path:t});var n=t,o=n.path,r=void 0===o?"/":o,i=n.exact,a=void 0!==i&&i,s=n.strict,l=void 0!==s&&s,c=n.sensitive,d=void 0!==c&&c,f=u(r,{end:a,strict:l,sensitive:d}),p=f.re,h=f.keys,m=p.exec(e);if(!m)return null;var v=m[0],y=m.slice(1),g=e===v;return a&&!g?null:{path:r,url:"/"===r&&""===v?"/":v,isExact:g,params:h.reduce(function(e,t,n){return e[t.name]=y[n],e},{})}};t.default=c},function(e,t){"use strict";function n(e,t,n){var o=e.slice(0);if(n>=o.length)for(var r=n-o.length;r--+1;)o.push(void 0);return o.splice(n,0,o.splice(t,1)[0]),o}function o(e){for(var t=arguments.length,n=Array(t>1?t-1:0),o=1;ot?t:n}function a(e){return"px"===e.substr(-2)?parseFloat(e):0}function s(e){var t=window.getComputedStyle(e);return{top:a(t.marginTop),right:a(t.marginRight),bottom:a(t.marginBottom),left:a(t.marginLeft)}}function l(e,t){var n=t.displayName||t.name;return n?e+"("+n+")":e}Object.defineProperty(t,"__esModule",{value:!0}),t.arrayMove=n,t.omit=o,t.closest=r,t.limit=i,t.getElementMargin=s,t.provideDisplayName=l;t.events={start:["touchstart","mousedown"],move:["touchmove","mousemove"],end:["touchend","touchcancel","mouseup"]},t.vendorPrefix=function(){if("undefined"==typeof window||"undefined"==typeof document)return"";var e=window.getComputedStyle(document.documentElement,"")||["-moz-hidden-iframe"],t=(Array.prototype.slice.call(e).join("").match(/-(moz|webkit|ms)-/)||""===e.OLink&&["","o"])[1];switch(t){case"ms":return"ms";default:return t&&t.length?t[0].toUpperCase()+t.substr(1):""}}()},function(e,t,n){(function(t){"use strict";var n=!1;if("production"!==t.env.NODE_ENV)try{Object.defineProperty({},"x",{get:function(){}}),n=!0}catch(e){}e.exports=n}).call(t,n(2))},function(e,t,n){(function(o){function r(){return"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style||window.console&&(console.firebug||console.exception&&console.table)||navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31}function i(){var e=arguments,n=this.useColors;if(e[0]=(n?"%c":"")+this.namespace+(n?" %c":" ")+e[0]+(n?"%c ":" ")+"+"+t.humanize(this.diff),!n)return e;var o="color: "+this.color;e=[e[0],o,"color: inherit"].concat(Array.prototype.slice.call(e,1));var r=0,i=0;return e[0].replace(/%[a-z%]/g,function(e){"%%"!==e&&(r++,"%c"===e&&(i=r))}),e.splice(i,0,o),e}function a(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function s(e){try{null==e?t.storage.removeItem("debug"):t.storage.debug=e}catch(e){}}function l(){try{return t.storage.debug}catch(e){}if("undefined"!=typeof o&&"env"in o)return o.env.DEBUG}function u(){try{return window.localStorage}catch(e){}}t=e.exports=n(934),t.log=a,t.formatArgs=i,t.save=s,t.load=l,t.useColors=r,t.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:u(),t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],t.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},t.enable(l())}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n,o,r){n&&(e._notifying=!0,n.call.apply(n,[e,o].concat(r)),e._notifying=!1),e._values[t]=o,e.unmounted||e.forceUpdate()}t.__esModule=!0;var i=n(949),a=o(i),s={shouldComponentUpdate:function(){return!this._notifying}};t.default=(0,a.default)(s,r),e.exports=t.default},function(e,t,n){(function(t){"use strict";function o(e,t){!i.isUndefined(e)&&i.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function r(){var e;return"undefined"!=typeof XMLHttpRequest?e=n(214):"undefined"!=typeof t&&(e=n(214)),e}var i=n(31),a=n(394),s={"Content-Type":"application/x-www-form-urlencoded"},l={adapter:r(),transformRequest:[function(e,t){return a(t,"Content-Type"),i.isFormData(e)||i.isArrayBuffer(e)||i.isBuffer(e)||i.isStream(e)||i.isFile(e)||i.isBlob(e)?e:i.isArrayBufferView(e)?e.buffer:i.isURLSearchParams(e)?(o(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):i.isObject(e)?(o(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return e>=200&&e<300}};l.headers={common:{Accept:"application/json, text/plain, */*"}},i.forEach(["delete","get","head"],function(e){l.headers[e]={}}),i.forEach(["post","put","patch"],function(e){l.headers[e]=i.merge(s)}),e.exports=l}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),i=n(28),a=o(i),s=n(50),l=function(e,t){return{title:"Actor Modal",bsSize:"large",form:[{label:"Name",name:"name",type:"text"},{label:"Hide on Dashboard",name:"hide",type:"checkbox"},{label:"Type",clear_config:!0,name:"type",type:"select",options:Object.keys(e.actor.config_type)}],types:e.actor.config_type,configfield:"type",actors:e.actor.actors,sensors:e.sensor.sensors,kettle:e.kettle.list}},u=function(e,t){return{btn_save:function(t){return e((0,s.save)(t)),!0},btn_add:function(t){return e((0,s.add)(t)),!0},btn_delete:function(t){return e((0,s.remove)(t)),!0}}},c=(0,r.connect)(l,u,null,{withRef:!0})(a.default);t.default=c},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=o(r),a=n(11),s=n(28),l=o(s),u=n(50),c={0:i.default.createElement("strong",null,"0%"),25:"25%",50:"50%",75:"75%",100:{style:{color:"red"},label:i.default.createElement("strong",null,"100%")}},d=function(e,t){return{title:t.actor_name?"Power for "+t.actor_name:"Power for Actor",form:[{label:"Power",name:"power",type:"slider",min:0,max:100,marks:c}]}},f=function(e,t){return{btn_save:function(n){return e((0,u.set_power)(t.actor_id,n.power)),!0},btn_add:function(e){return!0},btn_delete:function(e){return!0}}};t.default=(0,a.connect)(d,f,null,{withRef:!0})(l.default)},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.load_data=t.clear_log=t.load_brew_actions=t.load_files=void 0;var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:s(),t=arguments[1];switch(t.type){case"UPDATE_FILES":return r({},e,{files:t.payload});case"REMOVE_FILE":return r({},e,{files:e.files.filter(function(e,n){return e!==t.file})});case"SENSOR_DATA_LOADED":return r({},e,{chart_config:r({},e.chart_config,{series:t.payload})});case"UPDATE_ACTIONS":return r({},e,{chart_config:r({},e.chart_config,{xAxis:r({},e.chart_config.xAxis,{plotLines:t.payload})})});default:return e}});t.default=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:s(),t=arguments[1];switch(t.type){case"UPDATE_RECIPE_BOOK":return[].concat(r(t.payload));default:return e}});t.save_recipe=function(){return function(e,t){return a.default.post("/api/recipebook/save").then(function(t){e(l())})}};t.default=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),i=n(28),a=o(i),s=n(58),l=function(e,t){return{title:"Sensor Modal",bsSize:"large",form:[{label:"Name",name:"name",type:"text"},{label:"Type",clear_config:!0,name:"type",type:"select",options:Object.keys(e.sensor.config_type)},{label:"Hide on Dashboard",name:"hide",type:"checkbox"}],types:e.sensor.config_type,configfield:"type",actors:e.actor.actors,sensors:e.sensor.sensors,kettle:e.kettle.list}},u=function(e,t,n){return{btn_save:function(t){return e((0,s.save)(t)),!0},btn_add:function(t){return e((0,s.add)(t)),!0},btn_delete:function(t){return e((0,s.remove)(t)),!0}}},c=(0,r.connect)(l,u,null,{withRef:!0})(a.default);t.default=c},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){var o=n(466);e.exports=function(e,t,n){if(o(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},function(e,t){e.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e);return e}},function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(e,t){e.exports=!0},function(e,t,n){var o=n(63),r=n(481),i=n(146),a=n(152)("IE_PROTO"),s=function(){},l="prototype",u=function(){var e,t=n(235)("iframe"),o=i.length,r="<",a=">";for(t.style.display="none",n(472).appendChild(t),t.src="javascript:",e=t.contentWindow.document,e.open(),e.write(r+"script"+a+"document.F=Object"+r+"/script"+a),e.close(),u=e.F;o--;)delete u[l][i[o]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[l]=o(e),n=new s,s[l]=null,n[a]=e):n=u(),void 0===t?n:r(n,t)}},function(e,t,n){var o=n(83),r=n(84),i=n(46),a=n(155),s=n(53),l=n(236),u=Object.getOwnPropertyDescriptor;t.f=n(52)?u:function(e,t){if(e=i(e),t=a(t,!0),l)try{return u(e,t)}catch(e){}if(s(e,t))return r(!o.f.call(e,t),e[t])}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var o=n(45).f,r=n(53),i=n(36)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,i)&&o(e,i,{configurable:!0,value:t})}},function(e,t,n){var o=n(153)("keys"),r=n(103);e.exports=function(e){return o[e]||(o[e]=r(e))}},function(e,t,n){var o=n(44),r="__core-js_shared__",i=o[r]||(o[r]={});e.exports=function(e){return i[e]||(i[e]={})}},function(e,t){var n=Math.ceil,o=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?o:n)(e)}},function(e,t,n){var o=n(80);e.exports=function(e,t){if(!o(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!o(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){var o=n(44),r=n(26),i=n(147),a=n(157),s=n(45).f;e.exports=function(e){var t=r.Symbol||(r.Symbol=i?{}:o.Symbol||{});"_"==e.charAt(0)||e in t||s(t,e,{value:a.f(e)})}},function(e,t,n){t.f=n(36)},function(e,t){e.exports=function(){var e=[];return e.toString=function(){for(var e=[],t=0;t=0?t:0)+"#"+e)},b=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,l.default)(p.canUseDOM,"Hash history needs a DOM");var t=window.history,n=(0,p.supportsGoWithoutReloadUsingHash)(),o=e.getUserConfirmation,i=void 0===o?p.getConfirmation:o,s=e.hashType,d=void 0===s?"slash":s,b=e.basename?(0,c.stripTrailingSlash)((0,c.addLeadingSlash)(e.basename)):"",x=m[d],E=x.encodePath,_=x.decodePath,w=function(){var e=_(v());return(0,a.default)(!b||(0,c.hasBasename)(e,b),'You are attempting to use a basename on a page whose URL path does not begin with the basename. Expected path "'+e+'" to begin with "'+b+'".'),b&&(e=(0,c.stripBasename)(e,b)),(0,u.createLocation)(e)},C=(0,f.default)(),O=function(e){r(Y,e),Y.length=t.length,C.notifyListeners(Y.location,Y.action)},k=!1,T=null,N=function(){var e=v(),t=E(e);if(e!==t)g(t);else{var n=w(),o=Y.location;if(!k&&(0,u.locationsAreEqual)(o,n))return;if(T===(0,c.createPath)(n))return;T=null,P(n)}},P=function(e){if(k)k=!1,O();else{var t="POP";C.confirmTransitionTo(e,t,i,function(n){n?O({action:t,location:e}):S(e)})}},S=function(e){var t=Y.location,n=R.lastIndexOf((0,c.createPath)(t));n===-1&&(n=0);var o=R.lastIndexOf((0,c.createPath)(e));o===-1&&(o=0);var r=n-o;r&&(k=!0,B(r))},M=v(),A=E(M);M!==A&&g(A);var D=w(),R=[(0,c.createPath)(D)],j=function(e){return"#"+E(b+(0,c.createPath)(e))},I=function(e,t){(0,a.default)(void 0===t,"Hash history cannot push state; it is ignored");var n="PUSH",o=(0,u.createLocation)(e,void 0,void 0,Y.location);C.confirmTransitionTo(o,n,i,function(e){if(e){var t=(0,c.createPath)(o),r=E(b+t),i=v()!==r;if(i){T=t,y(r);var s=R.lastIndexOf((0,c.createPath)(Y.location)),l=R.slice(0,s===-1?0:s+1);l.push(t),R=l,O({action:n,location:o})}else(0,a.default)(!1,"Hash history cannot PUSH the same path; a new entry will not be added to the history stack"),O()}})},L=function(e,t){(0,a.default)(void 0===t,"Hash history cannot replace state; it is ignored");var n="REPLACE",o=(0,u.createLocation)(e,void 0,void 0,Y.location);C.confirmTransitionTo(o,n,i,function(e){if(e){var t=(0,c.createPath)(o),r=E(b+t),i=v()!==r;i&&(T=t,g(r));var a=R.indexOf((0,c.createPath)(Y.location));a!==-1&&(R[a]=t),O({action:n,location:o})}})},B=function(e){(0,a.default)(n,"Hash history go(n) causes a full page reload in this browser"),t.go(e)},V=function(){return B(-1)},F=function(){return B(1)},U=0,H=function(e){U+=e,1===U?(0,p.addEventListener)(window,h,N):0===U&&(0,p.removeEventListener)(window,h,N)},z=!1,W=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=C.setPrompt(e);return z||(H(1),z=!0),function(){return z&&(z=!1,H(-1)),t()}},G=function(e){var t=C.appendListener(e);return H(1),function(){H(-1),t()}},Y={length:t.length,action:"POP",location:D,createHref:j,push:I,replace:L,go:B,goBack:V,goForward:F,block:W,listen:G};return Y};t.default=b},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(15),i=o(r),a=function(){var e=null,t=function(t){return(0,i.default)(null==e,"A history supports only one prompt at a time"),e=t,function(){e===t&&(e=null)}},n=function(t,n,o,r){if(null!=e){var a="function"==typeof e?e(t,n):e;"string"==typeof a?"function"==typeof o?o(a,r):((0,i.default)(!1,"A history needs a getUserConfirmation function in order to use a prompt message"),r(!0)):r(a!==!1)}else r(!0)},o=[],r=function(e){var t=!0,n=function(){t&&e.apply(void 0,arguments)};return o.push(n),function(){t=!1,o=o.filter(function(e){return e!==n})}},a=function(){for(var e=arguments.length,t=Array(e),n=0;n2&&void 0!==arguments[2]?arguments[2]:{},o="";if(!t)return o;var i=n.indent,a=void 0===i?0:i,l=t.fallbacks;if(a++,l)if(Array.isArray(l))for(var u=0;u0&&void 0!==arguments[0]?arguments[0]:c(),t=arguments[1];switch(t.type){case"LOAD_STATE":return i({},e,{list:t.payload.kettle,config_type:t.payload.controller_types});case"DELETE_KETTLE":return delete e.list[t.id],i({},e,{list:i({},e.list)});case"UPDATE_KETTLE_TARGET_TEMP":return i({},e,{list:i({},e.list,r({},t.payload.id,(0,u.default)(e.list[t.payload.id],{target_temp:{$set:t.payload.target_temp}})))});case"ADD_KETTLE":case"UPDATE_KETTLE":return i({},e,{list:i({},e.list,r({},t.payload.id,t.payload))});default:return e}});t.default=d},function(e,t){e.exports=function(e,t){var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},function(e,t,n){var o=n(146);e.exports=function(e){return Object(o(e))}},function(e,t){var n=0,o=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+o).toString(36))}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(40),i=o(r),a=function(){};i.default&&(a=function(){return document.addEventListener?function(e,t,n,o){return e.addEventListener(t,n,o||!1)}:document.attachEvent?function(e,t,n){return e.attachEvent("on"+t,function(t){t=t||window.event,t.target=t.target||t.srcElement,t.currentTarget=e,n.call(e,t)})}:void 0}()),t.default=a,e.exports=t.default},function(e,t){"use strict";function n(e){return e===e.window?e:9===e.nodeType&&(e.defaultView||e.parentWindow)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){var o="",r="",i=t;if("string"==typeof t){if(void 0===n)return e.style[(0,a.default)(t)]||(0,c.default)(e).getPropertyValue((0,l.default)(t));(i={})[t]=n}Object.keys(i).forEach(function(t){var n=i[t];n||0===n?(0,m.default)(t)?r+=t+"("+n+") ":o+=(0,l.default)(t)+": "+n+";":(0,f.default)(e,(0,l.default)(t))}),r&&(o+=p.transform+": "+r+";"),e.style.cssText+=";"+o}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(256),a=o(i),s=n(533),l=o(s),u=n(528),c=o(u),d=n(529),f=o(d),p=n(162),h=n(530),m=o(h);e.exports=t.default},function(e,t,n){(function(o){function r(){return"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style||window.console&&(console.firebug||console.exception&&console.table)||navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31}function i(){var e=arguments,n=this.useColors;if(e[0]=(n?"%c":"")+this.namespace+(n?" %c":" ")+e[0]+(n?"%c ":" ")+"+"+t.humanize(this.diff),!n)return e;var o="color: "+this.color;e=[e[0],o,"color: inherit"].concat(Array.prototype.slice.call(e,1));var r=0,i=0;return e[0].replace(/%[a-z%]/g,function(e){"%%"!==e&&(r++,"%c"===e&&(i=r))}),e.splice(i,0,o),e}function a(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function s(e){try{null==e?t.storage.removeItem("debug"):t.storage.debug=e}catch(e){}}function l(){try{return t.storage.debug}catch(e){}if("undefined"!=typeof o&&"env"in o)return o.env.DEBUG}function u(){try{return window.localStorage}catch(e){}}t=e.exports=n(541),t.log=a,t.formatArgs=i,t.save=s,t.load=l,t.useColors=r,t.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:u(),t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],t.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},t.enable(l())}).call(t,n(2))},function(e,t,n){(function(t){"use strict";var n={};"production"!==t.env.NODE_ENV&&Object.freeze(n),e.exports=n}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.locationsAreEqual=t.createLocation=void 0;var r=Object.assign||function(e){for(var t=1;t` components. To apply a ref to the component use the callback signature:\n\n https://facebook.github.io/react/docs/more-about-refs.html#the-ref-callback-attribute"):void 0:r=(0,q.default)(e.ref,r),(0,w.cloneElement)(e,(0,l.default)({},t,{ref:r,bsClass:(0,G.prefix)(t,"toggle"),onClick:(0,q.default)(e.props.onClick,this.handleClick),onKeyDown:(0,q.default)(e.props.onKeyDown,this.handleKeyDown)}))},t.prototype.renderMenu=function(e,t){var n=this,r=t.id,i=t.onClose,s=t.onSelect,u=t.rootCloseEvent,c=(0,a.default)(t,["id","onClose","onSelect","rootCloseEvent"]),d=function(e){n.menu=e};return"string"==typeof e.ref?"production"!==o.env.NODE_ENV?(0,B.default)(!1,"String refs are not supported on `` components. To apply a ref to the component use the callback signature:\n\n https://facebook.github.io/react/docs/more-about-refs.html#the-ref-callback-attribute"):void 0:d=(0,q.default)(e.ref,d),(0,w.cloneElement)(e,(0,l.default)({},c,{ref:d,labelledBy:r,bsClass:(0,G.prefix)(c,"menu"),onClose:(0,q.default)(e.props.onClose,i,this.handleClose),onSelect:(0,q.default)(e.props.onSelect,s,function(e,t){return n.handleClose(t,{source:"select"})}),rootCloseEvent:u}))},t.prototype.render=function(){var e,t=this,n=this.props,o=n.componentClass,r=n.id,i=n.dropup,s=n.disabled,u=n.pullRight,c=n.open,d=n.onClose,f=n.onSelect,p=n.role,h=n.bsClass,m=n.className,y=n.rootCloseEvent,g=n.children,b=(0,a.default)(n,["componentClass","id","dropup","disabled","pullRight","open","onClose","onSelect","role","bsClass","className","rootCloseEvent","children"]);delete b.onToggle;var x=(e={},e[h]=!0,e.open=c,e.disabled=s,e);return i&&(x[h]=!1,x.dropup=!0),C.default.createElement(o,(0,l.default)({},b,{className:(0,v.default)(m,x)}),$.default.map(g,function(e){switch(e.props.bsRole){case Z:return t.renderToggle(e,{id:r,disabled:s,open:c,role:p,bsClass:h});case J:return t.renderMenu(e,{id:r,open:c,pullRight:u,bsClass:h,onClose:d,onSelect:f,rootCloseEvent:y});default:return e}}))},t}(C.default.Component);te.propTypes=Q,te.defaultProps=ee,(0,G.bsClass)("dropdown",te);var ne=(0,I.default)(te,{open:"onToggle"});ne.Toggle=W.default,ne.Menu=H.default,t.default=ne,e.exports=t.default}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(5),s=o(a),l=n(7),u=o(l),c=n(6),d=o(c),f=n(9),p=o(f),h=n(1),m=o(h),v=n(3),y=o(v),g=n(344),b=o(g),x={in:y.default.bool,mountOnEnter:y.default.bool,unmountOnExit:y.default.bool,transitionAppear:y.default.bool,timeout:y.default.number,onEnter:y.default.func,onEntering:y.default.func,onEntered:y.default.func,onExit:y.default.func,onExiting:y.default.func,onExited:y.default.func},E={in:!1,timeout:300,mountOnEnter:!1,unmountOnExit:!1,transitionAppear:!1},_=function(e){function t(){return(0,s.default)(this,t),(0,u.default)(this,e.apply(this,arguments))}return(0,d.default)(t,e),t.prototype.render=function(){return m.default.createElement(b.default,(0,i.default)({},this.props,{className:(0,p.default)(this.props.className,"fade"),enteredClassName:"in",enteringClassName:"in"}))},t}(m.default.Component);_.propTypes=x,_.defaultProps=E,t.default=_,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n=t.propTypes,o={},r={};return(0,a.default)(e).forEach(function(e){var t=e[0],i=e[1];n[t]?o[t]=i:r[t]=i}),[o,r]}t.__esModule=!0;var i=n(232),a=o(i);t.default=r,e.exports=t.default},function(e,t,n){(function(t){"use strict";function o(){if(l)for(var e in u){var n=u[e],o=l.indexOf(e);if(o>-1?void 0:"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Cannot inject event plugins that do not exist in the plugin ordering, `%s`.",e):a("96",e),!c.plugins[o]){n.extractEvents?void 0:"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Event plugins must implement an `extractEvents` method, but `%s` does not.",e):a("97",e),c.plugins[o]=n;var i=n.eventTypes;for(var d in i)r(i[d],n,d)?void 0:"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Failed to publish event `%s` for plugin `%s`.",d,e):a("98",d,e)}}}function r(e,n,o){c.eventNameDispatchConfigs.hasOwnProperty(o)?"production"!==t.env.NODE_ENV?s(!1,"EventPluginHub: More than one plugin attempted to publish the same event name, `%s`.",o):a("99",o):void 0,c.eventNameDispatchConfigs[o]=e;var r=e.phasedRegistrationNames;if(r){for(var l in r)if(r.hasOwnProperty(l)){var u=r[l];i(u,n,o)}return!0}return!!e.registrationName&&(i(e.registrationName,n,o),!0)}function i(e,n,o){if(c.registrationNameModules[e]?"production"!==t.env.NODE_ENV?s(!1,"EventPluginHub: More than one plugin attempted to publish the same registration name, `%s`.",e):a("100",e):void 0,c.registrationNameModules[e]=n,c.registrationNameDependencies[e]=n.eventTypes[o].dependencies,"production"!==t.env.NODE_ENV){var r=e.toLowerCase();c.possibleRegistrationNames[r]=e,"onDoubleClick"===e&&(c.possibleRegistrationNames.ondblclick=e)}}var a=n(16),s=n(12),l=null,u={},c={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},possibleRegistrationNames:"production"!==t.env.NODE_ENV?{}:null,injectEventPluginOrder:function(e){l?"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Cannot inject event plugin ordering more than once. You are likely trying to load more than one copy of React."):a("101"):void 0,l=Array.prototype.slice.call(e),o()},injectEventPluginsByName:function(e){var n=!1;for(var r in e)if(e.hasOwnProperty(r)){var i=e[r];u.hasOwnProperty(r)&&u[r]===i||(u[r]?"production"!==t.env.NODE_ENV?s(!1,"EventPluginRegistry: Cannot inject two different event plugins using the same name, `%s`.",r):a("102",r):void 0,u[r]=i,n=!0)}n&&o()},getPluginModuleForEvent:function(e){var t=e.dispatchConfig;if(t.registrationName)return c.registrationNameModules[t.registrationName]||null;if(void 0!==t.phasedRegistrationNames){var n=t.phasedRegistrationNames;for(var o in n)if(n.hasOwnProperty(o)){var r=c.registrationNameModules[n[o]];if(r)return r}}return null},_resetEventPlugins:function(){l=null;for(var e in u)u.hasOwnProperty(e)&&delete u[e];c.plugins.length=0;var n=c.eventNameDispatchConfigs;for(var o in n)n.hasOwnProperty(o)&&delete n[o];var r=c.registrationNameModules;for(var i in r)r.hasOwnProperty(i)&&delete r[i];if("production"!==t.env.NODE_ENV){var a=c.possibleRegistrationNames;for(var s in a)a.hasOwnProperty(s)&&delete a[s]}}};e.exports=c}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return Object.prototype.hasOwnProperty.call(e,m)||(e[m]=p++,d[e[m]]={}),d[e[m]]}var r,i=n(19),a=n(122),s=n(829),l=n(330),u=n(864),c=n(203),d={},f=!1,p=0,h={topAbort:"abort",topAnimationEnd:u("animationend")||"animationend",topAnimationIteration:u("animationiteration")||"animationiteration",topAnimationStart:u("animationstart")||"animationstart",topBlur:"blur",topCanPlay:"canplay",topCanPlayThrough:"canplaythrough",topChange:"change",topClick:"click",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topDurationChange:"durationchange",topEmptied:"emptied",topEncrypted:"encrypted",topEnded:"ended",topError:"error",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topLoadedData:"loadeddata",topLoadedMetadata:"loadedmetadata",topLoadStart:"loadstart",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topPause:"pause",topPlay:"play",topPlaying:"playing",topProgress:"progress",topRateChange:"ratechange",topScroll:"scroll",topSeeked:"seeked",topSeeking:"seeking",topSelectionChange:"selectionchange",topStalled:"stalled",topSuspend:"suspend",topTextInput:"textInput",topTimeUpdate:"timeupdate",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topTransitionEnd:u("transitionend")||"transitionend",topVolumeChange:"volumechange",topWaiting:"waiting",topWheel:"wheel"},m="_reactListenersID"+String(Math.random()).slice(2),v=i({},s,{ReactEventListener:null,injection:{injectReactEventListener:function(e){e.setHandleTopLevel(v.handleTopLevel),v.ReactEventListener=e}},setEnabled:function(e){v.ReactEventListener&&v.ReactEventListener.setEnabled(e)},isEnabled:function(){return!(!v.ReactEventListener||!v.ReactEventListener.isEnabled())},listenTo:function(e,t){for(var n=t,r=o(n),i=a.registrationNameDependencies[e],s=0;s]/;e.exports=o},function(e,t,n){"use strict";var o,r=n(22),i=n(192),a=/^[ \r\n\t\f]/,s=/<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/,l=n(199),u=l(function(e,t){if(e.namespaceURI!==i.svg||"innerHTML"in e)e.innerHTML=t;else{o=o||document.createElement("div"),o.innerHTML=""+t+"";for(var n=o.firstChild;n.firstChild;)e.appendChild(n.firstChild)}});if(r.canUseDOM){var c=document.createElement("div");c.innerHTML=" ",""===c.innerHTML&&(u=function(e,t){if(e.parentNode&&e.parentNode.replaceChild(e,e),a.test(t)||"<"===t[0]&&s.test(t)){e.innerHTML=String.fromCharCode(65279)+t;var n=e.firstChild;1===n.data.length?e.removeChild(n):n.deleteData(0,1)}else e.innerHTML=t}),c=null}e.exports=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(){function e(){for(var e=arguments.length,t=Array(e),o=0;o>",s=i||n;if(null==t[n])return new Error("The "+r+" `"+s+"` is required to make "+("`"+a+"` accessible for users of assistive ")+"technologies such as screen readers.");for(var l=arguments.length,u=Array(l>5?l-5:0),c=5;c>",l=a||o;if(null==n[o])return t?new Error("Required "+i+" `"+l+"` was not specified "+("in `"+s+"`.")):null;for(var u=arguments.length,c=Array(u>6?u-6:0),d=6;d may have only one child element"),this.unlisten=o.listen(function(){e.setState({match:e.computeMatch(o.location.pathname)})})},t.prototype.componentWillReceiveProps=function(e){(0,u.default)(this.props.history===e.history,"You cannot change ")},t.prototype.componentWillUnmount=function(){this.unlisten()},t.prototype.render=function(){var e=this.props.children;return e?p.default.Children.only(e):null},t}(p.default.Component);v.propTypes={history:m.default.object.isRequired,children:m.default.node},v.contextTypes={router:m.default.object},v.childContextTypes={router:m.default.object.isRequired},t.default=v},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(703),i=o(r),a={},s=1e4,l=0,u=function(e,t){var n=""+t.end+t.strict+t.sensitive,o=a[n]||(a[n]={});if(o[e])return o[e];var r=[],u=(0,i.default)(e,r,t),c={re:u,keys:r};return l1&&void 0!==arguments[1]?arguments[1]:{};"string"==typeof t&&(t={path:t});var n=t,o=n.path,r=void 0===o?"/":o,i=n.exact,a=void 0!==i&&i,s=n.strict,l=void 0!==s&&s,c=n.sensitive,d=void 0!==c&&c,f=u(r,{end:a,strict:l,sensitive:d}),p=f.re,h=f.keys,m=p.exec(e);if(!m)return null;var v=m[0],y=m.slice(1),g=e===v;return a&&!g?null:{path:r,url:"/"===r&&""===v?"/":v,isExact:g,params:h.reduce(function(e,t,n){return e[t.name]=y[n],e},{})}};t.default=c},function(e,t){"use strict";function n(e,t,n){var o=e.slice(0);if(n>=o.length)for(var r=n-o.length;r--+1;)o.push(void 0);return o.splice(n,0,o.splice(t,1)[0]),o}function o(e){for(var t=arguments.length,n=Array(t>1?t-1:0),o=1;ot?t:n}function a(e){return"px"===e.substr(-2)?parseFloat(e):0}function s(e){var t=window.getComputedStyle(e);return{top:a(t.marginTop),right:a(t.marginRight),bottom:a(t.marginBottom),left:a(t.marginLeft)}}function l(e,t){var n=t.displayName||t.name;return n?e+"("+n+")":e}Object.defineProperty(t,"__esModule",{value:!0}),t.arrayMove=n,t.omit=o,t.closest=r,t.limit=i,t.getElementMargin=s,t.provideDisplayName=l;t.events={start:["touchstart","mousedown"],move:["touchmove","mousemove"],end:["touchend","touchcancel","mouseup"]},t.vendorPrefix=function(){if("undefined"==typeof window||"undefined"==typeof document)return"";var e=window.getComputedStyle(document.documentElement,"")||["-moz-hidden-iframe"],t=(Array.prototype.slice.call(e).join("").match(/-(moz|webkit|ms)-/)||""===e.OLink&&["","o"])[1];switch(t){case"ms":return"ms";default:return t&&t.length?t[0].toUpperCase()+t.substr(1):""}}()},function(e,t,n){(function(t){"use strict";var n=!1;if("production"!==t.env.NODE_ENV)try{Object.defineProperty({},"x",{get:function(){}}),n=!0}catch(e){}e.exports=n}).call(t,n(2))},function(e,t,n){(function(o){function r(){return"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style||window.console&&(console.firebug||console.exception&&console.table)||navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31}function i(){var e=arguments,n=this.useColors;if(e[0]=(n?"%c":"")+this.namespace+(n?" %c":" ")+e[0]+(n?"%c ":" ")+"+"+t.humanize(this.diff),!n)return e;var o="color: "+this.color;e=[e[0],o,"color: inherit"].concat(Array.prototype.slice.call(e,1));var r=0,i=0;return e[0].replace(/%[a-z%]/g,function(e){"%%"!==e&&(r++,"%c"===e&&(i=r))}),e.splice(i,0,o),e}function a(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function s(e){try{null==e?t.storage.removeItem("debug"):t.storage.debug=e}catch(e){}}function l(){try{return t.storage.debug}catch(e){}if("undefined"!=typeof o&&"env"in o)return o.env.DEBUG}function u(){try{return window.localStorage}catch(e){}}t=e.exports=n(935),t.log=a,t.formatArgs=i,t.save=s,t.load=l,t.useColors=r,t.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:u(),t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],t.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},t.enable(l())}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n,o,r){n&&(e._notifying=!0,n.call.apply(n,[e,o].concat(r)),e._notifying=!1),e._values[t]=o,e.unmounted||e.forceUpdate()}t.__esModule=!0;var i=n(950),a=o(i),s={shouldComponentUpdate:function(){return!this._notifying}};t.default=(0,a.default)(s,r),e.exports=t.default},function(e,t,n){(function(t){"use strict";function o(e,t){!i.isUndefined(e)&&i.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function r(){var e;return"undefined"!=typeof XMLHttpRequest?e=n(215):"undefined"!=typeof t&&(e=n(215)),e}var i=n(31),a=n(395),s={"Content-Type":"application/x-www-form-urlencoded"},l={adapter:r(),transformRequest:[function(e,t){return a(t,"Content-Type"),i.isFormData(e)||i.isArrayBuffer(e)||i.isBuffer(e)||i.isStream(e)||i.isFile(e)||i.isBlob(e)?e:i.isArrayBufferView(e)?e.buffer:i.isURLSearchParams(e)?(o(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):i.isObject(e)?(o(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return e>=200&&e<300}};l.headers={common:{Accept:"application/json, text/plain, */*"}},i.forEach(["delete","get","head"],function(e){l.headers[e]={}}),i.forEach(["post","put","patch"],function(e){l.headers[e]=i.merge(s)}),e.exports=l}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function l(e,t){var n={};for(var o in e)t.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}Object.defineProperty(t,"__esModule",{value:!0}),t.TextField=void 0;var u=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:s(),t=arguments[1];switch(t.type){case"UPDATE_FILES":return r({},e,{files:t.payload});case"REMOVE_FILE":return r({},e,{files:e.files.filter(function(e,n){return e!==t.file})});case"SENSOR_DATA_LOADED":return r({},e,{chart_config:r({},e.chart_config,{series:t.payload})});case"UPDATE_ACTIONS":return r({},e,{chart_config:r({},e.chart_config,{xAxis:r({},e.chart_config.xAxis,{plotLines:t.payload})})});default:return e}});t.default=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:s(),t=arguments[1];switch(t.type){case"UPDATE_RECIPE_BOOK":return[].concat(r(t.payload));default:return e}});t.save_recipe=function(){return function(e,t){return a.default.post("/api/recipebook/save").then(function(t){e(l())})}};t.default=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),i=n(28),a=o(i),s=n(58),l=function(e,t){return{title:"Sensor Modal",bsSize:"large",form:[{label:"Name",name:"name",type:"text"},{label:"Type",clear_config:!0,name:"type",type:"select",options:Object.keys(e.sensor.config_type)},{label:"Hide on Dashboard",name:"hide",type:"checkbox"}],types:e.sensor.config_type,configfield:"type",actors:e.actor.actors,sensors:e.sensor.sensors,kettle:e.kettle.list}},u=function(e,t,n){return{btn_save:function(t){return e((0,s.save)(t)),!0},btn_add:function(t){return e((0,s.add)(t)),!0},btn_delete:function(t){return e((0,s.remove)(t)),!0}}},c=(0,r.connect)(l,u,null,{withRef:!0})(a.default);t.default=c},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){var o=n(467);e.exports=function(e,t,n){if(o(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},function(e,t){e.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e);return e}},function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(e,t){e.exports=!0},function(e,t,n){var o=n(63),r=n(482),i=n(147),a=n(153)("IE_PROTO"),s=function(){},l="prototype",u=function(){var e,t=n(236)("iframe"),o=i.length,r="<",a=">";for(t.style.display="none",n(473).appendChild(t),t.src="javascript:",e=t.contentWindow.document,e.open(),e.write(r+"script"+a+"document.F=Object"+r+"/script"+a),e.close(),u=e.F;o--;)delete u[l][i[o]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[l]=o(e),n=new s,s[l]=null,n[a]=e):n=u(),void 0===t?n:r(n,t)}},function(e,t,n){var o=n(84),r=n(85),i=n(46),a=n(156),s=n(53),l=n(237),u=Object.getOwnPropertyDescriptor;t.f=n(52)?u:function(e,t){if(e=i(e),t=a(t,!0),l)try{return u(e,t)}catch(e){}if(s(e,t))return r(!o.f.call(e,t),e[t])}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var o=n(45).f,r=n(53),i=n(36)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,i)&&o(e,i,{configurable:!0,value:t})}},function(e,t,n){var o=n(154)("keys"),r=n(103);e.exports=function(e){return o[e]||(o[e]=r(e))}},function(e,t,n){var o=n(44),r="__core-js_shared__",i=o[r]||(o[r]={});e.exports=function(e){return i[e]||(i[e]={})}},function(e,t){var n=Math.ceil,o=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?o:n)(e)}},function(e,t,n){var o=n(81);e.exports=function(e,t){if(!o(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!o(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){var o=n(44),r=n(26),i=n(148),a=n(158),s=n(45).f;e.exports=function(e){var t=r.Symbol||(r.Symbol=i?{}:o.Symbol||{});"_"==e.charAt(0)||e in t||s(t,e,{value:a.f(e)})}},function(e,t,n){t.f=n(36)},function(e,t){e.exports=function(){var e=[];return e.toString=function(){for(var e=[],t=0;t=0?t:0)+"#"+e)},b=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,l.default)(p.canUseDOM,"Hash history needs a DOM");var t=window.history,n=(0,p.supportsGoWithoutReloadUsingHash)(),o=e.getUserConfirmation,i=void 0===o?p.getConfirmation:o,s=e.hashType,d=void 0===s?"slash":s,b=e.basename?(0,c.stripTrailingSlash)((0,c.addLeadingSlash)(e.basename)):"",x=m[d],E=x.encodePath,_=x.decodePath,w=function(){var e=_(v());return(0,a.default)(!b||(0,c.hasBasename)(e,b),'You are attempting to use a basename on a page whose URL path does not begin with the basename. Expected path "'+e+'" to begin with "'+b+'".'),b&&(e=(0,c.stripBasename)(e,b)),(0,u.createLocation)(e)},C=(0,f.default)(),O=function(e){r(Y,e),Y.length=t.length,C.notifyListeners(Y.location,Y.action)},k=!1,T=null,N=function(){var e=v(),t=E(e);if(e!==t)g(t);else{var n=w(),o=Y.location;if(!k&&(0,u.locationsAreEqual)(o,n))return;if(T===(0,c.createPath)(n))return;T=null,P(n)}},P=function(e){if(k)k=!1,O();else{var t="POP";C.confirmTransitionTo(e,t,i,function(n){n?O({action:t,location:e}):S(e)})}},S=function(e){var t=Y.location,n=R.lastIndexOf((0,c.createPath)(t));n===-1&&(n=0);var o=R.lastIndexOf((0,c.createPath)(e));o===-1&&(o=0);var r=n-o;r&&(k=!0,B(r))},M=v(),A=E(M);M!==A&&g(A);var D=w(),R=[(0,c.createPath)(D)],j=function(e){return"#"+E(b+(0,c.createPath)(e))},I=function(e,t){(0,a.default)(void 0===t,"Hash history cannot push state; it is ignored");var n="PUSH",o=(0,u.createLocation)(e,void 0,void 0,Y.location);C.confirmTransitionTo(o,n,i,function(e){if(e){var t=(0,c.createPath)(o),r=E(b+t),i=v()!==r;if(i){T=t,y(r);var s=R.lastIndexOf((0,c.createPath)(Y.location)),l=R.slice(0,s===-1?0:s+1);l.push(t),R=l,O({action:n,location:o})}else(0,a.default)(!1,"Hash history cannot PUSH the same path; a new entry will not be added to the history stack"),O()}})},L=function(e,t){(0,a.default)(void 0===t,"Hash history cannot replace state; it is ignored");var n="REPLACE",o=(0,u.createLocation)(e,void 0,void 0,Y.location);C.confirmTransitionTo(o,n,i,function(e){if(e){var t=(0,c.createPath)(o),r=E(b+t),i=v()!==r;i&&(T=t,g(r));var a=R.indexOf((0,c.createPath)(Y.location));a!==-1&&(R[a]=t),O({action:n,location:o})}})},B=function(e){(0,a.default)(n,"Hash history go(n) causes a full page reload in this browser"),t.go(e)},V=function(){return B(-1)},F=function(){return B(1)},U=0,H=function(e){U+=e,1===U?(0,p.addEventListener)(window,h,N):0===U&&(0,p.removeEventListener)(window,h,N)},z=!1,W=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=C.setPrompt(e);return z||(H(1),z=!0),function(){return z&&(z=!1,H(-1)),t()}},G=function(e){var t=C.appendListener(e);return H(1),function(){H(-1),t()}},Y={length:t.length,action:"POP",location:D,createHref:j,push:I,replace:L,go:B,goBack:V,goForward:F,block:W,listen:G};return Y};t.default=b},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(15),i=o(r),a=function(){var e=null,t=function(t){return(0,i.default)(null==e,"A history supports only one prompt at a time"), +e=t,function(){e===t&&(e=null)}},n=function(t,n,o,r){if(null!=e){var a="function"==typeof e?e(t,n):e;"string"==typeof a?"function"==typeof o?o(a,r):((0,i.default)(!1,"A history needs a getUserConfirmation function in order to use a prompt message"),r(!0)):r(a!==!1)}else r(!0)},o=[],r=function(e){var t=!0,n=function(){t&&e.apply(void 0,arguments)};return o.push(n),function(){t=!1,o=o.filter(function(e){return e!==n})}},a=function(){for(var e=arguments.length,t=Array(e),n=0;n2&&void 0!==arguments[2]?arguments[2]:{},o="";if(!t)return o;var i=n.indent,a=void 0===i?0:i,l=t.fallbacks;if(a++,l)if(Array.isArray(l))for(var u=0;u-1&&e%1==0&&e-1&&e%1==0&&e<=o}var o=9007199254740991;e.exports=n},function(e,t,n){function o(e){if(!a(e)||r(e)!=s)return!1;var t=i(e);if(null===t)return!0;var n=d.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&c.call(n)==f}var r=n(70),i=n(644),a=n(71),s="[object Object]",l=Function.prototype,u=Object.prototype,c=l.toString,d=u.hasOwnProperty,f=c.call(Object);e.exports=o},function(e,t){t.encode=function(e){var t="";for(var n in e)e.hasOwnProperty(n)&&(t.length&&(t+="&"),t+=encodeURIComponent(n)+"="+encodeURIComponent(e[n]));return t},t.decode=function(e){for(var t={},n=e.split("&"),o=0,r=n.length;oo}function a(e){return e.touches.length>1||"touchend"===e.type.toLowerCase()&&e.touches.length>0}function s(e,t){var n=t.marks,o=t.step,r=t.min,i=Object.keys(n).map(parseFloat);if(null!==o){var a=Math.round((e-r)/o)*o+r;i.push(a)}var s=i.map(function(t){return Math.abs(e-t)});return i[s.indexOf(Math.min.apply(Math,(0,v.default)(s)))]}function l(e){var t=e.toString(),n=0;return t.indexOf(".")>=0&&(n=t.length-t.indexOf(".")-1),n}function u(e,t){return e?t.clientY:t.pageX}function c(e,t){return e?t.touches[0].clientY:t.touches[0].pageX}function d(e,t){var n=t.getBoundingClientRect();return e?n.top+.5*n.height:n.left+.5*n.width}function f(e,t){var n=t.max,o=t.min;return e<=o?o:e>=n?n:e}function p(e,t){var n=t.step,o=s(e,t);return null===n?o:parseFloat(o.toFixed(l(n)))}function h(e){e.stopPropagation(),e.preventDefault()}Object.defineProperty(t,"__esModule",{value:!0});var m=n(232),v=o(m);t.isEventFromHandle=r,t.isValueOutOfRange=i,t.isNotTouchEvent=a,t.getClosestPoint=s,t.getPrecision=l,t.getMousePosition=u,t.getTouchPosition=c,t.getHandleCenterPosition=d,t.ensureValueInRange=f,t.ensureValuePrecision=p,t.pauseEvent=h;var y=n(18)},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){var o=l.default.unstable_batchedUpdates?function(e){l.default.unstable_batchedUpdates(n,e)}:n;return(0,a.default)(e,t,o)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(377),a=o(i),s=n(18),l=o(s);e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){e.offsetHeight}function i(e,t){var n=t["offset"+(0,T.default)(e)],o=S[e];return n+parseInt((0,b.default)(t,o[0]),10)+parseInt((0,b.default)(t,o[1]),10)}t.__esModule=!0;var a=n(4),s=o(a),l=n(8),u=o(l),c=n(5),d=o(c),f=n(7),p=o(f),h=n(6),m=o(h),v=n(9),y=o(v),g=n(106),b=o(g),x=n(1),E=o(x),_=n(3),w=o(_),C=n(343),O=o(C),k=n(315),T=o(k),N=n(24),P=o(N),S={height:["marginTop","marginBottom"],width:["marginLeft","marginRight"]},M={in:w.default.bool,mountOnEnter:w.default.bool,unmountOnExit:w.default.bool,transitionAppear:w.default.bool,timeout:w.default.number,onEnter:w.default.func,onEntering:w.default.func,onEntered:w.default.func,onExit:w.default.func,onExiting:w.default.func,onExited:w.default.func,dimension:w.default.oneOfType([w.default.oneOf(["height","width"]),w.default.func]),getDimensionValue:w.default.func,role:w.default.string},A={in:!1,timeout:300,mountOnEnter:!1,unmountOnExit:!1,transitionAppear:!1,dimension:"height",getDimensionValue:i},D=function(e){function t(n,o){(0,d.default)(this,t);var r=(0,p.default)(this,e.call(this,n,o));return r.handleEnter=r.handleEnter.bind(r),r.handleEntering=r.handleEntering.bind(r),r.handleEntered=r.handleEntered.bind(r),r.handleExit=r.handleExit.bind(r),r.handleExiting=r.handleExiting.bind(r),r}return(0,m.default)(t,e),t.prototype.handleEnter=function(e){var t=this._dimension();e.style[t]="0"},t.prototype.handleEntering=function(e){var t=this._dimension();e.style[t]=this._getScrollDimensionValue(e,t)},t.prototype.handleEntered=function(e){var t=this._dimension();e.style[t]=null},t.prototype.handleExit=function(e){var t=this._dimension();e.style[t]=this.props.getDimensionValue(t,e)+"px",r(e)},t.prototype.handleExiting=function(e){var t=this._dimension();e.style[t]="0"},t.prototype._dimension=function(){return"function"==typeof this.props.dimension?this.props.dimension():this.props.dimension},t.prototype._getScrollDimensionValue=function(e,t){return e["scroll"+(0,T.default)(t)]+"px"},t.prototype.render=function(){var e=this.props,t=e.onEnter,n=e.onEntering,o=e.onEntered,r=e.onExit,i=e.onExiting,a=e.className,l=(0,u.default)(e,["onEnter","onEntering","onEntered","onExit","onExiting","className"]);delete l.dimension,delete l.getDimensionValue;var c=(0,P.default)(this.handleEnter,t),d=(0,P.default)(this.handleEntering,n),f=(0,P.default)(this.handleEntered,o),p=(0,P.default)(this.handleExit,r),h=(0,P.default)(this.handleExiting,i),m={width:"width"===this._dimension()};return E.default.createElement(O.default,(0,s.default)({},l,{"aria-expanded":l.role?l.in:null,className:(0,y.default)(a,m),exitedClassName:"collapse",exitingClassName:"collapsing",enteredClassName:"collapse in",enteringClassName:"collapsing",onEnter:c,onEntering:d,onEntered:f,onExit:p,onExiting:h}))},t}(E.default.Component);D.propTypes=M,D.defaultProps=A,t.default=D,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(3),b=o(g),x=n(10),E={glyph:b.default.string.isRequired},_=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e,t=this.props,n=t.glyph,o=t.className,r=(0,s.default)(t,["glyph","className"]),a=(0,x.splitBsProps)(r),l=a[0],u=a[1],c=(0,i.default)({},(0,x.getClassSet)(l),(e={},e[(0,x.prefix)(l,n)]=!0,e));return y.default.createElement("span",(0,i.default)({},u,{className:(0,m.default)(o,c)}))},t}(y.default.Component);_.propTypes=E,t.default=(0,x.bsClass)("glyphicon",_),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(17),b=o(g),x=n(753),E=o(x),_=n(754),w=o(_),C=n(755),O=o(C),k=n(756),T=o(k),N=n(757),P=o(N),S=n(758),M=o(S),A=n(10),D={componentClass:b.default},R={componentClass:"div"},j=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e.componentClass,n=e.className,o=(0,s.default)(e,["componentClass","className"]),r=(0,A.splitBsProps)(o),a=r[0],l=r[1],u=(0,A.getClassSet)(a);return y.default.createElement(t,(0,i.default)({},l,{className:(0,m.default)(n,u)}))},t}(y.default.Component);j.propTypes=D,j.defaultProps=R,j.Heading=w.default,j.Body=E.default,j.Left=O.default,j.Right=M.default,j.List=T.default,j.ListItem=P.default,t.default=(0,A.bsClass)("media",j),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(8),i=o(r),a=n(5),s=o(a),l=n(7),u=o(l),c=n(6),d=o(c),f=n(1),p=o(f),h=n(3),m=o(h),v=n(136),y=o(v),g="tab",b="pane",x=m.default.oneOfType([m.default.string,m.default.number]),E={id:function(e){var t=null;if(!e.generateChildId){for(var n=arguments.length,o=Array(n>1?n-1:0),r=1;r0&&o.length<20?n+" (keys: "+o.join(", ")+")":n}function i(e,n){var o=l.get(e);if(!o){if("production"!==t.env.NODE_ENV){var r=e.constructor;"production"!==t.env.NODE_ENV?f(!n,"%s(...): Can only update a mounted or mounting component. This usually means you called %s() on an unmounted component. This is a no-op. Please check the code for the %s component.",n,n,r&&(r.displayName||r.name)||"ReactClass"):void 0}return null}return"production"!==t.env.NODE_ENV&&("production"!==t.env.NODE_ENV?f(null==s.current,"%s(...): Cannot update during an existing state transition (such as within `render` or another component's constructor). Render methods should be a pure function of props and state; constructor side-effects are an anti-pattern, but can be moved to `componentWillMount`.",n):void 0),o}var a=n(16),s=n(39),l=n(95),u=n(33),c=n(38),d=n(12),f=n(13),p={isMounted:function(e){if("production"!==t.env.NODE_ENV){var n=s.current;null!==n&&("production"!==t.env.NODE_ENV?f(n._warnedAboutRefsInRender,"%s is accessing isMounted inside its render() function. render() should be a pure function of props and state. It should never access something that requires stale data from the previous render, such as refs. Move this logic to componentDidMount and componentDidUpdate instead.",n.getName()||"A component"):void 0,n._warnedAboutRefsInRender=!0)}var o=l.get(e);return!!o&&!!o._renderedComponent},enqueueCallback:function(e,t,n){p.validateCallback(t,n);var r=i(e);return r?(r._pendingCallbacks?r._pendingCallbacks.push(t):r._pendingCallbacks=[t],void o(r)):null},enqueueCallbackInternal:function(e,t){e._pendingCallbacks?e._pendingCallbacks.push(t):e._pendingCallbacks=[t],o(e)},enqueueForceUpdate:function(e){var t=i(e,"forceUpdate");t&&(t._pendingForceUpdate=!0,o(t))},enqueueReplaceState:function(e,t,n){var r=i(e,"replaceState");r&&(r._pendingStateQueue=[t],r._pendingReplaceState=!0,void 0!==n&&null!==n&&(p.validateCallback(n,"replaceState"),r._pendingCallbacks?r._pendingCallbacks.push(n):r._pendingCallbacks=[n]),o(r))},enqueueSetState:function(e,n){"production"!==t.env.NODE_ENV&&(u.debugTool.onSetState(),"production"!==t.env.NODE_ENV?f(null!=n,"setState(...): You passed an undefined or null state object; instead, use forceUpdate()."):void 0);var r=i(e,"setState");if(r){var a=r._pendingStateQueue||(r._pendingStateQueue=[]);a.push(n),o(r)}},enqueueElementInternal:function(e,t,n){e._pendingElement=t,e._context=n,o(e)},validateCallback:function(e,n){e&&"function"!=typeof e?"production"!==t.env.NODE_ENV?d(!1,"%s(...): Expected the last optional `callback` argument to be a function. Instead received: %s.",n,r(e)):a("122",n,r(e)):void 0}};e.exports=p}).call(t,n(2))},function(e,t){"use strict";var n=function(e){return"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(t,n,o,r){MSApp.execUnsafeLocalFunction(function(){return e(t,n,o,r)})}:e};e.exports=n},function(e,t){"use strict";function n(e){var t,n=e.keyCode;return"charCode"in e?(t=e.charCode,0===t&&13===n&&(t=13)):t=n,t>=32||13===t?t:0}e.exports=n},function(e,t){"use strict";function n(e){var t=this,n=t.nativeEvent;if(n.getModifierState)return n.getModifierState(e);var o=r[e];return!!o&&!!n[o]}function o(e){return n}var r={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};e.exports=o},function(e,t){"use strict";function n(e){var t=e.target||e.srcElement||window;return t.correspondingUseElement&&(t=t.correspondingUseElement),3===t.nodeType?t.parentNode:t}e.exports=n},function(e,t,n){"use strict";/** +for(r=97;r<123;r++)n[String.fromCharCode(r)]=r-32;for(var r=48;r<58;r++)n[r-48]=r;for(r=1;r<13;r++)n["f"+r]=r+111;for(r=0;r<10;r++)n["numpad "+r]=r+96;var i=t.names=t.title={};for(r in n)i[n[r]]=r;for(var a in o)n[a]=o[a]},function(e,t,n){var o=n(54),r=n(41),i=o(r,"Map");e.exports=i},function(e,t,n){function o(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t-1&&e%1==0&&e-1&&e%1==0&&e<=o}var o=9007199254740991;e.exports=n},function(e,t,n){function o(e){if(!a(e)||r(e)!=s)return!1;var t=i(e);if(null===t)return!0;var n=d.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&c.call(n)==f}var r=n(71),i=n(645),a=n(72),s="[object Object]",l=Function.prototype,u=Object.prototype,c=l.toString,d=u.hasOwnProperty,f=c.call(Object);e.exports=o},function(e,t){t.encode=function(e){var t="";for(var n in e)e.hasOwnProperty(n)&&(t.length&&(t+="&"),t+=encodeURIComponent(n)+"="+encodeURIComponent(e[n]));return t},t.decode=function(e){for(var t={},n=e.split("&"),o=0,r=n.length;oo}function a(e){return e.touches.length>1||"touchend"===e.type.toLowerCase()&&e.touches.length>0}function s(e,t){var n=t.marks,o=t.step,r=t.min,i=Object.keys(n).map(parseFloat);if(null!==o){var a=Math.round((e-r)/o)*o+r;i.push(a)}var s=i.map(function(t){return Math.abs(e-t)});return i[s.indexOf(Math.min.apply(Math,(0,v.default)(s)))]}function l(e){var t=e.toString(),n=0;return t.indexOf(".")>=0&&(n=t.length-t.indexOf(".")-1),n}function u(e,t){return e?t.clientY:t.pageX}function c(e,t){return e?t.touches[0].clientY:t.touches[0].pageX}function d(e,t){var n=t.getBoundingClientRect();return e?n.top+.5*n.height:n.left+.5*n.width}function f(e,t){var n=t.max,o=t.min;return e<=o?o:e>=n?n:e}function p(e,t){var n=t.step,o=s(e,t);return null===n?o:parseFloat(o.toFixed(l(n)))}function h(e){e.stopPropagation(),e.preventDefault()}Object.defineProperty(t,"__esModule",{value:!0});var m=n(233),v=o(m);t.isEventFromHandle=r,t.isValueOutOfRange=i,t.isNotTouchEvent=a,t.getClosestPoint=s,t.getPrecision=l,t.getMousePosition=u,t.getTouchPosition=c,t.getHandleCenterPosition=d,t.ensureValueInRange=f,t.ensureValuePrecision=p,t.pauseEvent=h;var y=n(18)},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){var o=l.default.unstable_batchedUpdates?function(e){l.default.unstable_batchedUpdates(n,e)}:n;return(0,a.default)(e,t,o)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(378),a=o(i),s=n(18),l=o(s);e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){e.offsetHeight}function i(e,t){var n=t["offset"+(0,T.default)(e)],o=S[e];return n+parseInt((0,b.default)(t,o[0]),10)+parseInt((0,b.default)(t,o[1]),10)}t.__esModule=!0;var a=n(4),s=o(a),l=n(8),u=o(l),c=n(5),d=o(c),f=n(7),p=o(f),h=n(6),m=o(h),v=n(9),y=o(v),g=n(106),b=o(g),x=n(1),E=o(x),_=n(3),w=o(_),C=n(344),O=o(C),k=n(316),T=o(k),N=n(24),P=o(N),S={height:["marginTop","marginBottom"],width:["marginLeft","marginRight"]},M={in:w.default.bool,mountOnEnter:w.default.bool,unmountOnExit:w.default.bool,transitionAppear:w.default.bool,timeout:w.default.number,onEnter:w.default.func,onEntering:w.default.func,onEntered:w.default.func,onExit:w.default.func,onExiting:w.default.func,onExited:w.default.func,dimension:w.default.oneOfType([w.default.oneOf(["height","width"]),w.default.func]),getDimensionValue:w.default.func,role:w.default.string},A={in:!1,timeout:300,mountOnEnter:!1,unmountOnExit:!1,transitionAppear:!1,dimension:"height",getDimensionValue:i},D=function(e){function t(n,o){(0,d.default)(this,t);var r=(0,p.default)(this,e.call(this,n,o));return r.handleEnter=r.handleEnter.bind(r),r.handleEntering=r.handleEntering.bind(r),r.handleEntered=r.handleEntered.bind(r),r.handleExit=r.handleExit.bind(r),r.handleExiting=r.handleExiting.bind(r),r}return(0,m.default)(t,e),t.prototype.handleEnter=function(e){var t=this._dimension();e.style[t]="0"},t.prototype.handleEntering=function(e){var t=this._dimension();e.style[t]=this._getScrollDimensionValue(e,t)},t.prototype.handleEntered=function(e){var t=this._dimension();e.style[t]=null},t.prototype.handleExit=function(e){var t=this._dimension();e.style[t]=this.props.getDimensionValue(t,e)+"px",r(e)},t.prototype.handleExiting=function(e){var t=this._dimension();e.style[t]="0"},t.prototype._dimension=function(){return"function"==typeof this.props.dimension?this.props.dimension():this.props.dimension},t.prototype._getScrollDimensionValue=function(e,t){return e["scroll"+(0,T.default)(t)]+"px"},t.prototype.render=function(){var e=this.props,t=e.onEnter,n=e.onEntering,o=e.onEntered,r=e.onExit,i=e.onExiting,a=e.className,l=(0,u.default)(e,["onEnter","onEntering","onEntered","onExit","onExiting","className"]);delete l.dimension,delete l.getDimensionValue;var c=(0,P.default)(this.handleEnter,t),d=(0,P.default)(this.handleEntering,n),f=(0,P.default)(this.handleEntered,o),p=(0,P.default)(this.handleExit,r),h=(0,P.default)(this.handleExiting,i),m={width:"width"===this._dimension()};return E.default.createElement(O.default,(0,s.default)({},l,{"aria-expanded":l.role?l.in:null,className:(0,y.default)(a,m),exitedClassName:"collapse",exitingClassName:"collapsing",enteredClassName:"collapse in",enteringClassName:"collapsing",onEnter:c,onEntering:d,onEntered:f,onExit:p,onExiting:h}))},t}(E.default.Component);D.propTypes=M,D.defaultProps=A,t.default=D,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(3),b=o(g),x=n(10),E={glyph:b.default.string.isRequired},_=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e,t=this.props,n=t.glyph,o=t.className,r=(0,s.default)(t,["glyph","className"]),a=(0,x.splitBsProps)(r),l=a[0],u=a[1],c=(0,i.default)({},(0,x.getClassSet)(l),(e={},e[(0,x.prefix)(l,n)]=!0,e));return y.default.createElement("span",(0,i.default)({},u,{className:(0,m.default)(o,c)}))},t}(y.default.Component);_.propTypes=E,t.default=(0,x.bsClass)("glyphicon",_),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(17),b=o(g),x=n(754),E=o(x),_=n(755),w=o(_),C=n(756),O=o(C),k=n(757),T=o(k),N=n(758),P=o(N),S=n(759),M=o(S),A=n(10),D={componentClass:b.default},R={componentClass:"div"},j=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e.componentClass,n=e.className,o=(0,s.default)(e,["componentClass","className"]),r=(0,A.splitBsProps)(o),a=r[0],l=r[1],u=(0,A.getClassSet)(a);return y.default.createElement(t,(0,i.default)({},l,{className:(0,m.default)(n,u)}))},t}(y.default.Component);j.propTypes=D,j.defaultProps=R,j.Heading=w.default,j.Body=E.default,j.Left=O.default,j.Right=M.default,j.List=T.default,j.ListItem=P.default,t.default=(0,A.bsClass)("media",j),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(8),i=o(r),a=n(5),s=o(a),l=n(7),u=o(l),c=n(6),d=o(c),f=n(1),p=o(f),h=n(3),m=o(h),v=n(136),y=o(v),g="tab",b="pane",x=m.default.oneOfType([m.default.string,m.default.number]),E={id:function(e){var t=null;if(!e.generateChildId){for(var n=arguments.length,o=Array(n>1?n-1:0),r=1;r0&&o.length<20?n+" (keys: "+o.join(", ")+")":n}function i(e,n){var o=l.get(e);if(!o){if("production"!==t.env.NODE_ENV){var r=e.constructor;"production"!==t.env.NODE_ENV?f(!n,"%s(...): Can only update a mounted or mounting component. This usually means you called %s() on an unmounted component. This is a no-op. Please check the code for the %s component.",n,n,r&&(r.displayName||r.name)||"ReactClass"):void 0}return null}return"production"!==t.env.NODE_ENV&&("production"!==t.env.NODE_ENV?f(null==s.current,"%s(...): Cannot update during an existing state transition (such as within `render` or another component's constructor). Render methods should be a pure function of props and state; constructor side-effects are an anti-pattern, but can be moved to `componentWillMount`.",n):void 0),o}var a=n(16),s=n(39),l=n(95),u=n(33),c=n(38),d=n(12),f=n(13),p={isMounted:function(e){if("production"!==t.env.NODE_ENV){var n=s.current;null!==n&&("production"!==t.env.NODE_ENV?f(n._warnedAboutRefsInRender,"%s is accessing isMounted inside its render() function. render() should be a pure function of props and state. It should never access something that requires stale data from the previous render, such as refs. Move this logic to componentDidMount and componentDidUpdate instead.",n.getName()||"A component"):void 0,n._warnedAboutRefsInRender=!0)}var o=l.get(e);return!!o&&!!o._renderedComponent},enqueueCallback:function(e,t,n){p.validateCallback(t,n);var r=i(e);return r?(r._pendingCallbacks?r._pendingCallbacks.push(t):r._pendingCallbacks=[t],void o(r)):null},enqueueCallbackInternal:function(e,t){e._pendingCallbacks?e._pendingCallbacks.push(t):e._pendingCallbacks=[t],o(e)},enqueueForceUpdate:function(e){var t=i(e,"forceUpdate");t&&(t._pendingForceUpdate=!0,o(t))},enqueueReplaceState:function(e,t,n){var r=i(e,"replaceState");r&&(r._pendingStateQueue=[t],r._pendingReplaceState=!0,void 0!==n&&null!==n&&(p.validateCallback(n,"replaceState"),r._pendingCallbacks?r._pendingCallbacks.push(n):r._pendingCallbacks=[n]),o(r))},enqueueSetState:function(e,n){"production"!==t.env.NODE_ENV&&(u.debugTool.onSetState(),"production"!==t.env.NODE_ENV?f(null!=n,"setState(...): You passed an undefined or null state object; instead, use forceUpdate()."):void 0);var r=i(e,"setState");if(r){var a=r._pendingStateQueue||(r._pendingStateQueue=[]);a.push(n),o(r)}},enqueueElementInternal:function(e,t,n){e._pendingElement=t,e._context=n,o(e)},validateCallback:function(e,n){e&&"function"!=typeof e?"production"!==t.env.NODE_ENV?d(!1,"%s(...): Expected the last optional `callback` argument to be a function. Instead received: %s.",n,r(e)):a("122",n,r(e)):void 0}};e.exports=p}).call(t,n(2))},function(e,t){"use strict";var n=function(e){return"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(t,n,o,r){MSApp.execUnsafeLocalFunction(function(){return e(t,n,o,r)})}:e};e.exports=n},function(e,t){"use strict";function n(e){var t,n=e.keyCode;return"charCode"in e?(t=e.charCode,0===t&&13===n&&(t=13)):t=n,t>=32||13===t?t:0}e.exports=n},function(e,t){"use strict";function n(e){var t=this,n=t.nativeEvent;if(n.getModifierState)return n.getModifierState(e);var o=r[e];return!!o&&!!n[o]}function o(e){return n}var r={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};e.exports=o},function(e,t){"use strict";function n(e){var t=e.target||e.srcElement||window;return t.correspondingUseElement&&(t=t.correspondingUseElement),3===t.nodeType?t.parentNode:t}e.exports=n},function(e,t,n){"use strict";/** * Checks if an event is supported in the current execution environment. * * NOTE: This will not work correctly for non-generic events such as `change`, @@ -35,25 +36,25 @@ for(r=97;r<123;r++)n[String.fromCharCode(r)]=r-32;for(var r=48;r<58;r++)n[r-48]= * @internal * @license Modernizr 3.0.0pre (Custom Build) | MIT */ -function o(e,t){if(!i.canUseDOM||t&&!("addEventListener"in document))return!1;var n="on"+e,o=n in document;if(!o){var a=document.createElement("div");a.setAttribute(n,"return;"),o="function"==typeof a[n]}return!o&&r&&"wheel"===e&&(o=document.implementation.hasFeature("Events.wheel","3.0")),o}var r,i=n(22);i.canUseDOM&&(r=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0),e.exports=o},function(e,t){"use strict";function n(e,t){var n=null===e||e===!1,o=null===t||t===!1;if(n||o)return n===o;var r=typeof e,i=typeof t;return"string"===r||"number"===r?"string"===i||"number"===i:"object"===i&&e.type===t.type&&e.key===t.key}e.exports=n},function(e,t,n){(function(t){"use strict";var o=n(19),r=n(32),i=n(13),a=r;if("production"!==t.env.NODE_ENV){var s=["address","applet","area","article","aside","base","basefont","bgsound","blockquote","body","br","button","caption","center","col","colgroup","dd","details","dir","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","isindex","li","link","listing","main","marquee","menu","menuitem","meta","nav","noembed","noframes","noscript","object","ol","p","param","plaintext","pre","script","section","select","source","style","summary","table","tbody","td","template","textarea","tfoot","th","thead","title","tr","track","ul","wbr","xmp"],l=["applet","caption","html","table","td","th","marquee","object","template","foreignObject","desc","title"],u=l.concat(["button"]),c=["dd","dt","li","option","optgroup","p","rp","rt"],d={current:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null},f=function(e,t,n){var r=o({},e||d),i={tag:t,instance:n};return l.indexOf(t)!==-1&&(r.aTagInScope=null,r.buttonTagInScope=null,r.nobrTagInScope=null),u.indexOf(t)!==-1&&(r.pTagInButtonScope=null),s.indexOf(t)!==-1&&"address"!==t&&"div"!==t&&"p"!==t&&(r.listItemTagAutoclosing=null,r.dlItemTagAutoclosing=null),r.current=i,"form"===t&&(r.formTag=i),"a"===t&&(r.aTagInScope=i),"button"===t&&(r.buttonTagInScope=i),"nobr"===t&&(r.nobrTagInScope=i),"p"===t&&(r.pTagInButtonScope=i),"li"===t&&(r.listItemTagAutoclosing=i),"dd"!==t&&"dt"!==t||(r.dlItemTagAutoclosing=i),r},p=function(e,t){switch(t){case"select":return"option"===e||"optgroup"===e||"#text"===e;case"optgroup":return"option"===e||"#text"===e;case"option":return"#text"===e;case"tr":return"th"===e||"td"===e||"style"===e||"script"===e||"template"===e;case"tbody":case"thead":case"tfoot":return"tr"===e||"style"===e||"script"===e||"template"===e;case"colgroup":return"col"===e||"template"===e;case"table":return"caption"===e||"colgroup"===e||"tbody"===e||"tfoot"===e||"thead"===e||"style"===e||"script"===e||"template"===e;case"head":return"base"===e||"basefont"===e||"bgsound"===e||"link"===e||"meta"===e||"title"===e||"noscript"===e||"noframes"===e||"style"===e||"script"===e||"template"===e;case"html":return"head"===e||"body"===e;case"#document":return"html"===e}switch(e){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"h1"!==t&&"h2"!==t&&"h3"!==t&&"h4"!==t&&"h5"!==t&&"h6"!==t;case"rp":case"rt":return c.indexOf(t)===-1;case"body":case"caption":case"col":case"colgroup":case"frame":case"head":case"html":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return null==t}return!0},h=function(e,t){switch(e){case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dialog":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"main":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":case"pre":case"listing":case"table":case"hr":case"xmp":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return t.pTagInButtonScope;case"form":return t.formTag||t.pTagInButtonScope;case"li":return t.listItemTagAutoclosing;case"dd":case"dt":return t.dlItemTagAutoclosing;case"button":return t.buttonTagInScope;case"a":return t.aTagInScope;case"nobr":return t.nobrTagInScope}return null},m=function(e){if(!e)return[];var t=[];do t.push(e);while(e=e._currentElement._owner);return t.reverse(),t},v={};a=function(e,n,o,r){r=r||d;var a=r.current,s=a&&a.tag;null!=n&&("production"!==t.env.NODE_ENV?i(null==e,"validateDOMNesting: when childText is passed, childTag should be null"):void 0,e="#text");var l=p(e,s)?null:a,u=l?null:h(e,r),c=l||u;if(c){var f,y=c.tag,g=c.instance,b=o&&o._currentElement._owner,x=g&&g._currentElement._owner,E=m(b),_=m(x),w=Math.min(E.length,_.length),C=-1;for(f=0;f "),P=!!l+"|"+e+"|"+y+"|"+N;if(v[P])return;v[P]=!0;var S=e,M="";if("#text"===e?/\S/.test(n)?S="Text nodes":(S="Whitespace text nodes",M=" Make sure you don't have any extra whitespace between tags on each line of your source code."):S="<"+e+">",l){var A="";"table"===y&&"tr"===e&&(A+=" Add a to your code to match the DOM tree generated by the browser."),"production"!==t.env.NODE_ENV?i(!1,"validateDOMNesting(...): %s cannot appear as a child of <%s>.%s See %s.%s",S,y,M,N,A):void 0}else"production"!==t.env.NODE_ENV?i(!1,"validateDOMNesting(...): %s cannot appear as a descendant of <%s>. See %s.",S,y,N):void 0}},a.updatedAncestorInfo=f,a.isTagValidInContext=function(e,t){t=t||d;var n=t.current,o=n&&n.tag;return p(e,o)&&!h(e,t)}}e.exports=a}).call(t,n(2))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){return e="function"==typeof e?e():e,a.default.findDOMNode(e)||t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(18),a=o(i);e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n,o,r){var a=e[t],l="undefined"==typeof a?"undefined":i(a);return s.default.isValidElement(a)?new Error("Invalid "+o+" `"+r+"` of type ReactElement "+("supplied to `"+n+"`, expected a ReactComponent or a ")+"DOMElement. You can usually obtain a ReactComponent or DOMElement from a ReactElement by attaching a ref to it."):"object"===l&&"function"==typeof a.render||1===a.nodeType?null:new Error("Invalid "+o+" `"+r+"` of value `"+a+"` "+("supplied to `"+n+"`, expected a ReactComponent or a ")+"DOMElement.")}t.__esModule=!0;var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e},a=n(1),s=o(a),l=n(130),u=o(l);t.default=(0,u.default)(r)},function(e,t){"use strict";function n(e){"undefined"!=typeof console&&"function"==typeof console.error&&console.error(e);try{throw new Error(e)}catch(e){}}t.__esModule=!0,t.default=n},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(131),i=o(r);t.default=i.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0;var s=Object.assign||function(e){for(var t=1;t or withRouter() outside a ");var l=t.route,u=(o||l.location).pathname;return r?(0,y.default)(u,{path:r,strict:i,exact:a,sensitive:s}):l.match},t.prototype.componentWillMount=function(){(0,u.default)(!(this.props.component&&this.props.render),"You should not use and in the same route; will be ignored"),(0,u.default)(!(this.props.component&&this.props.children&&!g(this.props.children)),"You should not use and in the same route; will be ignored"),(0,u.default)(!(this.props.render&&this.props.children&&!g(this.props.children)),"You should not use and in the same route; will be ignored")},t.prototype.componentWillReceiveProps=function(e,t){(0,u.default)(!(e.location&&!this.props.location),' elements should not change from uncontrolled to controlled (or vice versa). You initially used no "location" prop and then provided one on a subsequent render.'),(0,u.default)(!(!e.location&&this.props.location),' elements should not change from controlled to uncontrolled (or vice versa). You provided a "location" prop initially but omitted it on a subsequent render.'),this.setState({match:this.computeMatch(e,t.router)})},t.prototype.render=function e(){var t=this.state.match,n=this.props,o=n.children,r=n.component,e=n.render,i=this.context.router,a=i.history,s=i.route,l=i.staticContext,u=this.props.location||s.location,c={match:t,location:u,history:a,staticContext:l};return r?t?p.default.createElement(r,c):null:e?t?e(c):null:o?"function"==typeof o?o(c):g(o)?null:p.default.Children.only(o):null},t}(p.default.Component);b.propTypes={computedMatch:m.default.object,path:m.default.string,exact:m.default.bool,strict:m.default.bool,sensitive:m.default.bool,component:m.default.func,render:m.default.func,children:m.default.oneOfType([m.default.func,m.default.node]),location:m.default.object},b.contextTypes={router:m.default.shape({history:m.default.object.isRequired,route:m.default.object.isRequired,staticContext:m.default.object})},b.childContextTypes={router:m.default.object.isRequired},t.default=b},function(e,t,n){(function(t){"use strict";var n=function(){};if("production"!==t.env.NODE_ENV){var o=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),o=1;o2?n-2:0),i=2;i=0&&b.splice(t,1)}function s(e){var t=document.createElement("style");return t.type="text/css",i(e,t),t}function l(e){var t=document.createElement("link");return t.rel="stylesheet",i(e,t),t}function u(e,t){var n,o,r;if(t.singleton){var i=g++;n=y||(y=s(t)),o=c.bind(null,n,i,!1),r=c.bind(null,n,i,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=l(t),o=f.bind(null,n),r=function(){a(n),n.href&&URL.revokeObjectURL(n.href)}):(n=s(t),o=d.bind(null,n),r=function(){a(n)});return o(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;o(e=t)}else r()}}function c(e,t,n,o){var r=n?"":o.css;if(e.styleSheet)e.styleSheet.cssText=x(t,r);else{var i=document.createTextNode(r),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(i,a[t]):e.appendChild(i)}}function d(e,t){var n=t.css,o=t.media;if(o&&e.setAttribute("media",o),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}function f(e,t){var n=t.css,o=t.sourceMap;o&&(n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var r=new Blob([n],{type:"text/css"}),i=e.href;e.href=URL.createObjectURL(r),i&&URL.revokeObjectURL(i)}var p={},h=function(e){var t;return function(){return"undefined"==typeof t&&(t=e.apply(this,arguments)),t}},m=h(function(){return/msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase())}),v=h(function(){return document.head||document.getElementsByTagName("head")[0]}),y=null,g=0,b=[];e.exports=function(e,t){t=t||{},"undefined"==typeof t.singleton&&(t.singleton=m()),"undefined"==typeof t.insertAt&&(t.insertAt="bottom");var n=r(e);return o(n,t),function(e){for(var i=[],a=0;a0&&void 0!==arguments[0]?arguments[0]:c(),t=arguments[1];switch(t.type){case"ADDON_UPDATE_FINISHED":return i({},e,r({},t.payload,(0,u.default)(e[t.payload],{loading:{$set:!1}})));case"ADDON_UPDATE_STARTED":case"ADDON_DOWNLOAD_STARTED":return i({},e,r({},t.payload,(0,u.default)(e[t.payload],{loading:{$set:!0}})));case"ADDON_DOWNLOADED":return i({},e,r({},t.payload,(0,u.default)(e[t.payload],{installed:{$set:!0},loading:{$set:!1}})));case"DELETE_ADDON":return i({},e,r({},t.payload,(0,u.default)(e[t.payload],{installed:{$set:!1}})));case"SET_ADDON_LIST":return i({},t.payload);default:return e}});t.default=d},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:s(),t=arguments[1];switch(t.type){case"UPDATE_BEER_XML_RECIPE":return[].concat(r(t.payload));default:return e}});t.default=l},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:s(),t=arguments[1];switch(t.type){case"UPDATE_KBH":return[].concat(r(t.payload));default:return e}});t.default=l},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:s(),t=arguments[1];switch(t.type){case"WS_RECONNECT":return[].concat(r(e),[{id:0,headline:"Reconnected to Server",message:"We are back in business",type:"success"}]);case"WS_DISCONNECT":return[].concat(r(e),[{id:0,headline:"Server Connection Lost",message:"Please check if server is still running",type:"danger"}]);case"LOAD_STATE":return[].concat(r(t.payload.messages));case"NOTIFY":if("Notification"in window)if("granted"===Notification.permission){new Notification(t.payload.headline)}else"denied"!==Notification.permission&&Notification.requestPermission(function(e){if("granted"===e){new Notification(t.payload.headline)}});else;return[].concat(r(e),[t.payload]);case"DISMISS_NOTIFICATION":return e.filter(function(e,n){return e.id!==t.id});default:return e}});t.default=l},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),i=n(28),a=o(i),s=n(59),l=function(e,t){return{title:"Step Config",bsSize:"large",form:[{label:"Name",name:"name",type:"text"},{label:"Type",clear_config:!0,name:"type",type:"select",options:Object.keys(e.steps.type)}],types:e.steps.type,configfield:"type",actors:e.actor.actors,sensors:e.sensor.sensors,kettle:e.kettle.list}},u=function(e,t,n){return{btn_save:function(t){return e((0,s.save)(t)),!0},btn_add:function(t){return e((0,s.add)(t)),!0},btn_delete:function(t){return e((0,s.remove)(t)),!0}}},c=(0,r.connect)(l,u,null,{withRef:!0})(a.default);t.default=c},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n0)return u.default.createElement("span",null,e," %")}},{key:"render",value:function(){var e=this,t=this.props,n=t.bsSize,o=t.url,r=t.title,i=t.onSuccess;return u.default.createElement(c.Modal,{bsSize:n,animation:!1,show:this.state.showModal,onHide:this.hide.bind(this)},u.default.createElement(c.Modal.Header,null,u.default.createElement(c.Modal.Title,null,r)),u.default.createElement(c.Modal.Body,null,u.default.createElement(f.default,{ref:"test",key:"ex1",url:o,onProgress:function(e,t,n){},onLoad:function(t,n){e.hide(),i()},onError:function(e,t){},onAbort:function(e,t){},formRenderer:this.customFormRenderer.bind(this),progressRenderer:this.customProgress.bind(this)})))}}]),t}(l.Component);p.defaultProps={bsSize:"small",title:"Upload",onSuccess:function(){},url:void 0},t.default=p},function(e,t,n){e.exports={default:n(455),__esModule:!0}},function(e,t,n){e.exports={default:n(456),__esModule:!0}},function(e,t,n){e.exports={default:n(458),__esModule:!0}},function(e,t,n){e.exports={default:n(459),__esModule:!0}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(228),i=o(r);t.default=function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);tl;)o(s,n=t[l++])&&(~i(u,n)||u.push(n));return u}},function(e,t,n){var o=n(35),r=n(26),i=n(64);e.exports=function(e,t){var n=(r.Object||{})[e]||Object[e],a={};a[e]=t(n),o(o.S+o.F*i(function(){n(1)}),"Object",a)}},function(e,t,n){var o=n(82),r=n(46),i=n(83).f;e.exports=function(e){return function(t){for(var n,a=r(t),s=o(a),l=s.length,u=0,c=[];l>u;)i.call(a,n=s[u++])&&c.push(e?[n,a[n]]:a[n]);return c}}},function(e,t,n){e.exports=n(65)},function(e,t,n){var o=n(154),r=Math.min;e.exports=function(e){return e>0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(484)(!0);n(238)(String,"String",function(e){this._t=String(e),this._i=0},function(){var e,t=this._t,n=this._i;return n>=t.length?{value:void 0,done:!0}:(e=o(t,n),this._i+=e.length,{value:e,done:!1})})},function(e,t,n){(function(t){"use strict";function o(e){return e}function r(e,n,r){function d(e,n,o){for(var r in n)n.hasOwnProperty(r)&&"production"!==t.env.NODE_ENV&&l("function"==typeof n[r],"%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.",e.displayName||"ReactClass",u[o],r)}function f(e,t){var n=_.hasOwnProperty(t)?_[t]:null;k.hasOwnProperty(t)&&s("OVERRIDE_BASE"===n,"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.",t),e&&s("DEFINE_MANY"===n||"DEFINE_MANY_MERGED"===n,"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",t)}function p(e,o){if(o){s("function"!=typeof o,"ReactClass: You're attempting to use a component class or function as a mixin. Instead, just use a regular object."),s(!n(o),"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.");var r=e.prototype,i=r.__reactAutoBindPairs;o.hasOwnProperty(c)&&w.mixins(e,o.mixins);for(var a in o)if(o.hasOwnProperty(a)&&a!==c){var u=o[a],d=r.hasOwnProperty(a);if(f(d,a),w.hasOwnProperty(a))w[a](e,u);else{var p=_.hasOwnProperty(a),h="function"==typeof u,m=h&&!p&&!d&&o.autobind!==!1;if(m)i.push(a,u),r[a]=u;else if(d){var g=_[a];s(p&&("DEFINE_MANY_MERGED"===g||"DEFINE_MANY"===g),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",g,a),"DEFINE_MANY_MERGED"===g?r[a]=v(r[a],u):"DEFINE_MANY"===g&&(r[a]=y(r[a],u))}else r[a]=u,"production"!==t.env.NODE_ENV&&"function"==typeof u&&o.displayName&&(r[a].displayName=o.displayName+"_"+a)}}}else if("production"!==t.env.NODE_ENV){var b=typeof o,x="object"===b&&null!==o;"production"!==t.env.NODE_ENV&&l(x,"%s: You're attempting to include a mixin that is either null or not an object. Check the mixins included by the component, as well as any mixins they include themselves. Expected object but got %s.",e.displayName||"ReactClass",null===o?null:b)}}function h(e,t){if(t)for(var n in t){var o=t[n];if(t.hasOwnProperty(n)){var r=n in w;s(!r,'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\'t be on the "statics" key. Define it as an instance property instead; it will still be accessible on the constructor.',n);var i=n in e;s(!i,"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",n),e[n]=o}}}function m(e,t){s(e&&t&&"object"==typeof e&&"object"==typeof t,"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.");for(var n in t)t.hasOwnProperty(n)&&(s(void 0===e[n],"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.",n),e[n]=t[n]);return e}function v(e,t){return function(){var n=e.apply(this,arguments),o=t.apply(this,arguments);if(null==n)return o;if(null==o)return n;var r={};return m(r,n),m(r,o),r}}function y(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function g(e,n){var o=n.bind(e);if("production"!==t.env.NODE_ENV){o.__reactBoundContext=e,o.__reactBoundMethod=n,o.__reactBoundArguments=null;var r=e.constructor.displayName,i=o.bind;o.bind=function(a){for(var s=arguments.length,u=Array(s>1?s-1:0),c=1;c0&&void 0!==arguments[0]?arguments[0]:(0,a.default)();try{return e.activeElement}catch(e){}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(66),a=o(i);e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){e.classList?e.classList.add(t):(0,a.default)(e)||(e.className=e.className+" "+t)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(251),a=o(i);e.exports=t.default},function(e,t){"use strict";function n(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+e.className+" ").indexOf(" "+t+" ")!==-1}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n,e.exports=t.default},function(e,t){"use strict";e.exports=function(e,t){e.classList?e.classList.remove(t):e.className=e.className.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){var t=(0,c.default)(e),n=(0,l.default)(t),o=t&&t.documentElement,r={top:0,left:0,height:0,width:0};if(t)return(0,a.default)(o,e)?(void 0!==e.getBoundingClientRect&&(r=e.getBoundingClientRect()),r={top:r.top+(n.pageYOffset||o.scrollTop)-(o.clientTop||0),left:r.left+(n.pageXOffset||o.scrollLeft)-(o.clientLeft||0),width:(null==r.width?e.offsetWidth:r.width)||0,height:(null==r.height?e.offsetHeight:r.height)||0}):r}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(67),a=o(i),s=n(105),l=o(s),u=n(66),c=o(u);e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n=(0,a.default)(e);return void 0===t?n?"pageYOffset"in n?n.pageYOffset:n.document.documentElement.scrollTop:e.scrollTop:void(n?n.scrollTo("pageXOffset"in n?n.pageXOffset:n.document.documentElement.scrollLeft,t):e.scrollTop=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(105),a=o(i);e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){return(0,a.default)(e.replace(s,"ms-"))}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(530),a=o(i),s=/^-ms-/;e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if((!a||e)&&i.default){var t=document.createElement("div");t.style.position="absolute",t.style.top="-9999px",t.style.width="50px",t.style.height="50px",t.style.overflow="scroll",document.body.appendChild(t),a=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return a};var r=n(40),i=o(r),a=void 0;e.exports=t.default},function(e,t,n){(function(e){function o(t){var n,o=!1,s=!1,l=!1!==t.jsonp;if(e.location){var u="https:"===location.protocol,c=location.port;c||(c=u?443:80),o=t.hostname!==location.hostname||c!==t.port,s=t.secure!==u}if(t.xdomain=o,t.xscheme=s,n=new r(t),"open"in n&&!t.forceJSONP)return new i(t);if(!l)throw new Error("JSONP disabled");return new a(t)}var r=n(163),i=n(538),a=n(537),s=n(539);t.polling=o,t.websocket=s}).call(t,function(){return this}())},function(e,t,n){function o(e){var t=e&&e.forceBase64;c&&!t||(this.supportsBinary=!1),r.call(this,e)}var r=n(162),i=n(179),a=n(68),s=n(101),l=n(374),u=n(107)("engine.io-client:polling");e.exports=o;var c=function(){var e=n(163),t=new e({xdomain:!1});return null!=t.responseType}();s(o,r),o.prototype.name="polling",o.prototype.doOpen=function(){this.poll()},o.prototype.pause=function(e){function t(){u("paused"),n.readyState="paused",e()}var n=this;if(this.readyState="pausing",this.polling||!this.writable){var o=0;this.polling&&(u("we are currently polling - waiting to pause"),o++,this.once("pollComplete",function(){u("pre-pause polling complete"),--o||t()})),this.writable||(u("we are currently writing - waiting to pause"),o++,this.once("drain",function(){u("pre-pause writing complete"),--o||t()}))}else t()},o.prototype.poll=function(){u("polling"),this.polling=!0,this.doPoll(),this.emit("poll")},o.prototype.onData=function(e){var t=this;u("polling got data %s",e);var n=function(e,n,o){return"opening"===t.readyState&&t.onOpen(),"close"===e.type?(t.onClose(),!1):void t.onPacket(e)};a.decodePayload(e,this.socket.binaryType,n),"closed"!==this.readyState&&(this.polling=!1,this.emit("pollComplete"),"open"===this.readyState?this.poll():u('ignoring poll - transport state "%s"',this.readyState))},o.prototype.doClose=function(){function e(){u("writing close packet"),t.write([{type:"close"}])}var t=this;"open"===this.readyState?(u("transport open - closing"),e()):(u("transport not open - deferring close"),this.once("open",e))},o.prototype.write=function(e){var t=this;this.writable=!1;var n=function(){t.writable=!0,t.emit("drain")};a.encodePayload(e,this.supportsBinary,function(e){t.doWrite(e,n)})},o.prototype.uri=function(){var e=this.query||{},t=this.secure?"https":"http",n="";!1!==this.timestampRequests&&(e[this.timestampParam]=l()),this.supportsBinary||e.sid||(e.b64=1),e=i.encode(e),this.port&&("https"===t&&443!==Number(this.port)||"http"===t&&80!==Number(this.port))&&(n=":"+this.port),e.length&&(e="?"+e);var o=this.hostname.indexOf(":")!==-1;return t+"://"+(o?"["+this.hostname+"]":this.hostname)+n+this.path+e}},function(e,t,n){(function(t){"use strict";var o=n(32),r={listen:function(e,t,n){return e.addEventListener?(e.addEventListener(t,n,!1),{remove:function(){e.removeEventListener(t,n,!1)}}):e.attachEvent?(e.attachEvent("on"+t,n),{remove:function(){e.detachEvent("on"+t,n)}}):void 0},capture:function(e,n,r){return e.addEventListener?(e.addEventListener(n,r,!0),{remove:function(){e.removeEventListener(n,r,!0)}}):("production"!==t.env.NODE_ENV&&console.error("Attempted to listen to events during the capture phase on a browser that does not support the capture phase. Your application will not receive some events."),{remove:o})},registerDefault:function(){}};e.exports=r}).call(t,n(2))},function(e,t){"use strict";function n(e){try{e.focus()}catch(e){}}e.exports=n},function(e,t){"use strict";function n(e){if(e=e||("undefined"!=typeof document?document:void 0),"undefined"==typeof e)return null;try{return e.activeElement||e.body}catch(t){return e.body}}e.exports=n},function(e,t,n){(function(t){function o(e){function n(e){if(!e)return!1;if(t.Buffer&&t.Buffer.isBuffer&&t.Buffer.isBuffer(e)||t.ArrayBuffer&&e instanceof ArrayBuffer||t.Blob&&e instanceof Blob||t.File&&e instanceof File)return!0;if(r(e)){for(var o=0;o0&&void 0!==arguments[0]?arguments[0]:{};(0,u.default)(h.canUseDOM,"Browser history needs a DOM");var t=window.history,n=(0,h.supportsHistory)(),o=!(0,h.supportsPopStateOnHashChange)(),a=e.forceRefresh,l=void 0!==a&&a,f=e.getUserConfirmation,g=void 0===f?h.getConfirmation:f,b=e.keyLength,x=void 0===b?6:b,E=e.basename?(0,d.stripTrailingSlash)((0,d.addLeadingSlash)(e.basename)):"",_=function(e){var t=e||{},n=t.key,o=t.state,r=window.location,i=r.pathname,a=r.search,l=r.hash,u=i+a+l;return(0,s.default)(!E||(0,d.hasBasename)(u,E),'You are attempting to use a basename on a page whose URL path does not begin with the basename. Expected path "'+u+'" to begin with "'+E+'".'),E&&(u=(0,d.stripBasename)(u,E)),(0,c.createLocation)(u,o,n)},w=function(){return Math.random().toString(36).substr(2,x)},C=(0,p.default)(),O=function(e){i(W,e),W.length=t.length,C.notifyListeners(W.location,W.action)},k=function(e){(0,h.isExtraneousPopstateEvent)(e)||P(_(e.state))},T=function(){P(_(y()))},N=!1,P=function(e){if(N)N=!1,O();else{var t="POP";C.confirmTransitionTo(e,t,g,function(n){n?O({action:t,location:e}):S(e)})}},S=function(e){var t=W.location,n=A.indexOf(t.key);n===-1&&(n=0);var o=A.indexOf(e.key);o===-1&&(o=0);var r=n-o;r&&(N=!0,I(r))},M=_(y()),A=[M.key],D=function(e){return E+(0,d.createPath)(e)},R=function(e,o){(0,s.default)(!("object"===("undefined"==typeof e?"undefined":r(e))&&void 0!==e.state&&void 0!==o),"You should avoid providing a 2nd state argument to push when the 1st argument is a location-like object that already has state; it is ignored");var i="PUSH",a=(0,c.createLocation)(e,o,w(),W.location);C.confirmTransitionTo(a,i,g,function(e){if(e){var o=D(a),r=a.key,u=a.state;if(n)if(t.pushState({key:r,state:u},null,o),l)window.location.href=o;else{var c=A.indexOf(W.location.key),d=A.slice(0,c===-1?0:c+1);d.push(a.key),A=d,O({action:i,location:a})}else(0,s.default)(void 0===u,"Browser history cannot push state in browsers that do not support HTML5 history"),window.location.href=o}})},j=function(e,o){(0,s.default)(!("object"===("undefined"==typeof e?"undefined":r(e))&&void 0!==e.state&&void 0!==o),"You should avoid providing a 2nd state argument to replace when the 1st argument is a location-like object that already has state; it is ignored");var i="REPLACE",a=(0,c.createLocation)(e,o,w(),W.location);C.confirmTransitionTo(a,i,g,function(e){if(e){var o=D(a),r=a.key,u=a.state;if(n)if(t.replaceState({key:r,state:u},null,o),l)window.location.replace(o);else{var c=A.indexOf(W.location.key);c!==-1&&(A[c]=a.key),O({action:i,location:a})}else(0,s.default)(void 0===u,"Browser history cannot replace state in browsers that do not support HTML5 history"),window.location.replace(o)}})},I=function(e){t.go(e)},L=function(){return I(-1)},B=function(){return I(1)},V=0,F=function(e){V+=e,1===V?((0,h.addEventListener)(window,m,k),o&&(0,h.addEventListener)(window,v,T)):0===V&&((0,h.removeEventListener)(window,m,k),o&&(0,h.removeEventListener)(window,v,T))},U=!1,H=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=C.setPrompt(e);return U||(F(1),U=!0),function(){return U&&(U=!1,F(-1)),t()}},z=function(e){var t=C.appendListener(e);return F(1),function(){F(-1),t()}},W={length:t.length,action:"POP",location:M,createHref:D,push:R,replace:j,go:I,goBack:L,goForward:B,block:H,listen:z};return W};t.default=g},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=e.getUserConfirmation,n=e.initialEntries,o=void 0===n?["/"]:n,a=e.initialIndex,c=void 0===a?0:a,p=e.keyLength,h=void 0===p?6:p,m=(0,d.default)(),v=function(e){i(P,e),P.length=P.entries.length,m.notifyListeners(P.location,P.action)},y=function(){return Math.random().toString(36).substr(2,h)},g=f(c,0,o.length-1),b=o.map(function(e){return"string"==typeof e?(0,u.createLocation)(e,void 0,y()):(0,u.createLocation)(e,void 0,e.key||y())}),x=l.createPath,E=function(e,n){(0,s.default)(!("object"===("undefined"==typeof e?"undefined":r(e))&&void 0!==e.state&&void 0!==n),"You should avoid providing a 2nd state argument to push when the 1st argument is a location-like object that already has state; it is ignored");var o="PUSH",i=(0,u.createLocation)(e,n,y(),P.location);m.confirmTransitionTo(i,o,t,function(e){if(e){var t=P.index,n=t+1,r=P.entries.slice(0);r.length>n?r.splice(n,r.length-n,i):r.push(i),v({action:o,location:i,index:n,entries:r})}})},_=function(e,n){(0,s.default)(!("object"===("undefined"==typeof e?"undefined":r(e))&&void 0!==e.state&&void 0!==n),"You should avoid providing a 2nd state argument to replace when the 1st argument is a location-like object that already has state; it is ignored");var o="REPLACE",i=(0,u.createLocation)(e,n,y(),P.location);m.confirmTransitionTo(i,o,t,function(e){e&&(P.entries[P.index]=i,v({action:o,location:i}))})},w=function(e){var n=f(P.index+e,0,P.entries.length-1),o="POP",r=P.entries[n];m.confirmTransitionTo(r,o,t,function(e){e?v({action:o,location:r,index:n}):v()})},C=function(){return w(-1)},O=function(){return w(1)},k=function(e){var t=P.index+e;return t>=0&&t0&&void 0!==arguments[0]&&arguments[0];return m.setPrompt(e)},N=function(e){return m.appendListener(e)},P={length:b.length,action:"POP",location:b[g],index:g,entries:b,createHref:x,push:E,replace:_,go:w,goBack:C,goForward:O,canGo:k,block:T,listen:N};return P};t.default=p},function(e,t){"use strict";var n={childContextTypes:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},r=Object.defineProperty,i=Object.getOwnPropertyNames,a=Object.getOwnPropertySymbols,s=Object.getOwnPropertyDescriptor,l=Object.getPrototypeOf,u=l&&l(Object);e.exports=function e(t,c,d){if("string"!=typeof c){if(u){var f=l(c);f&&f!==u&&e(t,f,d)}var p=i(c);a&&(p=p.concat(a(c)));for(var h=0;h=this.index)return void t.push(e);for(var o=0;on)return void t.splice(o,0,e)}}},{key:"reset",value:function(){this.registry=[]; -}},{key:"remove",value:function(e){var t=this.registry.indexOf(e);this.registry.splice(t,1)}},{key:"toString",value:function(e){return this.registry.filter(function(e){return e.attached}).map(function(t){return t.toString(e)}).join("\n")}},{key:"index",get:function(){return 0===this.registry.length?0:this.registry[this.registry.length-1].options.index}}]),e}();t.default=r},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){var o=n.jss,r=(0,c.default)(t);if(o){var i=o.plugins.onCreateRule(e,r,n);if(i)return i}return e&&"@"===e[0]&&(0,a.default)(!1,"[JSS] Unknown at-rule %s",e),new l.default(e,r,n)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(15),a=o(i),s=n(588),l=o(s),u=n(592),c=o(u)},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(e.Renderer)return e.Renderer;var t=e.virtual||!a.default;return t?c.default:l.default}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(110),a=o(i),s=n(583),l=o(s),u=n(584),c=o(u)},function(e,t){"use strict";function n(e,t){e.renderable=t,e.rules&&t.cssRules&&e.rules.link(t.cssRules)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t){"use strict";function n(e){return Array.isArray(e)?Array.isArray(e[0])?n(e.map(o)):e.join(", "):e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n;var o=function(e){return e.join(" ")}},function(e,t,n){function o(e){var t=this.__data__=new r(e);this.size=t.size}var r=n(112),i=n(681),a=n(682),s=n(683),l=n(684),u=n(685);o.prototype.clear=i,o.prototype.delete=a,o.prototype.get=s,o.prototype.has=l,o.prototype.set=u,e.exports=o},function(e,t){function n(e,t){for(var n=-1,o=null==e?0:e.length,r=Array(o);++nf))return!1;var h=c.get(e);if(h&&c.get(t))return h==t;var m=-1,v=!0,y=n&l?new r:void 0;for(c.set(e,t),c.set(t,e);++m1?(!n&&t&&(o.className+=" "+t),m.default.createElement("div",o)):m.default.Children.only(o.children)}}]),t}(h.Component);g.propTypes={children:y.default.any,className:y.default.string,visible:y.default.bool,hiddenClassName:y.default.string},t.default=g,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){return e[0]===t[0]&&e[1]===t[1]}function i(e,t,n){var o=e[t]||{};return(0,u.default)({},o,n)}function a(e,t,n){var o=n.points;for(var i in e)if(e.hasOwnProperty(i)&&r(e[i].points,o))return t+"-placement-"+i;return""}function s(e,t){this[e]=t}Object.defineProperty(t,"__esModule",{value:!0});var l=n(4),u=o(l);t.getAlignFromPlacement=i,t.getPopupClassNameFromAlign=a,t.saveRef=s},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(3),b=o(g),x=n(37),E=o(x),_={active:b.default.bool,href:b.default.string,title:b.default.node,target:b.default.string},w={active:!1},C=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e.active,n=e.href,o=e.title,r=e.target,a=e.className,l=(0,s.default)(e,["active","href","title","target","className"]),u={href:n,title:o,target:r};return y.default.createElement("li",{className:(0,m.default)(a,{active:t})},t?y.default.createElement("span",l):y.default.createElement(E.default,(0,i.default)({},l,u)))},t}(y.default.Component);C.propTypes=_,C.defaultProps=w,t.default=C,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(3),b=o(g),x=n(128),E=o(x),_=n(92),w=o(_),C=n(10),O={vertical:b.default.bool,justified:b.default.bool,block:(0,E.default)(b.default.bool,function(e){var t=e.block,n=e.vertical;return t&&!n?new Error("`block` requires `vertical` to be set to have any effect"):null})},k={block:!1,justified:!1,vertical:!1},T=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e,t=this.props,n=t.block,o=t.justified,r=t.vertical,a=t.className,l=(0,s.default)(t,["block","justified","vertical","className"]),u=(0,C.splitBsProps)(l),c=u[0],d=u[1],f=(0,i.default)({},(0,C.getClassSet)(c),(e={},e[(0,C.prefix)(c)]=!r,e[(0,C.prefix)(c,"vertical")]=r,e[(0,C.prefix)(c,"justified")]=o,e[(0,C.prefix)(w.default.defaultProps,"block")]=n,e));return y.default.createElement("div",(0,i.default)({},d,{className:(0,m.default)(a,f)}))},t}(y.default.Component);T.propTypes=O,T.defaultProps=k,t.default=(0,C.bsClass)("btn-group",T),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(3),b=o(g),x=n(18),E=o(x),_=n(787),w=o(_),C={direction:b.default.oneOf(["prev","next"]),onAnimateOutEnd:b.default.func,active:b.default.bool,animateIn:b.default.bool,animateOut:b.default.bool,index:b.default.number},O={active:!1,animateIn:!1,animateOut:!1},k=function(e){function t(n,o){(0,u.default)(this,t);var r=(0,d.default)(this,e.call(this,n,o));return r.handleAnimateOutEnd=r.handleAnimateOutEnd.bind(r),r.state={direction:null},r.isUnmounted=!1,r}return(0,p.default)(t,e),t.prototype.componentWillReceiveProps=function(e){this.props.active!==e.active&&this.setState({direction:null})},t.prototype.componentDidUpdate=function(e){var t=this,n=this.props.active,o=e.active;!n&&o&&w.default.addEndEventListener(E.default.findDOMNode(this),this.handleAnimateOutEnd),n!==o&&setTimeout(function(){return t.startAnimation()},20)},t.prototype.componentWillUnmount=function(){this.isUnmounted=!0},t.prototype.handleAnimateOutEnd=function(){this.isUnmounted||this.props.onAnimateOutEnd&&this.props.onAnimateOutEnd(this.props.index)},t.prototype.startAnimation=function(){this.isUnmounted||this.setState({direction:"prev"===this.props.direction?"right":"left"})},t.prototype.render=function(){var e=this.props,t=e.direction,n=e.active,o=e.animateIn,r=e.animateOut,a=e.className,l=(0,s.default)(e,["direction","active","animateIn","animateOut","className"]);delete l.onAnimateOutEnd,delete l.index;var u={item:!0,active:n&&!o||r};return t&&n&&o&&(u[t]=!0),this.state.direction&&(o||r)&&(u[this.state.direction]=!0),y.default.createElement("div",(0,i.default)({},l,{className:(0,m.default)(a,u)}))},t}(y.default.Component);k.propTypes=C,k.defaultProps=O,t.default=k,e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(1),m=o(h),v=n(3),y=o(v),g=n(9),b=o(g),x=n(92),E=o(x),_=n(37),w=o(_),C=n(10),O={noCaret:y.default.bool,open:y.default.bool,title:y.default.string,useAnchor:y.default.bool},k={open:!1,useAnchor:!1,bsRole:"toggle"},T=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e.noCaret,n=e.open,o=e.useAnchor,r=e.bsClass,a=e.className,l=e.children,u=(0,s.default)(e,["noCaret","open","useAnchor","bsClass","className","children"]);delete u.bsRole;var c=o?w.default:E.default,d=!t;return m.default.createElement(c,(0,i.default)({},u,{role:"button",className:(0,b.default)(a,r),"aria-haspopup":!0,"aria-expanded":n}),l||u.title,d&&" ",d&&m.default.createElement("span",{className:"caret"}))},t}(m.default.Component);T.propTypes=O,T.defaultProps=k,t.default=(0,C.bsClass)("dropdown-toggle",T),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(3),b=o(g),x=n(17),E=o(x),_=n(10),w={fluid:b.default.bool,componentClass:E.default},C={componentClass:"div",fluid:!1},O=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e.fluid,n=e.componentClass,o=e.className,r=(0,s.default)(e,["fluid","componentClass","className"]),a=(0,_.splitBsProps)(r),l=a[0],u=a[1],c=(0,_.prefix)(l,t&&"fluid");return y.default.createElement(n,(0,i.default)({},u,{className:(0,m.default)(o,c)}))},t}(y.default.Component);O.propTypes=w,O.defaultProps=C,t.default=(0,_.bsClass)("container",O),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(60),i=o(r),a=n(4),s=o(a),l=n(8),u=o(l),c=n(5),d=o(c),f=n(7),p=o(f),h=n(6),m=o(h),v=n(9),y=o(v),g=n(1),b=o(g),x=n(3),E=o(x),_=n(10),w=n(25),C={active:E.default.any,disabled:E.default.any,header:E.default.node,listItem:E.default.bool,onClick:E.default.func,href:E.default.string,type:E.default.string},O={listItem:!1},k=function(e){function t(){return(0,d.default)(this,t),(0,p.default)(this,e.apply(this,arguments))}return(0,m.default)(t,e),t.prototype.renderHeader=function(e,t){return b.default.isValidElement(e)?(0,g.cloneElement)(e,{className:(0,y.default)(e.props.className,t)}):b.default.createElement("h4",{className:t},e)},t.prototype.render=function(){var e=this.props,t=e.active,n=e.disabled,o=e.className,r=e.header,i=e.listItem,a=e.children,l=(0,u.default)(e,["active","disabled","className","header","listItem","children"]),c=(0,_.splitBsProps)(l),d=c[0],f=c[1],p=(0,s.default)({},(0,_.getClassSet)(d),{active:t,disabled:n}),h=void 0;return f.href?h="a":f.onClick?(h="button",f.type=f.type||"button"):h=i?"li":"span",f.className=(0,y.default)(o,p),r?b.default.createElement(h,f,this.renderHeader(r,(0,_.prefix)(d,"heading")),b.default.createElement("p",{className:(0,_.prefix)(d,"text")},a)):b.default.createElement(h,f,a)},t}(b.default.Component);k.propTypes=C,k.defaultProps=O,t.default=(0,_.bsClass)("list-group-item",(0,_.bsStyles)((0,i.default)(w.State),k)),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(17),b=o(g),x=n(10),E={componentClass:b.default},_={componentClass:"div"},w=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e.componentClass,n=e.className,o=(0,s.default)(e,["componentClass","className"]),r=(0,x.splitBsProps)(o),a=r[0],l=r[1],u=(0,x.getClassSet)(a);return y.default.createElement(t,(0,i.default)({},l,{className:(0,m.default)(n,u)}))},t}(y.default.Component);w.propTypes=E,w.defaultProps=_,t.default=(0,x.bsClass)("modal-body",w),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(17),b=o(g),x=n(10),E={componentClass:b.default},_={componentClass:"div"},w=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e.componentClass,n=e.className,o=(0,s.default)(e,["componentClass","className"]),r=(0,x.splitBsProps)(o),a=r[0],l=r[1],u=(0,x.getClassSet)(a);return y.default.createElement(t,(0,i.default)({},l,{className:(0,m.default)(n,u)}))},t}(y.default.Component);w.propTypes=E,w.defaultProps=_,t.default=(0,x.bsClass)("modal-footer",w),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(3),b=o(g),x=n(10),E=n(24),_=o(E),w={"aria-label":b.default.string,closeButton:b.default.bool,onHide:b.default.func},C={"aria-label":"Close",closeButton:!1},O={$bs_modal:b.default.shape({onHide:b.default.func})},k=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e["aria-label"],n=e.closeButton,o=e.onHide,r=e.className,a=e.children,l=(0,s.default)(e,["aria-label","closeButton","onHide","className","children"]),u=this.context.$bs_modal,c=(0,x.splitBsProps)(l),d=c[0],f=c[1],p=(0,x.getClassSet)(d);return y.default.createElement("div",(0,i.default)({},f,{className:(0,m.default)(r,p)}),n&&y.default.createElement("button",{type:"button",className:"close","aria-label":t,onClick:(0,_.default)(u&&u.onHide,o)},y.default.createElement("span",{"aria-hidden":"true"},"×")),a)},t}(y.default.Component);k.propTypes=w,k.defaultProps=C,k.contextTypes=O,t.default=(0,x.bsClass)("modal-header",k),e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=n(4),i=o(r),a=n(8),s=o(a),l=n(5),u=o(l),c=n(7),d=o(c),f=n(6),p=o(f),h=n(9),m=o(h),v=n(1),y=o(v),g=n(17),b=o(g),x=n(10),E={componentClass:b.default},_={componentClass:"h4"},w=function(e){function t(){return(0,u.default)(this,t),(0,d.default)(this,e.apply(this,arguments))}return(0,p.default)(t,e),t.prototype.render=function(){var e=this.props,t=e.componentClass,n=e.className,o=(0,s.default)(e,["componentClass","className"]),r=(0,x.splitBsProps)(o),a=r[0],l=r[1],u=(0,x.getClassSet)(a);return y.default.createElement(t,(0,i.default)({},l,{className:(0,m.default)(n,u)}))},t}(y.default.Component);w.propTypes=E,w.defaultProps=_,t.default=(0,x.bsClass)("modal-title",w),e.exports=t.default},function(e,t,n){(function(o){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var i=n(4),a=r(i),s=n(8),l=r(s),u=n(5),c=r(u),d=n(7),f=r(d),p=n(6),h=r(p),m=n(9),v=r(m),y=n(169),g=r(y),b=n(1),x=r(b),E=n(3),_=r(E),w=n(18),C=r(w),O=n(128),k=r(O),T=n(15),N=r(T),P=n(10),S=n(24),M=r(S),A=n(29),D=r(A),R={activeKey:_.default.any,activeHref:_.default.string,stacked:_.default.bool,justified:(0,k.default)(_.default.bool,function(e){var t=e.justified,n=e.navbar;return t&&n?Error("justified navbar `Nav`s are not supported"):null}),onSelect:_.default.func,role:_.default.string,navbar:_.default.bool,pullRight:_.default.bool,pullLeft:_.default.bool},j={justified:!1,pullRight:!1,pullLeft:!1,stacked:!1},I={$bs_navbar:_.default.shape({bsClass:_.default.string,onSelect:_.default.func}),$bs_tabContainer:_.default.shape({activeKey:_.default.any,onSelect:_.default.func.isRequired,getTabId:_.default.func.isRequired,getPaneId:_.default.func.isRequired})},L=function(e){function t(){return(0,c.default)(this,t),(0,f.default)(this,e.apply(this,arguments))}return(0,h.default)(t,e),t.prototype.componentDidUpdate=function(){var e=this;if(this._needsRefocus){this._needsRefocus=!1;var t=this.props.children,n=this.getActiveProps(),o=n.activeKey,r=n.activeHref,i=D.default.find(t,function(t){return e.isActive(t,o,r)}),a=D.default.toArray(t),s=a.indexOf(i),l=C.default.findDOMNode(this).children,u=l&&l[s];u&&u.firstChild&&u.firstChild.focus()}},t.prototype.handleTabKeyDown=function(e,t){var n=void 0;switch(t.keyCode){case g.default.codes.left:case g.default.codes.up:n=this.getNextActiveChild(-1);break;case g.default.codes.right:case g.default.codes.down:n=this.getNextActiveChild(1);break;default:return}t.preventDefault(),e&&n&&null!=n.props.eventKey&&e(n.props.eventKey),this._needsRefocus=!0},t.prototype.getNextActiveChild=function(e){var t=this,n=this.props.children,o=n.filter(function(e){return null!=e.props.eventKey&&!e.props.disabled}),r=this.getActiveProps(),i=r.activeKey,a=r.activeHref,s=D.default.find(n,function(e){return t.isActive(e,i,a)}),l=o.indexOf(s);if(l===-1)return o[0];var u=l+e,c=o.length;return u>=c?u=0:u<0&&(u=c-1),o[u]},t.prototype.getActiveProps=function(){ -var e=this.context.$bs_tabContainer;return e?("production"!==o.env.NODE_ENV?(0,N.default)(null==this.props.activeKey&&!this.props.activeHref,"Specifying a `